/* bridges.css — Wordflow brand layer over Bootstrap 5.3
   Editorial SaaS: warm paper, heavy ink, one loud accent. */

:root {
  --wf-paper: #faf7f2;
  --wf-card: #ffffff;
  --wf-ink: #16130f;
  --wf-muted: #6b6459;
  --wf-line: #e8e2d8;
  --wf-accent: #e8590c;      /* burnt orange */
  --wf-accent-dark: #d9480f;
  --wf-accent-soft: #fff0e6;
  --bs-body-font-family: "Sora", -apple-system, "Segoe UI", Roboto, sans-serif;
  --bs-body-color: var(--wf-ink);
  --bs-body-bg: var(--wf-paper);
  --bs-link-color: var(--wf-accent);
  --bs-link-hover-color: var(--wf-accent-dark);
  --bs-border-color: var(--wf-line);
}

html { scroll-behavior: smooth; }
body { font-size: 16px; line-height: 1.65; -webkit-font-smoothing: antialiased; }
h1,h2,h3,h4,.navbar-brand,.display-lead strong { font-weight: 800; letter-spacing: -.03em; }
h1 { font-size: clamp(2.4rem, 5.4vw, 3.9rem); line-height: 1.05; }
h2 { font-size: clamp(1.65rem, 3vw, 2.35rem); line-height: 1.15; }
.display-lead { font-size: 1.22rem; color: var(--wf-muted); font-weight: 400; }

/* Nav */
.bb-nav { background: rgba(250,247,242,.92); backdrop-filter: blur(10px); border-bottom: 1px solid var(--wf-line); }
.navbar-brand { font-size: 1.18rem; }
.navbar-brand .dot { color: var(--wf-accent); }
.bb-nav .nav-link { color: var(--wf-muted); font-size: .93rem; font-weight: 500; }
.bb-nav .nav-link:hover { color: var(--wf-ink); }

/* Hero */
.bb-hero { padding: 6rem 0 4.5rem; position: relative; overflow: hidden;
  background:
    radial-gradient(700px 320px at 88% -10%, var(--wf-accent-soft), transparent 65%),
    radial-gradient(600px 300px at -8% 110%, #f3ede3, transparent 60%),
    var(--wf-paper); }
.bb-hero .eyebrow { display:inline-flex; align-items:center; gap:.5rem; font-size:.8rem; font-weight:700; letter-spacing:.06em; text-transform:uppercase; color:var(--wf-accent); background:#fff; border:1px solid var(--wf-line); border-radius:99px; padding:.42rem 1.05rem; margin-bottom:1.4rem; }

/* Buttons */
.btn { border-radius: .75rem; font-weight: 700; padding: .78rem 1.55rem; letter-spacing:-.01em; }
.btn-primary { background: var(--wf-ink); border-color: var(--wf-ink); color:#fff; box-shadow: 0 2px 0 rgba(22,19,15,.28); }
.btn-primary:hover { background: var(--wf-accent); border-color: var(--wf-accent); transform: translateY(-2px); box-shadow: 0 6px 16px rgba(232,89,12,.25); transition:all .16s ease; }
.btn-outline-secondary { color: var(--wf-ink); border:1.5px solid var(--wf-ink); background:transparent; }
.btn-outline-secondary:hover { background: var(--wf-ink); color:#fff; border-color: var(--wf-ink); }
.btn-lg { padding: .95rem 1.9rem; font-size: 1.02rem; }

/* Cards */
.card { border: 1.5px solid var(--wf-line); border-radius: 1rem; background: var(--wf-card); box-shadow: none; height: 100%; transition: transform .16s ease, box-shadow .16s ease, border-color .16s ease; }
.card:hover { transform: translateY(-4px); box-shadow: 0 10px 26px rgba(22,19,15,.08); border-color:#d9d2c4; }
.card-title { font-size: 1.06rem; font-weight: 800; margin-bottom: .3rem; letter-spacing:-.01em; }
.card-subtitle { font-size: .82rem; color: var(--wf-accent); font-weight: 700; margin-bottom: .6rem; text-transform:none; }
.card p, .card-text { color: var(--wf-muted); font-size: .94rem; }
.card .price-tag { font-weight: 800; color: var(--wf-ink); font-size: 1.05rem; }
.card .price-tag small { display:block; font-weight:500; color:var(--wf-muted); font-size:.76rem; }
.link-buy { font-weight: 700; font-size: .92rem; color: var(--wf-accent); text-decoration: none; }
.link-buy:hover { color: var(--wf-accent-dark); text-decoration: underline; }

/* Section rhythm */
.bb-section { padding: 4.6rem 0; border-top: 1.5px solid var(--wf-line); }
.bb-section.soft { background: #f3efe7; border-top: none; }
.bb-kicker { color: var(--wf-accent); font-size: .78rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; margin-bottom: .55rem; }

/* Badges */
.badge-free { background: #e7f5ec; color: #12734a; font-weight: 700; font-size: .74rem; padding: .34em .85em; border-radius: 99px; }
.badge-once { background: var(--wf-accent-soft); color: var(--wf-accent-dark); font-weight: 700; font-size: .74rem; padding: .34em .85em; border-radius: 99px; }

/* Steps */
.bb-step-num { width:38px;height:38px;border-radius:.7rem;background:var(--wf-ink);color:#fff;font-weight:800;display:flex;align-items:center;justify-content:center;font-size:1rem;margin-bottom:.85rem; }

/* Pricing */
.bb-plan { border: 1.5px solid var(--wf-line); border-radius: 1.1rem; padding: 2rem 1.6rem; text-align: center; height:100%; background:#fff; transition:transform .16s ease; }
.bb-plan:hover { transform: translateY(-3px); }
.bb-plan.featured { border: 2.5px solid var(--wf-ink); box-shadow: 6px 6px 0 var(--wf-accent); }
.bb-plan .amount { font-size: 2.7rem; font-weight: 800; letter-spacing: -.04em; }
.bb-plan .amount sup { font-size: 1.1rem; top: -.95em; }
.bb-plan-label { color: var(--wf-muted); font-weight: 700; font-size: .86rem; text-transform: uppercase; letter-spacing: .07em; margin-bottom: .45rem; }

/* Trust / guarantee */
.bb-guarantee { background: #fff; border: 1.5px dashed var(--wf-ink); border-radius: 1rem; padding: 1.35rem 1.55rem; }
.bb-trustline { color: var(--wf-muted); font-size: .87rem; }

/* Prompt quotes */
.bb-quote { border-left: 4px solid var(--wf-accent); background: #fff; border-radius: .3rem .8rem .8rem .3rem; padding: .8rem 1.1rem; color: var(--wf-ink); font-size: .93rem; font-style: italic; box-shadow: 0 1px 2px rgba(22,19,15,.04); }

/* FAQ */
.accordion-button { font-weight: 700; font-size: .98rem; background: transparent; }
.accordion-button:not(.collapsed) { background: transparent; color: var(--wf-accent-dark); box-shadow: none; }
.accordion-button:focus { box-shadow: none; border-color: var(--wf-line); }
.accordion-item { border-color: var(--wf-line); background: transparent; }

/* Footer */
footer { border-top: 1.5px solid var(--wf-line); color: var(--wf-muted); font-size: .87rem; background: var(--wf-paper); }
footer a { color: var(--wf-muted); text-decoration: none; }
footer a:hover { color: var(--wf-ink); }

[dir="rtl"] .bb-quote { border-left: none; border-right: 4px solid var(--wf-accent); border-radius: .8rem .3rem .3rem .8rem; }
