/* Static SEO / AEO landing pages — article layout on the editorial base */
.seo-skiphome { position: absolute; left: -9999px; }
.seo-wrap { width: min(760px, 92%); margin: 0 auto; padding: 5.5rem 0 4rem; }
.seo-crumb { font-size: 0.8rem; color: var(--muted, #9b948a); margin-bottom: 1.4rem; }
.seo-crumb a { color: var(--accent, #2dd4a7); text-decoration: none; }
.seo-crumb span { margin: 0 0.35rem; }
.seo-crumb__cur { color: var(--text-soft, #d4ccba); }

.seo-article { color: var(--text-soft, #d4ccba); }
.seo-cat { font: 500 0.74rem "Inter", sans-serif; letter-spacing: 0.16em; text-transform: uppercase; color: var(--accent, #2dd4a7); margin-bottom: 0.7rem; }
.seo-article h1 { font: 400 clamp(2rem, 5vw, 3rem) "Fraunces", serif; letter-spacing: -0.02em; line-height: 1.05; color: var(--text, #f3ede0); margin-bottom: 0.5rem; }
.seo-aka { font-size: 0.95rem; color: var(--muted, #9b948a); margin-bottom: 1.1rem; }
.seo-lead { font-size: 1.15rem; line-height: 1.6; color: var(--text-soft, #d4ccba); margin-bottom: 1.8rem; }
.seo-article h2 { font: 400 1.4rem "Fraunces", serif; letter-spacing: -0.01em; color: var(--text, #f3ede0); margin: 2.2rem 0 0.7rem; }
.seo-article p { line-height: 1.7; margin-bottom: 0.9rem; font-size: 1rem; }
.seo-list { list-style: none; padding: 0; display: grid; gap: 0.5rem; margin-bottom: 1rem; }
.seo-list li { padding-left: 1.1rem; position: relative; line-height: 1.6; }
.seo-list li::before { content: "—"; position: absolute; left: 0; color: var(--accent, #2dd4a7); }
.seo-list a { color: var(--accent, #2dd4a7); text-decoration: none; }
.seo-note { font-size: 0.86rem; color: var(--muted, #9b948a); border-left: 2px solid rgba(45,212,167,0.3); padding-left: 0.9rem; }
.seo-disclaimer { font-size: 0.78rem; color: var(--muted, #9b948a); line-height: 1.6; border-top: 1px solid var(--border, rgba(243,237,224,0.08)); padding-top: 1.2rem; margin-top: 2.5rem; }

/* biomarker ranges */
.seo-ranges { display: grid; grid-template-columns: 1fr 1fr; gap: 0.8rem; margin: 1.4rem 0; }
.seo-range { background: var(--bg-alt, #101116); border: 1px solid var(--border, rgba(243,237,224,0.08)); border-radius: 12px; padding: 1rem 1.1rem; }
.seo-range--opt { border-color: rgba(45,212,167,0.35); background: rgba(45,212,167,0.05); }
.seo-range__k { font: 500 0.7rem "Inter", sans-serif; letter-spacing: 0.06em; text-transform: uppercase; color: var(--muted, #9b948a); margin-bottom: 0.3rem; }
.seo-range__v { font: 400 1.3rem "Fraunces", serif; color: var(--text, #f3ede0); }

/* regenerative verdict */
.seo-verdict { display: inline-block; font: 500 0.8rem "Inter", sans-serif; padding: 0.35rem 0.8rem; border-radius: 999px; margin-bottom: 1.1rem; }
.seo-verdict--evidence-based { background: rgba(45,212,167,0.14); color: #48e0b8; }
.seo-verdict--investigational { background: rgba(96,165,250,0.14); color: #7fb8ff; }
.seo-verdict--early-mixed { background: rgba(244,178,82,0.14); color: #f4b252; }
.seo-verdict--hype { background: rgba(240,145,122,0.16); color: #f0917a; }
.seo-verdict--avoid { background: rgba(248,113,113,0.16); color: #f87171; }
.seo-reality { color: var(--text, #f3ede0); border-left: 2px solid rgba(248,113,113,0.4); padding-left: 0.9rem; }

/* structure image */
.seo-mol { margin: 1rem 0; }
.seo-mol img { max-width: 320px; background: #fff; border-radius: 12px; padding: 8px; }
.seo-mol figcaption { font-size: 0.78rem; color: var(--muted, #9b948a); margin-top: 0.4rem; }
.seo-mol a { color: var(--accent, #2dd4a7); }

/* FAQ */
.seo-faq { margin: 1.5rem 0; }
.seo-faq__item { border-top: 1px solid var(--border, rgba(243,237,224,0.08)); padding: 0.9rem 0; }
.seo-faq__item summary { cursor: pointer; font: 500 1.02rem "Inter", sans-serif; color: var(--text, #f3ede0); list-style: none; }
.seo-faq__item summary::-webkit-details-marker { display: none; }
.seo-faq__item summary::before { content: "＋ "; color: var(--accent, #2dd4a7); }
.seo-faq__item[open] summary::before { content: "− "; }
.seo-faq__item p { margin-top: 0.6rem; color: var(--text-soft, #d4ccba); }

/* CTAs + related */
.seo-cta { background: rgba(45,212,167,0.06); border: 1px solid rgba(45,212,167,0.25); border-radius: 14px; padding: 1.2rem 1.3rem; margin: 1.6rem 0; }
.seo-cta p { margin-bottom: 0.8rem; }
.seo-btn { display: inline-block; font: 500 0.9rem "Inter", sans-serif; background: var(--accent, #2dd4a7); color: #04130d; padding: 0.6rem 1.2rem; border-radius: 999px; text-decoration: none; }
.seo-btn--ghost { background: transparent; border: 1px solid var(--border-strong, rgba(243,237,224,0.2)); color: var(--text, #f3ede0); }
.seo-explore { display: flex; flex-wrap: wrap; gap: 0.6rem; margin: 1.6rem 0; }
.seo-related { display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 0.7rem; margin: 0.8rem 0 1rem; }
.seo-related--wide { grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); }
.seo-related a { display: flex; flex-direction: column; gap: 0.15rem; background: var(--bg-alt, #101116); border: 1px solid var(--border, rgba(243,237,224,0.08)); border-radius: 12px; padding: 0.8rem 0.95rem; text-decoration: none; }
.seo-related a:hover { border-color: rgba(45,212,167,0.35); }
.seo-related span { color: var(--text, #f3ede0); font-weight: 500; font-size: 0.95rem; }
.seo-related em { color: var(--muted, #9b948a); font-size: 0.76rem; font-style: normal; }

/* internal-link index footer */
.seo-index { border-top: 1px solid var(--border, rgba(243,237,224,0.08)); margin-top: 3rem; padding-top: 1.5rem; }
.seo-index__h { font: 500 0.74rem "Inter", sans-serif; letter-spacing: 0.14em; text-transform: uppercase; color: var(--muted, #9b948a); margin-bottom: 0.9rem; }
.seo-index__grid { display: flex; flex-wrap: wrap; gap: 0.4rem 1rem; }
.seo-index__grid a { font-size: 0.85rem; color: var(--text-soft, #d4ccba); text-decoration: none; }
.seo-index__grid a:hover { color: var(--accent, #2dd4a7); }

@media (max-width: 560px) { .seo-ranges { grid-template-columns: 1fr; } .seo-wrap { padding-top: 4.5rem; } }
