/* Recovery Familia — premium 4-color editorial finish (P0, 2026-11-07)
 * Intentional accents: clear gold for editorial emphasis; red/green for small
 * brand touches; neutral white/gray on deep-black surfaces.
 * Official approved artwork remains unchanged. Buttons remain high contrast.
 */
:root{
 --ink:#050505;--panel:#111;--panel2:#181818;--stroke:#3c3c3c;
 --text:#fff;--muted:#cacaca;
 --gold:#e6c783;--gold2:#f4dfa8;
 --rf-gold:#e6c783;--rf-gold-bright:#f4dfa8;
 --rf-cream:#f2f2f2;--rf-white:#fff;--rf-neutral:#d2d2d2;
 --rf-metal-line:rgba(230,199,131,.47);
}
/* Native touch/trackpad scrolling remains direct; never smooth every scroll globally. */
html{scroll-behavior:auto}
html,body{background-color:#050505;color:#fff}
::selection{background:#e6c783;color:#080808}

/* Neutralize legacy cream/brown surface tints; retain the owner's gold artwork. */
.hero{background:radial-gradient(ellipse at 50% -10%,rgba(230,199,131,.08),transparent 60%),linear-gradient(180deg,#111,#050505)}
.hero:before{border-color:#474747;opacity:.25}
.hero .lead,.tile p,.meeting-card small,.prose p,.prose li,
.feature-band p,.split-editorial p,.final-cta p,.page-hero-copy p,
.feature-card p,.visual-tile-caption>span,.board-panel-top span,
.rf-empty-message,.rf-thread-link span,.rf-approved-thread p,
.rf-product-info p,.rf-meeting-micro,.rf-meeting-group-content>p{
 color:#d4d4d4!important
}
.section-alt,.page-hero,.rf-network-section-alt{background:#0f0f0f}
.page-hero{border-bottom-color:#404040}
.tile,.feature-card,.board-panel,.collection-card,.meeting-card,
.rf-product,.rf-approved-thread,.rf-thread-link,.rf-empty-message,
.rf-network-card,.rf-network-context,.rf-guide-panel,.rf-prompt-panel{
 background:#151515;border-color:#414141
}
.feature-band{background:linear-gradient(115deg,#1a1a1a,#090909);border-color:#454545}
.board-panel-top,.rf-thread-link{background:#1a1a1a}
.board-panel-top{border-bottom-color:#414141}
.board-panel-top strong{color:#fff}
.board-row,.rf-approved-reply{border-color:#383838}
.final-cta{
 background:radial-gradient(ellipse at 50% -20%,rgba(230,199,131,.085),transparent 58%),linear-gradient(150deg,#151515,#050505);
 border-top:1px solid #484848
}
.notice,.rf-meeting-ethics,.rf-boundary-panel{background:#171717;color:#d5d5d5}
.rf-meeting-ethics{border-left-color:var(--rf-metal-line)}
.rf-meeting-field input:focus,.rf-meeting-field select:focus{outline-color:var(--rf-gold-bright)}
.rf-meeting-check input{accent-color:var(--rf-gold)}
.rf-product-info small,.rf-meeting-source-card strong{color:var(--rf-gold-bright)}
.rf-meeting-state-link:is(:hover,:focus-visible){border-color:var(--rf-gold)}
.rf-meeting-result .rf-meeting-view,.rf-meeting-form-actions .button{
 color:#080808!important
}

/* White is the body copy; bright clean gold is a measured editorial accent. */
.eyebrow,.hero-kicker,.rf-network-kicker,.rf-meeting-hero .eyebrow,
.rf-member-intro .eyebrow,.rf-editorial-hero .eyebrow{
 color:var(--rf-gold-bright)
}
.hero-kicker{color:#fff}
.hero-kicker span{background:var(--rf-gold);color:#fff}
.hero-proof span{color:#e7e7e7}
/* Keep tricolor as a brand identifier, not a bullet beside gold headings. */
.tile .num,.tile .label,.visual-tile-caption small,.visual-tile-caption b,
.rf-network-card-number,.rf-room-number,.rf-prompt-list li span,
.rf-meeting-result small.rf-meeting-kicker,.rf-meeting-source-card strong,
.rf-product-info small{color:var(--rf-gold)}
.hero h1 em,.home-hero h1 em{color:var(--rf-gold-bright)}
.board-icon{color:var(--rf-gold-bright);border-color:#776644}
.rf-forum-room .rf-room-number,.rf-room-go{color:var(--rf-gold-bright)}
.rf-network-aside:before{background:var(--rf-gold)}
.rf-network-card:nth-child(3n+2),.feature-card:nth-child(3n+2),
.collection-card:nth-child(3n+2){border-top-color:#947a4c}
.feature-card:nth-child(3n+1),.collection-card:nth-child(3n+1){border-top-color:#595959}
.feature-card:nth-child(3n),.collection-card:nth-child(3n){border-top-color:#595959}
.rf-guide-panel:nth-child(3n+2),.rf-prompt-panel{border-top-color:#947a4c}
.rf-guide-prose h2,.rf-members-safety{border-left-color:#9e834e}
.notice{border-left-color:#b6985f}
.notice:nth-of-type(2n){border-left-color:#777}
.rf-network-breadcrumb a:hover,.rf-network-link:hover{
 color:var(--rf-gold-bright)
}
.prose a:not(.button):not(.button-ghost),.tile a:not(.button):not(.button-ghost){
 color:var(--rf-gold-bright)
}
.rf-network-link,.text-link{border-bottom-color:var(--rf-metal-line)}
.rf-network-link:hover,.text-link:hover{border-bottom-color:var(--rf-gold)}
.rf-meeting-fellowship-links a:hover,.rf-fellowship-links a:hover{
 border-color:var(--rf-gold-bright)
}
.rf-forum-room:is(:hover,:focus-visible),.rf-network-card:hover,
.rf-guide-panel:hover,.rf-meeting-result:hover,.tile:hover,.feature-card:hover{
 border-color:#756549
}
.rf-footer-compact .rf-footer-get-in-touch:hover,.rf-footer-compact .rf-footer-col-links a:hover{
 color:var(--rf-gold-bright)
}
.rf-footer-compact .rf-footer-col[open] summary::after{color:var(--rf-gold-bright)}
.rf-footer-compact .rf-footer-get-in-touch:hover{border-bottom-color:var(--rf-gold)}

/* Preserve official green/red tricolor and use those hues only as fine accents. */
.rf-site-drawer .rf-drawer-links a:hover{border-left-color:var(--rf-gold)}
.rf-network-drawer-links a:hover{border-left-color:var(--rf-gold)}
.rf-meeting-result:focus-within{border-color:#81704d}
.rf-quick-links .text-link:hover{border-bottom-color:var(--rf-gold)}
.rf-footer-compact .rf-footer-col summary:focus-visible,
.rf-network-link:focus-visible{
 outline-color:var(--rf-gold-bright)
}

/* Below-fold elements start in a restrained pose; the reveal uses the
 * independent 'translate' property rather than transform so existing card
 * hover effects never compete with the scroll entrance. */
.rf-reveal-pending.rf-reveal-armed{opacity:.60;translate:0 14px}
.rf-reveal-visible{opacity:1;translate:0 0}
.rf-reveal-running{
 transition:opacity .44s cubic-bezier(.22,.82,.3,1),
  translate .44s cubic-bezier(.22,.82,.3,1)!important
}
/* First-paint editorial heading entrance: CSS begins on the initial paint
 * instead of dimming an already visible H1 after JavaScript initialization. */
@keyframes rf-headline-enter{
 from{opacity:.74;translate:0 10px}
 to{opacity:1;translate:0 0}
}
@media(prefers-reduced-motion:no-preference){
 main#main h1{animation:rf-headline-enter .42s cubic-bezier(.22,.82,.3,1) both}
}
/* Fallback: browsers without individual transform properties fade only. */
@supports not (translate:0 1px){
 .rf-reveal-pending.rf-reveal-armed{opacity:.68;transform:none}
 .rf-reveal-running{transition:opacity .39s ease-out!important}
}
/* Keep a flat compositing surface behind the sticky header on touch devices
 * instead of repainting an 18px backdrop blur while cards animate past. */
@media(hover:none), (pointer:coarse){
 html{scroll-behavior:auto}
 .site-head{backdrop-filter:none;-webkit-backdrop-filter:none}
 .rf-reveal-pending.rf-reveal-armed{opacity:.64;translate:0 10px}
 .rf-reveal-running{transition-duration:.39s!important}
}
@media(hover:hover) and (pointer:fine){
 .tile,.feature-card,.collection-card,.rf-forum-room,.rf-network-card,
 .rf-guide-panel,.rf-meeting-result,.meeting-card,.rf-member-card,.rf-product,
 .visual-tile,.rf-meeting-state-link{
  transition:transform .22s ease-out,
   border-color .22s ease,box-shadow .22s ease,background-color .22s ease
 }
 .tile:hover,.feature-card:hover,.collection-card:hover,.rf-forum-room:hover,
 .rf-network-card:hover,.rf-guide-panel:hover,.rf-meeting-result:hover,
 .meeting-card:hover,.rf-product:hover,.visual-tile:hover,.rf-meeting-state-link:hover{
  transform:translateY(-2px);
  box-shadow:0 10px 25px rgba(0,0,0,.23)
 }
 :is(a,button).button,:is(a,button).button-ghost,.head-join{
  transition:transform .22s ease,background-color .22s ease,border-color .22s ease,box-shadow .22s ease
 }
 :is(a,button).button:hover,:is(a,button).button-ghost:hover,.head-join:hover{
  transform:translateY(-2px);box-shadow:0 8px 22px rgba(0,0,0,.3)
 }
 .rf-footer-compact .rf-footer-col-links a,.rf-network-link,
 .rf-drawer-links a,.rf-drawer-group a{
  transition:color .18s ease,border-color .18s ease,background-color .18s ease
 }
}
@media(hover:none){
 .tile,.feature-card,.collection-card,.rf-forum-room,.rf-network-card,
 .rf-guide-panel,.rf-meeting-result,.meeting-card,.rf-member-card,.rf-product,
 .visual-tile{transform:none}
}
@media(prefers-reduced-motion:reduce){
 html{scroll-behavior:auto}
 *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
 .rf-reveal-pending,.rf-reveal-armed,.rf-reveal-running,.rf-reveal-visible{opacity:1!important;translate:none!important;transform:none!important;transition:none!important;animation:none!important}
}


/* Crisp native accordions: small, one-time entrance for expanded content. */
@media(prefers-reduced-motion:no-preference){
 .rf-footer-compact .rf-footer-col[open] .rf-footer-col-links{
  animation:rf-footer-links-in .16s ease-out both
 }
 @keyframes rf-footer-links-in{
  from{opacity:.9}
  to{opacity:1}
 }
}


/* Complete neutralization of legacy warm search, FAQ and photo-tile surfaces. */
.visual-tile{background:#151515}
.faq{border-bottom-color:#414141}
.faq summary{color:#f5f5f5}
.faq[open] summary{color:var(--rf-gold-bright)}
.faq p{color:#d5d5d5}
.site-search label{color:#fff}
.site-search input{
 color:#fff;background:#171717;border-color:#626262;
 caret-color:var(--rf-gold-bright)
}
.site-search input::placeholder{color:#bfbfbf}
.site-search input:focus-visible{border-color:var(--rf-gold);outline-color:var(--rf-gold-bright)}
.site-search p{color:#c9c9c9}
.site-search-result{background:#151515;border-color:#424242}
.site-search-result:hover,.site-search-result:focus-visible{
 border-color:var(--rf-gold)
}
.site-search-result strong{color:#fff}
.site-search-result span{color:#d2d2d2}
.site-search-result small{color:var(--rf-gold-bright)}


/* Unified separators and gold/white contrast policy.
   One outer boundary per group, one inter-item rule, no duplicate end caps.
   Focus and list indicators use neutral white alongside gold copy. */
main > :is(.final-cta,.rf-community-pathways,.rf-network-section-alt) + :is(.final-cta,.rf-community-pathways,.rf-network-section-alt){border-top:0}
.rf-network-section-alt + .rf-network-section-alt{border-top:0}
.rf-prompt-list li:first-child{border-top:0}
.rf-meeting-group-content > .rf-meeting-source-rows:first-child{border-top:0}
.rf-meeting-source-row:last-child,.board-row:last-child{border-bottom:0}
.rf-site-drawer .rf-drawer-links a:is(:hover,:focus-visible),
.rf-site-drawer .rf-network-drawer-links a:is(:hover,:focus-visible){border-left-color:#bfbfbf}
.hero-proof span,.hero-kicker span{outline-color:#fff}
:is(.board-row,.visual-tile,.collection-card,.rf-forum-room,.rf-network-link):focus-visible{
 outline-color:#e9e9e9
}
.rf-meeting-check input{accent-color:#efefef}
.rf-room-number,.rf-network-kicker,.rf-product-info small{color:var(--rf-gold-bright)}
/* Functional green is reserved for approved status, official tricolor and
   the previously approved back-to-top control, not decorative gold pairing. */
.rf-footer-compact .rf-footer-col summary:focus-visible{outline-color:#fff}
