.route-intro{
  display:grid;
  grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);
  gap:56px;
  align-items:center;
}
.route-intro>*{
  min-width:0;
}
.route-heading h1{
  line-height:1.12;
  letter-spacing:-.02em;
}
.route-summary{
  max-width:640px;
  margin-top:20px;
  color:var(--text-muted);
  line-height:1.85;
}
.route-actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:24px;
}
.route-trust{
  margin-top:16px;
  font-size:13px;
  color:var(--text-muted);
}
.route-guide{
  padding:0;
  overflow:hidden;
  box-shadow:var(--shadow-lift);
}
.route-guide-chrome{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:16px;
  padding:16px 24px;
  background:var(--accent);
  color:var(--on-accent-2);
  font-size:12px;
}
.route-guide h2{
  margin:24px 24px 16px;
  font-size:24px;
}
.route-guide-list{
  display:grid;
  gap:0;
  margin:0;
  padding:0 24px 24px;
}
.route-guide-list>div{
  display:grid;
  grid-template-columns:80px minmax(0,1fr);
  gap:16px;
  padding:16px 0;
  border-bottom:1px solid var(--divider);
}
.route-guide-list>div:last-child{
  border-bottom:0;
  padding-bottom:0;
}
.route-guide-list dt{
  font-size:14px;
  font-weight:700;
  color:var(--accent);
}
.route-guide-list dd{
  min-width:0;
  margin:0;
  color:var(--text-muted);
  font-size:14px;
  line-height:1.8;
}
.route-section-head{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  align-items:end;
  gap:32px;
  margin-bottom:28px;
}
.route-section-head>*{
  min-width:0;
}
.route-section-head h2{
  margin-top:12px;
  margin-bottom:0;
}
.route-section-head>p{
  color:var(--text-muted);
  line-height:1.8;
}
.route-region-links{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin-bottom:20px;
}
.route-region-links a{
  display:inline-flex;
  align-items:center;
  min-height:44px;
  padding:9px 20px;
  border:1px solid var(--border);
  border-radius:var(--radius-pill);
  background:var(--bg-panel);
  color:var(--accent);
  font-size:14px;
  font-weight:700;
}
.route-region-links a:hover{
  background:var(--lilac-soft);
}
.route-directory caption{
  padding:16px 20px;
  text-align:left;
  font-size:13px;
  color:var(--text-muted);
  background:var(--bg-panel);
  caption-side:top;
}
.route-directory .line-group{
  scroll-margin-top:var(--chapter-offset);
}
.route-directory .line-group th{
  color:var(--accent);
  background:var(--lilac-faint);
}
.route-directory .data-table td:nth-child(3){
  color:var(--accent);
}
.route-directory .data-table td:last-child{
  color:var(--text-muted);
}
.route-type-list{
  display:grid;
  gap:20px;
}
.route-type{
  display:grid;
  grid-template-columns:minmax(0,.65fr) minmax(0,2fr);
  gap:36px;
}
.route-type>*{
  min-width:0;
}
.route-type-label{
  padding-top:6px;
}
.route-type-label>.mono-text{
  display:block;
  margin-bottom:12px;
  font-size:13px;
  letter-spacing:.08em;
  color:var(--text-faint);
}
.route-type-label h3{
  color:var(--accent);
}
.route-type-copy{
  display:grid;
  gap:16px;
  color:var(--text-muted);
  line-height:1.9;
}
.route-use-section{
  background:var(--bg-panel-2);
  border-top:1px solid var(--border);
  border-bottom:1px solid var(--border);
}
.route-use-section .section-intro h2{
  margin-top:14px;
}
.route-use-list{
  max-width:1000px;
  margin-inline:auto;
}
.route-use{
  display:grid;
  grid-template-columns:minmax(0,.65fr) minmax(0,2fr);
  gap:40px;
  padding-top:32px;
  padding-bottom:32px;
  border-top:1px solid var(--border);
}
.route-use>*{
  min-width:0;
}
.route-use h3{
  color:var(--accent);
  margin:0;
  font-size:21px;
}
.route-use p{
  color:var(--text-muted);
  line-height:1.9;
}
.route-use p+p{
  margin-top:16px;
}
.route-use:last-child{
  padding-bottom:0;
}
.route-reading{
  margin-top:32px;
  padding-top:28px;
  border-top:1px solid var(--border);
}
.route-reading>p{
  max-width:880px;
  color:var(--text-muted);
  font-size:14px;
  line-height:1.85;
  overflow-wrap:anywhere;
}
.route-reading-links{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:20px;
}
.route-intro~section .grid .card{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
}
.route-intro~section .grid .card h3{
  font-size:20px;
}
.route-intro~section .grid .card p{
  margin-bottom:18px;
  color:var(--text-muted);
  font-size:14px;
  line-height:1.9;
}
@media(max-width:1000px){
  .route-intro{
    gap:28px;
    grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);
  }
  .route-guide-list>div{
    grid-template-columns:1fr;
    gap:6px;
  }
}
@media(max-width:768px){
  .route-intro{
    grid-template-columns:1fr;
    gap:32px;
  }
  .route-guide-list>div{
    grid-template-columns:80px minmax(0,1fr);
    gap:16px;
  }
  .route-section-head{
    grid-template-columns:1fr;
    gap:16px;
  }
  .route-type{
    grid-template-columns:1fr;
    gap:24px;
  }
  .route-use{
    grid-template-columns:1fr;
    gap:16px;
  }
}
@media(max-width:640px){
  .route-guide{
    padding:0;
  }
  .route-guide-chrome{
    padding:16px 22px;
  }
  .route-guide h2{
    margin-inline:22px;
  }
  .route-guide-list{
    padding-inline:22px;
  }
  .route-guide-list>div{
    grid-template-columns:1fr;
    gap:6px;
  }
  .route-actions .btn{
    padding-inline:20px;
  }
  .route-region-links{
    gap:8px;
  }
  .route-region-links a{
    padding-inline:16px;
  }
}