/* Shared case-study typography and rhythm come from xy-stage.css. */
.ald-page .xy-heading h2{max-width:750px}
.ald-page .xy-specs strong{letter-spacing:-.015em}
.ald-architecture{background:var(--pale);padding:24px;margin-bottom:25px}
.ald-flow{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:32px}
.ald-flow>div{position:relative;min-width:0}
.ald-flow>div+div:before{content:'→';position:absolute;left:-24px;top:8px;color:var(--teal)}
.ald-flow strong{display:block;font-size:17px;line-height:1.5;font-weight:500}
.ald-flow small{display:block;font-size:13px;line-height:1.6;color:var(--muted);margin-top:5px}
.ald-architecture>p{margin-top:20px;border-top:1px solid #d5e0e1;padding-top:15px;font-size:14px;color:var(--teal)}
.ald-architecture>p span{float:right;color:var(--muted)}
.ald-integration{display:grid;grid-template-columns:.8fr 1.2fr;gap:25px;align-items:start}
.ald-integration>div{min-width:0}
.ald-integration .xy-visual{height:390px;display:flex;align-items:center;justify-content:center;background:#f5f7f7}
.ald-integration .xy-visual img{width:100%;height:100%;object-fit:contain}
.ald-comparison{display:grid;grid-template-columns:1fr 60px 1fr;align-items:center;border-bottom:1px solid var(--line);padding:24px 0;gap:20px}
.ald-comparison small,.ald-thermal-note>small,.ald-cycle small,.ald-trials small{display:block;font:12px/1.6 var(--mono);color:var(--teal)}
.ald-comparison strong,.ald-thermal-note strong{display:block;font-size:35px;font-weight:500;letter-spacing:-.015em;line-height:1.3;margin-top:9px}
.ald-page em{font-style:normal;font-size:20px}
.ald-comparison div>span,.ald-thermal-note div>span{display:block;font-size:14px;line-height:1.6;color:var(--muted);margin-top:6px}
.ald-compare-arrow{color:var(--teal);font-size:25px;text-align:center}
.ald-thermal{display:grid;grid-template-columns:1.8fr 1fr;gap:30px;align-items:center}
.ald-thermal-note{padding:25px;background:var(--pale)}
.ald-thermal-note>div{margin-top:18px;padding-bottom:16px;border-bottom:1px solid #d5e0e1}
.ald-thermal-note>p{font-size:14px;line-height:1.7;margin-top:17px;color:var(--muted)}
.ald-recipe{margin-bottom:0}
.ald-cycle{display:grid;grid-template-columns:.8fr 2.5fr .8fr;gap:22px;align-items:center;padding:25px;border:1px solid var(--line)}
.ald-cycle strong{display:block;font-size:18px;font-weight:500;line-height:1.4;margin-top:6px}
.ald-cycle ol{list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;padding:0;margin:0}
.ald-cycle li{font-size:16px;line-height:1.5;position:relative}
.ald-cycle li+li:before{content:'→';position:absolute;left:-18px;top:0;color:var(--teal)}
.ald-trials{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.ald-trials>div{padding:25px 20px}
.ald-trials>div+div{border-left:1px solid var(--line)}
.ald-trials strong{display:block;font-size:36px;letter-spacing:-.015em;font-weight:500;line-height:1.4;margin-top:14px}
.ald-trials p{font-size:14px;color:var(--muted);margin-top:10px}
.ald-source{display:inline-block;margin-top:20px;font-size:14px;border-bottom:1px solid var(--line);padding-bottom:6px;color:var(--teal)}
@media(max-width:1000px){.ald-architecture>p span{float:none;display:block;margin-top:5px}.ald-integration .xy-visual{height:320px}.ald-thermal{grid-template-columns:1.5fr 1fr;gap:20px}.ald-cycle{grid-template-columns:1fr}.ald-cycle ol{padding:17px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.ald-trials>div{padding:20px 14px}.ald-trials strong{font-size:31px}.ald-trials em{font-size:16px}}
@media(max-width:760px){.ald-flow{grid-template-columns:1fr 1fr;gap:28px 30px}.ald-flow>div:nth-child(3):before{content:none}.ald-integration{grid-template-columns:1fr;gap:23px}.ald-integration .xy-visual{height:auto}.ald-integration .xy-visual img{height:auto;max-height:440px;object-fit:contain}.ald-thermal{grid-template-columns:1fr}.ald-thermal-note{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.ald-thermal-note>small,.ald-thermal-note>p{grid-column:1/-1}.ald-comparison{grid-template-columns:1fr 24px 1fr;gap:10px}.ald-comparison strong{font-size:27px}.ald-page .ald-comparison em{font-size:16px}.ald-compare-arrow{font-size:20px}.ald-comparison small{font-size:12px}.ald-trials{grid-template-columns:1fr 1fr}.ald-trials>div:nth-child(3){border-left:0}.ald-trials>div:nth-child(n+3){border-top:1px solid var(--line)}.ald-cycle{padding:20px}.ald-cycle ol{grid-template-columns:1fr 1fr;gap:25px}.ald-cycle li:nth-child(3):before{content:none}}
