/* Original brand font files with per-face Figma baseline metrics. */
@font-face { font-family:"BR Segma Article"; src:url("assets/br-segma-web-20260828/br-segma-light-24b96518c5ad.woff2") format("woff2"); font-weight:300; font-style:normal; font-display:swap; ascent-override:105%; descent-override:30%; line-gap-override:0%; }
@font-face { font-family:"BR Segma Article"; src:url("assets/br-segma-web-20260828/br-segma-regular-159864c2983c.woff2") format("woff2"); font-weight:400; font-style:normal; font-display:swap; ascent-override:105%; descent-override:30%; line-gap-override:0%; }
@font-face { font-family:"BR Segma Article"; src:url("assets/br-segma-web-20260828/br-segma-medium-8a493de950dd.woff2") format("woff2"); font-weight:500; font-style:normal; font-display:swap; ascent-override:105%; descent-override:30%; line-gap-override:0%; }
@font-face { font-family:"BR Segma Article"; src:url("assets/br-segma-web-20260828/br-segma-semibold-3f2e2a2bd19f.woff2") format("woff2"); font-weight:600; font-style:normal; font-display:swap; ascent-override:105%; descent-override:30%; line-gap-override:0%; }
@font-face { font-family:"BR Segma Article"; src:url("assets/fonts/BRSegma-Bold.otf") format("opentype"); font-weight:700; font-style:normal; font-display:swap; ascent-override:105%; descent-override:30%; line-gap-override:0%; }
/* Blog article framework — Figma 4970:5920. No shared header/footer overrides. */
.pyp-article.pyp-article-figma { background:#f7f4ed; color:#1f2822; font-synthesis:none; }
.pyp-article-figma .pyp-article-header { padding:104px 0 64px; }
.pyp-article-figma .pyp-article-header__grid { width:min(100%,1178px); margin:auto; padding:0; grid-template-columns:minmax(0,624px) minmax(0,474px); gap:80px; align-items:start; min-height:278.828px; }
.pyp-article-figma .pyp-article-header .pyp-journal-kicker { margin:0 0 8px; font-size:14px; line-height:14px; font-weight:500; letter-spacing:0; }
.pyp-article-figma .pyp-article-header h1 { font-size:48px; line-height:58px; letter-spacing:-1px; font-weight:600; }
.pyp-article-figma .pyp-article-dek > p { margin:0; color:#999; font-size:18px; line-height:29.7px; font-weight:500; }
.pyp-article-figma .pyp-story-meta { display:flex; flex-wrap:wrap; align-items:start; gap:16px; padding-top:48px; color:#999; font-size:12px; line-height:14px; letter-spacing:0; font-weight:500; }
.pyp-article-figma .pyp-story-meta .pyp-story-review { flex-basis:100%; }
.pyp-article-figma .pyp-article-hero { width:min(calc(100% - 96px),1264px); aspect-ratio:16 / 8.5; }
.pyp-article-figma .pyp-article-layout { grid-template-columns:210px minmax(0,760px); gap:80px; padding-top:78px; padding-bottom:49px; }
.pyp-article-figma .pyp-article-toc > p { font-size:10px; line-height:15px; font-weight:300; letter-spacing:1.6px; }
.pyp-article-figma .pyp-article-toc a { font-weight:500; }
.pyp-article-figma .pyp-article-toc a::before { content:""; }
.pyp-article-figma .pyp-article-body p { margin:0; color:#999; }
.pyp-article-figma .pyp-article-lead { display:grid; gap:24px; }
.pyp-article-figma .pyp-article-lead > p:first-child::first-letter { float:none; margin:0; font-family:inherit; font-size:inherit; font-weight:inherit; line-height:inherit; color:inherit; }
.pyp-article-figma .pyp-article-pullquote { margin:64px 0 0; padding:10px 0 10px 28px; }
.pyp-article-figma .pyp-article-pullquote p { color:#1f2822; }
.pyp-article-figma .pyp-article-section { padding-top:64px; }
.pyp-article-figma .pyp-article-section h2,.pyp-article-figma .pyp-article-application h2 { margin:0; font-size:40px; line-height:46.44px; letter-spacing:-.86px; font-weight:600; }
.pyp-article-figma .pyp-article-section > p { margin-top:24px; }
.pyp-article-figma .pyp-article-list { margin:24px 0 0; }
.pyp-article-figma .pyp-article-figure { margin:42px 0 0; }
.pyp-article-figma .pyp-article-figure figcaption { font-size:12px; line-height:18px; font-weight:400; }
.pyp-article-figma .pyp-article-callout { margin:48px 0 0; padding:24px; }
.pyp-article-figma .pyp-article-callout span { margin:0 0 16px; font-size:14px; line-height:15px; font-weight:700; letter-spacing:1.6px; }
.pyp-article-figma .pyp-article-application { padding-top:24px; }
.pyp-article-figma .pyp-article-application > span { display:block; font-size:16px; line-height:24px; font-weight:400; }
.pyp-article-figma .pyp-article-application h2 { margin-top:16px; max-width:714px; }
.pyp-article-figma .pyp-article-application > p { margin-top:16px; }
.pyp-article-figma .pyp-article-application > div { display:flex; flex-wrap:wrap; gap:0 4px; margin-top:24px; font-size:16px; line-height:24px; }
.pyp-article-figma .pyp-article-application i { font-style:normal; }
.pyp-article-figma .pyp-article-author { margin-top:48px; }
.pyp-article-figma .pyp-article-author__mark { font-size:24px; line-height:30px; }
.pyp-article-figma .pyp-article-author > div > span { margin:0; font-size:12px; line-height:14px; letter-spacing:0; }
.pyp-article-figma .pyp-article-author strong { margin-top:8px; font-size:20px; line-height:23px; font-weight:700; }
.pyp-article-figma .pyp-article-author p { margin:16px 0 24px; color:#676f68; }
.pyp-article-figma .pyp-article-author-links { display:flex; flex-direction:column; gap:8px; padding-top:8px; padding-bottom:15px; }
.pyp-article-figma .pyp-article-author-links a { width:fit-content; font-size:11px; line-height:17px; letter-spacing:.88px; }
.pyp-article-figma .pyp-article-author-links span { display:inline; margin:0; font-size:9px; line-height:13.5px; letter-spacing:1.35px; }
.pyp-article-figma .pyp-article-related .pyp-section-heading { display:block; margin:0; }
.pyp-article-figma .pyp-article-related .pyp-journal-kicker { margin:0; font-size:12px; line-height:14px; letter-spacing:0; font-weight:600; }
.pyp-article-figma .pyp-article-related h2 { margin:16px 0 0; font-size:64px; line-height:64px; letter-spacing:-1.6px; font-weight:600; }
.pyp-article-figma .pyp-related-grid { margin-top:50px; gap:16px; }
.pyp-article-figma .pyp-related-grid > a { display:flex; flex-direction:column; align-items:start; gap:16px; padding:24px; min-height:116px; }
.pyp-article-figma .pyp-related-grid > a > span { font-size:24px; line-height:15px; letter-spacing:1.2px; font-weight:500; }
.pyp-article-figma .pyp-related-label { display:flex; gap:8px; align-items:baseline; }
.pyp-article-figma .pyp-related-grid strong { font-size:20px; line-height:24px; font-weight:500; }
.pyp-article-figma .pyp-related-grid i { font-size:24px; line-height:24px; }
.pyp-article-figma :is(a,summary):focus-visible { outline:2px solid #a66132; outline-offset:4px; }
/* Match article typography inside the existing protected site layer. */
@layer pyp-site-typography {
 html body #main-content.pyp-article-figma :is(h1,h2,h3,p,a,li,span,strong,figcaption,summary,time,div,blockquote) { font-family:"BR Segma Article",Arial,sans-serif!important; font-synthesis:none; }
 html body .pyp-article-figma .pyp-article-body p { font-size:18px!important; line-height:29px!important; font-weight:400!important; }
 html body .pyp-article-figma .pyp-article-body p:has(a) { line-height:32.04px!important; }
 html body .pyp-article-figma .pyp-article-pullquote p { font-size:37px!important; line-height:41.81px!important; font-weight:400!important; }
 html body .pyp-article-figma .pyp-article-list li { font-size:16px!important; line-height:24.8px!important; font-weight:400!important; }
 html body .pyp-article-figma .pyp-article-callout p { font-size:14px!important; line-height:22.4px!important; font-weight:500!important; }
 html body .pyp-article-figma .pyp-article-application > p { line-height:32.04px!important; }
 html body .pyp-article-figma .pyp-article-author p { font-size:14px!important; line-height:22px!important; font-weight:400!important; }
 html body .pyp-article-figma .pyp-article-toc > p { font-size:10px!important; line-height:15px!important; font-weight:300!important; }
}
/* The reference article's editorial variants; all other articles use the same base framework. */
.pyp-article-figma[data-article="cohesive-outdoor-furniture-collection"] #proportion-system { padding-top:74px; }
.pyp-article-figma[data-article="cohesive-outdoor-furniture-collection"] #material-palette { padding-top:57px; }
.pyp-article-figma[data-article="cohesive-outdoor-furniture-collection"] :is(#anchor-pieces,#proportion-system,#material-palette,#repeatable-system) > p { margin-top:25px; }
.pyp-article-figma[data-article="cohesive-outdoor-furniture-collection"] :is(#anchor-pieces,#proportion-system,#material-palette,#repeatable-system) > h2 + p { margin-top:28px; }
.pyp-article-figma #proportion-system h2 { max-width:720px; }
.pyp-article-figma #material-palette h2 { max-width:709px; }
.pyp-article-figma #repeatable-system h2 { max-width:636px; }
@layer pyp-site-typography {
 html body .pyp-article-figma[data-article="cohesive-outdoor-furniture-collection"] #anchor-pieces > p { font-weight:300!important; line-height:32.04px!important; color:#374139; }
}
@media(max-width:1200px) {
 .pyp-article-figma .pyp-article-header__grid { grid-template-columns:minmax(0,1.2fr) minmax(0,1fr); gap:48px; }
 .pyp-article-figma .pyp-article-layout { grid-template-columns:180px minmax(0,760px); gap:40px; }
 .pyp-article-figma .pyp-article-related h2 { font-size:48px; line-height:56px; }
}
@media(max-width:980px) {
 .pyp-article-figma .pyp-article-header__grid { grid-template-columns:1fr; gap:32px; min-height:0; }
 .pyp-article-figma .pyp-article-layout { display:block; }
 .pyp-article-figma .pyp-article-toc { display:none; }
 .pyp-article-figma .pyp-article-toc-mobile { display:block; margin-bottom:40px; border-block:1px solid var(--journal-line); }
 .pyp-article-figma .pyp-article-toc-mobile summary { display:flex; justify-content:space-between; padding:16px 0; list-style:none; cursor:pointer; }
 .pyp-article-figma .pyp-article-toc-mobile a { display:block; padding:10px 0; }
 .pyp-article-figma .pyp-related-grid { grid-template-columns:1fr; }
}
@media(max-width:700px) {
 .pyp-article-figma .pyp-article-header { padding:48px 0 40px; }
 .pyp-article-figma .pyp-article-header h1 { font-size:36px; line-height:43px; letter-spacing:-.7px; }
 .pyp-article-figma .pyp-article-header .pyp-journal-kicker { font-size:12px; }
 .pyp-article-figma .pyp-article-dek > p { font-size:16px; line-height:26px; }
 .pyp-article-figma .pyp-story-meta { padding-top:24px; gap:14px; font-size:11px; }
 .pyp-article-figma .pyp-article-hero { width:calc(100% - 40px); aspect-ratio:4/3; }
 .pyp-article-figma .pyp-article-layout { padding-top:40px; padding-bottom:64px; }
 .pyp-article-figma .pyp-article-pullquote { margin-top:40px; padding-left:20px; }
 .pyp-article-figma .pyp-article-section,.pyp-article-figma[data-article] :is(#proportion-system,#material-palette) { padding-top:40px; }
 .pyp-article-figma .pyp-article-section h2,.pyp-article-figma .pyp-article-application h2 { font-size:30px; line-height:36px; letter-spacing:-.5px; }
 .pyp-article-figma .pyp-article-figure { margin:32px 0 0; }
 .pyp-article-figma .pyp-article-figure figcaption { padding-inline:0; }
 .pyp-article-figma .pyp-article-callout { padding:20px; margin-top:32px; }
 .pyp-article-figma .pyp-article-application { padding-top:40px; }
 .pyp-article-figma .pyp-article-application > div { flex-direction:column; gap:12px; }
 .pyp-article-figma .pyp-article-author { grid-template-columns:48px minmax(0,1fr); gap:16px; }
 .pyp-article-figma .pyp-article-author__mark { width:48px; height:48px; }
 .pyp-article-figma .pyp-article-author strong { font-size:18px; }
 .pyp-article-figma .pyp-article-related { padding:56px 0; }
 .pyp-article-figma .pyp-article-related h2 { font-size:36px; line-height:43px; letter-spacing:-.7px; }
 .pyp-article-figma .pyp-related-grid { margin-top:32px; }
 @layer pyp-site-typography {
  html body .pyp-article-figma .pyp-article-body p,html body .pyp-article-figma .pyp-article-body p:has(a),html body .pyp-article-figma[data-article] #anchor-pieces > p { font-size:16px!important; line-height:26px!important; }
  html body .pyp-article-figma .pyp-article-pullquote p { font-size:28px!important; line-height:34px!important; }
  html body .pyp-article-figma .pyp-article-callout p,html body .pyp-article-figma .pyp-article-author p { font-size:14px!important; line-height:22px!important; }
 }
}

@media(max-width:700px) { @layer pyp-site-typography { html body .pyp-article-figma .pyp-article-header h1 { font-size:36px!important; line-height:43px!important; } html body .pyp-article-figma .pyp-article-section h2,html body .pyp-article-figma .pyp-article-application h2 { font-size:30px!important; line-height:36px!important; } } }

/* Figma text frames round their natural line boxes up to whole pixels. */
@supports (block-size:calc-size(auto, round(up, size, 1px))) {
 .pyp-article-figma .pyp-article-body :is(p,h2),.pyp-article-figma .pyp-article-list li { block-size:calc-size(auto, round(up, size, 1px)); }
}
@media(min-width:701px) { .pyp-article-figma .pyp-article-author strong { height:19px; } .pyp-article-figma .pyp-article-author-links { padding-bottom:14px; } }

@media(min-width:701px) { .pyp-article-figma .pyp-article-application > div { min-height:25px; } .pyp-article-figma .pyp-article-application > span { position:relative; top:3px; } }
