.elsa-post { max-width:760px; margin:0 auto; color:#0F172A; font-family:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif; -webkit-font-smoothing:antialiased; }
.elsa-post * { box-sizing:border-box; }
.elsa-post img { max-width:100%; height:auto; display:block; }
.elsa-post p { font-size:17px; line-height:1.72; color:#334155; margin:0 0 18px 0; }
.elsa-post h2 { font-size:28px; line-height:1.25; font-weight:800; color:#0F172A; margin:40px 0 14px 0; letter-spacing:-0.01em; }
.elsa-post h3 { font-size:19px; line-height:1.35; font-weight:700; color:#0F172A; margin:28px 0 10px 0; }
.elsa-post ul { margin:8px 0 20px 24px; padding:0; }
.elsa-post li { font-size:17px; line-height:1.72; color:#334155; margin-bottom:8px; }
.elsa-post strong { color:#0F172A; font-weight:700; }
.elsa-post em { font-style:italic; color:#334155; }

.elsa-post .ep-lead { font-size:20px; line-height:1.55; color:#475569; font-weight:400; margin-bottom:32px; }

.elsa-post .ep-hero { margin:0 0 36px 0; padding:36px 24px; background:linear-gradient(160deg,#0F0B2E 0%,#1E1145 20%,#3B1D7E 45%,#6D3BC4 70%,#8B5CF6 90%); border-radius:20px; text-align:center; }
.elsa-post .ep-hero-eyebrow { display:inline-block; background:rgba(255,255,255,0.12); color:#E9D5FF; font-size:11px; font-weight:700; letter-spacing:1.5px; padding:6px 14px; border-radius:20px; text-transform:uppercase; margin-bottom:16px; }
.elsa-post .ep-hero-title { font-size:22px; font-weight:700; color:#FFFFFF; margin:0 0 16px 0; line-height:1.35; }
.elsa-post .ep-hero img { max-width:320px; margin:0 auto; border-radius:32px; filter:drop-shadow(0 30px 60px rgba(0,0,0,0.4)); }

.elsa-post .ep-pullquote { border-left:4px solid #7C3AED; padding:6px 0 6px 22px; margin:28px 0; font-size:22px; line-height:1.45; font-weight:600; color:#0F172A; font-style:italic; }

.elsa-post .ep-phone-duo { display:grid; grid-template-columns:1fr 1fr; gap:18px; margin:28px 0 8px 0; }
.elsa-post .ep-phone-card { background:#0F0B2E; border-radius:20px; padding:22px 16px 16px 16px; text-align:center; }
.elsa-post .ep-phone-card img { max-width:220px; margin:0 auto 14px auto; border-radius:18px; }
.elsa-post .ep-pc-label { font-size:11px; font-weight:700; color:#A78BFA; letter-spacing:1.2px; text-transform:uppercase; margin-bottom:6px; }
.elsa-post .ep-pc-title { font-size:15px; font-weight:700; color:#FFFFFF; margin-bottom:6px; }
.elsa-post .ep-pc-sub { font-size:12px; color:rgba(255,255,255,0.6); line-height:1.5; margin:0; }

.elsa-post .ep-score { display:grid; grid-template-columns:300px 1fr; gap:32px; align-items:center; background:linear-gradient(140deg,#FAFAFF 0%,#F3EEFF 100%); border:1px solid #EDE4FF; border-radius:24px; padding:32px; margin:28px 0; }
.elsa-post .ep-score img { max-width:260px; border-radius:20px; }
.elsa-post .ep-score h3 { margin-top:0; font-size:20px; }
.elsa-post .ep-score p { font-size:15px; line-height:1.6; margin-bottom:10px; }
.elsa-post .ep-benchmarks { display:flex; gap:10px; flex-wrap:wrap; margin-top:14px; }
.elsa-post .ep-bench-pill { background:#FFFFFF; border:1px solid #EDE4FF; border-radius:12px; padding:8px 12px; font-size:12px; font-weight:600; color:#475569; }
.elsa-post .ep-bench-pill strong { color:#7C3AED; }

.elsa-post .ep-five { margin:22px 0 8px; border-top:1px solid #EEF2F7; }
.elsa-post .ep-five-row { display:grid; grid-template-columns:180px 1fr; gap:24px; align-items:baseline; padding:18px 4px; border-bottom:1px solid #EEF2F7; }
.elsa-post .ep-five-title { font-size:17px; font-weight:700; color:#0F172A; display:flex; align-items:center; gap:10px; }
.elsa-post .ep-five-emoji { font-size:20px; line-height:1; }
.elsa-post .ep-five-desc { font-size:15px; color:#475569; line-height:1.55; }

.elsa-post .ep-dim-grid { display:grid; grid-template-columns:1fr 1fr; gap:18px; margin:24px 0; }
.elsa-post .ep-dim-card { background:#FAFAFF; border:1px solid #EEF2F7; border-radius:18px; overflow:hidden; }
.elsa-post .ep-dim-header { padding:20px 20px 8px 20px; }
.elsa-post .ep-dim-eyebrow { font-size:11px; font-weight:700; color:#7C3AED; letter-spacing:1.2px; text-transform:uppercase; margin-bottom:6px; }
.elsa-post .ep-dim-title { font-size:17px; font-weight:700; color:#0F172A; margin-bottom:6px; }
.elsa-post .ep-dim-desc { font-size:13px; color:#64748B; line-height:1.55; margin-bottom:14px; }
.elsa-post .ep-dim-img { padding:0 20px 16px 20px; text-align:center; }
.elsa-post .ep-dim-img img { max-width:180px; margin:0 auto; border-radius:14px; }

.elsa-post .ep-strip { background:#0F0B2E; border-radius:22px; padding:32px 20px 20px 20px; margin:28px 0; text-align:center; }
.elsa-post .ep-strip-eyebrow { font-size:11px; font-weight:700; color:#A78BFA; letter-spacing:1.5px; text-transform:uppercase; margin-bottom:10px; }
.elsa-post .ep-strip-title { font-size:20px; font-weight:700; color:#FFFFFF; margin-bottom:10px; }
.elsa-post .ep-strip-sub { font-size:14px; color:rgba(255,255,255,0.65); max-width:460px; margin:0 auto 22px auto; line-height:1.55; }
.elsa-post .ep-strip img { max-width:260px; margin:0 auto; border-radius:20px; }

.elsa-post .ep-launch { background:#0F0B2E; color:#FFFFFF; border-radius:22px; padding:36px 32px; margin:36px 0; text-align:center; }
.elsa-post .ep-launch-badge { display:inline-block; background:rgba(167,139,250,0.18); color:#C4B5FD; font-size:11px; font-weight:700; letter-spacing:1.5px; padding:6px 14px; border-radius:20px; margin-bottom:14px; text-transform:uppercase; }
.elsa-post .ep-launch-line { font-size:30px; font-weight:800; line-height:1.25; margin-bottom:6px; }
.elsa-post .ep-launch-sub { font-size:15px; color:rgba(255,255,255,0.65); }

@media (max-width:720px) {
  .elsa-post .ep-lead { font-size:17px; }
  .elsa-post h2 { font-size:22px; margin-top:32px; }
  .elsa-post p, .elsa-post li { font-size:16px; }
  .elsa-post .ep-phone-duo { grid-template-columns:1fr; }
  .elsa-post .ep-dim-grid { grid-template-columns:1fr; }
  .elsa-post .ep-five-row { grid-template-columns:1fr; gap:4px; padding:14px 4px; }
  .elsa-post .ep-score { grid-template-columns:1fr; text-align:center; padding:24px; }
  .elsa-post .ep-score img { margin:0 auto; }
  .elsa-post .ep-hero { padding:28px 18px; }
  .elsa-post .ep-launch-line { font-size:24px; }
  .elsa-post .ep-pullquote { font-size:19px; padding-left:18px; }
}