/* Piping chapter: uses the shared portfolio design system. */
.piping-hero{padding-top:60px;padding-bottom:38px;border-bottom:1px solid #304652}
.piping-hero h1{max-width:850px;font-size:clamp(42px,6vw,76px);line-height:1.05;margin:20px 0}
.piping-hero .intro{max-width:750px;font-size:20px;line-height:1.65}
.piping-meta{font-size:12px;letter-spacing:.06em;text-transform:uppercase;margin-top:24px;color:#b4c3cf}
.piping-layout{display:grid;grid-template-columns:230px minmax(0,1fr);gap:56px;padding-top:40px;padding-bottom:70px}
.piping-sidebar{align-self:start;position:sticky;top:100px;border:1px solid #304652;padding:20px}
.piping-sidebar a{display:block;padding:9px 0;font-size:14px;text-decoration:none}
.piping-sidebar strong{font-size:12px;letter-spacing:.1em}
.piping-content{min-width:0}
.piping-content section{scroll-margin-top:110px;padding:0 0 38px;margin:0 0 38px;border-bottom:1px solid #304652}
.piping-content h2{font-size:clamp(28px,3vw,40px);line-height:1.2;margin:10px 0 22px}
.piping-content h3{font-size:21px;margin:25px 0 12px}
.piping-content p,.piping-content li{line-height:1.75}
.piping-content ul,.piping-content ol{padding-left:22px}
.piping-content li{margin-bottom:9px}
.piping-content a{text-decoration:underline;text-underline-offset:3px}
.piping-split{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.piping-box{background:#122c3d;padding:22px;border:1px solid #304652;border-radius:3px}
.piping-box h3{margin-top:0}
.piping-note{border-left:3px solid #3e6449;padding:12px 18px;background:#122c3d;font-size:14px}
.piping-scroll{overflow-x:auto;border:1px solid #304652;border-radius:3px}
.piping-content table{border-collapse:collapse;width:100%;font-size:14px;font-variant-numeric:tabular-nums}
.piping-content caption{text-align:left;padding:14px;font-weight:600;background:#122c3d}
.piping-content th,.piping-content td{padding:12px;text-align:left;border-bottom:1px solid #304652;white-space:nowrap}
.piping-content thead{background:#17392c;color:#fff}
.piping-content tbody tr:nth-child(even){background:#102535}
.piping-source{font-size:12px;line-height:1.6;color:#b4c3cf}
.piping-equation{font-size:21px;font-family:ui-monospace,monospace;background:#17392c;color:#fff;padding:18px;overflow-x:auto;border-radius:3px}
.piping-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin:20px 0}
.piping-form label{font-size:13px;font-weight:600}
.piping-form input,.piping-search{display:block;width:100%;box-sizing:border-box;padding:12px;margin-top:7px;border:1px solid #a9b7a7;border-radius:3px;background:#fff;color:#172d22;font:inherit}
.piping-result{display:block;font-size:19px;line-height:1.6;color:#dfc98c;font-weight:600;margin-top:15px}
.piping-search{margin-bottom:16px;font-size:14px}
.piping-content [hidden]{display:none!important}
@media(max-width:850px){.piping-layout{grid-template-columns:1fr;gap:30px}.piping-sidebar{position:static}.piping-sidebar nav{display:grid;grid-template-columns:1fr 1fr;column-gap:20px}.piping-split{grid-template-columns:1fr}}
@media(max-width:500px){.piping-form{grid-template-columns:1fr}.piping-hero{padding-top:36px}.piping-layout{padding-top:24px}.piping-content th,.piping-content td{padding:10px}}
@media print{.site-header,.piping-sidebar,.piping-form{display:none}.piping-layout{display:block}.piping-content section{break-inside:avoid}.piping-scroll{overflow:visible}}
.piping-sidebar label{display:block;margin-top:14px}.piping-content .piping-box,.piping-content caption{color:#e8edf1}.piping-content .piping-box h3{color:#e8edf1}
