/* Recovery Familia discussion architecture: substantive directory + individual room guides. */
.rf-editorial-hero{
  position:relative; isolation:isolate;overflow:hidden;
  min-height:360px;display:flex;align-items:center;
  padding:clamp(64px,7vw,110px) 0;
  background:#111;
  border-bottom:1px solid #383838;
}
.rf-editorial-hero::before{
  content:"";position:absolute;z-index:-1;inset:0;opacity:.34;
  background-image:linear-gradient(90deg,#000 0%,#000b 48%,#0006),url("https://images.unsplash.com/photo-1555069855-e580a9adbf43?auto=format&fit=crop&w=1600&q=76");
  background-size:cover;background-position:center;
}
.rf-editorial-hero .shell{position:relative;z-index:1}
.rf-editorial-hero h1{
  font:500 clamp(2.8rem,6vw,5.7rem)/1.06 Georgia,serif;
  letter-spacing:-.052em;color:#fff;max-width:980px;margin:16px 0 23px;
  text-wrap:balance;
}
.rf-editorial-hero p{
  color:#fff;font-size:clamp(1rem,1.55vw,1.2rem);
  line-height:1.72;max-width:790px;margin:0;
}
.rf-editorial-hero .eyebrow{color:#fff}
.rf-board-hero{min-height:305px}
.rf-breadcrumb{
  display:flex;align-items:center;gap:9px;flex-wrap:wrap;
  color:#d4d4d4;font-size:.84rem;margin-bottom:24px
}
.rf-breadcrumb a{color:#fff;border-bottom:1px solid var(--rf-green)}
.rf-breadcrumb a:hover{border-color:var(--rf-red)}
.rf-hero-links{display:flex;align-items:center;gap:18px 28px;flex-wrap:wrap;margin:30px 0 0}
.rf-hero-links .text-link{display:inline-flex;font-size:.96rem;min-height:40px;align-items:center}
.rf-forum-toolbar{
  display:grid;grid-template-columns:minmax(0,1.5fr) minmax(210px,.65fr);
  gap:16px;margin-bottom:12px
}
.rf-forum-toolbar>div{display:flex;flex-direction:column;min-width:0;gap:7px}
.rf-forum-toolbar label{font-size:.79rem;text-transform:uppercase;letter-spacing:.09em;font-weight:800;color:#fff}
.rf-forum-toolbar input,.rf-forum-toolbar select{
  display:block;width:100%;max-width:100%;min-height:53px;padding:13px 15px;
  border:1px solid #737373;border-radius:5px;background:#131313;
  color:#fff;box-sizing:border-box;font:inherit
}
.rf-forum-toolbar input::placeholder{color:#acacac}
.rf-room-count{font-size:.86rem;font-weight:700;color:#fff;margin:18px 0}
.rf-forum-directory{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.rf-forum-room{
  display:grid;grid-template-columns:48px minmax(0,1fr) 24px;gap:16px;
  min-height:210px;padding:24px 23px;
  background:#121212;border:1px solid #444;border-left:1px solid #555;
  border-radius:7px;transition:background .15s,border-color .15s
}
.rf-forum-room:nth-child(2n){border-left-color:#555}
.rf-forum-room:hover{background:#1d1d1d;border-top-color:#aaa;border-right-color:#aaa;border-bottom-color:#aaa}
.rf-forum-room:focus-visible{outline:3px solid var(--rf-green);outline-offset:3px}
.rf-room-number{font:500 1.7rem Georgia,serif;color:#fff}
.rf-room-body{display:flex;flex-direction:column;gap:9px;min-width:0}
.rf-room-body small{font-size:.75rem;letter-spacing:.065em;text-transform:uppercase;color:#dadada}
.rf-room-body strong{font:500 clamp(1.4rem,2.2vw,1.9rem)/1.1 Georgia,serif;color:#fff}
.rf-room-body>span{font-size:.91rem;line-height:1.6;color:#e1e1e1}
.rf-room-body .rf-room-activity{font-size:.79rem;color:#bfbfbf;margin-top:auto}
.rf-room-go{color:#fff;font-size:1.3rem;justify-self:end}
.rf-forum-room:nth-child(2n) .rf-room-go{color:#fff}
.rf-guide-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}
.rf-guide-panel{
  background:#141414;border:1px solid #414141;border-top:1px solid #555;
  padding:28px 26px;border-radius:7px;min-width:0
}
.rf-guide-panel:nth-child(3n+2){border-top-color:#555}
.rf-guide-panel:nth-child(3n){border-top-color:#555}
.rf-guide-panel h2,.rf-guide-panel h3{font:500 clamp(1.55rem,2.8vw,2.15rem)/1.14 Georgia,serif;color:#fff;margin:11px 0 13px}
.rf-guide-panel p{color:#ddd;line-height:1.75;margin:0}
.rf-board-layout{display:grid;grid-template-columns:minmax(0,1.18fr) minmax(0,.82fr);gap:34px;align-items:start}
.rf-board-layout>div,.rf-board-aside{min-width:0}
.rf-board-layout .rf-guide-panel{border-top-color:#555}
.rf-board-layout .rf-guide-panel h2{font-size:clamp(2rem,3.4vw,3rem)}
.rf-room-conversation{margin-top:55px}
.rf-room-conversation .section-head{align-items:start;flex-direction:column;gap:12px}
.rf-room-conversation .section-head>p{max-width:700px}
.rf-board-aside{display:grid;gap:18px}
.rf-prompt-panel{background:#141414;border:1px solid #444;border-top:1px solid #555;border-radius:7px;padding:27px}
.rf-prompt-panel h2{font:500 1.9rem/1.2 Georgia,serif;margin:9px 0;color:#fff}
.rf-prompt-panel>p{color:#ddd;margin:0 0 13px}
.rf-prompt-list{list-style:none;margin:0;padding:0}
.rf-prompt-list li{border-top:1px solid #393939;display:grid;grid-template-columns:33px minmax(0,1fr);gap:12px;padding:15px 0}
.rf-prompt-list li span{font:500 1.35rem Georgia,serif;color:#eee}
.rf-prompt-list li:nth-child(even) span{color:#eee}
.rf-prompt-list li p{margin:0;color:#fff;line-height:1.5}
.rf-boundary-panel{background:#111;border-left:2px solid #666;padding:22px 25px}
.rf-boundary-panel h3{font:500 1.5rem/1.2 Georgia,serif;margin:11px 0;color:#fff}
.rf-boundary-panel p{color:#ddd;margin:0}
.rf-quick-links{display:flex;flex-direction:column;align-items:flex-start;gap:14px;padding:10px 4px}
.rf-quick-links .text-link{font-size:.9rem}
.rf-guide-prose{max-width:920px}
.rf-guide-prose h2{font:500 clamp(1.7rem,3vw,2.4rem)/1.15 Georgia,serif;color:#fff;margin:35px 0 10px;border-left:2px solid #666;padding-left:17px}
.rf-guide-prose h2:nth-of-type(even){border-left-color:#666}
.rf-guide-prose p{font-size:1.06rem;line-height:1.85;color:#e5e5e5;max-width:820px;margin:0 0 25px}
.rf-community-pathways{border-top:1px solid #2c2c2c}
@media(max-width:1050px){.rf-forum-directory{grid-template-columns:1fr 1fr}.rf-guide-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:820px){
  .rf-editorial-hero{min-height:300px;padding:58px 0}
  .rf-board-layout{grid-template-columns:1fr;gap:34px}
  .rf-board-aside{grid-template-columns:repeat(2,minmax(0,1fr))}
  .rf-quick-links{grid-column:1/-1}
}
@media(max-width:680px){
  .rf-forum-toolbar{grid-template-columns:1fr}
  .rf-forum-directory,.rf-guide-grid,.rf-board-aside{grid-template-columns:1fr}
  .rf-forum-room{min-height:0;padding:21px 18px;grid-template-columns:35px minmax(0,1fr) 16px;gap:12px}
  .rf-room-number{font-size:1.45rem}
  .rf-room-body strong{font-size:1.55rem}
  .rf-editorial-hero h1{font-size:clamp(2.5rem,11.4vw,4rem)}
  .rf-prompt-panel{padding:24px 21px}
  .rf-guide-panel{padding:24px 22px}
  .rf-quick-links{grid-column:auto}
  .rf-room-conversation{margin-top:42px}
}
@media(prefers-reduced-motion:reduce){.rf-forum-room{transition:none}}
