/*
 * Landing pages (botez / nuntă / cununie civilă / majorate).
 * Componente specifice paginilor de serviciu — destinație reclame plătite (SEO + ROI):
 * trust cards cu highlight, pricing cu badge, info + calculator, zone geo, testimoniale,
 * FAQ, proces (nuntă). Stil editorial mockup v6 (Fraunces + accente aurii, paletă verde/crem).
 * Prefix .lp-* — distinct de homepage și de content.css. Încărcat condiționat pe cele 4
 * template-uri landing (vezi inc/setup/enqueue.php). Refolosește .pg-hero/.cards/.col2 din content.css.
 */

/* ===== HERO — linie de încredere sub CTA ===== */
.lp-hero-trust { margin-top: 30px; padding-top: 22px; border-top: 1px solid rgba(232,221,189,.28); }
.lp-hero-trust p { color: #e6dcc6; font-size: .95rem; font-weight: 400; max-width: 720px; }

/* ===== HIGHLIGHT BOX (trust + zone) ===== */
.lp-hl { margin-top: 18px; padding: 16px 20px; background: var(--ivory-2); border-left: 3px solid var(--gold); }
.lp-hl h4 { font-family: 'Fraunces'; font-size: 1.05rem; font-weight: 500; color: var(--green); margin-bottom: 6px; }
.lp-hl p { font-size: .9rem; color: var(--green-soft); margin: 0; }
.card .lp-hl { margin-top: auto; }

/* ===== PRICING ===== */
.lp-prices { display: grid; grid-template-columns: 1fr; gap: 30px; max-width: 540px; margin: 0 auto; }
.lp-prices.lp-prices-2 { grid-template-columns: 1fr 1fr; max-width: 960px; }
.lp-price { position: relative; display: flex; flex-direction: column; background: var(--white); border-top: 3px solid var(--gold); padding: 40px 36px; }
.lp-price-rec { background: var(--green); border-top-color: var(--gold); color: var(--ivory); }
.lp-badge { position: absolute; top: -14px; left: 50%; transform: translateX(-50%); background: var(--gold); color: var(--green); font-size: .68rem; letter-spacing: .18em; text-transform: uppercase; font-weight: 500; padding: 7px 18px; white-space: nowrap; }
.lp-price-title { font-family: 'Fraunces'; font-size: 1.55rem; font-weight: 400; color: var(--green); margin-bottom: 16px; }
.lp-price-rec .lp-price-title { color: var(--white); }
.lp-price-amt { display: flex; flex-direction: column; align-items: center; text-align: center; margin-bottom: 24px; padding-bottom: 22px; border-bottom: 1px solid rgba(33,54,49,.12); }
.lp-price-rec .lp-price-amt { border-bottom-color: rgba(236,220,189,.25); }
.lp-price-from { font-size: .78rem; letter-spacing: .12em; text-transform: uppercase; color: var(--green-soft); }
.lp-price-rec .lp-price-from { color: #cabf9e; }
.lp-price-num { font-family: 'Fraunces'; font-size: 3.6rem; line-height: 1; font-weight: 300; color: var(--gold-deep); }
.lp-price-rec .lp-price-num { color: #ecdcbd; }
.lp-price-cur { font-size: .8rem; letter-spacing: .2em; color: var(--green-soft); }
.lp-price-rec .lp-price-cur { color: #cabf9e; }
.lp-price-body h4 { font-family: 'Fraunces'; font-size: 1.15rem; font-weight: 500; color: var(--green); margin-bottom: 12px; }
.lp-price-rec .lp-price-body h4 { color: #ecdcbd; }
.lp-feat { list-style: none; margin: 0 0 20px; }
.lp-feat li { font-size: .9rem; color: var(--green-soft); padding: 5px 0; line-height: 1.4; }
.lp-feat li.hl { color: var(--green); font-weight: 500; }
.lp-price-rec .lp-feat li { color: #d7cfbf; }
.lp-price-rec .lp-feat li.hl { color: #fff; font-weight: 500; }
.lp-extras { padding: 16px 18px; background: var(--ivory-2); margin-bottom: 22px; }
.lp-price-rec .lp-extras { background: rgba(255,255,255,.07); }
.lp-extras h5 { font-size: .72rem; letter-spacing: .14em; text-transform: uppercase; color: var(--gold-deep); margin-bottom: 8px; }
.lp-price-rec .lp-extras h5 { color: #ecdcbd; }
.lp-extras p { font-size: .85rem; color: var(--green-soft); margin: 0 0 6px; }
.lp-price-rec .lp-extras p { color: #d7cfbf; }
.lp-extras-hl { font-weight: 500; color: var(--green) !important; }
.lp-price-rec .lp-extras-hl { color: #fff !important; }
.lp-price .btn { margin-top: auto; justify-content: center; }
.lp-price-note { text-align: center; font-family: 'Fraunces'; font-style: italic; font-size: .95rem; color: var(--green-soft); margin-top: 14px; }
.lp-price-rec .lp-price-note { color: #cabf9e; }

/* ===== INFO + CALCULATOR ===== */
.lp-info { max-width: 1000px; margin: 56px auto 0; }
.lp-info-head { text-align: center; margin-bottom: 32px; }
.lp-info-head h3 { font-family: 'Fraunces'; font-size: 1.7rem; font-weight: 400; color: var(--green); margin-bottom: 10px; }
.lp-info-head p { color: var(--green-soft); max-width: 640px; margin: 0 auto; }
.lp-info-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
.lp-info-card { background: var(--white); border-top: 2px solid var(--gold); padding: 28px 24px; text-align: center; }
.lp-info-card h4 { font-family: 'Fraunces'; font-size: 1.15rem; font-weight: 500; color: var(--green); margin-bottom: 8px; }
.lp-info-card p { font-size: .9rem; color: var(--green-soft); margin: 0; }
.lp-calc { margin-top: 36px; text-align: center; background: var(--green); color: var(--ivory); padding: 48px 36px; }
.lp-calc h4 { font-family: 'Fraunces'; font-size: 1.6rem; font-weight: 400; color: var(--white); margin-bottom: 12px; }
.lp-calc p { color: #ddd6c9; max-width: 540px; margin: 0 auto 26px; }
.lp-calc .btn { justify-content: center; }

/* ===== ZONE (geo) — liste + carduri ===== */
.lp-zone-feats { margin: 16px 0 0; }
.lp-zone-feats p { color: var(--green-soft); margin-bottom: 8px; font-size: .95rem; }
.lp-zone-feats p strong, .lp-zone-feats p b { color: var(--green); font-weight: 500; }
.lp-zone-cards { display: grid; grid-template-columns: repeat(4, 1fr); gap: 22px; margin-top: 44px; }
.lp-zone-card { background: var(--white); border-top: 2px solid var(--gold); padding: 26px 22px; text-align: center; }
.lp-zone-card h4 { font-family: 'Fraunces'; font-size: 1.2rem; font-weight: 500; color: var(--green); margin-bottom: 6px; }
.lp-zone-card p { font-size: .88rem; color: var(--green-soft); margin: 0; }
.lp-zone-cards-head { text-align: center; font-family: 'Fraunces'; font-size: 1.5rem; font-weight: 400; color: var(--green); margin-top: 56px; }

/* ===== TESTIMONIALE ===== */
.lp-testi-card { display: flex; flex-direction: column; }
.lp-testi-top { display: flex; align-items: center; gap: 16px; margin-bottom: 14px; }
.lp-avatar { flex-shrink: 0; width: 54px; height: 54px; border-radius: 50%; background: var(--green); color: #ecdcbd; font-family: 'Fraunces'; font-size: 1.1rem; display: flex; align-items: center; justify-content: center; letter-spacing: .04em; }
.lp-testi-top h4 { font-family: 'Fraunces'; font-size: 1.2rem; font-weight: 500; color: var(--green); margin-bottom: 2px; }
.lp-testi-top p { font-size: .82rem; color: var(--green-soft); margin: 0; }
.lp-stars { color: var(--gold); letter-spacing: .15em; font-size: 1rem; margin-bottom: 12px; }
.lp-quote { font-family: 'Fraunces'; font-style: italic; font-size: 1.05rem; line-height: 1.5; color: var(--green-soft); margin: 0; }

/* ===== FAQ ===== */
.lp-faq { display: grid; grid-template-columns: 1fr 1fr; gap: 40px 56px; }
.lp-faq-item { padding-left: 20px; border-left: 2px solid var(--gold); margin-bottom: 26px; }
.lp-faq-item:last-child { margin-bottom: 0; }
.lp-faq-item h4 { font-family: 'Fraunces'; font-size: 1.2rem; font-weight: 500; color: var(--green); margin-bottom: 8px; line-height: 1.3; }
.lp-faq-item p { font-size: .92rem; color: var(--green-soft); margin: 0; }

/* ===== PROCES (nuntă) — pași numerotați ===== */
.lp-steps { display: grid; grid-template-columns: 1fr 1fr; gap: 30px 56px; }
.lp-step { display: flex; gap: 18px; align-items: flex-start; }
.lp-step-n { flex-shrink: 0; width: 46px; height: 46px; border: 1px solid var(--gold); color: var(--gold-deep); font-family: 'Fraunces'; font-style: italic; font-size: 1.3rem; display: flex; align-items: center; justify-content: center; }
.lp-step h4 { font-family: 'Fraunces'; font-size: 1.25rem; font-weight: 500; color: var(--green); margin-bottom: 6px; }
.lp-step p { font-size: .92rem; color: var(--green-soft); margin: 0; }

/* ===== CTA — linie de contact + disclaimer ===== */
.lp-cta-contact { margin-top: 26px; font-size: 1rem; }
.lp-cta-contact a { color: #fff; border-bottom: 1px solid var(--gold); padding-bottom: 2px; }
.lp-cta-note { margin-top: 14px; font-family: 'Fraunces'; font-style: italic; color: #ecdcbd; font-size: 1.05rem; }
.lp-cta-disclaimer { margin-top: 22px; font-size: .9rem; color: #cabf9e; }

/* ===== RESPONSIVE ===== */
@media (max-width: 920px) {
    .lp-prices.lp-prices-2 { grid-template-columns: 1fr; max-width: 540px; }
    .lp-info-grid { grid-template-columns: repeat(3, 1fr); }
    .lp-zone-cards { grid-template-columns: repeat(2, 1fr); }
    .lp-faq, .lp-steps { grid-template-columns: 1fr; gap: 26px; }
}
@media (max-width: 700px) {
    .lp-info-grid, .lp-zone-cards { grid-template-columns: 1fr; }
    .lp-badge { font-size: .62rem; letter-spacing: .12em; }
}
