.premium-guide-link,
.pp-guide-link{
  display:inline-flex;
  align-items:center;
  gap:5px;
  color:#1769dc;
  font-weight:850;
  text-decoration:none;
}

.premium-guide-link:hover,
.pp-guide-link:hover{
  text-decoration:underline;
}

.premium-guide-link{
  margin-left:14px;
}

.guide-main{
  min-height:100vh;
  padding:42px 28px 90px;
  background:
    linear-gradient(
      180deg,
      #f5f9ff 0%,
      #ffffff 38%
    );
}

.guide-shell{
  width:min(1240px,100%);
  margin:0 auto;
}

.guide-back{
  display:inline-flex;
  margin-bottom:20px;
  color:#1769dc;
  font-weight:850;
  text-decoration:none;
}

.guide-back:hover{
  text-decoration:underline;
}

.guide-hero{
  padding:28px;
  margin-bottom:22px;
  border:1px solid #d6e2ee;
  border-radius:22px;
  background:#fff;
  box-shadow:
    0 14px 40px rgba(30,71,112,.06);
}

.guide-meta .guide-hero{
  border-top:5px solid #88afe9;
}

.guide-dup .guide-hero{
  border-top:5px solid #78bca5;
}

.guide-red .guide-hero{
  border-top:5px solid #c88bc8;
}

.guide-eyebrow{
  margin-bottom:9px;
  color:#1760ae;
  font-size:12px;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.guide-hero h1{
  margin:0;
  color:#102d4d;
  font-size:
    clamp(34px,4.5vw,54px);
  line-height:1.04;
  letter-spacing:-.035em;
}

.guide-intro{
  max-width:900px;
  margin:14px 0 0;
  color:#556e88;
  font-size:18px;
  line-height:1.6;
}

.guide-purpose{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:18px;
}

.guide-purpose span{
  padding:8px 11px;
  border:1px solid #cfdeeb;
  border-radius:999px;
  background:#f9fbfd;
  color:#264867;
  font-size:12px;
  font-weight:800;
}

.guide-search-wrap{
  position:sticky;
  top:10px;
  z-index:10;
  display:flex;
  align-items:center;
  gap:12px;
  padding:12px;
  margin-bottom:22px;
  border:1px solid #d2dfec;
  border-radius:16px;
  background:
    rgba(255,255,255,.96);
  box-shadow:
    0 10px 28px
    rgba(30,71,112,.08);
  backdrop-filter:blur(12px);
}

.guide-search-wrap strong{
  flex:0 0 auto;
  color:#173550;
  font-size:13px;
}

.guide-search{
  width:100%;
  box-sizing:border-box;
  padding:12px 14px;
  border:1px solid #bdd0e1;
  border-radius:11px;
  color:#15314c;
  background:#fff;
  font:inherit;
  outline:none;
}

.guide-search:focus{
  border-color:#2b74d8;
  box-shadow:
    0 0 0 3px
    rgba(43,116,216,.11);
}

.guide-section{
  margin-top:30px;
}

.guide-section-head{
  margin-bottom:14px;
}

.guide-section h2{
  margin:0 0 5px;
  color:#102e4c;
  font-size:27px;
}

.guide-section-head p{
  margin:0;
  color:#62788e;
  line-height:1.55;
}

.guide-quick{
  display:grid;
  grid-template-columns:
    repeat(5,minmax(0,1fr));
  gap:11px;
}

.guide-step{
  padding:16px;
  border:1px solid #d8e3ed;
  border-radius:15px;
  background:#fff;
}

.guide-step-num{
  display:grid;
  place-items:center;
  width:28px;
  height:28px;
  margin-bottom:9px;
  border-radius:50%;
  background:#1769dc;
  color:#fff;
  font-size:12px;
  font-weight:900;
}

.guide-step strong{
  display:block;
  margin-bottom:5px;
  color:#15334f;
}

.guide-step p{
  margin:0;
  color:#5d7388;
  font-size:13px;
  line-height:1.5;
}

.guide-jumps{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  margin-top:14px;
}

.guide-jumps a{
  padding:7px 10px;
  border:1px solid #d5e1eb;
  border-radius:999px;
  background:#fff;
  color:#355a7d;
  text-decoration:none;
  font-size:12px;
  font-weight:750;
}

.guide-jumps a:hover{
  border-color:#8eb6de;
  color:#1769dc;
}

.guide-grid{
  display:grid;
  grid-template-columns:
    repeat(2,minmax(0,1fr));
  gap:14px;
}

.guide-item{
  scroll-margin-top:95px;
  padding:20px;
  border:1px solid #d8e3ed;
  border-radius:17px;
  background:#fff;
  box-shadow:
    0 8px 22px
    rgba(30,71,112,.04);
}

.guide-item[hidden]{
  display:none !important;
}

.guide-item h3{
  margin:0 0 8px;
  color:#133250;
  font-size:19px;
}

.guide-item .guide-what{
  margin:0 0 10px;
  color:#425f79;
  font-weight:700;
  line-height:1.5;
}

.guide-item p{
  margin:7px 0 0;
  color:#5b7288;
  line-height:1.58;
}

.guide-item .guide-tip{
  margin-top:12px;
  padding:11px 12px;
  border-radius:11px;
  background:#f2f7fb;
  color:#3d5f7d;
  font-size:13px;
}

.guide-safety{
  display:grid;
  grid-template-columns:
    repeat(2,minmax(0,1fr));
  gap:14px;
}

.guide-note{
  padding:18px;
  border:1px solid #d7e3ed;
  border-radius:16px;
  background:#fff;
}

.guide-note strong{
  display:block;
  margin-bottom:6px;
  color:#173550;
}

.guide-note p{
  margin:0;
  color:#5d7388;
  line-height:1.55;
}

.guide-empty{
  display:none;
  padding:26px;
  margin-top:20px;
  border:1px dashed #bdccda;
  border-radius:16px;
  text-align:center;
  color:#60758a;
}

.guide-empty.is-visible{
  display:block;
}

.guide-bottom{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:16px;
  margin-top:36px;
  padding:22px;
  border-radius:18px;
  background:#102f4e;
  color:#fff;
}

.guide-bottom strong{
  display:block;
  margin-bottom:5px;
}

.guide-bottom p{
  margin:0;
  opacity:.82;
}

.guide-bottom a{
  flex:0 0 auto;
  padding:11px 15px;
  border-radius:10px;
  background:#fff;
  color:#123555;
  text-decoration:none;
  font-weight:850;
}

.pp-tool-highlights{
  display:grid;
  gap:6px;
  margin:11px 0 0;
  padding:0;
  list-style:none;
}

.pp-tool-highlights li{
  position:relative;
  padding-left:17px;
  color:#435f78;
  font-size:12px;
  line-height:1.4;
}

.pp-tool-highlights li::before{
  position:absolute;
  left:0;
  content:"✓";
  color:#1769dc;
  font-weight:900;
}

.pp-guide-link{
  margin-top:12px;
  font-size:12px;
}

@media(max-width:900px){
  .guide-quick{
    grid-template-columns:
      repeat(2,minmax(0,1fr));
  }

  .guide-grid,
  .guide-safety{
    grid-template-columns:1fr;
  }
}

@media(max-width:650px){
  .guide-main{
    padding:26px 15px 60px;
  }

  .guide-hero{
    padding:21px;
  }

  .guide-search-wrap{
    position:static;
    display:block;
  }

  .guide-search-wrap strong{
    display:block;
    margin-bottom:8px;
  }

  .guide-quick{
    grid-template-columns:1fr;
  }

  .guide-bottom{
    flex-direction:column;
    align-items:stretch;
  }

  .guide-bottom a{
    text-align:center;
  }

  .premium-guide-link{
    margin:
      10px 0 0 0;
  }
}
