/* Phase 3 additions. Approved homepage CSS and catalogue geometry stay unchanged. */
:root{--p-reading-width:780px;--p-section-gap:clamp(24px,4vw,56px)}
.p-hub-hero,.p-article-hero{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);gap:var(--p-section-gap);align-items:center;margin:24px 0 38px}
.p-hub-hero h1,.p-article-hero h1{font-family:var(--font-display);font-size:clamp(34px,4.2vw,58px);line-height:1.07;letter-spacing:-1.6px;margin:12px 0 20px;overflow-wrap:anywhere}
.p-hub-hero h1{font-size:clamp(42px,4.8vw,66px)}
.p-hub-hero p:not(.m-eyebrow),.p-article-hero p:not(.m-eyebrow){font-size:16px;color:var(--color-muted);line-height:1.75;max-width:620px}
.p-hub-hero .m-button,.p-article-hero .m-button{margin-top:22px}
.p-hub-hero figure,.p-article-hero figure{margin:0;position:relative;overflow:hidden;border-radius:var(--radius-md);background:var(--color-border)}
.p-hub-hero figure img,.p-article-hero figure img{display:block;width:100%;aspect-ratio:1.52;object-fit:cover}
.p-hub-hero figcaption,.p-article-hero figcaption{position:absolute;bottom:10px;right:10px;left:auto;max-width:calc(100% - 20px);background:#292720dc;color:#fff;padding:4px 8px;border-radius:var(--radius-sm);font-size:10px}
.p-article-meta{margin-top:18px;font-size:12px;color:var(--color-muted)}
.p-knowledge{margin-top:42px}
.p-searchbar{display:grid;grid-template-columns:minmax(0,1fr) minmax(190px,.5fr) auto;align-items:end;gap:16px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:20px;margin:20px 0 26px}
.p-searchbar label{display:grid;gap:7px;font-size:12px;font-weight:700;min-width:0}
.p-searchbar input,.p-searchbar select{font:inherit;font-size:14px;color:var(--color-text);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:white;padding:12px 13px;width:100%;min-width:0;min-height:45px}
.p-searchbar select:focus-visible,.p-searchbar input:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}
.p-guides-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.p-guide-card{display:flex;flex-direction:column;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden;box-shadow:var(--shadow-card)}
.p-guide-image{display:block;position:relative;overflow:hidden}
.p-guide-image img{display:block;width:100%;aspect-ratio:1.75;object-fit:cover;transition:transform .2s}
.p-guide-image:hover img{transform:scale(1.025)}
.p-guide-image>span{position:absolute;right:8px;bottom:8px;background:#292720d9;padding:2px 6px;color:white;font-size:9px;border-radius:var(--radius-sm)}
.p-guide-card>div{padding:21px;display:flex;flex-direction:column;flex:1;align-items:flex-start}
.p-guide-card h2{font-family:var(--font-display);font-size:26px;line-height:1.15;margin:10px 0 12px}
.p-guide-card h2 a:hover{color:var(--color-accent)}
.p-guide-card>div>p:not(.m-eyebrow){font-size:13px;line-height:1.7;color:var(--color-muted);margin-bottom:18px}
.p-guide-card .m-text-link{margin-top:auto}
.p-reading-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:64px;align-items:start;padding:10px 0 20px}
.p-long-copy{max-width:var(--p-reading-width)}
.p-long-copy>section{scroll-margin-top:25px}
.p-long-copy>section:first-child{padding-top:0}
.p-long-copy p{font-size:16px;line-height:1.85;margin-bottom:16px}
.p-reading-aside{position:sticky;top:24px;min-width:0}
.p-reading-aside>nav{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:23px}
.p-reading-aside nav>.m-eyebrow{margin-bottom:15px}
.p-reading-aside nav>a{display:flex;align-items:start;gap:12px;padding:13px 0;border-top:1px solid var(--color-border);font-size:13px;line-height:1.5}
.p-reading-aside nav>a>span{color:var(--color-accent);font-size:12px}
.p-reading-aside nav>a:hover{color:var(--color-accent)}
.p-aside-note{background:var(--color-topbar);color:var(--color-bg);border-radius:var(--radius-md);padding:25px;margin-top:20px}
.p-aside-note:first-child{margin-top:0}
.p-aside-note .m-eyebrow{color:#d7b89d}
.p-aside-note h2{color:var(--color-bg);font-family:var(--font-display);font-size:29px;line-height:1.15;margin:12px 0}
.p-aside-note p:not(.m-eyebrow){font-size:13px;color:#dfd7cc;line-height:1.75}
.p-aside-note>a{display:flex;gap:12px;align-items:center;margin-top:18px;color:#ecd4ba;font-size:12px;font-weight:700}
.p-aside-note>a .icon{width:17px;height:17px}
.p-editorial-note{border-left:3px solid var(--color-accent);background:#eee8de;padding:16px 20px;font-size:13px!important;margin-top:28px!important}
.p-related{margin:32px 0 18px}
.p-related h2{font-family:var(--font-display);font-size:32px;line-height:1.15;margin-bottom:18px}
.p-related nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.p-related nav>a{display:flex;gap:16px;justify-content:space-between;align-items:center;background:var(--color-surface);border:1px solid var(--color-border);padding:18px;border-radius:var(--radius-sm);font-size:13px;font-weight:700;min-width:0}
.p-related nav>a:hover{border-color:var(--color-accent);color:var(--color-accent)}
.p-related .icon{width:18px;height:18px;color:var(--color-accent)}
.p-reading-aside .p-related nav{grid-template-columns:1fr}
.p-reading-aside .p-related h2{font-size:25px}
.p-checklist{padding:0;list-style:none;counter-reset:check;display:grid;gap:10px;margin:22px 0}
.p-checklist li{counter-increment:check;display:flex;align-items:center;gap:18px;border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:16px;background:var(--color-surface);font-size:14px}
.p-checklist li:before{content:counter(check,decimal-leading-zero);color:var(--color-accent);font-family:var(--font-display);font-size:21px}
.p-genus-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:24px}
.p-genus-grid>a{padding:24px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);min-width:0}
.p-genus-grid>a:hover{border-color:var(--color-accent)}
.p-genus-grid h2{font-family:var(--font-display);font-size:28px;line-height:1.15;margin:12px 0;overflow-wrap:anywhere}
.p-genus-grid p:not(.m-eyebrow){font-size:12px;color:var(--color-muted)}
.p-genus-grid span{display:flex;align-items:center;gap:12px;font-size:12px;font-weight:700;color:var(--color-accent);margin-top:24px}
.p-genus-grid .icon{width:16px;height:16px}
.p-faq{max-width:920px}
.p-no-results{padding:30px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md)}
.p-search-count{color:var(--color-muted);font-size:13px;margin:12px 0 20px}
.p-search-results{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.p-search-results article{border:1px solid var(--color-border);background:var(--color-surface);padding:23px;border-radius:var(--radius-md)}
.p-search-results h2{font-family:var(--font-display);font-size:25px;line-height:1.2;margin:10px 0 18px;overflow-wrap:anywhere}
.c-card__facts>a{font-size:11px!important;display:inline-block;margin:3px 0}
.c-badge{max-width:100%}
@media(max-width:1050px){.p-reading-layout{grid-template-columns:minmax(0,1fr) 250px;gap:32px}.p-genus-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.p-related nav{grid-template-columns:repeat(2,minmax(0,1fr))}.p-hub-hero,.p-article-hero{gap:30px}.p-guides-grid{gap:16px}}
@media(max-width:800px){.p-hub-hero,.p-article-hero{grid-template-columns:1fr 1fr;gap:24px}.p-guides-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.p-reading-layout{grid-template-columns:1fr;gap:24px}.p-reading-aside{position:static;order:-1;display:grid;grid-template-columns:1.3fr 1fr;gap:16px}.p-reading-aside .p-aside-note{margin:0}.p-reading-aside .p-related{margin:0}.p-article-hero h1{font-size:36px}.p-searchbar{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.p-searchbar button{grid-column:1/-1;justify-self:start}.p-genus-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.p-search-results{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.p-hub-hero,.p-article-hero{grid-template-columns:1fr;gap:20px;margin:18px 0 28px}.p-hub-hero h1{font-size:45px;letter-spacing:-1.5px}.p-article-hero h1{font-size:36px;letter-spacing:-1px}.p-hub-hero p:not(.m-eyebrow),.p-article-hero p:not(.m-eyebrow){font-size:14px}.p-hub-hero figure img,.p-article-hero figure img{aspect-ratio:1.95}.p-hub-hero .m-button{width:100%}.p-guides-grid{grid-template-columns:1fr;gap:16px}.p-guide-image img{aspect-ratio:2}.p-guide-card>div{padding:20px}.p-guide-card h2{font-size:28px}.p-knowledge{margin-top:30px}.p-searchbar{grid-template-columns:1fr;padding:16px;gap:14px}.p-searchbar button{justify-self:stretch}.p-reading-aside{display:block}.p-reading-aside .p-aside-note{margin-top:16px}.p-reading-aside .p-related{margin-top:20px}.p-reading-aside nav{padding:20px}.p-reading-aside nav>a{padding:10px 0}.p-long-copy p{font-size:14px;line-height:1.85}.p-related nav{grid-template-columns:1fr}.p-related h2{font-size:29px}.p-genus-grid{gap:12px}.p-genus-grid>a{padding:18px 13px}.p-genus-grid h2{font-size:24px}.p-genus-grid span{font-size:11px;gap:6px}.p-search-results{grid-template-columns:1fr}.p-article-meta{font-size:11px}.p-checklist li{padding:13px;font-size:13px}.p-article-hero figure{max-width:100%}.p-faq summary{font-size:14px}}
@media(prefers-reduced-motion:reduce){.p-guide-image img{transition:none}.p-guide-image:hover img{transform:none}}
@media print{.p-searchbar,.p-reading-aside,.p-article-hero figure,.p-related{display:none}.p-reading-layout,.p-article-hero{display:block}.p-long-copy{max-width:none}.p-guides-grid{grid-template-columns:repeat(2,1fr)}}
