.review-notice { padding: 9px 24px; background: var(--green); color: white; font-size: 12px; text-align: center; }
.topic-grid {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:32px 0;}
.topic-tile {display:flex;flex-direction:column;min-height:245px;border:1px solid var(--ink);padding:24px;background:var(--gold);}
.topic-tile:nth-child(2){background:var(--blue)}.topic-tile:nth-child(3){background:#eebaa9}.topic-tile:nth-child(4){background:#ded8e1}
.topic-tile h3{font:600 29px/1.15 var(--serif);margin:12px 0 26px}.topic-tile>span:last-child{margin-top:auto;font-size:13px}.topic-tile:hover{box-shadow:4px 4px 0 var(--ink)}
.workbench-link{background:var(--green);color:white;padding:30px;display:flex;align-items:center;gap:32px;justify-content:space-between}.workbench-link span{font:12px/1.6 var(--mono)}.workbench-link strong{font:500 26px/1.3 var(--serif);max-width:530px}
.reading-path{padding:0;list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:36px}.reading-path li{padding:26px;border:1px solid var(--line);background:var(--paper)}.reading-path span{display:block;font:12px var(--mono);margin-bottom:14px}.reading-path a{font:600 26px/1.2 var(--serif)}.reading-path p{font-size:15px}.archive-bridge{margin-top:50px;padding:32px;background:#eee2c9}.archive-bridge li{margin-bottom:14px}.archive-bridge a{text-decoration:underline}
.tool-tabs{display:flex;gap:24px;flex-wrap:wrap}.tool-tabs a{border-bottom:2px solid var(--coral);padding:8px 0}.tool-panel{display:grid;grid-template-columns:1fr 1fr;gap:65px;padding-top:50px;padding-bottom:65px;border-top:1px solid var(--ink);scroll-margin-top:20px}.tool-panel h2{font-size:42px}.tool-form{display:grid;grid-template-columns:1fr 1fr;gap:18px}.tool-form label{display:flex;flex-direction:column;gap:8px;font-size:14px;font-weight:600}.tool-form input,.tool-form select{width:100%;min-width:0;padding:13px;font:16px var(--sans);border:1px solid var(--ink);background:var(--paper)}.tool-form button{cursor:pointer;white-space:normal}.tool-result{margin-top:24px;padding:25px;background:var(--paper);border-left:4px solid var(--coral)}.tool-result h3{font:600 28px/1.2 var(--serif)}.tool-result p{font-size:15px}.handover-list{display:grid;gap:18px}.handover-list label{display:flex;align-items:flex-start;gap:12px;cursor:pointer}.handover-list input{width:22px;height:22px;flex:none;accent-color:var(--green)}.search-results article{padding:26px 0;border-top:1px solid var(--line)}.search-results h2{font-size:29px}.search-results p{max-width:800px}.search-results a:hover{text-decoration:underline}
@media(max-width:960px){.topic-grid{grid-template-columns:1fr 1fr}.tool-panel{gap:30px}.site-nav{gap:16px}}
@media(max-width:720px){.topic-grid,.reading-path,.tool-panel{grid-template-columns:1fr}.topic-tile{min-height:190px}.workbench-link{align-items:flex-start;flex-direction:column;gap:18px}.tool-form{grid-template-columns:1fr}.tool-panel{gap:20px}.tool-panel h2{font-size:34px}}
@media print{.site-header,.review-notice,.site-footer,.tool-tabs{display:none}.tool-panel{display:block;break-inside:avoid}.tool-result{border:1px solid #777}}
.review-notice a { text-decoration: underline; text-underline-offset: 3px; margin-left: 12px; }
.reading-shelf { padding-top: 80px; padding-bottom: 82px; }
.reading-shelf + .visual-journal { padding-top: 32px; }
.guide-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 24px; }
.guide-card { background: var(--paper); border: 1px solid var(--line); display: flex; flex-direction: column; min-width: 0; }
.guide-card[hidden] { display: none; }
.guide-card-image { overflow: hidden; aspect-ratio: 4/3; display: block; background: #edeae2; }
.guide-image { display: block; width: 100%; height: 100%; object-fit: cover; }
.guide-card-image img { transition: transform .25s ease; }
.guide-card:hover .guide-card-image img { transform: scale(1.025); }
.guide-image.product-shot { object-fit: contain; padding: 20px; background: white; }
.guide-card-copy { padding: 26px; display: flex; flex-direction: column; flex: 1; }
.guide-card .eyebrow { font-size: 12px; line-height: 1.6; margin-bottom: 12px; }
.guide-card h3 { font: 600 28px/1.1 var(--serif); letter-spacing: -.025em; margin-bottom: 18px; }
.guide-card h3 a:hover { text-decoration: underline; text-underline-offset: 5px; }
.guide-card-copy > p:not(.eyebrow) { color: #4b5550; font-size: 16px; line-height: 1.6; }
.guide-age { margin-top: auto; padding-top: 18px; border-top: 1px solid var(--line); font: 12px var(--mono); }
.product-photograph { margin: 0 0 18px; }
.product-photograph img { display: block; width: 100%; height: 210px; object-fit: contain; background: white; padding: 12px; }
.product-photograph figcaption { margin-top: 8px; font-size: 12px; color: #4b5550; }
.product-photograph a { text-decoration: underline; text-underline-offset: 3px; }
.product-card:nth-child(8) { display: flex; }
.product-card.is-hidden { display: none; }
.product-reason { font-size: 16px; }
.dialog-image { width: 100%; height: 210px; object-fit: contain; background: white; margin-bottom: 22px; }
.dialog-image[hidden] { display: none; }
.play-reset { background: transparent; border: 1px solid currentColor; padding: 10px 14px; color: inherit; cursor: pointer; font-size: 14px; }
.library-head { padding-top: 70px; padding-bottom: 54px; }
.library-head h1 { max-width: 950px; font-size: clamp(44px,6vw,76px); }
.article-dek { max-width: 760px; font-size: 21px; color: #4b5550; line-height: 1.55; margin-bottom: 22px; }
.library-content { padding-bottom: 90px; }
.library-controls { display: flex; align-items: end; gap: 20px; padding: 26px; background: var(--gold); border: 1px solid var(--ink); }
.library-controls label { display: flex; flex-direction: column; gap: 8px; font-weight: 600; flex: 1; }
.library-controls label:first-child { flex: 2; }
.library-controls input,.library-controls select { width: 100%; min-width: 0; padding: 13px; font: 16px var(--sans); border: 1px solid var(--ink); border-radius: 0; background: var(--paper); color: var(--ink); }
.library-controls button { min-height: 49px; cursor: pointer; }
.guide-count { font: 13px var(--mono); margin: 28px 0 20px; }
.empty-state { padding: 40px 24px; border: 1px dashed var(--ink); text-align: center; }
.article-head { padding-top: 46px; padding-bottom: 40px; }
.back-link { display: inline-block; margin-bottom: 35px; font-weight: 600; text-decoration: underline; text-underline-offset: 5px; }
.article-head h1 { max-width: 990px; font-size: clamp(39px,5.6vw,72px); line-height: 1.06; }
.article-head .eyebrow { font-size: 12px; }
.article-date { font: 12px/1.6 var(--mono); color: var(--muted); }
.article-layout { display: grid; grid-template-columns: 230px minmax(0,760px); gap: 68px; align-items: start; padding-bottom: 45px; }
.article-sidebar { position: sticky; top: 26px; padding-top: 12px; }
.article-sidebar nav { display: grid; gap: 0; }
.article-sidebar a { font-size: 14px; padding: 13px 0; border-bottom: 1px solid var(--line); }
.article-sidebar a:hover { color: var(--green); text-decoration: underline; }
.article-figure { margin: 0 0 35px; }
.article-photo { display: block; width: 100%; height: auto; max-height: 510px; object-fit: cover; }
.article-photo.product-shot { height: 410px; object-fit: contain; background: white; padding: 24px; }
.article-figure figcaption { color: #4b5550; font-size: 12px; line-height: 1.6; padding-top: 12px; }
.article-figure a { text-decoration: underline; }
.article-body { min-width: 0; font-size: 18px; line-height: 1.8; }
.article-body section { margin: 46px 0; scroll-margin-top: 20px; }
.article-body h2 { font-size: 34px; line-height: 1.16; letter-spacing: -.03em; margin-bottom: 22px; }
.article-body p { margin-bottom: 22px; }
.article-body .section-references { font-size: 12px; color: #4b5550; line-height: 1.7; }
.section-references a,.article-sources a { text-decoration: underline; text-underline-offset: 3px; overflow-wrap: anywhere; }
.takeaway { padding: 28px 30px; border-left: 5px solid var(--coral); background: #eee2c9; }
.takeaway .eyebrow { display: block; }
.takeaway p { margin: 0; font: 500 23px/1.4 var(--serif); }
.article-sources { border-top: 1px solid var(--ink); padding-top: 35px; }
.article-sources > p { font-size: 15px; }
.article-sources ol { padding-left: 23px; }
.article-sources li { margin-bottom: 23px; font-size: 16px; }
.article-sources li p { margin: 8px 0; font-size: 14px; }
.article-sources small { font-size: 12px; color: var(--muted); }
.reading-footer { display: flex; align-items: center; gap: 30px; flex-wrap: wrap; padding-bottom: 35px; }
.reading-footer p { margin: 0; font-size: 14px; }
.reading-footer nav { display: flex; flex-wrap: wrap; gap: 22px; font-size: 14px; }
.source-library { padding-bottom: 80px; }
.source-record { border-top: 1px solid var(--ink); padding: 30px 0; display: grid; grid-template-columns: 1fr 1fr; gap: 12px 44px; }
.source-record .eyebrow { grid-column: 1/-1; margin: 0; font-size: 12px; }
.source-record h2 { font-size: 28px; line-height: 1.2; margin: 0; }
.source-used { grid-column: 1/-1; font-size: 14px; line-height: 1.9; }
.source-used a { text-decoration: underline; text-underline-offset: 3px; }
.credits-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 25px; padding-bottom: 80px; }
.credits-grid figure { margin: 0; border: 1px solid var(--line); background: var(--paper); }
.credits-grid img { height: 250px; }
.credits-grid figcaption { padding: 24px; font-size: 14px; }
.credits-grid h2 { font-size: 25px; line-height: 1.15; }
.credits-grid a { text-decoration: underline; }
.asset-status { font-size: 12px; margin-top: 16px; color: #655743; }
:focus-visible { outline: 3px solid var(--green); outline-offset: 5px; }
.article-body a:focus-visible { outline-offset: 2px; }
@media(max-width:960px) { .article-layout { gap: 35px; grid-template-columns: 190px minmax(0,1fr); }.guide-grid { gap: 16px; }.guide-card-copy { padding: 20px; }.guide-card h3 { font-size: 25px; }.product-grid { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media(max-width:720px) {
  .review-notice { padding: 10px 16px; line-height: 1.5; }.review-notice a { white-space: nowrap; }.site-header { position: relative; }.site-nav { top: 100%; }
  .guide-grid,.credits-grid { grid-template-columns: 1fr; gap: 22px; }.guide-card h3 { font-size: 28px; }.reading-shelf { padding-top: 55px; padding-bottom: 55px; }
  .library-head { padding-top: 42px; padding-bottom: 28px; }.library-controls { display: grid; gap: 16px; padding: 20px; }.article-dek { font-size: 18px; }
  .article-layout { display: block; }.article-sidebar { position: static; margin-bottom: 30px; padding: 20px; border: 1px solid var(--line); }.article-sidebar a { padding: 9px 0; }
  .article-head { padding-top: 28px; padding-bottom: 14px; }.article-body { font-size: 17px; }.article-body h2 { font-size: 29px; }.takeaway { padding: 22px; }.article-photo.product-shot { height: 310px; }
  .source-record { display: block; }.source-record h2 { margin: 14px 0; }.product-photograph img { height: 140px; padding: 6px; }.product-photograph figcaption { font-size: 11px; }
  .product-card { min-height: 0; }.product-reason { font-size: 14px; }.product-card h3 { font-size: 23px; }.filter-chip { min-height: 42px; }.play-footer { flex-wrap: wrap; gap: 16px; }
}
@media(prefers-reduced-motion:reduce) { html { scroll-behavior: auto; }.guide-card-image img { transition: none; } }
