/* Gurjas Research Tools — operating-system workspace */
body:has(.tool-nav){
  --tos-cyan:#70d6ff;
  --tos-blue:#2f8fff;
  --tos-violet:#817cff;
  --tos-gold:#e3c46d;
  --tos-ink:#031126;
  --tos-panel:#071f43;
  --tos-line:rgba(139,211,255,.2);
  background:#031126;
}

body:has(.tool-nav) main{overflow:clip;background:#f5f1e7}

/* Split-screen tools command hero */
body:has(.tool-nav) .hero{
  min-height:clamp(690px,88svh,900px);
  display:flex;
  align-items:center;
  overflow:hidden;
  isolation:isolate;
  padding:clamp(7.5rem,11vw,10rem) 0 clamp(5.5rem,9vw,8rem);
  background:
    radial-gradient(800px 580px at 12% 18%,rgba(48,142,255,.24),transparent 72%),
    radial-gradient(720px 620px at 88% 55%,rgba(129,124,255,.19),transparent 74%),
    linear-gradient(135deg,#020b1c 0%,#041830 47%,#062451 100%);
  border-bottom:1px solid rgba(139,211,255,.16);
}
body:has(.tool-nav) .hero::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  background-image:
    linear-gradient(rgba(130,206,255,.045) 1px,transparent 1px),
    linear-gradient(90deg,rgba(130,206,255,.045) 1px,transparent 1px);
  background-size:56px 56px;
  mask-image:linear-gradient(90deg,#000,rgba(0,0,0,.92) 58%,transparent);
}
body:has(.tool-nav) .hero .wrap{
  width:100%;
  max-width:1440px;
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(420px,.95fr);
  gap:clamp(3rem,7vw,8rem);
  align-items:center;
}
body:has(.tool-nav) .hero .wrap::after{
  content:"RESEARCH\AOPERATING SYSTEM";
  white-space:pre;
  position:relative;
  justify-self:stretch;
  min-height:520px;
  display:grid;
  place-items:center;
  border:1px solid var(--tos-line);
  border-radius:30px;
  color:rgba(226,244,255,.9);
  font-family:var(--mono);
  font-size:clamp(.72rem,1vw,.9rem);
  font-weight:700;
  line-height:1.9;
  letter-spacing:.28em;
  text-align:center;
  background:
    radial-gradient(circle at center,rgba(70,177,255,.18) 0 7%,transparent 8% 19%,rgba(112,214,255,.12) 20% 21%,transparent 22% 36%,rgba(129,124,255,.1) 37% 38%,transparent 39%),
    conic-gradient(from 12deg at 50% 50%,transparent 0 10%,rgba(112,214,255,.32) 10% 12%,transparent 12% 29%,rgba(227,196,109,.3) 29% 31%,transparent 31% 49%,rgba(129,124,255,.3) 49% 51%,transparent 51% 72%,rgba(112,214,255,.24) 72% 75%,transparent 75%),
    linear-gradient(rgba(133,210,255,.045) 1px,transparent 1px),
    linear-gradient(90deg,rgba(133,210,255,.045) 1px,transparent 1px),
    linear-gradient(145deg,rgba(8,39,82,.92),rgba(3,18,43,.86));
  background-size:100% 100%,100% 100%,38px 38px,38px 38px,100% 100%;
  box-shadow:0 42px 120px rgba(0,6,22,.46),inset 0 1px rgba(255,255,255,.07),0 0 90px rgba(48,142,255,.1);
}
body:has(.tool-nav) .hero .eyebrow{color:var(--tos-gold)}
body:has(.tool-nav) .hero h1{
  max-width:8.8ch;
  font-size:clamp(4.5rem,7.5vw,8rem);
  line-height:.9;
  letter-spacing:-.06em;
  text-align:left;
}
body:has(.tool-nav) .hero .lede{
  max-width:42rem;
  font-size:clamp(1.08rem,1.65vw,1.3rem);
  line-height:1.65;
}

/* Main directory shell */
body:has(.tool-nav) main>.hero+section{
  position:relative;
  padding:clamp(5.5rem,9vw,8.5rem) 0 clamp(7rem,11vw,11rem);
  background:
    radial-gradient(850px 520px at 8% 4%,rgba(47,143,255,.08),transparent 74%),
    linear-gradient(180deg,#f8f4eb,#eee7d8);
}
body:has(.tool-nav) main>.hero+section::after{
  content:"14 GOVERNED WORKFLOWS";
  position:absolute;
  top:2.2rem;
  right:clamp(1.3rem,4vw,4rem);
  color:rgba(6,38,78,.24);
  font-family:var(--mono);
  font-size:.66rem;
  letter-spacing:.22em;
}
body:has(.tool-nav) main>.hero+section>.wrap{
  max-width:1440px;
  display:grid;
  grid-template-columns:minmax(230px,.27fr) minmax(0,.73fr);
  column-gap:clamp(3.5rem,7vw,7.5rem);
  align-items:start;
}
body:has(.tool-nav) main>.hero+section>.wrap>.section-h{
  position:sticky;
  top:7.5rem;
  grid-column:1;
  max-width:none;
  margin:0;
  padding:2rem;
  border:1px solid rgba(6,38,78,.13);
  border-radius:20px;
  background:rgba(255,253,248,.82);
  box-shadow:0 24px 70px rgba(4,18,38,.09),inset 0 1px rgba(255,255,255,.9);
  backdrop-filter:blur(16px);
}
body:has(.tool-nav) main>.hero+section>.wrap>.section-h h2{
  font-size:clamp(2rem,3vw,3rem);
  line-height:1.05;
}
body:has(.tool-nav) .tool-nav{
  display:grid;
  gap:.7rem;
  margin-top:2rem;
}
body:has(.tool-nav) .tool-nav a{
  width:100%;
  justify-content:space-between;
  border-radius:10px;
  padding:.9rem 1rem;
  background:#fff;
  box-shadow:0 8px 24px rgba(4,18,38,.04);
}
body:has(.tool-nav) .tool-nav a:hover,
body:has(.tool-nav) .tool-nav a:focus-visible{
  color:var(--navy);
  border-color:var(--tos-blue);
  background:#f6fbff;
}
body:has(.tool-nav) .tool-nav span{
  background:linear-gradient(135deg,var(--tos-blue),var(--tos-violet));
  box-shadow:0 0 0 4px rgba(47,143,255,.08);
}

body:has(.tool-nav) .tool-group,
body:has(.tool-nav) .note{
  grid-column:2;
}
body:has(.tool-nav) .tool-group{
  position:relative;
  margin:0 0 clamp(5rem,8vw,8rem)!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
}
body:has(.tool-nav) .tool-group::before{
  content:"";
  position:absolute;
  left:1.6rem;
  top:5.2rem;
  bottom:-4rem;
  width:1px;
  background:linear-gradient(var(--tos-blue),rgba(47,143,255,.08));
}
body:has(.tool-nav) .tool-group:last-of-type::before{display:none}
body:has(.tool-nav) .tool-group-head{
  grid-template-columns:3.2rem minmax(0,1fr);
  max-width:none;
  margin:0 0 2rem;
  padding:0;
}
body:has(.tool-nav) .tool-group-head>span{
  position:relative;
  z-index:1;
  width:3.2rem;
  height:3.2rem;
  display:grid;
  place-items:center;
  border:1px solid rgba(47,143,255,.34);
  border-radius:50%;
  color:#fff;
  background:linear-gradient(135deg,#0b67da,#685ee7);
  box-shadow:0 0 0 8px #f2ecdf,0 16px 42px rgba(47,143,255,.22);
  font-family:var(--mono);
  font-style:normal;
  font-size:.68rem;
  letter-spacing:.08em;
}
body:has(.tool-nav) .tool-group-head h2{
  margin:0 0 .5rem;
  font-size:clamp(2rem,3.6vw,3.25rem);
  line-height:1.04;
}
body:has(.tool-nav) .tool-group-head p{max-width:54rem;font-size:1rem}

/* Workflow/card architecture */
body:has(.tool-nav) .tool-group .grid{
  gap:1rem;
  padding-left:4.8rem;
}
body:has(.tool-nav) .tool-group .card{
  position:relative;
  min-height:250px;
  padding:clamp(1.5rem,2.7vw,2.25rem);
  border:1px solid rgba(6,38,78,.13);
  border-top:1px solid rgba(6,38,78,.18);
  border-radius:18px;
  background:
    radial-gradient(260px 160px at 100% 0%,rgba(47,143,255,.1),transparent 74%),
    linear-gradient(145deg,#fff,#f8f3e8);
  box-shadow:0 24px 64px rgba(4,18,38,.085),inset 0 1px rgba(255,255,255,.92);
  overflow:hidden;
}
body:has(.tool-nav) .tool-group .card::after{
  content:"↗";
  position:absolute;
  right:1.25rem;
  bottom:1.1rem;
  width:2.15rem;
  height:2.15rem;
  display:grid;
  place-items:center;
  border:1px solid rgba(47,143,255,.22);
  border-radius:50%;
  color:#0b67da;
  background:#fff;
  font-size:.9rem;
}
body:has(.tool-nav) .tool-group .card:hover{
  transform:translateY(-7px);
  border-color:rgba(47,143,255,.34);
  box-shadow:0 34px 90px rgba(4,18,38,.14),0 0 0 5px rgba(47,143,255,.04);
}
body:has(.tool-nav) .tool-group .card .num{
  display:inline-flex;
  width:max-content;
  padding:.4rem .7rem;
  border-radius:999px;
  color:#714f08;
  background:rgba(227,196,109,.2);
  font-family:var(--mono);
  font-style:normal;
  font-size:.62rem;
  font-weight:700;
  letter-spacing:.09em;
  text-transform:uppercase;
}
body:has(.tool-nav) .tool-group .card h3{
  max-width:18ch;
  font-size:clamp(1.35rem,2.1vw,1.8rem);
  line-height:1.16;
}
body:has(.tool-nav) .tool-group .card p{padding-right:2rem;font-size:.93rem}
body:has(.tool-nav) #decision-workflows .card{
  min-height:300px;
  color:#dbe9f8;
  border-color:rgba(132,211,255,.18);
  background:
    radial-gradient(330px 220px at 92% 0%,rgba(47,143,255,.2),transparent 72%),
    linear-gradient(145deg,#082a58,#04172f);
  box-shadow:0 30px 86px rgba(0,10,31,.28),inset 0 1px rgba(255,255,255,.06);
}
body:has(.tool-nav) #decision-workflows .card h3,
body:has(.tool-nav) #decision-workflows .card h3 a{color:#fff}
body:has(.tool-nav) #decision-workflows .card p{color:#aebed2}
body:has(.tool-nav) #decision-workflows .card::after{
  color:var(--tos-gold);
  border-color:rgba(227,196,109,.25);
  background:rgba(3,17,38,.7);
}

body:has(.tool-nav) main>.hero+section .note{
  margin:0;
  padding:1.4rem 1.5rem;
  border:1px solid rgba(6,38,78,.12);
  border-left:4px solid var(--tos-gold);
  border-radius:12px;
  background:rgba(255,253,248,.8);
}

/* Connected evidence finale */
body:has(.tool-nav) .contextual-knowledge{
  position:relative;
  padding:clamp(6rem,10vw,9rem) 0;
  overflow:hidden;
  color:#dce9f7;
  background:
    radial-gradient(800px 520px at 12% 12%,rgba(47,143,255,.18),transparent 72%),
    radial-gradient(720px 520px at 90% 80%,rgba(129,124,255,.14),transparent 74%),
    linear-gradient(145deg,#020d20,#061d41 58%,#031126);
  border:0;
}
body:has(.tool-nav) .contextual-knowledge__head h2{color:#fff;font-size:clamp(2.4rem,4.7vw,4.5rem);line-height:1.02}
body:has(.tool-nav) .contextual-knowledge__head p{color:#afbed1}
body:has(.tool-nav) .contextual-knowledge__grid{
  gap:1rem;
  padding:0;
  background:transparent;
  border:0;
}
body:has(.tool-nav) .contextual-knowledge__grid li{
  background:linear-gradient(145deg,rgba(13,53,107,.72),rgba(4,23,52,.7));
  border:1px solid rgba(132,211,255,.16);
  border-radius:16px;
  overflow:hidden;
}
body:has(.tool-nav) .contextual-knowledge__card{padding:1.6rem}
body:has(.tool-nav) .contextual-knowledge__type,
body:has(.tool-nav) .contextual-knowledge__card em{color:var(--tos-gold)}
body:has(.tool-nav) .contextual-knowledge__card strong{color:#fff}
body:has(.tool-nav) .contextual-knowledge__card p{color:#aebdd0}
body:has(.tool-nav) .contextual-knowledge__card:hover{background:rgba(42,112,190,.22)}

@media(max-width:1080px){
  body:has(.tool-nav) .hero .wrap{grid-template-columns:1fr}
  body:has(.tool-nav) .hero h1{max-width:11ch}
  body:has(.tool-nav) .hero .wrap::after{min-height:360px}
  body:has(.tool-nav) main>.hero+section>.wrap{grid-template-columns:1fr}
  body:has(.tool-nav) main>.hero+section>.wrap>.section-h{position:relative;top:auto;margin-bottom:5rem}
  body:has(.tool-nav) .tool-group,body:has(.tool-nav) .note{grid-column:1}
  body:has(.tool-nav) .tool-nav{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:720px){
  body:has(.tool-nav) .hero{min-height:auto;padding:5rem 0 4.5rem}
  body:has(.tool-nav) .hero .wrap{gap:3rem;padding-inline:18px}
  body:has(.tool-nav) .hero h1{font-size:clamp(3.4rem,15vw,5rem);line-height:.92}
  body:has(.tool-nav) .hero .wrap::after{min-height:300px;border-radius:20px}
  body:has(.tool-nav) main>.hero+section>.wrap{padding-inline:18px}
  body:has(.tool-nav) main>.hero+section>.wrap>.section-h{padding:1.4rem;margin-bottom:4rem}
  body:has(.tool-nav) .tool-nav{grid-template-columns:1fr}
  body:has(.tool-nav) .tool-group::before{left:1.35rem}
  body:has(.tool-nav) .tool-group-head{grid-template-columns:2.7rem minmax(0,1fr);gap:1rem}
  body:has(.tool-nav) .tool-group-head>span{width:2.7rem;height:2.7rem;box-shadow:0 0 0 6px #f2ecdf}
  body:has(.tool-nav) .tool-group .grid{padding-left:0;grid-template-columns:1fr}
  body:has(.tool-nav) .tool-group .card{min-height:0;padding:1.4rem}
  body:has(.tool-nav) .contextual-knowledge__grid{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){
  body:has(.tool-nav) .tool-group .card{transform:none!important}
}
