/*
Theme Name: Really For Me — Divi Child
Template: Divi
Author: Guard Agency
Author URI: https://reallyforme.com/
Version: 1.0.0
Description: Done-for-you content service site. Pre-loaded with home, about, services, pricing, contact, and blog pages. SEO + schema baked in. Inter typography, brand colors (#16A34A green, #FAFAF7 cream).
Tags: divi-child, business, seo, schema
Text Domain: rfm
*/

:root {
  --rfm-bg: #FAFAF7;
  --rfm-bg-soft: #F5F5F0;
  --rfm-ink: #0F172A;
  --rfm-ink2: #475569;
  --rfm-ink3: #94A3B8;
  --rfm-line: #E2E8F0;
  --rfm-line2: #CBD5E1;
  --rfm-card: #FFFFFF;
  --rfm-green: #16A34A;
  --rfm-green-dark: #15803D;
  --rfm-amber: #F59E0B;
  --rfm-r: 8px;
}

body, body.et_pb_pagebuilder_layout, body #page-container {
  font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif !important;
  background: var(--rfm-bg);
  color: var(--rfm-ink);
  line-height: 1.55;
  font-size: 17px;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

h1,h2,h3,h4,h5,h6,
.et_pb_module h1,.et_pb_module h2,.et_pb_module h3,
.et_pb_module h4,.et_pb_module h5,.et_pb_module h6 {
  font-family: "Inter",-apple-system,BlinkMacSystemFont,sans-serif !important;
  font-weight: 800;
  letter-spacing: -0.025em;
  color: var(--rfm-ink);
}

h1 { font-size: clamp(34px,5.5vw,58px); line-height:1.05; }
h2 { font-size: clamp(28px,3.5vw,38px); line-height:1.15; }
h3 { font-size: 22px; }
p { color: var(--rfm-ink2); }
a { color: var(--rfm-green); }
a:hover { color: var(--rfm-green-dark); }

.rfm-eyebrow,.rfm-section-eyebrow {
  font-size:12px;text-transform:uppercase;letter-spacing:0.14em;font-weight:700;
  color:var(--rfm-green);margin:0 0 14px;display:block;
}
.rfm-accent { color: var(--rfm-green); }
.rfm-sub { font-size:18px; color:var(--rfm-ink2); max-width:680px; margin:0 0 36px; }

.rfm-btn {
  display:inline-flex;align-items:center;justify-content:center;
  padding:14px 26px;border-radius:var(--rfm-r);font-weight:700;font-size:15px;
  text-decoration:none;border:1px solid transparent;cursor:pointer;
  transition:transform .12s, background .15s, border-color .15s;letter-spacing:0.01em;
}
.rfm-btn:hover { transform: translateY(-1px); }
.rfm-btn-primary { background:var(--rfm-green); color:#fff !important; border-color:var(--rfm-green); }
.rfm-btn-primary:hover { background:var(--rfm-green-dark); border-color:var(--rfm-green-dark); color:#fff !important; }
.rfm-btn-ghost { background:transparent; color:var(--rfm-ink) !important; border:1px solid var(--rfm-line2); }
.rfm-btn-ghost:hover { border-color:var(--rfm-ink); }
.rfm-cta-row { display:flex; flex-wrap:wrap; gap:12px; align-items:center; margin:18px 0; }

.rfm-cohort-pill {
  display:inline-flex;align-items:center;gap:8px;padding:5px 12px;
  background:#FFFBEB;border:1px solid #FDE68A;color:#92400E;
  font-size:12px;font-weight:600;border-radius:20px;
}
.rfm-cohort-pill .dot { width:7px;height:7px;border-radius:50%;background:var(--rfm-amber);
  animation:rfm-pulse 2.4s ease-in-out infinite;display:inline-block; }
@keyframes rfm-pulse { 0%,100% { opacity:1 } 50% { opacity:.4 } }

.rfm-proof-strip {
  display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:0;
  margin:36px 0 0;border:1px solid var(--rfm-line);border-radius:var(--rfm-r);
  background:var(--rfm-card);overflow:hidden;
}
.rfm-proof-cell { padding:18px 20px; border-right:1px solid var(--rfm-line); }
.rfm-proof-cell:last-child { border-right:none; }
.rfm-proof-num { font-size:22px;font-weight:800;color:var(--rfm-ink);
  letter-spacing:-0.02em;display:block;margin-bottom:2px; }
.rfm-proof-num .unit { font-size:13px;color:var(--rfm-ink3);font-weight:600;margin-left:4px; }
.rfm-proof-label { font-size:13px;color:var(--rfm-ink2);line-height:1.4; }

.rfm-mech { display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;margin:24px 0; }
.rfm-mech-card { padding:28px;background:var(--rfm-card);border:1px solid var(--rfm-line);border-radius:var(--rfm-r); }
.rfm-mech-card h3 { margin:0 0 12px;font-size:20px; }
.rfm-mech-card p { margin:0 0 12px;color:var(--rfm-ink2); }
.rfm-mech-card .without { font-size:14px;color:var(--rfm-ink3);margin:14px 0 0;padding-top:14px;border-top:1px solid var(--rfm-line); }
.rfm-mech-summary { margin-top:28px;padding:24px;background:var(--rfm-bg-soft);border-radius:var(--rfm-r);font-size:16px;color:var(--rfm-ink2); }
.rfm-mech-summary strong { color:var(--rfm-ink); }

.rfm-three-col { display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:24px; }
.rfm-feature h3 { margin:0 0 10px;font-size:19px; }
.rfm-feature p { margin:0 0 12px;color:var(--rfm-ink2); }
.rfm-feature .which-means { display:block;background:var(--rfm-bg-soft);padding:14px 16px;border-left:3px solid var(--rfm-green);border-radius:4px;font-size:14px;color:var(--rfm-ink2);font-style:italic; }

.rfm-steps { display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px;counter-reset:rfm-step; }
.rfm-step { position:relative;padding:28px 24px 24px;background:var(--rfm-card);border:1px solid var(--rfm-line);border-radius:var(--rfm-r); }
.rfm-step::before { counter-increment:rfm-step;content:counter(rfm-step);
  position:absolute;top:-14px;left:20px;width:28px;height:28px;border-radius:50%;
  background:var(--rfm-green);color:#fff;font-weight:800;font-size:13px;
  display:flex;align-items:center;justify-content:center; }
.rfm-step h3 { margin:0 0 10px;font-size:17px; }
.rfm-step p { margin:0;font-size:15px;color:var(--rfm-ink2); }

.rfm-pain-body { max-width:760px;font-size:18px;color:var(--rfm-ink2);line-height:1.65; }
.rfm-pain-body p { margin:0 0 18px; }
.rfm-pain-quotes { display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px;margin:28px 0 0; }
.rfm-pain-quote { padding:18px 20px;background:var(--rfm-card);border-left:3px solid var(--rfm-line2);border-radius:4px;font-size:15px;color:var(--rfm-ink2);font-style:italic; }

.rfm-stack-card { background:var(--rfm-card);border:1px solid var(--rfm-line);border-radius:var(--rfm-r);padding:36px;max-width:780px;margin:0 auto; }
.rfm-stack-card h3 { margin:0 0 22px;font-size:22px; }
.rfm-stack-list { list-style:none;padding:0;margin:0 0 24px; }
.rfm-stack-list li { display:flex;justify-content:space-between;gap:16px;padding:14px 0;border-bottom:1px dashed var(--rfm-line); }
.rfm-stack-list .item-name { font-weight:600;color:var(--rfm-ink); }
.rfm-stack-list .item-name span { display:block;font-size:13px;color:var(--rfm-ink3);font-weight:400;margin-top:2px; }
.rfm-stack-list .item-value { color:var(--rfm-green);font-weight:700;white-space:nowrap; }
.rfm-stack-total { display:flex;justify-content:space-between;padding:12px 0;font-weight:700;border-top:1px solid var(--rfm-line); }
.rfm-stack-total .crossed { text-decoration:line-through;color:var(--rfm-ink3); }
.rfm-stack-yours { margin-top:16px;padding:22px;background:#F0FDF4;border:1px solid #BBF7D0;border-radius:var(--rfm-r);text-align:center;font-size:15px;color:var(--rfm-ink2); }
.rfm-stack-yours .price { display:block;margin:6px 0;font-size:42px;font-weight:800;color:var(--rfm-green);letter-spacing:-0.02em; }
.rfm-stack-yours .small { font-size:13px;color:var(--rfm-ink3); }

.rfm-guarantee { max-width:760px;margin:0 auto;padding:32px;background:var(--rfm-card);border:2px dashed var(--rfm-green);border-radius:var(--rfm-r); }
.rfm-guarantee-badge { display:inline-block;padding:6px 14px;background:var(--rfm-green);color:#fff;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:0.06em;border-radius:14px;margin-bottom:14px; }
.rfm-guarantee h3 { margin:0 0 14px; }
.rfm-guarantee p { margin:0 0 12px;color:var(--rfm-ink2); }
.rfm-guarantee strong { color:var(--rfm-ink); }

.rfm-fit-grid { display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px; }
.rfm-fit-col { padding:28px;background:var(--rfm-card);border:1px solid var(--rfm-line);border-radius:var(--rfm-r); }
.rfm-fit-col.yes { border-left:4px solid var(--rfm-green); }
.rfm-fit-col.no { border-left:4px solid var(--rfm-line2); }
.rfm-fit-col h3 { margin:0 0 14px; }
.rfm-fit-col ul { margin:0;padding-left:18px;color:var(--rfm-ink2); }
.rfm-fit-col li { margin-bottom:10px;font-size:15px; }

.rfm-tiers { display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px;max-width:1000px;margin:0 auto; }
.rfm-tier { padding:32px 28px;border:1px solid var(--rfm-line);border-radius:var(--rfm-r);background:var(--rfm-card);position:relative;display:flex;flex-direction:column; }
.rfm-tier.featured { border-color:var(--rfm-green);border-width:2px; }
.rfm-tier.featured::before { content:"Most popular";position:absolute;top:-13px;left:24px;background:var(--rfm-green);color:#fff;padding:4px 12px;border-radius:12px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:0.06em; }
.rfm-tier h3 { margin:0 0 4px; }
.rfm-tier .desc { font-size:14px;color:var(--rfm-ink2);margin:0 0 18px;min-height:42px; }
.rfm-tier .price { font-size:42px;font-weight:800;letter-spacing:-0.02em;margin:0 0 4px;line-height:1; }
.rfm-tier .price span { font-size:14px;color:var(--rfm-ink3);font-weight:500;margin-left:2px; }
.rfm-tier .price-sub { font-size:13px;color:var(--rfm-ink3);margin:0 0 22px; }
.rfm-tier ul { margin:0 0 24px;padding-left:0;list-style:none;font-size:15px;color:var(--rfm-ink2);flex-grow:1; }
.rfm-tier li { margin-bottom:10px;padding-left:22px;position:relative; }
.rfm-tier li::before { content:"\2713";position:absolute;left:0;color:var(--rfm-green);font-weight:800; }

.rfm-founding { display:grid;grid-template-columns:2fr 1fr;gap:32px;align-items:center;padding:32px;background:linear-gradient(180deg,#FFFBEB 0%,#FEF3C7 100%);border-radius:var(--rfm-r);margin:0 0 24px; }
.rfm-founding h3 { color:#92400E;margin:0 0 12px;font-size:22px; }
.rfm-founding p { color:#78350F;margin:0 0 16px; }
.rfm-founding .counter { font-size:56px;font-weight:800;color:#92400E;text-align:center;line-height:1; }
.rfm-founding .counter span:last-child { display:block;font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:0.08em;margin-top:6px; }
.rfm-founding-math { width:100%;border-collapse:collapse;font-size:14px;margin:18px 0; }
.rfm-founding-math th, .rfm-founding-math td { padding:10px 14px;text-align:left;border-bottom:1px solid #FDE68A; }
.rfm-founding-math th { font-weight:700;color:#78350F; }
.rfm-founding-math .total td { font-weight:700;color:#92400E; }
.rfm-founding-math .save { color:var(--rfm-green);font-weight:700; }
.rfm-founding-trust { font-size:14px;color:var(--rfm-ink3);margin:12px 0 0; }

.rfm-faq { max-width:760px;margin:0 auto; }
.rfm-faq details { border-bottom:1px solid var(--rfm-line);padding:18px 0; }
.rfm-faq details:first-of-type { border-top:1px solid var(--rfm-line); }
.rfm-faq summary { font-weight:700;font-size:17px;cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center; }
.rfm-faq summary::-webkit-details-marker { display:none; }
.rfm-faq summary::after { content:"+";font-weight:300;font-size:24px;color:var(--rfm-ink3);transition:transform .15s; }
.rfm-faq details[open] summary::after { transform:rotate(45deg);color:var(--rfm-ink); }
.rfm-faq details p { color:var(--rfm-ink2);font-size:16px;margin:14px 0 0;line-height:1.6; }

.rfm-closing { text-align:center;padding:64px 0; }
.rfm-closing h2 { max-width:760px;margin:0 auto 16px; }
.rfm-closing p { max-width:600px;margin:0 auto 22px; }
.rfm-closing .rfm-cta-row { justify-content:center; }

@media (max-width: 760px) {
  .rfm-founding { grid-template-columns:1fr; }
  .rfm-mech, .rfm-three-col, .rfm-steps, .rfm-fit-grid { grid-template-columns:1fr; }
}

.et_pb_button, .et_pb_button:hover, a.et_pb_button {
  font-family:"Inter",sans-serif !important;
  letter-spacing:0.01em !important;
  border-radius:var(--rfm-r) !important;
}

#main-header .logo_container img,
.et-fixed-header .logo_container img { max-height:40px; }
