/* Professional plus layer: progressive UX polish, no route/content removals */
:root{
  --plus-content:76ch;
  --plus-fast:160ms;
  --plus-normal:240ms;
  --plus-ease:cubic-bezier(.2,.8,.2,1);
}

/* More disciplined rhythm */
.site-content,.site-article-content,.site-resource-content,.site-document{font-size:clamp(1rem,.97rem + .12vw,1.075rem)}
.site-content :is(h2,h3),.site-article-content :is(h2,h3),.site-resource-content :is(h2,h3),.site-document :is(h2,h3){text-wrap:balance}
.site-content h2,.site-article-content h2,.site-resource-content h2,.site-document h2{margin-top:clamp(2.4rem,4vw,3.4rem)}
.site-content h3,.site-article-content h3,.site-resource-content h3,.site-document h3{margin-top:clamp(1.7rem,3vw,2.35rem)}
.site-content :is(p,li),.site-article-content :is(p,li),.site-resource-content :is(p,li),.site-document :is(p,li){text-wrap:pretty}
.site-content :is(ul,ol),.site-article-content :is(ul,ol),.site-resource-content :is(ul,ol),.site-document :is(ul,ol){padding-left:1.3rem}
.site-content li+li,.site-article-content li+li,.site-resource-content li+li,.site-document li+li{margin-top:.42rem}

/* Current navigation state */
.ecg-nav a[aria-current="page"],.ecg-mobile-panel a[aria-current="page"]{color:var(--pro-brand);font-weight:800}
.ecg-nav a[aria-current="page"]{background:rgba(15,86,217,.075)}
.ecg-mobile-panel a[aria-current="page"]{background:rgba(15,86,217,.055);border-radius:10px;padding-inline:10px}
.site-breadcrumb [aria-current="page"]{color:var(--pro-ink);font-weight:750}

/* Reading utility */
.site-reading-progress{position:fixed;z-index:1200;left:0;top:0;width:100%;height:3px;pointer-events:none;background:transparent}
.site-reading-progress>span{display:block;height:100%;width:100%;transform:scaleX(0);transform-origin:left;background:linear-gradient(90deg,var(--pro-brand),#78a9ff);will-change:transform}
.site-reading-meta{display:inline-flex;align-items:center;gap:8px;margin-top:14px;padding:7px 10px;border:1px solid var(--pro-border);border-radius:999px;background:rgba(255,255,255,.72);font-size:.82rem;font-weight:700;color:var(--pro-muted);box-shadow:0 4px 14px rgba(8,31,58,.04)}
.site-reading-meta svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.8}

/* Better editorial details */
.site-article-content blockquote,.site-resource-content blockquote,.site-content blockquote{margin:2rem 0;padding:1.1rem 1.25rem;border-left:4px solid var(--pro-brand);border-radius:0 12px 12px 0;background:#f5f9ff;color:#29415f}
.site-article-content hr,.site-resource-content hr,.site-content hr{border:0;border-top:1px solid var(--pro-border);margin:2.5rem 0}
.site-article-content code,.site-resource-content code,.site-content code{font-size:.92em;background:#eef3f9;border:1px solid #dce5ef;padding:.12em .35em;border-radius:6px}

/* Refined card motion without layout jump */
.site-home-service,.ec-related-card,.site-story-card,.site-resource-tile,.ec-info-card-row>*,.ec-service-detail-grid>*{transition:border-color var(--plus-fast) ease,box-shadow var(--plus-normal) var(--plus-ease),transform var(--plus-normal) var(--plus-ease)}
@media (hover:hover) and (pointer:fine){
  .site-home-service:hover,.ec-related-card:hover,.site-story-card:hover,.site-resource-tile:hover{transform:translateY(-3px)}
}

/* Progressive reveal */
.js .site-reveal{opacity:0;transform:translateY(14px);transition:opacity 420ms var(--plus-ease),transform 420ms var(--plus-ease)}
.js .site-reveal.is-visible{opacity:1;transform:none}

/* Cleaner long-page navigation */
.site-back-top{bottom:max(18px,env(safe-area-inset-bottom))}

/* Form/control resilience if forms are added later */
input,textarea,select,button{font:inherit}
input,textarea,select{max-width:100%}
textarea{resize:vertical}

/* Mobile polish */
@media (max-width:700px){
  .site-shell,.ecg-shell{padding-left:max(18px,env(safe-area-inset-left));padding-right:max(18px,env(safe-area-inset-right))}
  .site-section-heading{gap:14px}
  .site-home-services{gap:12px}
  .site-reading-progress{height:2px}
  .site-reading-meta{font-size:.78rem}
  .site-content table,.site-article-content table,.site-resource-content table,.site-document table{display:block;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
}

@media (prefers-reduced-motion:reduce){
  .js .site-reveal{opacity:1;transform:none;transition:none}
  .site-home-service,.ec-related-card,.site-story-card,.site-resource-tile,.ec-info-card-row>*,.ec-service-detail-grid>*{transition:none}
}

@media print{
  .site-reading-progress,.site-reading-meta{display:none!important}
}
