/* ============================================================
   listing-seo.css — SEO/content blocks shared by the server-rendered
   directory pages (/yoga-teachers/..., /yoga-jobs/...): breadcrumbs, the
   data-driven intro, "browse by" link lists, and the small status messages
   used by the live comment / question / apply forms.
   ============================================================ */

.breadcrumbs ol{display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px;list-style:none;margin:0;padding:0;font-size:12.5px;color:var(--ink-faint,#8C887D);}
.breadcrumbs li{display:flex;align-items:center;gap:8px;}
.breadcrumbs li + li::before{content:"/";color:var(--line,#E3E1DB);}
.breadcrumbs a{color:inherit;text-decoration:none;}
.breadcrumbs a:hover{color:var(--ink,#1C1B18);text-decoration:underline;}
.breadcrumbs [aria-current]{color:var(--ink-soft,#55524A);font-weight:500;}
.breadcrumbs--dark ol{color:rgba(241,237,224,.55);}
.breadcrumbs--dark li + li::before{color:rgba(241,237,224,.3);}
.breadcrumbs--dark a{color:rgba(241,237,224,.75);}
.breadcrumbs--dark a:hover{color:#FFFDF7;}
.breadcrumbs--dark [aria-current]{color:rgba(241,237,224,.9);max-width:42ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}

.listing-intro{max-width:1240px;margin:0 auto;padding:clamp(28px,4vw,52px) clamp(16px,4vw,32px) clamp(4px,1vw,12px);}
.listing-intro .breadcrumbs{margin-bottom:14px;}
.listing-intro h2{font-family:'Fraunces',serif;font-weight:500;font-size:clamp(24px,3vw,36px);line-height:1.15;letter-spacing:-.02em;color:var(--ink,#1C1B18);margin:0 0 10px;}
.listing-intro p{max-width:74ch;margin:0;font-size:15px;line-height:1.7;color:var(--ink-soft,#55524A);}

.seo-links{background:#171614;padding:0 clamp(20px,4vw,64px);margin:0;}
.seo-links-inner{max-width:1240px;margin:0 auto;padding:clamp(22px,3vw,32px) 0 clamp(26px,3.5vw,36px);border-top:1px solid rgba(237,231,216,.1);display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px 32px;}
.seo-links h2{font-family:'IBM Plex Mono',monospace;font-size:10.5px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:rgba(237,231,216,.45);margin:0 0 10px;}
.seo-links ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px;}
.seo-links a{display:inline-flex;align-items:center;gap:8px;font-size:13px;color:rgba(237,231,216,.65);text-decoration:none;}
.seo-links a:hover{color:#fff;text-decoration:underline;}
.seo-links a span{font-size:10.5px;color:rgba(237,231,216,.5);border:1px solid rgba(237,231,216,.18);border-radius:999px;padding:0 7px;}

/* hero headline suffix on city / locality / specialty pages */
.thero-title .thero-place{display:block;margin-top:.14em;font-size:.4em;font-weight:500;font-style:normal;letter-spacing:-.005em;line-height:1.15;color:rgba(255,253,247,.85);}
.hero-place{display:block;margin-top:.15em;font-size:.55em;font-weight:500;font-style:normal;color:rgba(255,253,247,.85);}

/* live form messages (profile comments / questions, apply button) */
.tp-comment-msg,.rd-apply-msg{margin:10px 0 0;font-size:13px;line-height:1.5;color:var(--ink-soft,#55524A);}
.tp-comment-msg.is-error,.rd-apply-msg.is-error{color:#B23A3A;}
.tp-comment-msg.is-ok,.rd-apply-msg.is-ok{color:#3E7A32;font-weight:600;}
.rd-apply-msg{color:rgba(241,237,224,.85);}
.rd-apply-msg.is-error{color:#FFB4A2;}
.rd-apply-msg.is-ok{color:#B9E6A8;}
