.ftd-card>a.ftd-card-image{display:block}
/* Explicit block sizing prevents inline image links from swallowing card copy. */
.ea-card{display:flex;flex-direction:column;min-width:0}
.ea-card>a.ftd-card-image{display:block;flex:none;width:100%;height:auto;aspect-ratio:3/2;background:#fff}
.ea-card>a.ftd-card-image img{display:block;width:100%;height:100%;object-fit:contain}
.ea-card .ftd-card-body{display:flex;flex-direction:column;flex:1;min-width:0;padding:22px}
.ea-card .ftd-card-title{font-size:1.22rem;line-height:1.35;color:#111}
.ea-card .ftd-card-title a{color:#111}
.ea-card .ftd-card-meta{margin-top:auto}
.ea-card .ea-card-topic{font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:#007d81;font-weight:800;margin:0 0 10px}
.ea-card .ea-card-link{display:inline-block;font-size:13px;font-weight:800;color:#007d81;margin-top:18px}
.ea-library-header{padding:55px 0 25px;text-align:center;background:#fff}
.ea-library-header h1{color:#111;font-size:clamp(36px,5vw,64px);line-height:1.1;letter-spacing:-.04em;margin:0 0 20px}
.ea-library-header p{max-width:760px;margin:auto;color:#405860;font-size:18px;line-height:1.7}
.ea-library-section{padding-top:25px}
.ea{background:#fff;color:#183a47;line-height:1.8}
.ea-shell{width:min(1180px,calc(100% - 40px));margin:auto}
.ea-header{padding:38px 0 30px;max-width:980px;margin:auto}
.ea-back{display:inline-block;font-size:13px;font-weight:700;margin-bottom:24px;color:#007c80}
.ea-kicker{display:block;font-size:11px;font-weight:850;letter-spacing:.13em;text-transform:uppercase;color:#007e82;margin:0 0 12px}
.ea h1,.ea h2{color:#111;letter-spacing:-.025em}
.ea h1{font-size:clamp(34px,4.3vw,58px);line-height:1.1;margin:0 0 24px;max-width:1000px}
.ea-intro{font-size:19px;line-height:1.8;margin:0 0 18px;max-width:900px}
.ea-byline{font-size:12px;color:#597078;margin:0}
.ea-opening{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(0,1fr);gap:26px;align-items:stretch;margin:0 0 45px}
.ea figure{margin:0;min-width:0}
.ea-opening figure{border:1px solid #dbe6e6;border-radius:12px;overflow:hidden;align-self:start;background:#fff}
.ea-opening img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:contain}
.ea-start{padding:30px;border-radius:12px;background:#f0f6f4;border-top:3px solid #008b89;align-self:start}
.ea-start h2{font-size:25px;line-height:1.2;margin:0 0 20px}
.ea-start ol{padding-left:22px;margin:0 0 20px}
.ea-start li{margin-bottom:15px;font-size:15px}
.ea-start a{font-size:13px;font-weight:800;color:#007b7d}
.ea-layout{display:grid;grid-template-columns:260px minmax(0,1fr);gap:65px;align-items:start}
.ea-toc{border-top:2px solid #008a87;padding-top:18px;font-size:13px;position:sticky;top:24px}
.ea-toc strong{display:block;margin-bottom:12px;color:#111}
.ea-toc a{display:block;padding:8px 0;border-bottom:1px solid #e0e9e8;color:#34545e;text-decoration:none;line-height:1.5}
.ea-toc a:hover{color:#007d80}
.ea-copy{min-width:0}
.ea-copy section{margin:0 0 38px;scroll-margin-top:25px}
.ea-copy h2{font-size:clamp(25px,2.4vw,32px);line-height:1.25;margin:0 0 18px}
.ea-copy p{margin:0 0 18px;font-size:16px}
.ea .ea-detail{margin:25px 0 38px;border:1px solid #dce6e5;border-radius:12px;overflow:hidden}
.ea-detail img{display:block;width:100%;height:auto;max-height:510px;object-fit:contain;background:#fff}
.ea-detail figcaption{padding:13px 20px;font-size:13px;background:#f5f8f7;line-height:1.6}
.ea-table{max-width:100%;overflow:auto}
.ea table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:14px;line-height:1.6}
.ea caption{text-align:left;font-size:13px;padding-bottom:10px;color:#49636c}
.ea th,.ea td{padding:14px;border:1px solid #d4e2e3;vertical-align:top;overflow-wrap:anywhere;text-align:left}
.ea thead th{background:#eaf3f1;color:#14353e}
.ea tbody th{font-weight:700;background:#f9fbfa}
.ea-example{padding:26px;border-radius:12px;background:#eff6f3;border-left:4px solid #008b87}
.ea-example p:last-child{margin-bottom:0}
.ea-problems{margin:0}
.ea-problems dt{font-weight:800;color:#111;margin:20px 0 6px}
.ea-problems dd{margin:0;padding-bottom:18px;border-bottom:1px solid #d9e5e3;font-size:15px}
.ea details{padding:16px 0;border-bottom:1px solid #d9e5e3}
.ea summary{cursor:pointer;font-weight:750;color:#153b45}
.ea details p{margin:12px 0 0}
.ea-sources h2{font-size:21px}.ea-sources a{font-size:13px}.ea-sources ul{padding-left:20px}
.ea-related{border-top:1px solid #d5e4e2;padding:35px 0 65px;margin-top:20px}
.ea-related h2{font-size:30px;line-height:1.2;margin:0 0 25px}
.ea-related>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.ea-related a{padding:22px;background:#f1f7f5;border:1px solid #d7e4e2;border-radius:9px;font-size:15px;font-weight:750;color:#007b80;display:flex;justify-content:space-between;gap:15px}
.ea a:focus-visible,.ea summary:focus-visible,.ea-table:focus-visible{outline:3px solid #b38325;outline-offset:4px}
@media(max-width:900px){.ea-opening{grid-template-columns:1.4fr 1fr;gap:18px}.ea-start{padding:22px}.ea-layout{grid-template-columns:200px minmax(0,1fr);gap:30px}}
@media(max-width:700px){.ea-opening,.ea-layout{grid-template-columns:1fr}.ea-toc{position:static}.ea-toc a{padding:9px 0}.ea-related>div{grid-template-columns:1fr}.ea-opening{margin-bottom:30px}.ea-intro{font-size:17px}.ea-header{padding-top:26px}.ea-start{padding:24px}.ea th,.ea td{padding:10px;font-size:12px}.ea-example{padding:21px}.ea-library-header{padding:34px 0 20px}.ea-library-header p{font-size:16px}.ea-shell{width:calc(100% - 32px)}}

.ea-card:hover .ftd-card-image img{transform:none}
