/* Editorial and search pages share AICheck's light-blue product tokens. */
.skip-link{
  position:fixed;
  top:8px;
  left:8px;
  z-index:200;
  transform:translateY(-160%);
  min-height:44px;
  display:flex;
  align-items:center;
  padding:9px 14px;
  border-radius:10px;
  background:var(--text);
  color:#fff;
  font-weight:800;
}
.skip-link:focus{transform:translateY(0)}
.seo-main{
  width:100%;
  max-width:1080px;
  margin:0 auto;
  padding:36px calc(20px + env(safe-area-inset-right)) 72px calc(20px + env(safe-area-inset-left));
}
.breadcrumbs{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:5px;
  margin:0 0 22px;
  color:var(--muted-dim);
  font-size:14px;
}
.breadcrumbs a{
  display:inline-flex;
  align-items:center;
  min-height:44px;
  color:var(--accent);
  text-decoration:underline;
  text-underline-offset:3px;
}
.seo-hero{
  max-width:820px;
  margin:0 auto 42px;
  text-align:center;
}
.seo-hero .eyebrow{margin-bottom:12px}
.seo-hero h1{
  margin:0 0 18px;
  font-size:clamp(38px,7vw,64px);
  line-height:1.04;
  letter-spacing:-.035em;
  text-wrap:balance;
}
.seo-hero .seo-lede{
  max-width:720px;
  margin:0 auto 24px;
  color:var(--muted);
  font-size:clamp(18px,2.4vw,21px);
  line-height:1.55;
}
.trust-note{
  max-width:720px;
  margin:22px auto 0;
  padding:13px 15px;
  border:1px solid var(--border);
  border-radius:14px;
  background:rgba(255,255,255,.72);
  color:var(--muted);
  font-size:15px;
  text-align:left;
}
.trust-note strong{color:var(--text)}
.feature-grid,.article-grid,.related-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
}
.feature-card,.article-card{
  min-width:0;
  padding:22px;
  border:1px solid var(--border);
  border-radius:18px;
  background:var(--card);
  box-shadow:0 10px 28px rgba(23,74,112,.06);
}
.feature-card .step{
  width:38px;
  height:38px;
  display:grid;
  place-items:center;
  margin-bottom:15px;
  border-radius:50%;
  background:var(--accent-dim);
  color:var(--accent);
  font-weight:850;
}
.feature-card h2,.feature-card h3,.article-card h2,.article-card h3{
  margin:0 0 8px;
  color:var(--text);
  font-size:20px;
  line-height:1.3;
}
.feature-card p,.article-card p{
  margin:0;
  color:var(--muted);
  font-size:16px;
}
.article-card{
  display:flex;
  flex-direction:column;
}
.article-card .article-label{
  margin-bottom:9px;
  color:var(--accent);
  font-size:13px;
  font-weight:850;
  letter-spacing:.09em;
  text-transform:uppercase;
}
.article-card .article-link{
  display:inline-flex;
  align-items:center;
  min-height:44px;
  margin-top:auto;
  padding-top:14px;
  color:var(--accent);
  font-weight:800;
  text-decoration:underline;
  text-underline-offset:3px;
}
.section-heading{
  max-width:720px;
  margin:54px auto 22px;
  text-align:center;
}
.section-heading h2{
  margin:0 0 7px;
  font-size:clamp(28px,4vw,38px);
  line-height:1.15;
}
.section-heading p{margin:0;color:var(--muted);font-size:17px}
.compare-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
  max-width:820px;
  margin:0 auto;
}
.compare-card{
  padding:22px;
  border:1px solid var(--border);
  border-radius:18px;
  background:var(--card);
}
.compare-card h3{margin:0 0 11px;font-size:20px}
.compare-card ul{margin:0;padding-left:21px;color:var(--muted)}
.compare-card li{margin:8px 0}
.compare-card.caution{border-color:#ddc8a0;background:#fffdf7}
.seo-cta{
  max-width:820px;
  margin:54px auto 0;
  padding:28px;
  border:1px solid #96c5e3;
  border-radius:20px;
  background:linear-gradient(135deg,#e0f3ff,#eefbfa);
  text-align:center;
}
.seo-cta h2{margin:0 0 8px;font-size:28px;line-height:1.2}
.seo-cta p{max-width:620px;margin:0 auto 19px;color:var(--muted);font-size:17px}
.article-head{
  max-width:760px;
  margin:0 auto 34px;
}
.article-head h1{
  margin:0 0 16px;
  font-size:clamp(36px,6.5vw,58px);
  line-height:1.08;
  letter-spacing:-.035em;
  text-wrap:balance;
}
.article-head .article-intro{
  margin:0;
  color:var(--muted);
  font-size:clamp(18px,2.2vw,21px);
  line-height:1.55;
}
.article-meta{
  display:flex;
  flex-wrap:wrap;
  gap:8px 14px;
  margin:17px 0 0;
  color:var(--muted-dim);
  font-size:14px;
}
.prose{
  max-width:760px;
  margin:0 auto;
  overflow-wrap:anywhere;
}
.prose h2{
  margin:42px 0 13px;
  color:var(--text);
  font-size:clamp(25px,3.8vw,32px);
  line-height:1.2;
}
.prose h3{
  margin:28px 0 8px;
  color:var(--text);
  font-size:21px;
  line-height:1.3;
}
.prose p,.prose li{
  color:var(--muted);
  font-size:18px;
  line-height:1.72;
}
.prose p{margin:0 0 18px}
.prose ul,.prose ol{margin:0 0 22px;padding-left:25px}
.prose li{margin:9px 0}
.prose strong{color:var(--text)}
.prose a{color:var(--accent);text-decoration:underline;text-underline-offset:3px}
.callout{
  margin:26px 0;
  padding:18px 20px;
  border-left:4px solid var(--accent);
  border-radius:0 14px 14px 0;
  background:var(--card);
  box-shadow:0 8px 22px rgba(23,74,112,.05);
}
.callout p{margin:0;font-size:17px}
.decision-list{
  list-style:none;
  padding:0!important;
  counter-reset:decision;
}
.decision-list li{
  position:relative;
  min-height:48px;
  padding:12px 14px 12px 58px;
  border:1px solid var(--border-soft);
  border-radius:14px;
  background:rgba(255,255,255,.7);
  counter-increment:decision;
}
.decision-list li::before{
  content:counter(decision);
  position:absolute;
  top:12px;
  left:13px;
  width:32px;
  height:32px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:var(--accent-dim);
  color:var(--accent);
  font-size:15px;
  font-weight:850;
}
.article-related{max-width:900px;margin:58px auto 0}
.article-related h2{text-align:center;font-size:28px}
.article-related .article-grid{grid-template-columns:repeat(2,minmax(0,1fr))}

@media (max-width:760px){
  .feature-grid,.article-grid,.related-grid{grid-template-columns:1fr}
  .compare-grid{grid-template-columns:1fr}
  .seo-main{padding-top:22px;padding-bottom:54px}
  .seo-hero{margin-bottom:30px}
  .article-related .article-grid{grid-template-columns:1fr}
}
@media (max-width:380px){
  .seo-main{padding-left:calc(14px + env(safe-area-inset-left));padding-right:calc(14px + env(safe-area-inset-right))}
  .seo-hero h1,.article-head h1{font-size:34px}
  .seo-hero .seo-lede,.article-head .article-intro{font-size:18px}
  .feature-card,.article-card,.compare-card{padding:18px}
  .prose p,.prose li{font-size:17px}
  .seo-cta{padding:22px 17px}
  .seo-cta .btn{width:100%}
}
