/* Homepage presentation, aligned with the SIFT section palette. */
.home-page #publicPanel {
  --line-dark:#333;
  --line-light:#333;
  --grey-300:#aaa9a4;
  padding:0 18px 40px;
  background:#050505;
  font-family:"Avenir Next","Inter","Segoe UI",sans-serif;
}
.home-page #publicPanel .public-panel__content {
  width:min(1280px,100%);
  border-inline:1px solid #333;
  background:#0b0b0b;
}
.home-page #publicPanel .editorial-shell--home { border:0; background:#0b0b0b; }
.home-page #publicPanel .site-announcement { padding-inline:32px; background:transparent; letter-spacing:.03em; }
.home-page #publicPanel .editorial-topbar { padding:22px 32px; background:#0b0b0b; backdrop-filter:none; }
.home-page #publicPanel .necto-hero {
  min-height:560px;
  padding:56px 48px 64px;
  column-gap:48px;
  background:#0b0b0b;
}
.home-page #publicPanel .necto-hero::before,
.home-page #publicPanel .necto-use-map div::after { content:none; }
.home-page #publicPanel .necto-tags { margin-bottom:28px; gap:20px; }
.home-page #publicPanel .necto-tags span { padding:0; border:0; background:none; }
.home-page #publicPanel .necto-hero h1 { font-size:clamp(42px,6vw,76px); line-height:1; }
.home-page #publicPanel .text-accent { color:#aaa9a4; }
.home-page #publicPanel .necto-hero__copy { font-size:17px; line-height:1.7; }
.home-page #publicPanel .hero-console,
.home-page #publicPanel .hero-console:hover { border:0; background:transparent; box-shadow:none; transform:none; }
.home-page #publicPanel .hero-console__bar { padding:0 0 18px; border:0; }
.home-page #publicPanel .search-preview__body { padding:0; gap:24px; }
.home-page #publicPanel .search-preview__body blockquote { font-size:clamp(22px,2.4vw,30px); }
.home-page #publicPanel .web-search-tags span { background:#222; border:0; border-radius:3px; color:#ddd; }
.home-page #publicPanel :is(.login-trigger,.secondary-button) { border-radius:3px; box-shadow:none; transform:none; }
.home-page #publicPanel .login-trigger { background:#e8e8e0; color:#111; border-color:#e8e8e0; }
.home-page #publicPanel .secondary-button { background:transparent; color:#ddd; border-color:transparent; }
.home-page #publicPanel .secondary-button:hover { background:#242424; }
.home-page #publicPanel .capability-rail { padding:0 32px; background:#f4f4f0; color:#111; border:0; border-block:1px solid #333; }
.home-page #publicPanel .capability-rail :is(p,b,span) { color:#666663; border-color:rgba(5,5,5,.17); }
.home-page #publicPanel .capability-rail strong { color:#111; }
.home-page #publicPanel .section-intro { min-height:0; padding:64px 48px; border:0; border-bottom:1px solid #333; background:#252525; }
.home-page #publicPanel :is(.section-intro h2,.necto-cta h2) { font-size:clamp(32px,4vw,52px); line-height:1.04; }
.home-page #publicPanel .necto-grid { border:0; background:#1b1b1b; }
.home-page #publicPanel .necto-card,
.home-page #publicPanel .necto-card:hover { min-height:0; padding:40px 48px; background:#1b1b1b; box-shadow:none; transform:none; border-color:#333; }
.home-page #publicPanel .necto-card--large { min-height:0; }
.home-page #publicPanel .necto-card h2 { font-size:clamp(28px,3.3vw,42px); }
.home-page #publicPanel .necto-card--stat,
.home-page #publicPanel .necto-card--stat:hover { padding:0; background:#deded9; color:#111; }
.home-page #publicPanel .necto-card--stat .necto-card__topline { min-height:0; padding:24px 48px; border-color:rgba(5,5,5,.17); }
.home-page #publicPanel .necto-card--stat .necto-card__topline :is(.eyebrow,span) { color:#666663; }
.home-page #publicPanel .necto-card__stat-heading { min-height:0; padding:40px 48px; }
.home-page #publicPanel .necto-card--stat h2 { color:#111; }
.home-page #publicPanel .necto-card--stat .necto-card__stat-heading .necto-use-intro { border:0; padding:0; color:#555552; }
.home-page #publicPanel .necto-use-map { border-color:rgba(5,5,5,.17); }
.home-page #publicPanel .necto-use-map div { min-height:170px; padding:48px 24px 24px; border-color:rgba(5,5,5,.17); background:transparent; }
.home-page #publicPanel .necto-use-map div:hover { background:#d4d4cf; }
.home-page #publicPanel .necto-use-map div::before { color:#666663; }
.home-page #publicPanel .necto-use-map h3,
.home-page #publicPanel .necto-use-map div:hover h3 { color:#111; font-size:21px; }
.home-page #publicPanel .necto-use-map p,
.home-page #publicPanel .necto-use-map div:hover p { color:#555552; line-height:1.65; }
.home-page #publicPanel .necto-cta { min-height:0; padding:64px 48px; background:#0b0b0b; border:0; border-block:1px solid #333; }
.home-page #publicPanel .site-footer { background:#111; border:0; padding:40px 48px 24px; }
@media(max-width:900px) {
  .home-page #publicPanel .necto-hero { min-height:0; padding:48px 32px; }
  .home-page #publicPanel .hero-console { margin-top:40px; padding-top:28px; border-top:1px solid #333; }
  .home-page #publicPanel :is(.section-intro,.necto-card,.necto-cta) { padding:48px 32px; }
  .home-page #publicPanel .necto-card--stat { padding:0; }
  .home-page #publicPanel .necto-card__stat-heading { padding:32px; }
  .home-page #publicPanel .necto-card--stat .necto-card__topline { padding:24px 32px; }
}
@media(max-width:640px) {
  .home-page #publicPanel { padding:0 10px 20px; }
  .home-page #publicPanel .site-announcement { padding-inline:20px; font-size:9px; flex-wrap:wrap; gap:6px; }
  .home-page #publicPanel .editorial-topbar { padding:20px; flex-wrap:wrap; gap:20px; }
  .home-page #publicPanel .editorial-nav { flex-wrap:wrap; gap:8px; }
  .home-page #publicPanel .editorial-nav a { font-size:11px; }
  .home-page #publicPanel .necto-hero { padding:44px 22px 32px; }
  .home-page #publicPanel .capability-rail { padding:0; }
  .home-page #publicPanel :is(.section-intro,.necto-card,.necto-cta) { padding:40px 22px; }
  .home-page #publicPanel .necto-card--stat { padding:0; }
  .home-page #publicPanel .necto-card__stat-heading { padding:32px 22px; }
  .home-page #publicPanel .necto-card--stat .necto-card__topline { padding:22px; }
  .home-page #publicPanel .site-footer { padding:32px 22px 24px; }
}
