/**
 * Recircula — Elementor overrides
 * Loaded ONLY on pages built with Elementor.
 * Forces our text/typography sizes against Elementor's
 * `.elementor-widget-container p { font-size: inherit }` and other resets.
 *
 * Strategy: !important on all critical typography rules. Safe because this
 * file only loads on Elementor pages — original templates remain clean.
 */

/* ============================================================
   Homepage — HERO
   ============================================================ */
.rc-hero__h1            { font-size: 90px !important; line-height: 1.08 !important; }
.rc-hero__desc          { font-size: 19px !important; line-height: 1.7 !important; color: var(--rc-charcoal-light) !important; }
.rc-hero__badge p       { font-size: 14px !important; line-height: 1.5 !important; }
.rc-hero__badge strong  { font-size: 16px !important; }

/* ============================================================
   Homepage — ABOUT
   ============================================================ */
.rc-about__content h2   { font-size: 42px !important; line-height: 1.15 !important; }
.rc-about__content p    { font-size: 17px !important; line-height: 1.7 !important; color: var(--rc-charcoal-light) !important; }

/* ============================================================
   Homepage — PROCESS
   ============================================================ */
.rc-process__left h2    { font-size: 40px !important; line-height: 1.15 !important; color: #fff !important; }
.rc-process__intro      { font-size: 17px !important; line-height: 1.6 !important; color: rgba(255,255,255,.85) !important; }
.rc-step-card h3        { font-size: 22px !important; line-height: 1.3 !important; }
.rc-step-card p         { font-size: 15px !important; line-height: 1.6 !important; color: var(--rc-charcoal-light) !important; }

/* ============================================================
   Homepage — WHY (3 cards) + section heads
   ============================================================ */
.rc-why__heading h2     { font-size: 36px !important; line-height: 1.2 !important; }
.rc-why__card h3        { font-size: 22px !important; line-height: 1.3 !important; }
.rc-why__card p         { font-size: 15px !important; line-height: 1.7 !important; color: var(--rc-charcoal-light) !important; }
.rc-why__link           { font-size: 14px !important; }

.rc-sec__head h2        { font-size: 32px !important; line-height: 1.2 !important; }
.rc-sec__head p         { font-size: 16px !important; color: var(--rc-charcoal-light) !important; }

/* ============================================================
   Homepage — POPCATS, BLOG, CTA
   ============================================================ */
.rc-popc__name          { font-size: 16px !important; }
.rc-popc__count         { font-size: 13px !important; }

.rc-blog-card h3        { font-size: 20px !important; line-height: 1.3 !important; }
.rc-blog-card p         { font-size: 15px !important; line-height: 1.6 !important; color: var(--rc-charcoal-light) !important; }
.rc-blog-card__link     { font-size: 14px !important; }

.rc-cta-sec h2          { font-size: 40px !important; line-height: 1.2 !important; }
.rc-cta__inner p        { font-size: 17px !important; line-height: 1.7 !important; }

/* ============================================================
   Despre Noi
   ============================================================ */
.rc-despre__hero h1     { font-size: 56px !important; line-height: 1.15 !important; }
.rc-despre__hero p      { font-size: 18px !important; line-height: 1.7 !important; color: var(--rc-charcoal-light) !important; }

.rc-despre__text h2     { font-size: 36px !important; line-height: 1.2 !important; }
.rc-despre__text p      { font-size: 16px !important; line-height: 1.7 !important; color: var(--rc-charcoal-light) !important; }

.rc-despre__why-heading h2 { font-size: 32px !important; line-height: 1.2 !important; }
.rc-despre__why-heading p  { font-size: 17px !important; color: var(--rc-charcoal-light) !important; }
.rc-despre__card h3     { font-size: 20px !important; line-height: 1.3 !important; }
.rc-despre__card p      { font-size: 15px !important; line-height: 1.6 !important; color: var(--rc-charcoal-light) !important; }

.rc-despre__cta h2      { font-size: 40px !important; line-height: 1.2 !important; }
.rc-despre__cta p       { font-size: 17px !important; line-height: 1.7 !important; color: var(--rc-charcoal-light) !important; margin-bottom: 24px !important; }

/* ============================================================
   Vinde-ți cărțile
   ============================================================ */
.rc-vinde__hero h1      { font-size: 56px !important; line-height: 1.15 !important; }
.rc-vinde__hero p       { font-size: 18px !important; line-height: 1.7 !important; color: var(--rc-charcoal-light) !important; }

.rc-vinde__section-title{ font-size: 32px !important; line-height: 1.2 !important; }
.rc-vinde__card-sm h3   { font-size: 18px !important; line-height: 1.3 !important; }
.rc-vinde__card-sm p    { font-size: 14px !important; line-height: 1.6 !important; color: var(--rc-charcoal-light) !important; }

.rc-vinde__process-left h2 { font-size: 40px !important; line-height: 1.15 !important; color: #fff !important; }
.rc-vinde__process-left p  { font-size: 17px !important; line-height: 1.7 !important; color: rgba(255,255,255,.9) !important; }

.rc-vinde__form-card h2 { font-size: 28px !important; line-height: 1.2 !important; }

/* ============================================================
   FAQ
   ============================================================ */
.rc-faq__hero h1        { font-size: 56px !important; line-height: 1.15 !important; }
.rc-faq__hero p         { font-size: 18px !important; line-height: 1.7 !important; color: var(--rc-charcoal-light) !important; }

.rc-faq__tab            { font-size: 14px !important; }
.rc-faq__question span  { font-size: 16px !important; line-height: 1.4 !important; }
.rc-faq__answer p       { font-size: 15px !important; line-height: 1.7 !important; color: var(--rc-charcoal-light) !important; }

.rc-faq__cta h2         { font-size: 36px !important; line-height: 1.2 !important; }
.rc-faq__cta p          { font-size: 17px !important; line-height: 1.7 !important; color: var(--rc-charcoal-light) !important; margin-bottom: 24px !important; }

/* ============================================================
   "Nu ai găsit cartea?" + Newsletter
   ============================================================ */
.rc-book-request__content h3 { font-size: 22px !important; line-height: 1.3 !important; }
.rc-book-request__content p  { font-size: 15px !important; line-height: 1.6 !important; color: var(--rc-charcoal-light) !important; }

.rc-newsletter-card__content h2 { font-size: 28px !important; line-height: 1.25 !important; }
.rc-newsletter-card__content > p { font-size: 15px !important; line-height: 1.6 !important; color: var(--rc-charcoal-light) !important; }

/* ============================================================
   Buttons (preserve clear sizing)
   ============================================================ */
.rc-btn                 { font-size: 15px !important; }
.rc-btn--lg             { font-size: 16px !important; padding: 14px 28px !important; }

/* ============================================================
   Responsive — keep proportions on mobile
   ============================================================ */
@media (max-width: 900px) {
    .rc-hero__h1                { font-size: 48px !important; }
    .rc-hero__desc              { font-size: 16px !important; }
    .rc-about__content h2,
    .rc-process__left h2,
    .rc-vinde__process-left h2,
    .rc-cta-sec h2,
    .rc-despre__cta h2          { font-size: 30px !important; }
    .rc-despre__hero h1,
    .rc-vinde__hero h1,
    .rc-faq__hero h1            { font-size: 38px !important; }
    .rc-despre__text h2         { font-size: 28px !important; }
    .rc-why__heading h2,
    .rc-faq__cta h2,
    .rc-vinde__section-title    { font-size: 26px !important; }
    .rc-sec__head h2            { font-size: 24px !important; }
}
