/* Building Concepts shares the Guide's illustrated library and page heading. */
.concept-library{min-width:0}
.concept-library[data-screen=detail],.concept-library[data-screen=catalogue]{background:var(--surface);border:1px solid var(--line);border-radius:10px;overflow:clip}
.concept-library:not([data-screen=library]) .guide-surface{height:auto}
.concept-library .guide-library-footer{position:relative}
#content .concept-library .concept-catalogue-open{grid-column:3;grid-row:1;justify-self:end;min-height:34px;border:1px solid var(--line);border-radius:999px;background:var(--topic-surface,var(--surface));color:var(--accent);font-size:11px;line-height:1.35;padding:7px 12px;white-space:nowrap}
#content .concept-library .concept-catalogue-open:hover{background:var(--topic-hover);border-color:var(--accent-line)}
.concept-detail-toolbar{grid-template-columns:auto minmax(0,1fr) auto}
.concept-detail-toolbar>span{font-size:11px;line-height:1.5;min-width:0}
.concept-library .concept-studio-link{border:1px solid var(--line);border-radius:999px;background:var(--topic-surface,var(--surface));color:var(--accent);font-size:11px;line-height:1.35;padding:7px 12px;white-space:nowrap}
.concept-library .concept-studio-link:hover{background:var(--topic-hover);border-color:var(--accent-line)}
.concept-library .function-study{padding:24px;margin:0;border:0;border-radius:0;background:transparent;min-width:0}
.concept-library .function-overview{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:24px;align-items:center}
.concept-library .function-model{border:0;border-radius:8px;background:var(--panel-soft);padding:0;overflow:hidden;min-width:0}
.concept-library .function-model img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:contain}
.concept-library .function-overview h2{font-size:28px;line-height:1.25;margin:8px 0 12px;color:var(--ink)}
.concept-library .function-overview h2:focus{outline:none}
.concept-library .function-overview .eyebrow{color:var(--muted);font-size:10px;line-height:1.5}
.concept-library .function-overview p{font-size:13px;line-height:1.7;margin:0 0 16px;color:var(--muted)}
.concept-library .concept-methods{gap:6px;margin-top:10px}
.concept-library .concept-methods span{font-size:10px;line-height:1.5;padding:5px 9px;border:1px solid var(--line);border-radius:999px;background:var(--topic-hover);color:var(--accent)}
.concept-library .function-intent{grid-column:1/-1;border:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:18px 0;display:grid;grid-template-columns:150px minmax(0,1fr);gap:12px 24px}
.concept-library .function-intent h3{font-size:12px;line-height:1.65;letter-spacing:0;margin:0;color:var(--ink)}
.concept-library .function-intent p{margin:0;font-size:12px;line-height:1.65}
.concept-library .function-color{background:var(--panel-soft);border:1px solid var(--line);border-radius:8px;padding:17px 19px;margin:22px 0}
.concept-library .function-color h3,.concept-library .function-subheading,.concept-library .function-population h3{font-size:15px;line-height:1.4;margin:0 0 10px;color:var(--ink)}
.concept-library .function-color p{font-size:12px;line-height:1.7;margin:8px 0 0;color:var(--muted)}
.concept-library .function-evidence-grid{gap:16px;margin-top:15px}
.concept-library .function-evidence{padding:18px;border:1px solid var(--line);border-radius:8px;background:var(--surface)}
.concept-library .function-evidence h4{font-size:11px;line-height:1.5;margin:18px 0 6px;letter-spacing:0;color:var(--accent)}
.concept-library .function-evidence p{font-size:12px;line-height:1.7;margin:6px 0 10px;color:var(--muted)}
.concept-library .function-evidence small{font-size:10px;line-height:1.6;color:var(--muted)}
.concept-library .function-paper{font-size:12px;line-height:1.65;margin-top:14px;color:var(--accent)}
.concept-library .function-population{margin-top:24px}
.concept-library .function-population article{border-left:2px solid var(--accent-line);padding:8px 16px;margin:12px 0}
.concept-library .function-population p,.concept-library .function-boundary{font-size:12px!important;line-height:1.7;color:var(--muted)}
.concept-library .function-population p{margin:8px 0}
.concept-library .function-related{margin-top:20px}

.concept-catalogue-content{padding:0 24px}
.concept-library .building-function-catalogue{margin:22px 0 0;border:0;padding-bottom:24px}
.concept-library .building-function-catalogue p{margin:7px 0;line-height:1.65}
.concept-library .building-function-catalogue .bfc-heading p{font-size:13px}
@media screen and (min-width:850px){body[data-page=concepts]>main{padding-bottom:12px}}
@media(max-width:1050px){.concept-library .function-overview{gap:20px}.concept-library .function-overview h2{font-size:24px}.concept-library .function-evidence-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.concept-detail-toolbar .guide-topic-position{display:none}}
@media(max-width:650px){
 #content .concept-library .concept-catalogue-open{grid-column:1;grid-row:3;justify-self:center;min-height:34px}
 .concept-library .concept-detail-toolbar{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;padding:13px 16px}
 .concept-library .concept-detail-toolbar>span{order:3;flex-basis:100%;text-align:left;font-size:12px}
 .concept-library .concept-studio-link{font-size:10px;padding:7px 10px}
 .concept-library .function-study{padding:18px 16px}
 .concept-library .function-overview{grid-template-columns:1fr;gap:20px}
 .concept-library .function-overview h2{font-size:26px}
 .concept-library .function-overview p{font-size:13px}
 .concept-library .function-intent{grid-template-columns:1fr;gap:7px;padding:16px 0}
 .concept-library .function-intent h3:not(:first-child){margin-top:12px}
 .concept-library .function-intent p{font-size:13px}
 .concept-library .function-evidence-grid{grid-template-columns:1fr}
 .concept-library .function-color{padding:16px}
 .concept-library .function-related{align-items:flex-start}
 .concept-library .function-related>b{flex-basis:100%;margin-bottom:4px}
 .concept-catalogue-content{padding:0 16px}
}
@media print{.concept-detail-toolbar,.concept-catalogue-open,.concept-library .function-overview{grid-template-columns:1fr 1fr}.concept-library .function-study{padding:0}.concept-library .function-evidence-grid{grid-template-columns:1fr 1fr}.concept-library .function-evidence{break-inside:avoid}}

.concept-library .concept-catalogue-open,.concept-library .guide-back{text-decoration:none;font-family:inherit}
.concept-library .concept-catalogue-open:focus-visible,.concept-library .guide-back:focus-visible{outline:3px solid var(--focus);outline-offset:3px}
.concept-library .function-evidence .source-card{margin-top:18px}
.concept-library .function-evidence-grid{align-items:start}
.concept-library .function-population .source-card{margin:14px 0;border:1px solid var(--line);border-radius:8px;padding:18px}
.concept-library .function-color{margin:24px 0 18px}

.concept-library .function-paper-audit{border-top:1px solid var(--line);margin-top:16px}
.concept-library .function-paper-audit>summary{font-size:12px;font-weight:600;line-height:1.5;color:var(--accent);padding:12px 0;cursor:pointer}
.concept-library .function-paper-audit>summary>span{display:block;color:var(--muted);font-weight:400;margin-top:3px}

.concept-library .function-evidence-link{display:block;color:var(--accent);font-size:15px;font-weight:600;line-height:1.4;text-underline-offset:3px;margin-bottom:7px}
.concept-library .function-related>a{display:inline-block;padding:7px 11px;border:1px solid var(--line);border-radius:999px;font-size:12px;line-height:1.4;text-decoration:none;color:var(--accent);background:var(--surface)}

.concept-library[data-screen=function]{background:var(--surface);border:1px solid var(--line);border-radius:10px;overflow:clip}
.concept-library .concept-gallery-note{grid-column:3;grid-row:1;justify-self:end;color:var(--muted);font-size:11px;line-height:1.5;text-align:right;max-width:190px}
.concept-library .concept-programme-links{margin:0 24px 24px;padding:19px;border:1px solid var(--line);border-radius:9px;background:var(--panel-soft)}
.concept-programme-links h3{font-size:15px;line-height:1.5;color:var(--ink);margin:0 0 8px}
.concept-programme-links p{font-size:12px;line-height:1.6;color:var(--muted);margin:0 0 8px}
.concept-programme-links a{display:inline-block;border:1px solid var(--line);border-radius:999px;padding:8px 12px;margin:7px 7px 0 0;background:var(--surface);color:var(--accent);font-size:12px;line-height:1.5;text-decoration:none}
@media(max-width:650px){.concept-library .concept-library-tabs{gap:6px;padding-bottom:10px}.concept-library .concept-library-tabs a{font-size:11px;padding:7px 12px}.concept-library .concept-gallery-note{grid-column:1;grid-row:3;justify-self:center;max-width:none;text-align:center}.concept-library .concept-programme-links{margin:0 16px 18px;padding:16px}}
@media print{.concept-library-tabs{display:none!important}}

/* The extra library switch already occupies one control row; avoid reserving
   a second, empty Guide-category row beneath the four concept filters. */
@media(min-width:850px){.concept-library[data-screen=library] .guide-library-categories{min-height:0}}

/* One illustrated library: ten entries per page, complete 3:2 covers. */
#content .concept-library[data-screen=library] .guide-library-categories{min-height:0;gap:6px;padding:0 0 16px;justify-content:center}
#content .concept-library .guide-library-categories button{display:inline-flex;align-items:center;gap:6px;font-size:11px;line-height:1.35;min-height:31px;padding:7px 11px}
#content .concept-library .guide-library-categories button>span{font-size:10px;opacity:.75;font-variant-numeric:tabular-nums}
#content .concept-library[data-screen=library] .guide-card-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-template-rows:repeat(2,auto);align-content:start;gap:12px;max-width:var(--guide-grid-width,100%);height:var(--guide-grid-height,auto);margin:0 auto}
#content .concept-library .guide-topic-card{display:flex;flex-direction:column;min-width:0;align-self:start;overflow:hidden}
#content .concept-library .guide-card-image{display:block;width:100%;height:auto;aspect-ratio:3/2;border-bottom:1px solid var(--line);box-sizing:content-box;overflow:hidden;flex:none}
#content .concept-library .guide-card-image img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:contain;margin:0;border:0}
#content .concept-library .guide-card-copy{display:flex;flex-direction:column;justify-content:space-between;gap:7px;padding:10px 11px;min-height:var(--guide-card-copy-height,0);box-sizing:border-box}
#content .concept-library .guide-card-title{display:flex;align-items:flex-start;gap:6px;font-size:13px;line-height:1.35;letter-spacing:-.01em;overflow-wrap:normal}
#content .concept-library .guide-card-title svg{width:13px;height:13px;margin-top:3px;flex:0 0 13px;fill:none;stroke:currentColor;stroke-width:1.5}
#content .concept-library .guide-card-caption{font-size:10px;line-height:1.45;color:var(--muted)}
#content .concept-library .concept-card-measure .guide-card-copy{min-height:0!important}
#content .concept-library .guide-library-footer{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:10px;padding:12px 0;min-height:56px}
#content .concept-library .guide-library-footer [data-guide-pagination]{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:4px;grid-column:2;grid-row:1}
#content .concept-library .guide-library-footer [data-guide-pagination] button{width:30px;min-width:30px;min-height:30px;height:30px;font-size:11px;padding:0;border-radius:999px}
#content .concept-library .guide-library-footer [data-guide-results],#content .concept-library .concept-gallery-note{font-size:10px;line-height:1.5;max-width:none}
#content .concept-library .concept-library-research{margin:0;border:1px solid var(--line);border-radius:8px;padding:0;background:var(--surface);overflow:hidden}
#content .concept-library .concept-library-research>summary{display:flex;align-items:center;justify-content:center;gap:12px;padding:12px 16px;min-height:44px;color:var(--ink);font:500 12px/1.5 Inter,Arial,sans-serif;cursor:pointer;list-style:none;background:var(--panel-soft)}
#content .concept-library .concept-library-research>summary::-webkit-details-marker{display:none}
#content .concept-library .concept-library-research>summary:before{content:'›';font-size:20px;line-height:1}
#content .concept-library .concept-library-research[open]>summary:before{transform:rotate(90deg)}
#content .concept-library .concept-library-research-body{padding:20px;border-top:1px solid var(--line)}
#content .concept-library .concept-library-research-body>p{font-size:13px;line-height:1.7;max-width:1000px;color:var(--muted);margin:0 0 12px}
#content .concept-library .concept-brief-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:26px;align-items:center}
#content .concept-library .concept-brief-hero figure{margin:0;min-width:0}
#content .concept-library .concept-brief-hero img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:contain;border-radius:8px}
#content .concept-library .concept-brief-hero figcaption{font-size:10px;line-height:1.5;color:var(--muted);margin-top:6px}
#content .concept-library .concept-brief-hero .bfc-brief-heading h2{font-size:clamp(22px,2.25vw,30px)}
@media(max-width:1100px){#content .concept-library .concept-gallery-note{display:none}#content .concept-library .guide-library-footer{grid-template-columns:1fr;gap:7px}#content .concept-library .guide-library-footer [data-guide-pagination]{grid-column:1;grid-row:1}#content .concept-library .guide-library-footer [data-guide-results]{grid-column:1;grid-row:2;text-align:center}}
@media(max-width:849px){#content .concept-library[data-screen=library] .guide-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:none;grid-auto-rows:1fr;height:auto;max-width:none;gap:14px}#content .concept-library .guide-topic-card{height:100%;align-self:stretch}#content .concept-library .guide-card-copy{flex:1;min-height:76px;padding:11px 12px}#content .concept-library .guide-card-title{font-size:14px}#content .concept-library .guide-card-caption{font-size:11px}#content .concept-library .concept-brief-hero{grid-template-columns:1fr;gap:22px}#content .concept-library .concept-brief-hero figure{max-width:620px;margin:0 auto}#content .concept-library .guide-library-footer [data-guide-pagination]{max-width:100%;gap:5px}}
@media(max-width:480px){#content .concept-library[data-screen=library] .guide-card-grid{grid-template-columns:1fr;gap:15px}#content .concept-library .guide-library-categories{gap:5px}#content .concept-library .guide-library-categories button{font-size:10px;padding:7px 9px}#content .concept-library .guide-card-copy{min-height:69px}#content .concept-library .guide-card-title{font-size:16px}#content .concept-library .concept-library-research-body{padding:16px}}
@media print{#content .concept-library[data-screen=library] .guide-card-grid{grid-template-columns:repeat(2,1fr);height:auto;max-width:none}#content .concept-library .guide-topic-card{break-inside:avoid}}

body[data-page=concepts] .guide-heading-count[hidden]{display:none!important}

@media(min-width:850px) and (max-width:1100px){#content .concept-library .guide-library-categories{gap:5px}#content .concept-library .guide-library-categories button{font-size:10.5px;padding:6px 8px;min-height:30px}}
