/* SEO text blocks (shop, categories, landings): cards, steps, sticky TOC, callouts, product cards, FAQ accordion */
.fa-seo{max-width:1180px;margin:44px auto 8px;padding:0 16px}
.fa-seo *{box-sizing:border-box}

/* trust strip */
.fa-seo__trust{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:18px}
.fa-seo__trust-item{display:flex;align-items:center;gap:12px;padding:14px 16px;border:1px solid rgba(255,255,255,.08);border-radius:16px;background:linear-gradient(135deg,rgba(45,127,249,.12),rgba(15,18,24,.7))}
.fa-seo__trust-ico{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:rgba(45,127,249,.18);font-size:19px;flex:none}
.fa-seo__trust-v{font-weight:800;color:#fff;font-size:16px;line-height:1.2}
.fa-seo__trust-l{font-size:12.5px;color:rgba(231,236,255,.62);margin-top:2px}

/* layout */
.fa-seo__layout{display:grid;grid-template-columns:250px minmax(0,1fr);gap:20px;align-items:start}
.fa-seo__toc{position:sticky;top:96px;border:1px solid rgba(255,255,255,.08);border-radius:16px;background:rgba(15,18,24,.78);padding:16px 14px;max-height:calc(100vh - 120px);overflow:auto}
.fa-seo__toc-title{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:#9fb2d3;font-weight:800;margin:0 4px 10px}
.fa-seo__toc ol{list-style:none;margin:0;padding:0;counter-reset:toc}
.fa-seo__toc li{counter-increment:toc;margin:0}
.fa-seo__toc a{display:flex;gap:8px;padding:7px 8px;border-radius:8px;color:rgba(231,236,255,.78);font-size:13.5px;line-height:1.35;text-decoration:none}
.fa-seo__toc a::before{content:counter(toc);flex:none;width:20px;height:20px;border-radius:6px;background:rgba(45,127,249,.18);color:#7fb2ff;font-size:11.5px;font-weight:800;display:grid;place-items:center;margin-top:1px}
.fa-seo__toc a:hover{background:rgba(255,255,255,.06);color:#fff}
.fa-seo__main{display:flex;flex-direction:column;gap:16px;min-width:0}

/* section cards */
.fa-seo__sec{border:1px solid rgba(255,255,255,.08);border-radius:20px;background:rgba(15,18,24,.72);box-shadow:0 18px 55px rgba(0,0,0,.2);padding:26px 28px;scroll-margin-top:96px}
.fa-seo__head{display:flex;align-items:center;gap:14px;margin-bottom:14px}
.fa-seo__ico{display:grid;place-items:center;flex:none;width:44px;height:44px;border-radius:13px;background:rgba(45,127,249,.16);border:1px solid rgba(45,127,249,.3);font-size:21px}
.fa-seo__sec h2{margin:0;color:#fff;font-size:clamp(20px,2.2vw,26px);line-height:1.2;font-weight:800;scroll-margin-top:96px}
.fa-seo__sec h3{margin:0;color:#fff;font-size:16.5px;font-weight:700;line-height:1.35}
.fa-seo__body > *:first-child{margin-top:0}
.fa-seo__body p{margin:0 0 12px;max-width:80ch;color:rgba(231,236,255,.8);font-size:15.5px;line-height:1.75}
.fa-seo__body a{color:#7fb2ff;font-weight:600;text-decoration:none;border-bottom:1px solid rgba(127,178,255,.3)}
.fa-seo__body a:hover{color:#fff;border-color:#fff}
.fa-seo__body strong{color:#fff}

/* lead (opening text + image) */
.fa-seo__sec--lead{background:linear-gradient(135deg,rgba(45,127,249,.14),rgba(15,18,24,.78));border-color:rgba(45,127,249,.28)}
.fa-seo__sec--lead .fa-seo__body > p:first-of-type{font-size:18px;line-height:1.65;color:#eef2ff}
.fa-seo__sec--lead figure.wp-block-image{float:right;margin:0 0 12px 22px;max-width:240px}
.fa-seo__sec--lead::after{content:"";display:block;clear:both}
.fa-seo__body figure.wp-block-image{margin:6px 0 16px}
.fa-seo__body figure.wp-block-image img{display:block;width:100%;max-width:280px;height:auto;border-radius:16px;border:1px solid rgba(255,255,255,.1);box-shadow:0 12px 30px rgba(0,0,0,.35)}

/* Rank Math TOC block: kept in the content for SEO tools, hidden where the sticky TOC shows */
.fa-seo__body .wp-block-rank-math-toc-block{clear:both;border:1px solid rgba(255,255,255,.1);border-radius:14px;background:rgba(255,255,255,.03);padding:14px 18px;margin-top:10px}
.fa-seo__body .wp-block-rank-math-toc-block h2{margin:0 0 8px;font-size:16px}
.fa-seo__body .wp-block-rank-math-toc-block ul{list-style:none;margin:0;padding:0;columns:2;column-gap:22px}
.fa-seo__body .wp-block-rank-math-toc-block li{margin:0 0 6px;break-inside:avoid;font-size:14.5px;border:0;padding:0;background:none;display:block}
.fa-seo__body .wp-block-rank-math-toc-block li::before{display:none}
.fa-seo__body .wp-block-rank-math-toc-block li a{border:0}

/* lists -> check cards */
.fa-seo__body ul{list-style:none;margin:6px 0 14px;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.fa-seo__body ul li{position:relative;padding:12px 14px 12px 44px;border:1px solid rgba(255,255,255,.08);border-radius:14px;background:rgba(255,255,255,.035);color:rgba(231,236,255,.82);font-size:14.5px;line-height:1.6}
.fa-seo__body ul li::before{content:"✓";position:absolute;left:12px;top:12px;width:22px;height:22px;border-radius:50%;background:rgba(45,127,249,.22);color:#7fb2ff;font-size:12px;font-weight:800;display:grid;place-items:center}
/* lists whose items are just a link -> link cards */
.fa-seo__body ul li:has(> a:only-child){padding:0}
.fa-seo__body ul li:has(> a:only-child)::before{display:none}
.fa-seo__body ul li:has(> a:only-child) > a{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:13px 16px;border:0;font-weight:700}
.fa-seo__body ul li:has(> a:only-child) > a::after{content:"→";color:#7fb2ff}
.fa-seo__body ul li:has(> a:only-child):hover{border-color:rgba(127,178,255,.5);background:rgba(45,127,249,.1)}

/* numbered steps */
.fa-seo__body ol{list-style:none;margin:8px 0 16px;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px;counter-reset:fa-step}
.fa-seo__body ol li{counter-increment:fa-step;position:relative;padding:44px 16px 14px;border:1px solid rgba(255,255,255,.08);border-radius:16px;background:rgba(255,255,255,.035);color:rgba(231,236,255,.82);font-size:14.5px;line-height:1.6}
.fa-seo__body ol li::before{content:counter(fa-step);position:absolute;left:16px;top:12px;width:26px;height:26px;border-radius:50%;background:#2d7ff9;color:#fff;font-weight:800;font-size:13px;display:grid;place-items:center;box-shadow:0 6px 16px rgba(45,127,249,.45)}

/* glossary */
.fa-seo__sec--glossary .fa-seo__body ul{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}
.fa-seo__sec--glossary .fa-seo__body ul li::before{content:"Aa";width:26px;border-radius:8px;font-size:11px}

/* callouts */
.fa-seo__sec--safe{border-color:rgba(52,199,89,.35);background:linear-gradient(135deg,rgba(52,199,89,.09),rgba(15,18,24,.75))}
.fa-seo__sec--safe .fa-seo__ico{background:rgba(52,199,89,.18);border-color:rgba(52,199,89,.4)}
.fa-seo__sec--warn{border-color:rgba(255,184,0,.4);background:linear-gradient(135deg,rgba(255,184,0,.1),rgba(15,18,24,.75))}
.fa-seo__sec--warn .fa-seo__ico{background:rgba(255,184,0,.18);border-color:rgba(255,184,0,.45)}
.fa-seo__sec--warn .fa-seo__body ul li::before{content:"!";background:rgba(255,184,0,.25);color:#ffc83d}

/* tables */
.fa-seo__body table{width:100%;border-collapse:separate;border-spacing:0;margin:8px 0 16px;font-size:14.5px;border:1px solid rgba(255,255,255,.08);border-radius:14px;overflow:hidden}
.fa-seo__body th,.fa-seo__body td{padding:12px 14px;text-align:left;vertical-align:top;border-bottom:1px solid rgba(255,255,255,.07)}
.fa-seo__body th{background:rgba(45,127,249,.14);color:#cfe0ff;font-size:12.5px;letter-spacing:.05em;text-transform:uppercase}
.fa-seo__body tr:last-child td{border-bottom:0}
.fa-seo__body td{color:rgba(231,236,255,.82)}

/* product cards */
.fa-pcards{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:12px;margin:8px 0 16px}
.fa-seo__body a.fa-pcard,.fa-pcard{display:flex;flex-direction:column;gap:6px;padding:12px;border:1px solid rgba(255,255,255,.1);border-radius:16px;background:rgba(255,255,255,.04);text-decoration:none;transition:transform .15s,border-color .15s}
.fa-pcard:hover{transform:translateY(-2px);border-color:rgba(127,178,255,.55)}
.fa-pcard img{width:100%;height:auto;aspect-ratio:1/1;object-fit:cover;border-radius:12px;display:block}
.fa-pcard__name{color:#fff;font-weight:700;font-size:14px;line-height:1.3}
.fa-pcard__price{color:#7fb2ff;font-weight:800;font-size:15px}
.fa-pcard__price del{color:rgba(231,236,255,.68);font-weight:500;margin-right:6px}
.fa-pcard__price ins{text-decoration:none}
.fa-pcard__cta{margin-top:auto;color:#fff;background:#1a63d6;border-radius:10px;text-align:center;padding:8px;font-size:13px;font-weight:700}

/* FAQ accordion */
.fa-seo__faq{display:flex;flex-direction:column;gap:10px}
.fa-seo__faq-item{border:1px solid rgba(255,255,255,.09);border-radius:14px;background:rgba(255,255,255,.035);padding:0 18px}
.fa-seo__faq-item summary{cursor:pointer;list-style:none;padding:15px 28px 15px 0;position:relative}
.fa-seo__faq-item summary::-webkit-details-marker{display:none}
.fa-seo__faq-item summary::after{content:"+";position:absolute;right:0;top:50%;transform:translateY(-50%);width:24px;height:24px;border-radius:50%;background:rgba(45,127,249,.2);color:#7fb2ff;display:grid;place-items:center;font-weight:800}
.fa-seo__faq-item[open] summary::after{content:"–"}
.fa-seo__faq-item p{margin:0 0 16px;color:rgba(231,236,255,.78);font-size:15px;line-height:1.7}

/* responsive */
@media (max-width:1000px){
  .fa-seo__layout{grid-template-columns:1fr}
  .fa-seo__toc{display:none}
  .fa-seo__trust{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (min-width:1001px){
  .fa-seo__body .wp-block-rank-math-toc-block{display:none}
}
@media (max-width:760px){
  .fa-seo{margin-top:30px}
  .fa-seo__sec{padding:20px 16px;border-radius:16px}
  .fa-seo__body ul{grid-template-columns:1fr}
  .fa-seo__body .wp-block-rank-math-toc-block ul{columns:1}
  .fa-seo__sec--lead figure.wp-block-image{float:none;margin:0 0 14px;max-width:200px}
  .fa-seo__body table{display:block;overflow-x:auto}
  .fa-seo__trust-item{padding:12px}
}

/* the Rank Math TOC list stays a plain compact list (not cards) */
.fa-seo__body .wp-block-rank-math-toc-block ul{display:block}
.fa-seo__body .wp-block-rank-math-toc-block ul li,
.fa-seo__body .wp-block-rank-math-toc-block ul li:has(> a:only-child){padding:0;border:0;background:none;border-radius:0}
.fa-seo__body .wp-block-rank-math-toc-block ul li:has(> a:only-child) > a{display:inline;padding:0;font-weight:600}
.fa-seo__body .wp-block-rank-math-toc-block ul li:has(> a:only-child) > a::after{display:none}
.fa-seo__body .wp-block-rank-math-toc-block ul li:hover{background:none}
.fa-seo__body .wp-block-rank-math-toc-block li a{font-size:14.5px;line-height:1.4}

/* ===== Blog posts (standard template) ===== */
.fa-seo--post{margin:0;padding:0;max-width:none}
.fa-article__content .fa-seo__sec h2{margin:0;padding:0;border:0}
.fa-article__content .fa-seo__sec h3{margin:0}
.fa-article__content .fa-seo__body p{margin:0 0 12px}
.fa-article__content .fa-seo__body h3{margin:18px 0 8px;font-size:17.5px}
.fa-article__content .fa-seo__body a{text-decoration:none}
.fa-article__content .fa-seo__faq-item summary h3{margin:0}
.fa-article__content .fa-seo__body ul,.fa-article__content .fa-seo__body ol{margin-left:0}
.fa-seo__toc--post{position:sticky;top:96px;max-height:calc(100vh - 120px);overflow:auto;padding:16px 14px}
.fa-seo__toc--post ol{list-style:none;margin:0;padding:0;counter-reset:toc}
.fa-seo__mtoc{display:none;margin-bottom:14px;border:1px solid rgba(255,255,255,.1);border-radius:14px;background:rgba(255,255,255,.04);padding:0 16px}
.fa-seo__mtoc summary{cursor:pointer;padding:14px 0;font-weight:800;color:#fff;list-style:none}
.fa-seo__mtoc summary::-webkit-details-marker{display:none}
.fa-seo__mtoc summary::after{content:"+";float:right;color:#7fb2ff}
.fa-seo__mtoc[open] summary::after{content:"–"}
.fa-seo__mtoc ol{margin:0 0 14px;padding-left:1.2em}
.fa-seo__mtoc li{margin:0 0 8px}
.fa-seo__mtoc a{color:#7fb2ff;font-size:14.5px;text-decoration:none}
.fa-seo__sec--summary{border-color:rgba(45,127,249,.4);background:linear-gradient(135deg,rgba(45,127,249,.16),rgba(15,18,24,.78))}
@media (max-width:1000px){
  .fa-seo__toc--post{display:none}
  .fa-seo__mtoc{display:block}
}
/* the article card clips its hero with overflow:hidden, which breaks position:sticky; clip does not */
.fa-article:has(.fa-seo--post){overflow:clip}
.fa-seo__quote{margin:6px 0 16px;padding:14px 18px;border-left:4px solid #2d7ff9;background:rgba(45,127,249,.1);border-radius:0 14px 14px 0}
.fa-seo__quote p{margin:0!important}
/* sidebar: the whole aside is sticky so the TOC never overlaps the share/help cards */
.fa-article:has(.fa-seo--post) .fa-article__aside{position:sticky;top:96px;align-self:start}
.fa-article:has(.fa-seo--post) .fa-seo__toc--post{position:static;max-height:calc(100vh - 330px);overflow:auto}
/* mobile: let the article column shrink instead of overflowing (tables, long words) */
.fa-article:has(.fa-seo--post) .fa-article__content,.fa-seo--post,.fa-seo--post .fa-seo__main,.fa-seo--post .fa-seo__sec{min-width:0}
@media (max-width:1000px){
  .fa-article:has(.fa-seo--post) .fa-article__body{grid-template-columns:minmax(0,1fr)}
  .fa-seo--post .fa-seo__body{overflow-wrap:anywhere}
}
@media (max-width:760px){.fa-seo__sec--lead .fa-seo__body > p:first-of-type{font-size:16.5px;line-height:1.6}}
