/* Pattern articles keep previews large and body sections unframed. */
.product-page.pattern-article{max-width:1120px;padding:36px 28px 72px;letter-spacing:0}
.pattern-article .pattern-intro{max-width:860px;margin:26px auto 32px}
.pattern-article .pattern-intro h1{font:500 48px/1.12 var(--serif);letter-spacing:0;margin:12px 0 20px;overflow-wrap:break-word}
.pattern-article p,.pattern-article li{font-size:16px;line-height:1.75;color:var(--muted)}
.pattern-article .pattern-intro p{font-size:17px;line-height:1.75}
.pattern-article .pattern-intro .pattern-facts{font-size:13px;font-weight:700;color:var(--moss);margin:22px 0}
.pattern-article .product-gallery{display:block;max-width:860px;margin:auto}
.pattern-article .product-gallery .product-media{padding:0;border:0;background:none;box-shadow:none;border-radius:0}
.pattern-article .product-gallery .product-media img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:contain;border-radius:4px}
.pattern-article .product-gallery .outline-preview img{background:white}
.pattern-article .product-gallery .product-media figcaption{font-size:12px;font-weight:400;line-height:1.5;margin:12px 0 0}
.pattern-article .pattern-section{max-width:860px;margin:48px auto 0;padding:28px 0 0;border-top:1px solid var(--line);scroll-margin-top:125px}
.pattern-article .pattern-section h2{font:600 30px/1.2 var(--serif);letter-spacing:0;margin:0 0 18px;overflow-wrap:break-word}
.pattern-article .pattern-section h3{font:600 21px/1.25 var(--serif);letter-spacing:0;margin:0 0 8px}
.pattern-article .pattern-section p{margin:0 0 18px}
.pattern-article .pattern-section ul{padding-left:23px}
.pattern-article .pattern-section li{margin:9px 0}
.pattern-article .pattern-section a:not(.download-btn){color:var(--plum);text-decoration:underline;text-underline-offset:3px}
.pattern-article .pattern-steps{padding-left:24px}
.pattern-article .pattern-steps li{padding:8px 0 10px 8px}
.pattern-article .pattern-steps p{margin:0}
.pattern-article .download-card{grid-template-columns:48px minmax(0,1fr);border-radius:8px;gap:12px;padding:18px}
.pattern-article .download-card p{font-size:14px;line-height:1.6;margin:0 0 8px}
.pattern-article .download-icon{border-radius:4px;letter-spacing:0}
.pattern-article .download-btn{grid-column:2;justify-self:start;max-width:100%;white-space:normal;border-radius:4px;font-size:13px;line-height:1.5;text-align:left}
.pattern-article .secondary-cta,.pattern-article .cta{border-radius:4px;letter-spacing:0}
.pattern-article .pattern-table-wrap{max-width:100%;overflow-x:auto;margin:20px 0}
.pattern-article table{width:100%;border-collapse:collapse;font-size:13px;line-height:1.5;letter-spacing:0}
.pattern-article caption{text-align:left;font-size:13px;color:var(--muted);margin-bottom:12px}
.pattern-article th,.pattern-article td{text-align:left;padding:12px 8px;border-bottom:1px solid var(--line);min-width:100px}
.pattern-article .faq summary{font-size:16px;line-height:1.5}
.pattern-article .pattern-collection-links{display:flex;gap:16px 24px;flex-wrap:wrap;font-size:15px}
.pattern-article .pattern-related li{padding:8px 0}
@media(max-width:680px){
  .product-page.pattern-article{padding:24px 16px 48px}
  .pattern-article .pattern-intro h1{font-size:32px;line-height:1.18}
  .pattern-article .pattern-intro p{font-size:16px}
  .pattern-article .pattern-section{margin-top:34px;padding-top:24px}
  .pattern-article .pattern-section h2{font-size:26px}
  .pattern-article .download-card{padding:14px;grid-template-columns:40px minmax(0,1fr)}
  .pattern-article .download-btn{grid-column:1/-1;justify-self:stretch;text-align:center}
}
