.page-head{
  padding-bottom:1.2rem;
  position:relative;
}
.page-head::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:-6px;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(43,103,246,.22),transparent);
}

.timeline-preview{
  display:grid;
  gap:1rem;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
}
.timeline-zone{position:relative}
.timeline-progress{
  position:sticky;
  top:92px;
  height:8px;
  border-radius:999px;
  background:#e8edf5;
  overflow:hidden;
  margin-bottom:1.2rem;
  border:1px solid rgba(43,103,246,.15);
}
.timeline-progress span{
  display:block;
  height:100%;
  width:20%;
  background:linear-gradient(90deg,var(--accent),var(--green),var(--blue));
}
.timeline-list{display:grid;gap:1rem}
.timeline-item{
  border:1px solid var(--border);
  background:linear-gradient(180deg,#fff,#f8fbff);
  border-radius:18px;
  padding:1rem 1rem 1rem 1.1rem;
  position:relative;
}
.timeline-item::before{
  content:"";
  position:absolute;
  left:-1px;
  top:-1px;
  bottom:-1px;
  width:4px;
  border-radius:18px 0 0 18px;
  background:linear-gradient(180deg,var(--accent),var(--green));
}

.chart{
  width:100%;
  min-height:220px;
  border:1px solid var(--border);
  border-radius:18px;
  background:linear-gradient(180deg,#fff,#f8fbff);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.75);
}
.section-chart-teaser .two-col{
  align-items:stretch;
}
.section-chart-teaser .two-col > div{
  display:grid;
  align-content:center;
  gap:.5rem;
}
.section-chart-teaser .chart{
  min-height:260px;
  border:1px solid rgba(210,224,245,.24);
  border-radius:18px;
  background:linear-gradient(180deg,rgba(8,16,28,.88),rgba(10,20,34,.74));
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.04),0 12px 32px rgba(6,10,18,.34);
}

.article-layout{
  max-width:76ch;
  background:#fff;
  border:1px solid var(--border);
  border-radius:20px;
  padding:1.2rem;
  box-shadow:var(--shadow);
}
.meta{font-family:"JetBrains Mono",monospace;color:var(--muted);font-size:.85rem}
.legal-copy{max-width:84ch}
.legal-copy h2{color:#f2f7ff;text-shadow:0 2px 12px rgba(0,0,0,.42)}
.legal-copy p{color:#d6e1f3;text-shadow:0 1px 8px rgba(0,0,0,.3)}
.legal-copy a{
  color:#f2cc82;
  text-decoration:underline;
  text-underline-offset:2px;
}

.form-shell{
  max-width:680px;
  border:1px solid rgba(151,182,236,.24);
  border-radius:22px;
  padding:1.1rem;
  background:linear-gradient(160deg, rgba(14,22,36,.84), rgba(10,16,28,.74));
  box-shadow:0 16px 38px rgba(4,9,18,.42);
  backdrop-filter:blur(8px);
}
.form-shell form{display:grid;gap:.6rem}
.form-shell label{color:#d6e1f3}
.form-shell input,.form-shell textarea{
  border:1px solid rgba(151,182,236,.28);
  border-radius:10px;
  padding:.68rem .78rem;
  background:rgba(8,14,24,.74);
  color:#edf4ff;
}

.mini-note{
  font-size:.9rem;
  color:var(--muted);
  border-left:3px solid var(--accent);
  padding-left:.7rem;
}
.full-illustration{
  border:1px solid var(--border);
  border-radius:20px;
  background:#fff;
  padding:.7rem;
  box-shadow:var(--shadow);
}

.visual-split{
  display:grid;
  grid-template-columns:1.1fr .9fr;
  gap:1rem;
  align-items:start;
}

.blog-layout{
  display:grid;
  grid-template-columns:300px minmax(0,1fr);
  gap:1rem;
  align-items:start;
}
.blog-sidebar{
  position:sticky;
  top:96px;
}
.blog-main{
  display:grid;
  gap:1rem;
}
.blog-feed{
  grid-template-columns:1fr;
}
.blog-feed .card{
  min-height:auto;
}

.blog-sidebar h2,
.blog-sidebar p,
.blog-sidebar li{
  display:flex;
  gap:.5rem;
  align-items:center;
}
.blog-sidebar ul{
  margin:.25rem 0 0;
  padding-left:1rem;
  display:grid;
  gap:.4rem;
}
.blog-sidebar a{
  color:#9adfff;
}
.blog-sidebar .mini-note{
  color:#4a5972;
}
.limits-list{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:.85rem;
  margin-top:.8rem;
}
.limits-list article{
  border:1px solid rgba(14,23,38,.12);
  border-radius:14px;
  padding:.82rem .9rem;
  background:#fff;
}
.limits-list h3{
  margin-bottom:.35rem;
  font-size:1.05rem;
}
.limits-list p{
  margin:0;
}

/* Homepage FAQ refinement */
.home-faq .container{
  background:rgba(255,255,255,.94);
  border:1px solid rgba(14,23,38,.12);
  border-radius:20px;
  padding:1rem 1.1rem;
  box-shadow:0 10px 24px rgba(18,34,63,.08);
}
.home-faq h2{
  color:#0f1a2d !important;
  text-shadow:none !important;
}
.home-faq .accordion details{
  background:#fff;
  border:1px solid rgba(14,23,38,.12);
  border-radius:12px;
  padding:.78rem .95rem;
}
.home-faq .accordion summary{
  color:#13233c;
  font-weight:700;
}
.home-faq .accordion p{
  color:#2a3d5a;
  margin:.45rem 0 0;
}
.home-faq .text-link{
  color:#184e95 !important;
  margin-top:.55rem;
}

@media (max-width:900px){
  .visual-split{grid-template-columns:1fr}
  .blog-layout{grid-template-columns:1fr}
  .blog-sidebar{position:static}
  .limits-list{grid-template-columns:1fr}
}
