/* Print Shop Sheets — premium library candidate, STAGING ONLY.
 * Load AFTER tableur-btp.css, catalog-structure.css, article.css (when used),
 * and print-shop-sheets.css. No external font, asset, or JavaScript dependency.
 * Brand assets, Manrope, URLs, forms and article markup remain authoritative.
 */
:root {
  --ps-cyan: #006175;
  --ps-accent-hover: #004b5c;
  --ps-tint: #edf7f9;
  --ps-surface: #f6f8f9;
  --ps-control: #79868f;
  --pdl-ink: #1c2d36;
  --pdl-ink-2: #354650;
  --pdl-muted: #52616b;
  --pdl-paper: #f6f8f9;
  --pdl-white: #fff;
  --pdl-line: #dde4e8;
  --pdl-steel: #f0f4f6;
  --pdl-rust: #006175;
  --pdl-yellow: #edf7f9;
  --pdl-yellow-dark: #006175;
  --pdl-radius: 10px;
  --pdl-shadow: 0 2px 4px rgba(23,43,52,.035), 0 12px 28px -16px rgba(23,43,52,.2);
}
body.print-shop-sheets-body { background: #fff; font-family: Manrope,Arial,sans-serif; line-height: 1.7; color: var(--pdl-ink); }
.pdl-wrap { width: min(100% - 64px,1120px); }
a { color: var(--ps-cyan); text-decoration-thickness: 1px; text-underline-offset: 4px; }
a:hover { color: var(--ps-accent-hover); }
strong,b { font-weight: 700; }
h1,h2,h3 { color: var(--pdl-ink); text-wrap: pretty; }
.pdl-eyebrow,.pdl-block-label,.pdl-sidebar-label,.pdl-kicker,.pdl-file-label {
  font-family: Manrope,Arial,sans-serif; color: var(--ps-cyan); font-size: 11px;
  font-weight: 750; line-height: 1.5; letter-spacing: .09em;
}
.pdl-section { padding: 48px 0; }
.pdl-section-cream { background: var(--ps-surface); }
.pdl-section-head { align-items: center; gap: 24px; margin-bottom: 24px; }
.pdl-section-head h2,.pdl-faq h2,.pdl-scenario-layout h2,.pdl-criteria-grid h2,.pdl-index-guide h2 {
  font: 700 28px/1.25 Manrope,Arial,sans-serif; letter-spacing: -.035em; margin: 6px 0 12px;
}
.pdl-section-head h2 { margin-bottom: 0; }
.pdl-section-head>a { font-size: 13px; font-weight: 700; white-space: nowrap; }
.pdl-section p { color: var(--pdl-ink-2); }
:focus-visible { outline: 3px solid var(--ps-cyan); outline-offset: 3px; box-shadow: 0 0 0 5px #fff; }
[id] { scroll-margin-top: 96px; }

/* Quiet navigation. Keep the real logo; remove only the decorative CMYK rule. */
.pdl-header { background: #fff; border-bottom: 1px solid var(--pdl-line); box-shadow: 0 2px 8px rgba(23,43,52,.025); }
.pdl-header:after { content: none; }
.pdl-header-row { grid-template-columns: 232px 1fr 256px; gap: 24px; min-height: 80px; }
.pdl-brand img { width: 224px; max-height: 40px; }
.pdl-nav { justify-content: center; gap: 20px; }
.pdl-nav a { font-size: 13px; font-weight: 650; color: var(--pdl-ink-2); padding-block: 12px; }
.pdl-nav a:hover,.pdl-nav a:focus { color: var(--ps-cyan); }
.pdl-menu-button { border: 1px solid var(--ps-control); border-radius: 8px; padding: 9px 14px; min-height: 44px; font-size: 14px; color: var(--pdl-ink); background: #fff; }

/* One control system. Boundaries are stronger than decorative card dividers. */
.pdl-search,.pdl-hero-search { display: flex; align-items: stretch; background: #fff; border: 1px solid var(--ps-control); border-radius: 8px; box-shadow: none; }
.pdl-search input,.pdl-hero-search input { border-radius: 8px 0 0 8px; background: transparent; color: var(--pdl-ink); min-width: 0; }
.pdl-search input { font-size: 13px; padding: 10px 12px; }
.pdl-search button,.pdl-hero-search button,.pdl-library-search button,.pdl-contact button,.pdl-download {
  border: 1px solid var(--ps-cyan); background: var(--ps-cyan); color: #fff;
  box-shadow: 0 1px 2px rgba(23,43,52,.08); font: 700 14px/1.5 Manrope,Arial,sans-serif;
  border-radius: 8px; padding: 11px 16px; min-height: 44px; cursor: pointer;
  transition: background .15s,border-color .15s,box-shadow .15s;
}
.pdl-search button,.pdl-hero-search button { border-radius: 0 7px 7px 0; border: 0; }
.pdl-search button { font-size: 12px; padding: 10px 12px; }
.pdl-search button:hover,.pdl-hero-search button:hover,.pdl-library-search button:hover,.pdl-contact button:hover,.pdl-download:hover {
  background: var(--ps-accent-hover); border-color: var(--ps-accent-hover); box-shadow: 0 2px 4px rgba(23,43,52,.12); transform: none;
}
.pdl-library-search input,.pdl-contact input,.pdl-contact textarea {
  background: #fff; color: var(--pdl-ink); border: 1px solid var(--ps-control); border-radius: 8px; padding: 12px; font-size: 16px; min-height: 46px;
}
.pdl-contact textarea { resize: vertical; }
input::placeholder,textarea::placeholder { color: var(--pdl-muted); opacity: 1; }
.pdl-search:focus-within,.pdl-hero-search:focus-within { border-color: var(--ps-cyan); }

/* Home: useful search on the left, an actual published workbook on the right. */
.pdl-hero { background: var(--ps-surface); padding: 48px 0 40px; border-bottom: 1px solid var(--pdl-line); }
.pdl-hero-grid { grid-template-columns: minmax(0,1.2fr) minmax(320px,.9fr); gap: 56px; align-items: center; }
.pdl-hero-grid>div,.pdl-hero-grid>aside { min-width: 0; }
.pdl-hero h1 { font: 750 clamp(30px,3.1vw,38px)/1.18 Manrope,Arial,sans-serif; letter-spacing: -.045em; max-width: 550px; margin: 12px 0 16px; text-wrap: balance; }
.pdl-hero p { font-size: 16px; line-height: 1.75; max-width: 540px; color: var(--pdl-muted); margin-bottom: 24px; }
.pdl-hero-search { max-width: 560px; }
.pdl-hero-search input { font-size: 15px; padding: 13px 14px; }
.pdl-hero-search button { font-size: 13px; padding-inline: 16px; white-space: nowrap; }
.pdl-hero-links { margin-top: 16px; gap: 8px 20px; font-size: 13px; }
.pdl-hero-links a { padding-block: 4px; }
.pdl-site-note { padding: 24px; border: 1px solid var(--pdl-line); border-radius: 10px; box-shadow: none; background: #fff; }
.pdl-site-note strong { font-size: 18px; }
.pdl-site-note span { border-color: var(--pdl-line); }
.ps-featured { padding: 0; border: 1px solid var(--pdl-line); border-radius: 12px; background: #fff; box-shadow: var(--pdl-shadow); }
.ps-featured-label { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 12px 20px; border-bottom: 1px solid var(--pdl-line); color: var(--pdl-muted); font-size: 11px; font-weight: 700; }
.ps-featured-label>span:last-child { color: var(--ps-cyan); font-variant-numeric: tabular-nums; }
.ps-featured-media { display: grid; place-items: center; padding: 16px 24px; height: 210px; background: var(--ps-surface); border-bottom: 1px solid var(--pdl-line); text-decoration: none; }
.ps-featured-media img { display: block; width: 100%; height: 100%; max-height: 178px; object-fit: contain; box-shadow: 0 2px 8px rgba(23,43,52,.08); background: #fff; }
.ps-featured-body { padding: 16px 20px 20px; }
.ps-featured-title { font: 750 19px/1.35 Manrope,Arial,sans-serif; letter-spacing: -.025em; margin: 0 0 12px; }
.ps-featured-title a { color: var(--pdl-ink); text-decoration: none; }
.ps-featured-title a:hover { color: var(--ps-cyan); }
.ps-featured-action { display: flex; justify-content: space-between; gap: 12px; align-items: center; font-size: 12px; }
.ps-featured-action>span { color: var(--pdl-muted); }
.ps-featured-action>a { font-weight: 750; }
.ps-workbook-notes { display: flex; gap: 16px 32px; align-items: baseline; margin-top: 32px; padding-top: 24px; border-top: 1px solid var(--pdl-line); font-size: 12px; color: var(--pdl-muted); }
.ps-workbook-notes strong { color: var(--pdl-ink-2); }
.ps-workbook-notes ul { display: flex; flex-wrap: wrap; gap: 8px 28px; margin: 0; padding: 0; list-style: none; }
.ps-workbook-notes li { display: flex; align-items: baseline; gap: 8px; }
.ps-workbook-notes li:before { content: ""; display: inline-block; flex: 0 0 4px; width: 4px; height: 4px; background: var(--ps-cyan); border-radius: 50%; }

/* Category navigation is a coherent index, not six competing promotional cards. */
.pdl-categories { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 16px; }
.pdl-category,.pdl-category:nth-child(even) { grid-template-columns: 40px minmax(0,1fr); align-content: start; gap: 4px 12px; padding: 20px; min-height: 156px; border: 1px solid var(--pdl-line); border-radius: 10px; background: #fff; color: var(--pdl-ink); box-shadow: none; transition: border-color .15s,background .15s,box-shadow .15s; }
.pdl-category-icon { width: 40px; height: 40px; border-radius: 8px; background: var(--ps-tint); color: var(--ps-cyan); border: 0; }
.pdl-category .pdl-category-icon { grid-row: 1 / 3; }
.pdl-category strong { align-self: end; font: 750 16px/1.4 Manrope,Arial,sans-serif; letter-spacing: -.015em; }
.pdl-category small { margin: 0; padding: 0; background: transparent; color: var(--pdl-muted); font-size: 11px; font-weight: 500; line-height: 1.5; }
.pdl-category>span:last-child { margin-top: 12px; color: var(--pdl-muted); font-size: 13px; line-height: 1.6; }
.pdl-category:hover { transform: none; border-color: #91b8c2; background: #fcfeff; box-shadow: var(--pdl-shadow); }
.pdl-category-index { gap: 20px; }
.pdl-category-index article { border: 1px solid var(--pdl-line); border-radius: 10px; padding: 24px; grid-template-columns: 40px minmax(0,1fr); gap: 16px; background: #fff; }
.pdl-category-index-title { margin: 0 0 8px; font-size: 18px; }
.pdl-category-index p { font-size: 14px; line-height: 1.75; }
.pdl-category-index article a { font-size: 13px; font-weight: 700; }
.pdl-index-guide { max-width: 800px; }

/* Workbook cards: screenshot fully visible, no cropped sheet or lonely 1/3 row. */
.pdl-grid { gap: 24px; align-items: start; }
.pdl-card { border: 1px solid var(--pdl-line); border-radius: 10px; background: #fff; box-shadow: 0 2px 3px rgba(23,43,52,.025); }
.pdl-card:hover { transform: none; border-color: #91b8c2; box-shadow: var(--pdl-shadow); }
.pdl-card-media { background: var(--ps-surface); padding: 16px; border-radius: 9px 9px 0 0; border-bottom: 1px solid var(--pdl-line); aspect-ratio: 16/10; }
.pdl-card-media img { width: 100%; height: 100%; object-fit: contain; }
.pdl-card-body { padding: 20px; min-width: 0; }
.pdl-card h3,.pdl-card-title { font: 750 18px/1.4 Manrope,Arial,sans-serif; letter-spacing: -.025em; margin: 8px 0 20px; }
.pdl-card-foot { padding-top: 12px; gap: 12px; font-size: 11px; align-items: center; }
.pdl-card-foot a { white-space: nowrap; }
.pdl-grid>.pdl-card:only-child { grid-column: 1 / -1; display: grid; grid-template-columns: minmax(200px,.85fr) minmax(0,1.15fr); width: 100%; max-width: 780px; align-items: stretch; }
.pdl-grid>.pdl-card:only-child .pdl-card-media { border-radius: 9px 0 0 9px; border-bottom: 0; border-right: 1px solid var(--pdl-line); }
.pdl-grid>.pdl-card:only-child .pdl-card-body { align-self: center; }
.pdl-sheet-mark { font: 750 18px/1.5 Manrope,Arial,sans-serif; border: 1px solid var(--pdl-line); border-radius: 8px; color: var(--ps-cyan); background: #fff; }
.pdl-empty { border: 1px solid var(--pdl-line); border-radius: 10px; background: var(--ps-surface); padding: 32px; line-height: 1.8; }
.pdl-empty strong { display: inline-block; margin-bottom: 8px; color: var(--pdl-ink); }

/* Shared archive/search hierarchy; published counts and current state stay visible. */
.pdl-page-hero,.pdl-library-head { padding: 40px 0; background: var(--ps-surface); border-bottom: 1px solid var(--pdl-line); }
.pdl-page-hero h1,.pdl-library-head h1 { font: 750 clamp(28px,3.1vw,36px)/1.2 Manrope,Arial,sans-serif; letter-spacing: -.04em; margin: 8px 0 16px; max-width: 820px; }
.pdl-page-hero p,.pdl-library-head p { max-width: 740px; font-size: 16px; line-height: 1.75; }
.pdl-library-layout { grid-template-columns: 248px minmax(0,1fr); gap: 32px; }
.pdl-library-sidebar { top: 104px; border: 1px solid var(--pdl-line); background: #fff; padding: 20px; border-radius: 10px; }
.pdl-sidebar-label { margin: 0 0 12px; }
.pdl-library-search { gap: 8px; margin-bottom: 24px; }
.pdl-library-search input { font-size: 14px; }
.pdl-library-sidebar nav { gap: 4px; }
.pdl-library-sidebar nav>a { padding: 10px; border-left: 2px solid transparent; border-radius: 6px; font-size: 13px; }
.pdl-library-sidebar nav>a:hover { background: var(--ps-surface); border-left-color: var(--pdl-line); }
.pdl-library-sidebar nav>a[aria-current=page] { background: var(--ps-tint); border-left-color: var(--ps-cyan); color: var(--ps-cyan); font-weight: 750; }
.pdl-library-sidebar nav small { font-size: 11px; font-variant-numeric: tabular-nums; }
.pdl-index-link { border-top: 1px solid var(--pdl-line); padding-top: 16px; margin-top: 16px; font-size: 12px; }
.pdl-result-count { padding-bottom: 16px; border-bottom: 1px solid var(--pdl-line); margin-bottom: 24px; font-size: 13px; font-variant-numeric: tabular-nums; }
.pdl-library-results .pdl-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
.page-numbers { border-radius: 7px; min-width: 40px; min-height: 40px; text-align: center; }
.page-numbers.current { background: var(--ps-cyan); border-color: var(--ps-cyan); }
.pdl-category-copy { padding: 48px 0; background: var(--ps-surface); }
.pdl-category-copy .pdl-wrap { max-width: 800px; }
.pdl-category-copy h2 { font: 700 26px/1.3 Manrope,Arial,sans-serif; letter-spacing: -.03em; }
.pdl-category-copy h3 { font: 700 19px/1.45 Manrope,Arial,sans-serif; letter-spacing: -.015em; }

/* Guidance is readable editorial support, not a second landing page. */
.pdl-scenario-layout { grid-template-columns: 300px minmax(0,1fr); gap: 48px; }
.pdl-scenario-layout>div>p { font-size: 14px; line-height: 1.8; }
.pdl-scenario-grid { gap: 24px 32px; border: 0; }
.pdl-scenario-grid article { padding: 0 0 20px; border: 0; border-bottom: 1px solid var(--pdl-line); }
.pdl-scenario-grid span { font: 750 10px/1.5 Manrope,Arial,sans-serif; color: var(--ps-cyan); letter-spacing: .08em; }
.pdl-scenario-grid h3 { font-size: 17px; line-height: 1.4; margin: 8px 0; letter-spacing: -.02em; }
.pdl-scenario-grid p { font-size: 14px; line-height: 1.75; }
.pdl-section-dark { background: var(--ps-surface); color: var(--pdl-ink); border-top: 1px solid var(--pdl-line); border-bottom: 1px solid var(--pdl-line); }
.pdl-section-dark h2,.pdl-steps h3 { color: var(--pdl-ink); }
.pdl-section-head.light .pdl-eyebrow,.pdl-section-head.light>a { color: var(--ps-cyan); }
.pdl-steps { gap: 24px; background: transparent; border: 0; margin: 24px 0 0; }
.pdl-steps li { padding: 0; background: transparent; border: 0; }
.pdl-steps span { display: inline-grid; place-items: center; width: 32px; height: 32px; border: 1px solid #c8dce2; border-radius: 8px; background: #fff; color: var(--ps-cyan); font: 750 12px/1 Manrope,Arial,sans-serif; }
.pdl-steps h3 { margin: 14px 0 8px; font-size: 15px; }
.pdl-steps p { color: var(--pdl-muted); font-size: 13px; line-height: 1.75; }
.pdl-criteria-grid { grid-template-columns: minmax(0,1fr) 336px; gap: 56px; }
.pdl-criteria-grid p,.pdl-criteria-grid li { font-size: 14px; }
.pdl-criteria-grid aside,.pdl-about-note,.pdl-contact-aside { background: var(--ps-surface); border: 1px solid var(--pdl-line); border-radius: 10px; padding: 24px; }
.pdl-criteria-grid aside strong,.pdl-about-note strong,.pdl-contact-aside strong { display: block; font: 750 17px/1.4 Manrope,Arial,sans-serif; letter-spacing: -.02em; }
.pdl-criteria-grid aside ul { padding-left: 18px; margin-bottom: 0; }
.pdl-faq { grid-template-columns: 280px minmax(0,1fr); gap: 48px; }
.pdl-faq details,.pdl-faq-items details { padding: 18px 0; }
.pdl-faq details:last-child,.pdl-faq-items details:last-child { border-bottom: 1px solid var(--pdl-line); }
.pdl-faq h3,.pdl-faq-items h3 { font: 700 15px/1.6 Manrope,Arial,sans-serif; letter-spacing: -.01em; }
.pdl-faq p { font-size: 14px; line-height: 1.8; margin-top: 12px; }
.pdl-faq-toggle { color: var(--ps-cyan); flex-shrink: 0; }

/* Workbook detail: product proof, restrained bylines, reading width, usable rail. */
.pdl-breadcrumb { padding: 20px 0; gap: 8px; font-size: 12px; }
.pdl-article-head { grid-template-columns: minmax(0,1.05fr) minmax(0,.95fr); gap: 48px; padding: 12px 0 40px; }
.pdl-article-head h1 { font: 750 clamp(28px,2.8vw,36px)/1.22 Manrope,Arial,sans-serif; letter-spacing: -.04em; margin: 12px 0 16px; }
.pdl-hero-excerpt { font-size: 16px; line-height: 1.8; color: var(--pdl-muted); }
.pdl-article-byline { display: flex; gap: 12px; margin-top: 20px; }
.pdl-article-byline a { max-width: none; padding: 0; border: 0; gap: 8px; min-height: 44px; }
.pdl-article-byline .pdl-author-name { font-size: 12px!important; line-height: 1.4!important; margin: 0!important; }
.pdl-article-byline img { width: 32px; height: 32px; border-radius: 50%; }
.pdl-article-byline small { font-size: 10px; line-height: 1.4; margin-top: 2px; }
.pdl-published { margin: 16px 0; font-size: 12px; }
.pdl-download { text-align: center; text-decoration: none; }
.pdl-gallery { min-width: 0; padding: 16px; border: 1px solid var(--pdl-line); border-radius: 12px; background: var(--ps-surface); }
.pdl-gallery-main { background: #fff; border: 1px solid var(--pdl-line); border-radius: 6px; }
.pdl-gallery-main .pdl-preview-open { display: flex; align-items: center; justify-content: center; width: 100%; height: 100%; min-height: 0; }
.pdl-gallery-thumbs { gap: 8px; padding-top: 12px; padding-bottom: 4px; }
.pdl-gallery-thumbs button { border: 1px solid var(--ps-control); border-radius: 6px; padding: 8px 12px; min-height: 40px; font-size: 11px; background: #fff; }
.pdl-gallery-thumbs button[aria-pressed=true] { border-color: var(--ps-cyan); background: var(--ps-tint); color: var(--ps-cyan); box-shadow: inset 0 -2px var(--ps-cyan); }
.pdl-preview-hint { font-size: 11px; margin: 8px 0 0; }
.pdl-content-grid { grid-template-columns: minmax(0,1fr) 288px; gap: 56px; padding-top: 32px; padding-bottom: 48px; border-top: 1px solid var(--pdl-line); }
.pdl-prose { max-width: 760px; font-size: 16px; line-height: 1.85; }
.pdl-prose h2 { font: 750 25px/1.35 Manrope,Arial,sans-serif; letter-spacing: -.03em; margin: 36px 0 16px; }
.pdl-prose>h2:first-child { margin-top: 0; }
.pdl-prose h3 { font: 750 19px/1.5 Manrope,Arial,sans-serif; letter-spacing: -.015em; }
.pdl-prose p,.pdl-prose li,.pdl-category-copy p { color: var(--pdl-ink-2); }
.pdl-prose section { margin-bottom: 40px; }
.pdl-intro { font-size: 17px; padding: 0 0 0 20px; border-left: 3px solid #b8d9e1; }
.pdl-checks li { padding-block: 12px; font-size: 15px; }
.pdl-feature-chips { gap: 8px; }
.pdl-feature-chips span { padding: 8px 12px; background: var(--ps-surface); border-radius: 6px; font-size: 13px; }
.pdl-download-card { top: 104px; padding: 24px; border: 1px solid var(--pdl-line); border-radius: 10px; background: #fff; color: var(--pdl-ink); box-shadow: var(--pdl-shadow); }
.pdl-download-card .pdl-download-title { font: 750 21px/1.35 Manrope,Arial,sans-serif; margin: 8px 0 12px; color: var(--pdl-ink); }
.pdl-download-card>p:not(.pdl-download-title) { font-size: 14px; line-height: 1.75; color: var(--pdl-muted); }
.pdl-download-card .pdl-file-label { color: var(--ps-cyan); }
.pdl-download-card small { color: var(--pdl-muted); font-size: 12px; line-height: 1.7; }
.pdl-download-card .pdl-download { font-size: 13px; padding: 12px; }
.pdl-article-authors { border-top: 1px solid var(--pdl-line); padding-top: 24px; }
.pdl-article-authors>.pdl-block-label { font-size: 11px; }
.pdl-article-authors>div { gap: 16px; padding: 20px 0 0; grid-template-columns: 64px minmax(0,1fr); }
.pdl-article-authors img { width: 64px; height: 64px; border-radius: 8px; }
.pdl-article-authors .pdl-author-name { font-size: 17px!important; line-height: 1.4!important; }
.pdl-author-bio { font-size: 14px; line-height: 1.8; }
.pdl-article-authors>a { font-size: 13px; }
.pdl-table-scroll { border: 1px solid var(--pdl-line); border-radius: 8px; margin: 24px 0; }
.pdl-table-scroll table { font-size: 14px; line-height: 1.6; }
.pdl-table-scroll caption { background: var(--ps-surface); color: var(--pdl-ink); padding: 12px 16px; }
.pdl-table-scroll th,.pdl-table-scroll td { border-color: var(--pdl-line); padding: 12px 16px; }
.pdl-table-scroll thead th { background: var(--ps-tint); }
.pdl-table-scroll tbody tr:nth-child(even) { background: #fafbfc; }
.pdl-preview-dialog { border-radius: 12px; background: var(--pdl-ink); }
.pdl-preview-toolbar button { border-radius: 6px; }
.pdl-preview-viewport:focus-visible,.pdl-preview-toolbar button:focus-visible { outline-color: #9de0ee; }

/* About / contact / policy: common editorial system, no invented trust content. */
.pdl-about-grid,.pdl-contact-grid { grid-template-columns: minmax(0,1fr) 320px; gap: 56px; }
.pdl-about-note p,.pdl-contact-aside p { font-size: 14px; line-height: 1.8; }
.pdl-about-note p:last-child,.pdl-contact-aside p:last-child { margin-bottom: 0; }
.pdl-team-grid { gap: 24px; }
.pdl-team-grid article { grid-template-columns: 104px minmax(0,1fr); gap: 20px; padding: 24px; border: 1px solid var(--pdl-line); border-radius: 10px; align-items: start; }
.pdl-team-grid img { width: 104px; height: 104px; border-radius: 8px; }
.pdl-team-grid span { color: var(--ps-cyan); font-size: 11px; }
.pdl-team-grid .pdl-author-name { font-size: 20px!important; line-height: 1.4!important; margin: 6px 0 12px!important; }
.pdl-team-grid p { font-size: 14px; line-height: 1.8; }
.pdl-team-grid article a { display: inline-block; margin-top: 16px; font-size: 13px; font-weight: 700; }
.pdl-contact { gap: 24px; }
.pdl-contact label { gap: 8px; font-size: 14px; }
.pdl-form-privacy { padding-top: 8px; margin: 0; font-size: 13px; line-height: 1.8; color: var(--pdl-muted); }
.pdl-notice { border-radius: 8px; border-left-width: 3px; }
.pdl-notice.error { border-color: #a32335; }
.pdl-legal h2 { border-top: 1px solid var(--pdl-line); padding-top: 24px; }

/* Light, compact footer: navigation rather than another high-contrast panel. */
.pdl-footer { padding: 40px 0 24px; background: var(--ps-surface); border-top: 1px solid var(--pdl-line); color: var(--pdl-ink); }
.pdl-footer-row { grid-template-columns: 224px 240px minmax(0,1fr); gap: 32px; }
.pdl-footer-brand { padding: 0; background: transparent; border: 0; border-radius: 0; }
.pdl-footer-brand img { width: 208px; max-height: 40px; }
.pdl-footer-row p { color: var(--pdl-muted); font-size: 13px; line-height: 1.8; }
.pdl-footer nav { gap: 8px 20px; font-size: 12px; }
.pdl-footer a { color: var(--pdl-ink-2); text-decoration: none; }
.pdl-footer a:hover { color: var(--ps-cyan); text-decoration: underline; }
.pdl-footer-bottom { margin-top: 28px; padding-top: 20px; border-top: 1px solid var(--pdl-line); color: var(--pdl-muted); font-size: 11px; }

@media(max-width:1020px) {
  .pdl-header-row { grid-template-columns: 220px 1fr 212px; gap: 16px; }
  .pdl-nav { gap: 14px; }
  .pdl-hero-grid { gap: 32px; grid-template-columns: minmax(0,1fr) minmax(300px,.85fr); }
  .pdl-scenario-layout { grid-template-columns: 260px minmax(0,1fr); gap: 32px; }
  .pdl-content-grid { gap: 32px; }
  .pdl-team-grid article { grid-template-columns: 80px minmax(0,1fr); gap: 16px; padding: 20px; }
  .pdl-team-grid img { width: 80px; height: 80px; }
}
@media(max-width:960px) {
  .pdl-header-row { grid-template-columns: minmax(0,1fr) auto; min-height: 72px; }
  .pdl-search { display: none; }
  .pdl-nav { top: 72px; right: 32px; justify-content: stretch; gap: 4px; border: 1px solid var(--pdl-line); border-radius: 10px; background: #fff; padding: 8px; box-shadow: 0 12px 32px rgba(23,43,52,.12); }
  .pdl-nav a { padding: 12px; border-radius: 6px; }
  .pdl-nav a:hover { background: var(--ps-tint); }
  .pdl-categories { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .pdl-footer-row { grid-template-columns: 224px minmax(0,1fr); }
  .pdl-footer nav { justify-content: flex-start; grid-column: 1 / -1; }
  .ps-workbook-notes { display: grid; gap: 8px; }
  .pdl-criteria-grid,.pdl-about-grid,.pdl-contact-grid { gap: 32px; grid-template-columns: minmax(0,1fr) 280px; }
}
@media(max-width:880px) {
  .pdl-article-head { grid-template-columns: 1fr; gap: 24px; }
  .pdl-gallery { width: 100%; max-width: 680px; }
  .pdl-content-grid { grid-template-columns: minmax(0,1fr) 248px; gap: 24px; }
}
@media(max-width:820px) {
  .pdl-hero-grid { grid-template-columns: minmax(0,1fr) minmax(270px,.85fr); gap: 24px; }
  .pdl-hero h1 { font-size: 32px; }
  .pdl-hero-search { flex-wrap: wrap; }
  .pdl-hero-search input { flex-basis: 100%; border-radius: 7px 7px 0 0; }
  .pdl-hero-search button { width: 100%; border-radius: 0 0 7px 7px; }
  .pdl-library-layout { grid-template-columns: 1fr; gap: 24px; }
  .pdl-library-sidebar { position: static; }
  .pdl-library-search { grid-template-columns: minmax(0,1fr) auto; margin-bottom: 20px; }
  .pdl-library-sidebar nav { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .pdl-library-sidebar nav>.pdl-sidebar-label { grid-column: 1 / -1; margin-bottom: 4px; }
  .pdl-scenario-layout { grid-template-columns: 1fr; gap: 24px; }
  .pdl-faq { grid-template-columns: 220px minmax(0,1fr); gap: 32px; }
  .pdl-team-grid { grid-template-columns: 1fr; }
  .pdl-team-grid article { grid-template-columns: 104px minmax(0,1fr); padding: 24px; }
  .pdl-team-grid img { width: 104px; height: 104px; }
}
@media(max-width:680px) {
  .pdl-wrap { width: calc(100% - 40px); }
  .pdl-header-row { min-height: 64px; gap: 16px; }
  .pdl-brand img { width: 204px; max-height: 36px; }
  .pdl-nav { top: 64px; right: 20px; width: min(310px,calc(100vw - 40px)); }
  .pdl-hero { padding: 32px 0 24px; }
  .pdl-hero-grid { grid-template-columns: 1fr; gap: 28px; }
  .pdl-hero h1 { font-size: 32px; line-height: 1.18; margin: 12px 0 16px; text-wrap: initial; }
  .pdl-hero p { font-size: 15px; line-height: 1.75; margin-bottom: 20px; }
  .pdl-hero-search { display: flex; flex-wrap: nowrap; }
  .pdl-hero-search input { width: 100%; flex-basis: auto; border-radius: 7px 0 0 7px; font-size: 14px; padding: 12px; }
  .pdl-hero-search button { width: auto; border-radius: 0 7px 7px 0; border-top: 0; font-size: 12px; padding: 12px; }
  .pdl-hero-links { gap: 8px 16px; font-size: 12px; margin-top: 12px; }
  .ps-featured-label { padding: 10px 16px; }
  .ps-featured-media { height: 180px; padding: 12px 20px; }
  .ps-featured-media img { max-height: 156px; }
  .ps-featured-body { padding: 16px; }
  .ps-featured-title { font-size: 18px; }
  .ps-workbook-notes { margin-top: 24px; padding-top: 20px; gap: 10px; }
  .ps-workbook-notes ul { display: grid; gap: 6px; }
  .pdl-section { padding: 32px 0; }
  .pdl-section-head { align-items: flex-start; gap: 12px; margin-bottom: 20px; }
  .pdl-section-head h2,.pdl-faq h2,.pdl-scenario-layout h2,.pdl-criteria-grid h2,.pdl-index-guide h2 { font-size: 24px; line-height: 1.3; }
  .pdl-section-head>a { white-space: normal; font-size: 12px; }
  .pdl-categories { grid-template-columns: 1fr; gap: 12px; }
  .pdl-category,.pdl-category:nth-child(even) { min-height: 0; padding: 16px; }
  .pdl-category>span:last-child { grid-column: 2; margin-top: 8px; font-size: 12px; }
  .pdl-category-index { grid-template-columns: 1fr; gap: 16px; }
  .pdl-category-index article { padding: 20px; gap: 12px; }
  .pdl-category-index p { font-size: 13px; }
  .pdl-grid,.pdl-library-results .pdl-grid { grid-template-columns: 1fr; gap: 20px; }
  .pdl-grid>.pdl-card:only-child { display: block; max-width: none; }
  .pdl-grid>.pdl-card:only-child .pdl-card-media { border-right: 0; border-bottom: 1px solid var(--pdl-line); border-radius: 9px 9px 0 0; }
  .pdl-card-media { aspect-ratio: 16/9; }
  .pdl-card-body { padding: 20px; }
  .pdl-card h3,.pdl-card-title { font-size: 18px; }
  .pdl-page-hero,.pdl-library-head { padding: 28px 0; }
  .pdl-page-hero h1,.pdl-library-head h1 { font-size: 28px; line-height: 1.25; }
  .pdl-page-hero p,.pdl-library-head p { font-size: 15px; }
  .pdl-library-sidebar { padding: 16px; }
  .pdl-library-sidebar nav { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 4px; }
  .pdl-library-sidebar nav>a { min-height: 44px; padding: 8px; font-size: 12px; }
  .pdl-library-sidebar nav>a:first-of-type { grid-column: 1 / -1; }
  .pdl-library-sidebar nav svg { width: 16px; height: 16px; }
  .pdl-result-count { margin-bottom: 20px; }
  .pdl-category-copy { padding: 32px 0; }
  .pdl-category-copy h2 { font-size: 24px; }
  .pdl-category-copy h3 { font-size: 18px; }
  .pdl-scenario-grid { grid-template-columns: 1fr; gap: 20px; }
  .pdl-steps { grid-template-columns: 1fr 1fr; gap: 24px 20px; }
  .pdl-steps li { padding: 0; }
  .pdl-criteria-grid,.pdl-faq,.pdl-about-grid,.pdl-contact-grid { grid-template-columns: 1fr; gap: 24px; }
  .pdl-faq h2 { margin-bottom: 0; }
  .pdl-faq details:first-child { border-top: 0; padding-top: 0; }
  .pdl-breadcrumb { font-size: 11px; padding: 16px 0; }
  .pdl-article-head { padding-top: 8px; padding-bottom: 28px; gap: 24px; }
  .pdl-article-head h1 { font-size: 29px; line-height: 1.25; }
  .pdl-hero-excerpt { font-size: 15px; }
  .pdl-article-byline { display: flex; flex-wrap: wrap; gap: 12px 16px; }
  .pdl-hero-copy>.pdl-download { width: 100%; }
  .pdl-gallery { padding: 12px; }
  .pdl-content-grid { grid-template-columns: 1fr; padding-top: 24px; gap: 32px; padding-bottom: 32px; }
  .pdl-download-rail { order: -1; }
  .pdl-download-card { position: static; padding: 20px; box-shadow: none; background: var(--ps-surface); }
  .pdl-download-card .pdl-download-title { font-size: 20px; }
  .pdl-prose { font-size: 15px; line-height: 1.85; }
  .pdl-prose h2 { font-size: 23px; margin-top: 32px; }
  .pdl-prose h3 { font-size: 18px; }
  .pdl-intro { font-size: 16px; padding-left: 16px; }
  .pdl-team-grid article { grid-template-columns: 72px minmax(0,1fr); gap: 16px; padding: 20px; }
  .pdl-team-grid img { width: 72px; height: 72px; }
  .pdl-team-grid .pdl-author-name { font-size: 18px!important; }
  .pdl-contact button { width: 100%; }
  .pdl-footer { padding: 32px 0 24px; }
  .pdl-footer-row { grid-template-columns: 1fr; gap: 20px; }
  .pdl-footer-row p { max-width: 280px; }
  .pdl-footer nav { grid-column: auto; display: grid; grid-template-columns: 1fr 1fr; gap: 0 20px; }
  .pdl-footer nav a { display: block; padding: 10px 0; min-height: 40px; }
  .pdl-footer-bottom { margin-top: 24px; padding-top: 20px; gap: 8px; }
}
@media(max-width:360px) {
  .pdl-wrap { width: calc(100% - 32px); }
  .pdl-brand img { width: 176px; }
  .pdl-menu-button { padding-inline: 10px; }
  .pdl-hero h1 { font-size: 29px; }
  .pdl-hero-search { flex-wrap: wrap; }
  .pdl-hero-search input { flex-basis: 100%; border-radius: 7px 7px 0 0; }
  .pdl-hero-search button { width: 100%; border-radius: 0 0 7px 7px; }
  .pdl-card-foot,.ps-featured-action { flex-wrap: wrap; }
  .pdl-team-grid article { grid-template-columns: 1fr; }
}
/* Navigation state, mobile search and quiet policy tabs. */
.pdl-nav a[aria-current] { background:#edf6f7; color:#005b6d; box-shadow:inset 0 -2px #006175; }
.pdl-nav a { padding-inline:8px; border-radius:6px; }
.ps-policy-nav { display:flex; flex-wrap:wrap; gap:8px; padding:0 0 24px; margin:0 0 24px; border-bottom:1px solid #dce3e8; }
.ps-policy-nav a { display:inline-flex; align-items:center; min-height:40px; padding:6px 12px; border:1px solid #dce3e8; border-radius:7px; font-size:14px; font-weight:600; text-decoration:none; color:#344858; background:#fff; }
.ps-policy-nav a:hover { border-color:#006175; background:#f5f8fa; color:#005b6d; }
.ps-policy-nav a[aria-current] { background:#edf6f7; border-color:#006175; color:#005b6d; box-shadow:inset 0 -2px #006175; }
.ps-policy-nav a:focus-visible { outline:3px solid #006175; outline-offset:3px; }
.ps-mobile-search { display:none; }
@media(max-width:960px) {
 .pdl-nav { width:min(310px,calc(100vw - 40px)); }
 .ps-mobile-search { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:8px; margin:8px 4px 4px; padding-top:12px; border-top:1px solid var(--pdl-line); }
 .ps-mobile-search input { min-width:0; width:100%; background:#fff; color:var(--pdl-ink); border:1px solid var(--ps-control); border-radius:6px; padding:10px; font:14px/1.5 Manrope,Arial,sans-serif; }
 .ps-mobile-search button { min-height:44px; padding:8px 12px; background:var(--ps-cyan); border:1px solid var(--ps-cyan); border-radius:6px; color:#fff; font:700 13px/1.5 Manrope,Arial,sans-serif; }
 .ps-mobile-search button:hover { background:var(--ps-accent-hover); }
}
@media(prefers-reduced-motion:reduce) {
  html { scroll-behavior: auto; }
  *,*::before,*::after { transition: none!important; animation: none!important; }
}
