/* CMS media frames, text limits and compact mobile reading. */
.cms-content-panel,.project-card,.cms-home-feature>*,.article-head>*{min-width:0}
.project-card h3,.cms-home-brief h2,.cms-home-feature :is(h1,.cms-page-title),.article-head :is(h1,.cms-page-title),.page-head :is(h1,.cms-page-title),.figure-no,.card-meta>span,.eyebrow{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;overflow-wrap:anywhere;text-overflow:ellipsis}
.project-card>p,.cms-home-feature .hero-copy>p,.article-head>div>p,.page-head>p{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;overflow-wrap:anywhere;text-overflow:ellipsis}
.card-meta>span{min-width:0}.figure-no{max-width:calc(100% - 24px)}
.project-card .card-image{aspect-ratio:1.38;position:relative;min-height:0}
.project-card .card-image img,.theme-studio .project-card:first-child .card-image img,.theme-journal .card-image img,.theme-minimal .card-image img{width:100%;height:100%;aspect-ratio:auto;object-fit:cover}
.card-image>.cms-image-placeholder,.cms-feature-image>.cms-image-placeholder,.cms-detail-media>.cms-image-placeholder{position:absolute;inset:0;width:100%;height:100%;min-height:0;padding:16px;text-align:center;overflow:hidden;box-sizing:border-box}
.cms-feature-image,.cms-detail-media{position:relative;overflow:hidden}
.cms-detail-media{aspect-ratio:1.1;margin:0}.cms-detail-media>img{width:100%;height:100%;object-fit:cover;aspect-ratio:auto}
.cms-article-layout{min-width:0}.cms-article-content{width:100%;max-width:100%;min-width:0;overflow-wrap:anywhere}
.cms-article-content *{max-width:100%!important;box-sizing:border-box}
.cms-article-content img,.cms-article-content video,.cms-article-content iframe,.cms-article-content svg,.cms-article-content canvas{width:auto!important;max-width:100%!important;height:auto!important;object-fit:contain}
.cms-article-content iframe{width:100%!important;aspect-ratio:16/9}
.cms-article-content figure{margin:20px 0!important}.cms-article-content picture{display:block}
.cms-article-content table,.cms-article-content pre{display:block;max-width:100%;overflow-x:auto}
.cms-article-content pre{white-space:pre-wrap;overflow-wrap:anywhere}
.cms-article-content .cms-content-image-fallback{display:grid;place-items:center;aspect-ratio:16/9;width:100%!important;height:auto!important;max-height:320px;min-height:100px;padding:16px;background:var(--soft,var(--paper,#f3f0e9));color:var(--muted,#555);border:1px solid var(--line,#ddd);font:14px/1.5 var(--sans,Arial,sans-serif);text-align:center;overflow:hidden}
.cms-content-toggle{margin-top:16px}.cms-content-toggle[hidden]{display:none!important}
@media(max-width:760px){
body{font-size:14px;line-height:1.55}.wrap{width:calc(100% - 28px)}
.site-header .header-row{min-height:54px;gap:12px}.site-header .logo{font-size:16px;gap:8px;max-width:calc(100% - 70px)}.site-header .logo svg{width:28px;height:28px}.site-header .cms-logo{max-width:110px;max-height:30px;width:auto;height:auto}
.site-header .menu-button{font-size:12px;padding:8px 0}.site-header .mobile-quick-nav{min-height:32px;gap:16px;padding-block:7px;font-size:11px}.site-header #main-nav.open{padding-block:10px;gap:12px;font-size:12px}
.utility{padding:5px 0;font-size:9px}.hero,.theme-studio .cms-home-feature{padding-block:22px;gap:18px}
.theme-studio .cms-home-feature :is(h1,.cms-page-title),.hero :is(h1,.cms-page-title){font-size:28px;line-height:1.16;letter-spacing:-.7px;margin:10px 0 12px}
.cms-home-feature .hero-copy>p{font-size:13px;margin:0 0 14px}.theme-studio .cms-home-feature .hero-media{margin:0;transform:none}.cms-feature-image{aspect-ratio:1.55}.cms-feature-image .cms-image-placeholder{font-size:24px;padding:20px}
.btn{font-size:11px;padding:10px 14px;gap:12px}.hero-links{gap:12px}.text-link{font-size:11px}
.cms-home-briefs .cms-home-brief{padding:12px 0;gap:10px}.cms-home-brief h2{font-size:14px}.cms-home-briefs .cms-brief-number{font-size:20px}.cms-home-briefs .eyebrow{font-size:9px;letter-spacing:1px}
.section,.library-section{padding-block:26px}.section-heading{gap:12px;margin-bottom:18px}.section-heading h2{font-size:24px;letter-spacing:-.5px}.section-heading p{font-size:12px;margin-top:6px}
.project-grid{gap:22px 14px}.project-card h3{font-size:19px;line-height:1.25;margin-bottom:7px}.project-card>p{font-size:12px;margin-block:7px 10px}.card-meta{margin:10px 0 6px;font-size:8px;gap:6px;letter-spacing:.7px}.card-bottom{font-size:10px;gap:8px}.save-button{font-size:10px}.eyebrow{font-size:9px;letter-spacing:1.4px}
.page-head,.cms-home-empty{padding-block:24px}.page-head :is(h1,.cms-page-title),.article-head :is(h1,.cms-page-title){font-size:28px;line-height:1.16;letter-spacing:-.7px;margin-block:10px 12px}.page-head p,.article-head>div>p{font-size:13px}.filters{gap:12px;margin-bottom:16px}.filters label{font-size:11px}.filters input{font-size:16px;padding:9px 10px}.category-buttons{gap:8px;margin-block:14px}.category-buttons a{font-size:11px;padding:7px 10px;overflow-wrap:anywhere;max-width:100%}
.article-head{padding-block:24px;gap:20px}.article-meta{font-size:10px;gap:8px;flex-wrap:wrap}.article-actions{margin-top:16px;gap:10px;flex-wrap:wrap}.breadcrumb{font-size:10px;margin-bottom:14px}.cms-detail-media{aspect-ratio:1.55}.article-layout{padding-block:24px;gap:20px}.project-sidebar{font-size:12px}.cms-article-content{font-size:14px;line-height:1.7}.cms-article-content h2{font-size:22px}.cms-article-content h3{font-size:18px}
.cms-content-panel.is-collapsible:not(.is-expanded) .cms-article-content{max-height:520px;overflow:hidden;position:relative}
.cms-content-panel.is-collapsible:not(.is-expanded) .cms-article-content:after{content:"";position:absolute;bottom:0;left:0;right:0;height:65px;background:linear-gradient(transparent,var(--paper,#f5f1e8));pointer-events:none}
.site-footer{padding-block:28px 20px}.footer-top{gap:20px}.footer-bottom{margin-top:22px;padding-top:16px;font-size:10px}
}
@media print{.cms-content-panel .cms-article-content{max-height:none!important;overflow:visible!important}.cms-article-content:after,.cms-content-toggle{display:none!important}}

@media(max-width:760px){.cms-category-head .tags-hero-content :is(h1,.cms-page-title){font-size:28px;line-height:1.16;letter-spacing:-.7px;margin-block:10px 12px}}

.category-buttons a{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;overflow-wrap:anywhere;text-overflow:ellipsis;max-width:100%}
.tags-hero-content p{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;overflow-wrap:anywhere}
