/* Abecator content-discovery layer: make the site's depth visible immediately. */

/* ---------- Global navigation mega menus ---------- */
.site-header .nav{
  gap:12px;
  overflow:visible;
}
.site-header .nav>a,.site-header .nav details>summary{
  position:relative;
  display:inline-flex;
  align-items:center;
  min-height:38px;
  padding:0 3px;
  border:0;
  border-radius:7px;
  background:transparent;
  color:#c6d5e8;
  font-size:.82rem;
  font-weight:650;
  white-space:nowrap;
  cursor:pointer;
  list-style:none;
}
.site-header .nav details>summary::-webkit-details-marker{display:none}
.site-header .nav .nav-mega>summary:after,.site-header .nav .nav-more>summary:after{
  content:"⌄";
  margin-left:5px;
  color:#7890ab;
  font-size:.66rem;
  transform:translateY(-1px);
}
.site-header .nav>a:hover,.site-header .nav details>summary:hover,.site-header .nav details[open]>summary{color:#fff}
.site-header .nav>a[aria-current="page"],.site-header .nav .nav-mega.is-current>summary,.site-header .nav .nav-more.is-current>summary{color:#65d9f0}
.site-header .nav>a[aria-current="page"]:after,.site-header .nav .nav-mega.is-current>summary:before,.site-header .nav .nav-more.is-current>summary:before{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:-10px;
  height:2px;
  border-radius:2px;
  background:#2ed5e6;
}
.nav-mega,.nav-more{position:relative;flex:0 0 auto}
.nav-mega-panel{
  position:fixed;
  top:72px;
  left:50%;
  z-index:120;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
  width:min(930px,calc(100vw - 40px));
  padding:14px;
  border:1px solid #d7e1ec;
  border-radius:16px;
  background:#fff;
  box-shadow:0 24px 68px rgba(2,7,25,.28);
  transform:translateX(-50%);
}
.nav-mega:not([open])>.nav-mega-panel{display:none}
@media(hover:hover) and (pointer:fine){
  .nav-mega:hover>.nav-mega-panel{display:grid}
}
.nav-mega-column{
  min-width:0;
  padding:10px;
  border-radius:11px;
}
.nav-mega-column+ .nav-mega-column{border-left:1px solid #e7edf4;border-radius:0 11px 11px 0}
.nav-mega-column>strong{
  display:block;
  margin:0 0 8px;
  color:#718197;
  font:800 .67rem/1.2 "Cascadia Mono",SFMono-Regular,Consolas,monospace;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.site-header .nav .nav-mega-panel a{
  display:grid;
  grid-template-columns:1fr;
  gap:2px;
  min-height:58px;
  padding:9px 10px;
  border-radius:9px;
  color:#17324f;
  background:transparent;
  white-space:normal;
}
.site-header .nav .nav-mega-panel a:hover,.site-header .nav .nav-mega-panel a[aria-current="page"]{background:#eef5ff;color:#0f67d8}
.site-header .nav .nav-mega-panel a span{font-size:.82rem;font-weight:750}
.site-header .nav .nav-mega-panel a small{color:#728198;font-size:.7rem;font-weight:500;line-height:1.35}
.site-header .nav .nav-mega-panel a:hover small,.site-header .nav .nav-mega-panel a[aria-current="page"] small{color:#55718f}

.nav-more-menu{
  top:calc(100% + 11px);
  right:0;
  min-width:220px;
  border-color:#d7e1ec;
  background:#fff;
  box-shadow:0 18px 45px rgba(7,23,46,.18);
}
.site-header .nav .nav-more-menu a{color:#334158}

/* ---------- Homepage: compact first screen + visible content map ---------- */
.hero{
  padding:58px 0 40px;
  min-height:0;
}
.hero-grid{
  grid-template-columns:minmax(0,1.03fr) minmax(430px,.97fr);
  gap:42px;
  align-items:start;
}
.hero-copy-discovery{padding-top:8px}
.hero-copy-discovery .eyebrow{margin-bottom:13px}
.hero .hero-copy-discovery h1{
  max-width:720px;
  font-size:clamp(2.9rem,4.9vw,4.75rem);
  line-height:.98;
  letter-spacing:-.05em;
}
.hero-copy-discovery .hero-lead{
  max-width:710px;
  margin:20px 0 22px;
  color:#c1cede;
  font-size:1.05rem;
  line-height:1.65;
}
.hero-copy-discovery .hero-actions{gap:10px}
.hero-topic-nav{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:7px;
  margin-top:25px;
}
.hero-topic-nav>span{
  margin-right:3px;
  color:#7f93ad;
  font:800 .65rem/1.2 "Cascadia Mono",SFMono-Regular,Consolas,monospace;
  letter-spacing:.09em;
  text-transform:uppercase;
}
.hero-topic-nav a{
  padding:6px 8px;
  border:1px solid rgba(255,255,255,.13);
  border-radius:7px;
  background:rgba(255,255,255,.035);
  color:#aabbd0;
  font-size:.72rem;
  font-weight:650;
  transition:border-color .16s ease,background .16s ease,color .16s ease;
}
.hero-topic-nav a:hover{border-color:rgba(46,213,230,.42);background:rgba(46,213,230,.08);color:#fff}

.hero-discovery{
  padding:18px;
  border:1px solid rgba(157,197,255,.18);
  border-radius:16px;
  background:rgba(5,18,38,.82);
  box-shadow:0 24px 64px rgba(0,0,0,.23);
}
.hero-discovery-head{
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:20px;
  margin-bottom:12px;
  padding:1px 2px 12px;
  border-bottom:1px solid rgba(255,255,255,.09);
}
.hero-discovery-head small{color:#6ee7f1;font:800 .64rem/1.2 "Cascadia Mono",SFMono-Regular,Consolas,monospace;letter-spacing:.1em}
.hero-discovery-head strong{max-width:250px;color:#dfe9f5;font-size:.9rem;text-align:right}
.hero-discovery-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.hero-discovery-grid>a{
  position:relative;
  min-height:116px;
  display:flex;
  flex-direction:column;
  padding:13px 38px 13px 13px;
  border:1px solid rgba(255,255,255,.09);
  border-radius:10px;
  background:rgba(255,255,255,.028);
  transition:transform .16s ease,border-color .16s ease,background .16s ease;
}
.hero-discovery-grid>a:hover{transform:translateY(-2px);border-color:rgba(46,213,230,.36);background:rgba(46,213,230,.055)}
.hero-discovery-grid .discovery-code{color:#62809f;font:700 .63rem/1 "Cascadia Mono",SFMono-Regular,Consolas,monospace}
.hero-discovery-grid strong{margin:13px 0 5px;color:#fff;font-size:.98rem;line-height:1.15}
.hero-discovery-grid small{color:#8fa4bc;font-size:.72rem;line-height:1.42}
.hero-discovery-grid b{position:absolute;right:13px;top:13px;color:#6ee7f1;font-size:.9rem}
.hero-discovery-grid .discovery-wide{
  grid-column:1/-1;
  min-height:82px;
  display:grid;
  grid-template-columns:32px minmax(145px,.65fr) 1fr 20px;
  align-items:center;
  gap:8px;
  padding-right:13px;
}
.hero-discovery-grid .discovery-wide strong{margin:0}
.hero-discovery-grid .discovery-wide b{position:static;text-align:right}

/* Existing homepage jump becomes a thin secondary navigator rather than the first content map. */
.home-jump-wrap{min-height:52px}
.home-jump-label{font-size:.62rem}
.home-jump a{padding:6px 9px;font-size:.72rem}

/* Make the next section arrive faster so actual content is visible sooner. */
#services.section{padding-top:66px}
.service-priority-grid{margin-top:32px}

@media(max-width:1180px){
  .site-header .nav{gap:8px}
  .site-header .nav>a,.site-header .nav details>summary{font-size:.75rem}
  .hero-grid{grid-template-columns:minmax(0,1fr) minmax(390px,.92fr);gap:30px}
}

@media(max-width:980px){
  .hero{padding:48px 0 34px}
  .hero-grid{grid-template-columns:1fr;gap:28px}
  .hero-copy-discovery{padding-top:0}
  .hero .hero-copy-discovery h1{max-width:780px}
  .hero-discovery{max-width:none}
  .hero-discovery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .nav-mega-panel{top:128px;width:min(760px,calc(100vw - 28px));max-height:calc(100vh - 150px);overflow:auto}
}

@media(max-width:760px){
  .site-header .nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;width:100%}
  .site-header .nav>a,.site-header .nav details>summary{
    width:100%;
    min-height:40px;
    justify-content:center;
    padding:6px;
    border-radius:8px;
    background:rgba(255,255,255,.055);
    color:#d6e4f3;
    white-space:normal;
    text-align:center;
    font-size:.7rem;
    line-height:1.15;
  }
  .site-header .nav>a[aria-current="page"],.site-header .nav .nav-mega.is-current>summary,.site-header .nav .nav-more.is-current>summary{background:rgba(46,213,230,.12);color:#fff}
  .site-header .nav>a[aria-current="page"]:after,.site-header .nav .nav-mega.is-current>summary:before,.site-header .nav .nav-more.is-current>summary:before{display:none}
  .nav-mega-panel{
    top:158px;
    left:12px;
    right:12px;
    width:auto;
    max-height:calc(100vh - 178px);
    grid-template-columns:1fr;
    gap:0;
    padding:10px;
    transform:none;
    overflow:auto;
  }
  .nav-mega-column{padding:8px}
  .nav-mega-column+ .nav-mega-column{border-left:0;border-top:1px solid #e7edf4;border-radius:0}
  .site-header .nav .nav-mega-panel a{justify-content:start;min-height:54px;background:transparent;text-align:left}
  .nav-more-menu{position:fixed;top:158px;left:12px;right:12px;width:auto;max-height:calc(100vh - 178px);overflow:auto}

  .hero{padding:38px 0 28px}
  .hero .hero-copy-discovery h1{font-size:clamp(2.45rem,11vw,3.45rem)}
  .hero-copy-discovery .hero-lead{font-size:1rem;line-height:1.6}
  .hero-topic-nav{margin-top:20px;gap:6px}
  .hero-topic-nav>span{width:100%;margin-bottom:2px}
  .hero-topic-nav a{font-size:.7rem}
  .hero-discovery{padding:13px}
  .hero-discovery-head{align-items:start;flex-direction:column;gap:5px}
  .hero-discovery-head strong{max-width:none;text-align:left}
  .hero-discovery-grid{grid-template-columns:1fr 1fr;gap:7px}
  .hero-discovery-grid>a{min-height:112px;padding:12px 31px 12px 12px}
  .hero-discovery-grid strong{font-size:.9rem}
  .hero-discovery-grid small{font-size:.68rem}
  .hero-discovery-grid .discovery-wide{grid-template-columns:28px 1fr 22px;min-height:74px}
  .hero-discovery-grid .discovery-wide small{display:none}
  #services.section{padding-top:54px}
}

@media(max-width:520px){
  .hero-discovery-grid{grid-template-columns:1fr}
  .hero-discovery-grid .discovery-wide{grid-column:auto}
  .hero-discovery-grid>a{min-height:96px}
  .hero-discovery-grid .discovery-wide{display:flex;min-height:96px;align-items:initial;padding-right:31px}
  .hero-discovery-grid .discovery-wide strong{margin:13px 0 5px}
  .hero-discovery-grid .discovery-wide small{display:block}
  .hero-discovery-grid .discovery-wide b{position:absolute;right:12px;top:12px}
}
