.source-feature-panel { margin:40px auto;max-width:1440px; }
.source-feature-panel .source-feature-grid { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px; }
.source-feature-intro { grid-column:1/-1;padding:0 0 12px; }
.source-feature-intro .source-feature-title { margin:0;max-width:100%;font-size:var(--type-h2,30px);color:#15384d;line-height:1.3; }
.source-feature-card { position:relative;min-width:0;padding:28px;border:1px solid #d9e7ed;border-top:2px solid #00a3c4;border-radius:10px;background:#f8fbfd;overflow-wrap:anywhere; }
.source-feature-card .source-feature-title { margin:0 0 18px;max-width:100%;font-size:var(--type-h3,22px);line-height:1.4;color:#15384d;font-weight:650; }
.source-feature-card .source-feature-metric { margin:0 0 18px;max-width:100%;font-size:var(--type-h3,22px);line-height:1.4;font-weight:650;color:#007e9f;white-space:pre-line; }
.source-feature-card .source-feature-body { margin:0 0 16px;max-width:100%;font-size:var(--type-body,16px);line-height:var(--type-copy-leading,1.8);color:#3e5c70;white-space:pre-line; }
.source-feature-card > :last-child { margin-bottom:0; }
.source-feature-art { display:flex;align-items:center;justify-content:center;gap:20px;flex-wrap:wrap;margin:24px 0; }
.source-feature-illustration { margin:0;min-width:0; }
.source-feature-illustration img { display:block;width:auto;height:auto;max-width:100%;max-height:200px;object-fit:contain;margin:auto; }
.source-feature-card .source-diagram { margin:24px 0;background:transparent; }
.source-reflowed-table { margin:40px auto; }
.source-reflowed-table .spec-table { margin:0;min-width:640px; }
.source-reflowed-table .source-feature-illustration img { max-width:40px;max-height:32px; }
.source-table-text { white-space:pre-line; }
@media(max-width:1100px){.source-feature-panel .source-feature-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }}
@media(max-width:700px){
 .source-feature-panel .source-feature-grid { grid-template-columns:minmax(0,1fr);gap:18px; }
 .source-feature-card { padding:24px; }
 .source-feature-illustration img { max-height:180px; }
}
/* Technical topology keeps the full media width; product features stay compact. */
.source-feature-card:has(> .source-diagram) { grid-column:1/-1; }

/* EPC's source photo captions and permission labels use HTML type at every
   width, rather than shrinking inside the original dark promotional canvas. */
[data-source-feature-layout="epc-management-scenarios"] .source-feature-grid { grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:start; }
[data-source-feature-layout="epc-management-scenarios"] .source-feature-card { padding:24px;background:#fff; }
[data-source-feature-layout="epc-management-scenarios"] .source-feature-title { font-size:22px;color:#17384d;line-height:1.4;margin:0 0 20px; }
[data-source-feature-layout="epc-management-scenarios"] .source-feature-art { margin:0 0 20px; }
[data-source-feature-layout="epc-management-scenarios"] .source-feature-illustration { width:100%;overflow:hidden;border-radius:8px; }
[data-source-feature-layout="epc-management-scenarios"] .source-feature-illustration img { width:100%;height:auto;max-height:none;aspect-ratio:932/539;object-fit:contain; }
[data-source-feature-layout="epc-management-scenarios"] [data-source-layer="1"] img { transform:rotate(180deg); }
[data-source-feature-layout="epc-management-scenarios"] .source-feature-permissions { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0 0 20px; }
[data-source-feature-layout="epc-management-scenarios"] .source-feature-permission { padding:12px;border-radius:8px;background:#eaf5f9;min-width:0; }
[data-source-feature-layout="epc-management-scenarios"] .source-feature-network { color:#17384d;font-size:14px;font-weight:650;line-height:1.5; }
[data-source-feature-layout="epc-management-scenarios"] .source-feature-role { color:#3e5c70;font-size:14px;line-height:1.5;margin:4px 0 0; }
[data-source-feature-layout="epc-management-scenarios"] .source-feature-body { color:#3e5c70;font-size:16px;line-height:1.8; }
@media(max-width:1000px) {
 [data-source-feature-layout="epc-management-scenarios"] .source-feature-grid { grid-template-columns:minmax(0,1fr);gap:18px; }
}
@media(max-width:600px) {
 [data-source-feature-layout="epc-management-scenarios"] .source-feature-card { padding:20px; }
 [data-source-feature-layout="epc-management-scenarios"] .source-feature-title { font-size:20px; }
}

/* Recovered marketing source: HTML hierarchy, independent artwork, no source
   canvas backgrounds/empty hit areas and no type shrinking on narrow screens. */
[data-source-feature-layout="marketing-source-features"] .source-feature-grid { grid-template-columns:repeat(2,minmax(0,1fr));align-items:start; }
[data-source-feature-layout="marketing-source-features"] .source-feature-grid:has(> :only-child) { grid-template-columns:minmax(0,1fr); }
[data-source-feature-layout="marketing-source-features"] .source-feature-grid > .source-feature-card:only-child { width:100%;max-width:940px;justify-self:center; }
[data-source-feature-layout="marketing-source-features"] .source-feature-intro { padding:20px 0; }
[data-source-feature-layout="marketing-source-features"] .source-feature-intro .source-feature-body { color:#3e5c70;font-size:16px;line-height:1.8;white-space:pre-line; }
[data-source-feature-layout="marketing-source-features"] .source-feature-illustration { max-width:100%; }
[data-source-feature-layout="marketing-source-features"] .source-feature-illustration img { max-height:420px;max-width:100%; }
[data-source-feature-layout="marketing-source-features"] .source-feature-subtitle { margin:22px 0 8px;font-size:18px;line-height:1.5;color:#17384d;font-weight:650;white-space:pre-line; }
[data-source-feature-layout="marketing-source-features"] .source-feature-illustration[data-source-media-role="feature-icon"] { width:48px;max-width:48px; }
[data-source-feature-layout="marketing-source-features"] .source-feature-illustration[data-source-media-role="feature-icon"] img { max-width:48px;max-height:48px; }
[data-source-feature-layout="marketing-source-features"] .source-feature-illustration[data-source-media-role="logo"] { max-width:160px; }
[data-source-feature-layout="marketing-source-features"] .source-feature-illustration[data-source-media-role="logo"] img { max-width:160px;max-height:80px; }
[data-source-feature-layout="marketing-source-features"] .source-feature-intro:has(.source-feature-art) { display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);column-gap:40px;align-items:center; }
[data-source-feature-layout="marketing-source-features"] .source-feature-intro:has(.source-feature-art) > :not(.source-feature-art) { grid-column:1; }
[data-source-feature-layout="marketing-source-features"] .source-feature-intro:has(.source-feature-art) > .source-feature-art { grid-column:2;grid-row:1/span 8;margin:0; }
@media(max-width:850px) {
 [data-source-feature-layout="marketing-source-features"] .source-feature-grid { grid-template-columns:minmax(0,1fr); }
 [data-source-feature-layout="marketing-source-features"] .source-feature-intro:has(.source-feature-art) { display:block; }
 [data-source-feature-layout="marketing-source-features"] .source-feature-intro:has(.source-feature-art) > .source-feature-art { margin:24px 0; }
}
