.actual-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:34px 23px;padding-bottom:28px}.actual-card{min-width:0}.actual-image{position:relative;overflow:hidden;background:#e5e9df}.source-photo{position:relative;aspect-ratio:1/1.1;background:#e5e9df;overflow:hidden;display:flex;align-items:center;justify-content:center}.source-photo img{width:100%;height:100%;object-fit:cover;position:relative;z-index:1;transition:transform .35s}.source-photo img:hover{transform:scale(1.035)}.source-photo-fallback{position:absolute;font-size:12px;text-align:center;padding:20px;color:var(--muted);max-width:210px}.source-photo-large{aspect-ratio:1/1.03}.source-photo-large img{object-fit:contain;background:#e8eadd}.actual-format{position:absolute;left:12px;bottom:12px;z-index:2;background:#fffdf4ed;padding:5px 9px;font-size:9px;letter-spacing:.6px}.actual-image .save-button{z-index:3;top:12px;right:12px}.actual-card-copy{padding-top:16px}.actual-card :is(h2,h3){font:normal 23px/1.22 Georgia,serif;margin:7px 0 11px;letter-spacing:-.4px;overflow-wrap:anywhere}.actual-creator{font-size:12px;color:var(--muted);margin:0 0 8px;line-height:1.7}.actual-file-state{font-size:10px;color:#47704a;margin:0 0 8px}.actual-source-link{display:inline-flex;min-height:48px;align-items:center;font-size:10px;text-decoration:underline;text-underline-offset:4px}.actual-language-reminder{font-size:12px!important;color:var(--clay)!important;line-height:1.8;margin-top:14px!important;max-width:750px}.actual-product-creator{font:normal 21px Georgia,serif;color:var(--muted);margin:0 0 15px}.actual-kind{font-size:10px;text-transform:uppercase;letter-spacing:1px;background:#e8ecdf;display:inline-flex;padding:7px 11px;margin:0 0 20px}.actual-pending{border:1px solid var(--line);border-left:2px solid #69855d;background:#e9eddf;padding:16px 20px;margin:15px 0;font-size:12px;line-height:1.8}.actual-pending strong{font-size:11px}.actual-pending p{margin:7px 0 0;color:var(--muted)}.actual-product-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:14px}.actual-product-actions .button{min-width:0}.actual-product-actions svg{width:17px;height:17px}.actual-photo-credit{font-size:10px;color:var(--muted);line-height:1.8;margin:12px 0 0}.actual-photo-credit a{text-decoration:underline;text-underline-offset:4px}.actual-category-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:35px 23px;padding-bottom:70px}.actual-category h2{font:normal 28px/1.15 Georgia,serif;letter-spacing:-.5px;margin:15px 0 8px}.actual-category p{font-size:11px;color:var(--muted);margin:0}.actual-category .source-photo{aspect-ratio:1/1.02}.actual-home-hero .hero-copy{padding-top:65px;padding-bottom:55px}.actual-home-hero h1{font-size:clamp(47px,5.2vw,74px);letter-spacing:-2.4px;line-height:1.08}.actual-hero-photo{position:relative;min-height:570px;background:#e5e9df;overflow:hidden}.actual-hero-photo .source-photo{height:100%;width:100%;position:absolute;inset:0;aspect-ratio:auto}.actual-hero-photo .source-photo img{object-fit:cover}.actual-hero-credit{position:absolute;bottom:18px;left:22px;right:22px;z-index:3;padding:9px 12px;font-size:10px;color:var(--forest);background:#fffdf4e8;max-width:max-content}.actual-archive-note{margin-top:38px;padding:25px 27px;border:1px solid var(--line);background:#eceee3;font-size:13px}.actual-archive-note p{margin:0 0 15px}.actual-source-dialog-row{display:grid;grid-template-columns:58px minmax(0,1fr) 54px;gap:13px;align-items:center;border-top:1px solid var(--line);padding-top:15px}.actual-source-dialog-row img{width:58px;height:68px;object-fit:cover}.actual-source-dialog-row h3{font:normal 18px/1.25 Georgia,serif;margin:0 0 6px}.actual-source-dialog-row p{font-size:10px;color:var(--muted);margin:0}.actual-source-dialog-row button{min-width:48px;min-height:48px;border:0;background:none;text-decoration:underline;color:var(--muted);font-size:10px}.actual-source-dialog-row .dialog-photo-placeholder{width:58px;height:68px;background:#e5e9df;display:grid;place-items:center;font-size:10px}.source-footer .footer-top{grid-template-columns:2fr 1fr 1fr}.source-footer .footer-top>div:last-child{grid-column:auto}.concept-archive-bar a{color:inherit;text-decoration:underline;text-underline-offset:3px;margin-left:14px}.source-photo.img-failed img{display:none}.actual-hero-photo .source-photo-fallback{font-size:14px}
@media(max-width:1000px){.actual-grid,.actual-category-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:30px 20px}.actual-card :is(h2,h3){font-size:21px}.actual-home-hero h1{font-size:57px}.actual-hero-photo{min-height:520px}}
@media(max-width:800px){.actual-grid,.actual-category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.actual-hero-photo{min-height:460px}.actual-home-hero h1{font-size:48px}.actual-home-hero .hero-copy{padding-top:45px}.actual-category h2{font-size:25px}.source-footer .footer-top{grid-template-columns:1fr 1fr}.source-footer .footer-top>div:first-child{grid-column:1/-1}}
@media(max-width:560px){.actual-grid{gap:29px 15px}.actual-card :is(h2,h3){font-size:19px;line-height:1.25}.actual-creator{font-size:11px}.actual-file-state{font-size:9px}.actual-format{font-size:8px;left:9px;bottom:9px}.actual-image .save-button{right:8px;top:8px}.actual-home-hero h1{font-size:51px;letter-spacing:-2px}.actual-home-hero .hero-copy{padding:43px 6% 35px}.actual-hero-photo{min-height:380px}.actual-hero-credit{font-size:9px;left:15px;right:15px;bottom:15px}.actual-pending{font-size:14px}.actual-pending strong{font-size:12px}.actual-language-reminder{font-size:14px!important}.actual-product-actions .button{width:100%}.actual-product-creator{font-size:23px}.actual-photo-credit{font-size:11px}.actual-category-grid{gap:28px 16px}.actual-category h2{font-size:23px}.actual-category p{font-size:10px}.actual-archive-note{padding:20px;font-size:14px}.actual-home-hero .hero-footnote{font-size:11px!important}.concept-archive-bar{font-size:9px;letter-spacing:.4px;line-height:1.8}.concept-archive-bar a{display:block;margin-left:0}.actual-source-dialog-row{grid-template-columns:48px minmax(0,1fr) 48px;gap:10px}.actual-source-dialog-row img,.actual-source-dialog-row .dialog-photo-placeholder{width:48px;height:58px}.actual-source-dialog-row h3{font-size:16px}}
.actual-thumb-credit{font-size:8px;color:var(--muted);line-height:1.65;margin:0 0 9px;overflow-wrap:anywhere}.actual-photo-credit{overflow-wrap:anywhere}

/* A visible source image replaces its fallback text for every reader. */
.source-photo:not(.img-failed):has(img:not([hidden])) .source-photo-fallback{display:none}

/* Customer storefront: readable prose, generous controls, quiet file details. */
body[data-source-language]{font-size:16px}
body[data-source-language] .hero-copy>p:not(.eyebrow),body[data-source-language] .page-intro p,body[data-source-language] .product-summary .lead,body[data-source-language] .detail-grid p{font-size:16px;line-height:1.8}
body[data-source-language] .actual-language-reminder{font-size:14px!important;color:var(--muted)!important;margin-top:12px!important}
.actual-pattern-summary{margin:0 0 24px}.actual-download-help{font-size:14px;color:var(--muted);line-height:1.7;margin:15px 0 0}
.actual-preview-label{position:absolute;z-index:2;bottom:44px;left:12px;max-width:calc(100% - 24px);padding:5px 8px;background:#fffdf4f2;color:var(--forest);font-size:11px;line-height:1.5}
body[data-source-language] .product-facts dd{font-size:16px;line-height:1.6}.actual-file-state{font-size:14px;color:var(--muted);line-height:1.7;margin-bottom:0}.actual-format{font-size:11px;letter-spacing:.2px}
.actual-product-actions .button{min-height:48px;font-size:14px}.actual-image .save-button{min-width:48px;min-height:48px;width:48px;height:48px}
.actual-category p{font-size:14px;line-height:1.7}.source-footer .footer-top p,.source-footer .footer-links{font-size:14px;line-height:1.8}.source-footer .footer-bottom{font-size:12px}
.pattern-credits dl,.actual-file-details{margin:0;display:grid;gap:16px}.pattern-credits dl>div,.actual-file-details>div{min-width:0}.pattern-credits dt,.actual-file-details dt{font-size:12px;color:var(--muted);margin-bottom:4px}.pattern-credits dd,.actual-file-details dd{font-size:16px;line-height:1.7;margin:0;overflow-wrap:anywhere}.pattern-credits dd{color:var(--muted)}
body[data-source-language] .catalog-tools input,body[data-source-language] .catalog-tools select,body[data-source-language] .catalog-tools .button{min-height:48px;font-size:16px}.actual-source-dialog-row p{font-size:13px}.actual-source-dialog-row button{font-size:12px}.actual-source-dialog-row h3{overflow-wrap:anywhere}
@media(max-width:560px){.actual-home-hero h1{font-size:clamp(40px,11.5vw,51px);overflow-wrap:break-word}.actual-home-hero .hero-footnote{font-size:12px!important}.actual-format{font-size:10px;max-width:calc(100% - 18px);overflow-wrap:anywhere}.actual-file-state{font-size:13px}.actual-card :is(h2,h3){font-size:19px}.actual-product-actions{gap:10px}.actual-product-actions .button{width:100%}.actual-source-dialog-row p{font-size:12px}.source-footer .footer-top{gap:25px}.pattern-credits dd,.actual-file-details dd{font-size:16px}}
@media(prefers-reduced-motion:reduce){.source-photo img{transition:none}.source-photo img:hover{transform:none}}
body[data-source-language]{--muted:#56624f}
body[data-source-language] .pagination{display:flex;flex-wrap:wrap;gap:7px;max-width:100%;justify-content:center}
body[data-source-language] .pagination>a,body[data-source-language] .pagination>.current{display:inline-flex;align-items:center;justify-content:center;min-width:48px;min-height:48px;padding:8px;font-size:16px}
body[data-source-language] .site-header nav>a,body[data-source-language] .mobile-nav>a,body[data-source-language] .footer-links>a,body[data-source-language] .language-menu nav>a{display:inline-flex;align-items:center;min-height:48px}
body[data-source-language] .icon-action,body[data-source-language] .language-menu>summary,body[data-source-language] .dialog-head>button{min-height:48px;min-width:48px}
body[data-source-language] .text-link,body[data-source-language] .category-pills .pill,body[data-source-language] .breadcrumb a{display:inline-flex;align-items:center;min-height:48px}
body[data-source-language] .actual-card :is(h2,h3) a{display:inline-flex;align-items:center;min-height:48px}
body[data-source-language] .catalog-tools label{font-size:16px}
body[data-source-language] .actual-policy{max-width:800px;padding-bottom:64px;font-size:16px;line-height:1.8}
body[data-source-language] .actual-policy section{margin-bottom:32px}
body[data-source-language] .actual-policy h2{font:normal 28px/1.25 Georgia,serif}
body[data-source-language] .actual-policy p{font-size:16px;line-height:1.8}
@media(max-width:560px){body[data-source-language] .pagination{gap:5px}body[data-source-language] .pagination>a,body[data-source-language] .pagination>.current{min-width:48px;min-height:48px}.actual-file-details{grid-template-columns:minmax(0,1fr)}}
