/* ===== INSS Press override (sciltp-like, hover dropdown) ===== */
:root{ --brand:#0b1e3a; --accent:#0c5bd9; --accent-600:#0a4ec0; --muted:#6b7280; --border:#e5e7eb; --bg:#ffffff; --card:#ffffff; --shadow:0 10px 25px rgba(0,0,0,.08); }

html,body{background:#fff;color:#111827}
a{color:var(--accent);text-decoration:none}
a:hover{text-decoration:underline}
.container{max-width:1160px;margin:0 auto;padding:0 16px}

/* Header / Nav */
.topbar{position:sticky; top:0; z-index:1000; background:var(--bg); box-shadow:0 1px 0 var(--border)}
.topbar-inner{display:flex; align-items:center; gap:22px; padding:14px 0}
.brand-wrap{display:flex; align-items:center; gap:10px}
.brand-img svg,.brand-img img{display:block; height:36px}
.brand-text{font-weight:800; font-size:20px; color:var(--brand); letter-spacing:.2px}

/* Keep nav on one line */
.main-nav{position:relative; z-index:20; white-space:nowrap; flex:1}
.main-nav ul{display:flex; gap:22px; margin:0; padding:0; list-style:none; flex-wrap:nowrap}
.main-nav li{list-style:none; margin:0; padding:0}
.main-nav > ul > li{position:relative}
.main-nav a,
.main-nav .nav-parent{
  display:inline-block; padding:8px 12px; border-radius:10px;
  color:#111827; font-weight:600; text-decoration:none; background:transparent; border:0; cursor:pointer;
  font-family:inherit; font-size:16px;
}
.main-nav > ul > li > a:hover,
.main-nav .nav-parent:hover{background:rgba(12,91,217,.08)}
.has-sub > .nav-parent::after{content:"▾"; font-size:.7rem; margin-left:6px; color:#374151}

/* Dropdown (vertical) — CSS-only hover */
/* Dropdown (vertical) — FORCE hidden unless hovered */
.main-nav .has-sub > .submenu{
  position:absolute; left:0; top:100%;
  min-width:260px; padding:10px; background:#fff;
  border:1px solid var(--border); border-radius:14px; box-shadow:var(--shadow);
  white-space:normal;

  /* hard hide baseline (beats OLH/Foundation defaults) */
  display:block;            /* we control visibility instead of display */
  visibility:hidden;        /* hidden by default */
  opacity:0;
  pointer-events:none;
  transform:translateY(6px);
  transition:opacity .12s ease, transform .12s ease, visibility 0s linear .12s;
}
.main-nav .has-sub:hover > .submenu{
  visibility:visible;
  opacity:1;
  pointer-events:auto;
  transform:translateY(0);
  transition-delay:0s;
}

.submenu li{display:block}
.submenu a{display:block; color:#111827; padding:8px 10px; border-radius:8px; font-weight:600}
.submenu a:hover{background:rgba(12,91,217,.08)}

header,.topbar,.topbar-inner,nav.main-nav{overflow:visible}

/* Search + Auth */
.site-search{margin-left:auto; display:flex; gap:8px; align-items:center; flex-shrink:0}
.site-search input{border:1px solid var(--border); border-radius:10px; padding:8px 12px; min-width:200px}
.site-search button{border:1px solid var(--accent); background:var(--accent); color:#fff; border-radius:10px; padding:8px 12px; font-weight:700}
.site-search button:hover{background:var(--accent-600)}
.auth-menu{display:flex; gap:10px; align-items:center; margin-left:12px; flex-shrink:0}
.hello{color:#6b7280; font-size:14px}
.btn{display:inline-block; padding:8px 12px; border-radius:10px; font-weight:700; background:var(--accent); color:#fff; border:1px solid var(--accent)}
.btn:hover{background:var(--accent-600)}
.btn-ghost{background:#fff; color:#111827; border:1px solid var(--border)}
.btn-ghost:hover{border-color:#cbd5e1}

/* Page / Cards */
.page{padding:28px 0}
.grid{display:grid; gap:18px}
.journals-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}
.card{background:var(--card); border:1px solid var(--border); border-radius:14px; padding:18px; box-shadow:0 4px 14px rgba(0,0,0,.04)}
.card h3{margin-top:0}

/* Footer */
/* ===== Light footer (scilight-like, accessible) ===== */
.site-footer--light{
  --footer-bg:#eef3fb;          /* soft blue-grey */
  --footer-text:#0b1e3a;        /* deep navy (≈ 9:1 contrast on bg) */
  --footer-muted:#334155;       /* slate text */
  --footer-link:#0c5bd9;        /* accessible link color */
  --footer-border:#d7dfeb;
  background:var(--footer-bg);
  color:var(--footer-text);
  margin-top:40px;
  border-top:1px solid var(--footer-border);
}
.site-footer--light a{ color:var(--footer-link); text-decoration:none; font-weight:600; }
.site-footer--light a:hover{ text-decoration:underline; }

.site-footer--light .footer-grid{
  display:grid;
  grid-template-columns:repeat(4, minmax(0,1fr));
  gap:24px;
  padding:28px 0 18px;
}
.site-footer--light .footer-col h4{
  margin:0 0 10px;
  font-size:18px;
  font-weight:800;
  color:var(--footer-text);
}
.site-footer--light .footer-col p{
  margin:0 0 6px;
  color:var(--footer-muted);
}
.site-footer--light .footer-list{
  list-style:none; margin:0; padding:0;
}
.site-footer--light .footer-list li{ margin:6px 0; }
.site-footer--light .footer-bottom{
  border-top:1px solid var(--footer-border);
  padding:12px 0; color:var(--footer-muted);
}

/* Responsive: stack gracefully on small screens */
@media (max-width: 980px){
  .site-footer--light .footer-grid{ grid-template-columns:repeat(2, minmax(0,1fr)); }
}
@media (max-width: 560px){
  .site-footer--light .footer-grid{ grid-template-columns:1fr; }
}

/* HOMEPAGE sections (unchanged) */
.hero{background:linear-gradient(180deg,#f8fbff, #ffffff); border-bottom:1px solid var(--border)}
.hero-inner{padding:56px 0}
.hero-text h1{font-size:32px; line-height:1.2; margin:0 0 12px; color:var(--brand)}
.hero-text p{font-size:18px; color:#374151; margin:0 0 18px}
.hero-actions{display:flex; gap:12px}
.tiles{display:grid; grid-template-columns:repeat(auto-fit,minmax(260px,1fr)); gap:18px; padding:28px 0}
.tile{background:#fff; border:1px solid var(--border); border-radius:14px; padding:18px; box-shadow:0 4px 14px rgba(0,0,0,.04)}
.tile h3{margin:0 0 8px}
.tile p{margin:0 0 8px; color:#4b5563}
.tile .link{font-weight:700; text-decoration:none}
.tile .link:hover{text-decoration:underline}
.band{background:#f8fafc; border-top:1px solid var(--border); border-bottom:1px solid var(--border)}
.value-grid{display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:16px; padding:26px 0}
.value{background:#fff; border:1px solid var(--border); border-radius:14px; padding:16px}
.cta-band{background:#0c5bd9; color:#fff}
.cta-inner{padding:34px 0; text-align:center}
.cta-inner p{color:#e5ecff}
.cta-band .btn-ghost{background:transparent; color:#fff; border-color:rgba(255,255,255,.6)}
.cta-band .btn-ghost:hover{background:rgba(255,255,255,.1)}

/* CMS page styling */
.page-hero{background:#f8fafc; border-bottom:1px solid var(--border)}
.page-hero .container{padding:24px 0}
.page-hero h1{margin:0; color:var(--brand)}
.page-body{padding:24px 0}
.prose h2{margin-top:20px}
.prose p{margin:10px 0; color:#374151}
.prose ul{padding-left:20px}
.prose li{margin:6px 0}

/* RESPONSIVE: keep one-line nav longer; wrap only below ~900px */
@media (max-width: 1100px){ .main-nav ul{gap:18px} .site-search input{min-width:170px} }
@media (max-width: 1024px){ .main-nav ul{gap:14px} .site-search input{min-width:150px} }
@media (max-width: 900px){
  .topbar-inner{flex-wrap:wrap; gap:12px}
  .main-nav ul{flex-wrap:wrap; white-space:normal}
  .site-search{order:3; width:100%; justify-content:flex-start}
  .site-search input{min-width:0; flex:1}
}
