/* Expert service detail – premium long-form */
.es-detail{background:#F7F5F0}
.es-hero{background:linear-gradient(135deg,#0B2540 0%,#123F82 55%,#1D5FBF 100%);color:#fff;padding:40px 0 36px}
.es-hero .wrap{max-width:1100px}
.es-breadcrumb{font-size:13px;color:#C9D9EA;margin:0 0 12px}
.es-breadcrumb a{color:#E8F0F8;text-decoration:none}
.es-breadcrumb a:hover{text-decoration:underline}
.es-hero h1{margin:0 0 12px;font-size:clamp(1.5rem,3.5vw,2rem);font-weight:800;line-height:1.2;color:#fff}
.es-hero .lead{margin:0;max-width:36rem;font-size:1.05rem;line-height:1.55;color:#D7E3EF}
.es-hero .price{margin:16px 0 0;font-size:1.2rem;font-weight:800;color:#fff}
.es-hero .price span{font-weight:500;font-size:.9rem;color:#C9D9EA}
.es-hero-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}
.es-btn{display:inline-flex;align-items:center;justify-content:center;padding:12px 20px;border-radius:10px;font-weight:700;font-size:.95rem;text-decoration:none;border:none;cursor:pointer}
.es-btn-primary{background:#fff;color:#0B2540;box-shadow:0 4px 14px rgba(0,0,0,.15)}
.es-btn-primary:hover{background:#F0F4F8;color:#0B2540}
.es-btn-ghost{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.4)}
.es-btn-ghost:hover{background:rgba(255,255,255,.1);color:#fff}

.es-body{padding:32px 0 48px}
.es-body .wrap{max-width:1100px}
.es-layout{display:grid;gap:28px}
@media(min-width:900px){
  .es-layout{grid-template-columns:minmax(0,1fr) 300px;gap:36px;align-items:start}
}
.es-main{min-width:0}
.es-side{display:grid;gap:14px}
@media(min-width:900px){.es-side{position:sticky;top:88px}}

.es-card{background:#fff;border:1px solid #E5E9EF;border-radius:16px;padding:20px 22px;box-shadow:0 1px 2px rgba(11,37,64,.04)}
.es-card h2{font-size:1.05rem;margin:0 0 10px;color:#0B2540;font-weight:750}
.es-order .price-big{font-size:1.35rem;font-weight:800;color:#123F82;margin:0 0 6px}
.es-order p{font-size:.88rem;color:#64748b;margin:0 0 14px;line-height:1.5}
.es-order .es-btn{width:100%}

/* Prose – fix unformatted long body */
.es-prose{background:#fff;border:1px solid #E5E9EF;border-radius:16px;padding:24px 22px 28px;box-shadow:0 1px 2px rgba(11,37,64,.04)}
.es-prose > .es-kicker{font-size:12px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:#1D5FBF;margin:0 0 8px}
.es-prose h2{font-size:1.15rem;margin:28px 0 10px;color:#0B2540;font-weight:750;line-height:1.3;padding-bottom:8px;border-bottom:2px solid #EEF2F7}
.es-prose h2:first-of-type{margin-top:0}
.es-prose p{margin:0 0 14px;font-size:.98rem;line-height:1.7;color:#334155}
.es-prose ul,.es-prose ol{margin:0 0 14px;padding-left:1.25rem;color:#334155}
.es-prose li{margin:0 0 6px;line-height:1.55;font-size:.95rem}
.es-audience{margin:0 0 18px;padding:14px 16px;background:#EEF2F7;border-radius:12px;border-left:4px solid #123F82;font-size:.95rem;line-height:1.55;color:#334155}

.es-split{display:grid;gap:14px;margin:20px 0}
@media(min-width:640px){.es-split{grid-template-columns:1fr 1fr}}
.es-box{border-radius:14px;padding:18px;border:1px solid #E5E9EF;background:#fff}
.es-box.good{background:#F0FDF4;border-color:#BBF7D0}
.es-box.bad{background:#FEF2F2;border-color:#FECACA}
.es-box h3{margin:0 0 10px;font-size:.95rem;font-weight:800}
.es-box.good h3{color:#065F46}
.es-box.bad h3{color:#991B1B}
.es-box ul{margin:0;padding-left:1.15rem}
.es-box li{margin:0 0 6px;font-size:.9rem;line-height:1.45;color:#1e293b}

.es-steps{display:grid;gap:12px;margin:12px 0 8px}
@media(min-width:640px){.es-steps{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1000px){.es-steps{grid-template-columns:repeat(4,1fr)}}
.es-step{background:#fff;border:1px solid #E5E9EF;border-radius:14px;padding:16px;position:relative}
.es-step .n{display:inline-flex;width:28px;height:28px;align-items:center;justify-content:center;border-radius:50%;background:#123F82;color:#fff;font-size:12px;font-weight:800;margin-bottom:10px}
.es-step:nth-child(2) .n{background:#1D5FBF}
.es-step:nth-child(3) .n{background:#159862}
.es-step:nth-child(4) .n{background:#0B2540}
.es-step h3{margin:0 0 6px;font-size:.95rem;color:#0B2540}
.es-step p{margin:0;font-size:.85rem;color:#64748b;line-height:1.45}

.es-faq details{background:#fff;border:1px solid #E5E9EF;border-radius:12px;padding:14px 16px;margin:0 0 10px}
.es-faq summary{font-weight:700;cursor:pointer;font-size:.95rem;color:#0B2540;list-style:none}
.es-faq summary::-webkit-details-marker{display:none}
.es-faq summary::after{content:"+";float:right;color:#1D5FBF;font-weight:800}
.es-faq details[open] summary::after{content:"–"}
.es-faq details p{margin:10px 0 0;font-size:.9rem;line-height:1.55;color:#475569}

.es-offer-item{border:1px solid #E8D4A8;background:#FFFBF3;border-radius:12px;padding:14px;margin:0 0 10px}
.es-offer-item .tag{display:inline-block;font-size:11px;font-weight:800;color:#78350F;background:#FEF3C7;padding:2px 8px;border-radius:999px;margin-bottom:6px}
.es-offer-item .amt{font-size:1.2rem;font-weight:800;color:#123F82}
.es-offer-item .was{font-size:.85rem;text-decoration:line-through;color:#94a3b8;margin-left:6px}

.es-related{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}
.es-related a{display:inline-flex;padding:9px 13px;border-radius:9px;border:1px solid #E5E9EF;background:#fff;text-decoration:none;color:#0B2540;font-size:13px;font-weight:650}
.es-related a:hover{border-color:#1D5FBF;color:#1D5FBF}
.es-related a.primary{background:#0B2540;color:#fff;border-color:#0B2540}

.es-bottom-cta{margin-top:8px}
.es-bottom-cta .cta-banner a{background:#fff;color:#0B2540}

@media(max-width:600px){
  .es-hero{padding:28px 0 24px}
  .es-prose{padding:18px 16px 22px}
  .es-card{padding:16px}
}
