/* Testo Partner Hub library pages */
.catalog-hero{background:linear-gradient(110deg,#1f4d5e 0%,#174354 75%,#0d3442 100%);color:#fff;padding:52px 0 54px;position:relative;overflow:hidden}
.catalog-hero:after{content:"";position:absolute;width:380px;height:380px;border:60px solid rgba(255,153,0,.12);border-radius:50%;right:-180px;top:-190px;pointer-events:none}
.catalog-hero .breadcrumbs,.subcat-head .breadcrumbs{color:#c2d5db;margin:0 0 28px;font-size:12px}
.catalog-hero .breadcrumbs a,.subcat-head .breadcrumbs a{text-decoration:none;color:#fff}
.catalog-eyebrow{color:#ffbe00;font-weight:500;margin-bottom:10px}
.catalog-hero h1,.subcat-head h1{font-weight:300;font-size:clamp(38px,6vw,68px);letter-spacing:-.045em;line-height:1.05;margin:0 0 16px}
.catalog-hero p{max-width:700px;color:#dce9eb;font-size:16px;line-height:1.68;margin:0 0 22px}
.catalog-title-count{font:400 clamp(18px,2vw,26px) 'Roboto Mono',monospace;background:#ff9900;color:#1f4d5e;display:inline-grid;place-items:center;padding:8px 13px;min-width:58px;margin-left:18px;letter-spacing:0;vertical-align:middle}
.catalog-facts{display:flex;flex-wrap:wrap;gap:10px}
.catalog-facts span{border:1px solid rgba(255,255,255,.22);padding:8px 12px;font-size:12px;color:#e6efef}
.catalog-facts strong{font:700 17px Roboto;color:#fff;margin-right:4px}
.catalog-index-section{padding-top:65px}
.catalog-title-row{display:flex;justify-content:space-between;gap:28px;align-items:flex-end;margin-bottom:25px}
.catalog-title-row h2{font:300 clamp(30px,3.5vw,43px)/1.15 Roboto;margin:7px 0 9px}
.catalog-title-row p{font-size:14px;line-height:1.6;color:#667983;margin:0;max-width:710px}
.catalog-search{display:flex;align-items:center;flex:0 0 min(350px,100%);background:#fff;border:1px solid #bfcfce;color:#5d737a;padding:0 15px;min-height:46px}
.catalog-search span{font-size:22px}
.catalog-search input{border:0;outline:0;width:100%;padding:10px 12px;font-size:14px;color:#1f4d5e;background:transparent;min-width:0}
.category-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.cat-card{display:flex;flex-direction:column;text-decoration:none;color:#1f4d5e;border:1px solid #e2e8e5;background:#fff;transition:border-color .15s,transform .15s}
.cat-card:hover{border-color:#ff9900;transform:translateY(-2px)}
.cat-card-media{height:170px;position:relative;overflow:hidden;background:#f3f5f3;display:flex;align-items:center;justify-content:center}
.cat-card-media img{width:100%;height:100%;object-fit:contain;max-height:170px;padding:10px}
.cat-number{position:absolute;top:12px;left:12px;background:#ff9900;color:#1b4251;font:700 12px 'Roboto Mono';padding:7px 10px}
.cat-photo-label{position:absolute;bottom:7px;right:10px;color:#5d7279;background:rgba(255,255,255,.92);font:10px 'Roboto Mono';padding:3px 6px}
.cat-card-body{padding:19px 20px 20px;flex:1;display:flex;flex-direction:column;align-items:flex-start;gap:8px}
.cat-card-meta{font:11px 'Roboto Mono';color:#a15d00}
.cat-card-body h3{font:400 21px/1.25 Roboto;margin:0;letter-spacing:-.01em}
.cat-card-body p{font-size:13px;color:#728088;line-height:1.5;margin:0 0 12px;flex:1}
.cat-link{font:700 12px Roboto;border-bottom:1px solid #ff9900;padding:0 0 3px}
.cat-link span{margin-left:8px}
.subcat-head{background:#1f4d5e;color:#fff;padding:38px 0 42px}
.subcat-head-layout{display:grid;grid-template-columns:minmax(0,1fr) 250px;gap:35px;align-items:center}
.subcat-head h1{font-size:clamp(31px,4.2vw,52px);line-height:1.11;max-width:850px}
.subcat-desc{color:#d0e3e6;margin:0 0 22px;font-size:16px}
.subcat-head .catalog-facts{margin-bottom:20px}
.back-link{font-size:13px;text-decoration:none;color:#fff;display:inline-block;border-bottom:1px solid #ff9900;padding-bottom:3px}
.subcat-cover{background:#fff;border:10px solid rgba(255,255,255,.13);height:215px;position:relative;display:grid;place-items:center}
.subcat-cover img{width:100%;height:100%;object-fit:contain;padding:10px;background:#f4f3f1}
.subcat-cover span{position:absolute;bottom:3px;right:5px;font:10px 'Roboto Mono';padding:3px 7px;background:rgba(255,255,255,.9);color:#5c7175}
.catalog-sub-section{padding-top:54px}
.file-filter-bar{display:flex;align-items:center;justify-content:space-between;gap:15px;flex-wrap:wrap;border-bottom:1px solid #e1e8e7;padding-bottom:18px;margin-bottom:22px}
.format-filters{display:flex;flex-wrap:wrap;gap:6px}
.catalog-filter{border:1px solid #d8e2df;background:#fff;color:#4a6872;min-height:36px;padding:7px 14px;font-size:12px}
.catalog-filter.is-active{background:#1f4d5e;color:#fff;border-color:#1f4d5e}
.file-filter-bar p{margin:0;color:#74838a;font:11px 'Roboto Mono'}
.catalog-file-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.catalog-asset-card{border:1px solid #e2e8e5;background:#fff;display:flex;flex-direction:column;min-width:0}
.catalog-asset-card[hidden]{display:none}
.catalog-asset-preview{position:relative;background:#f4f3f1;aspect-ratio:1.6;display:flex;align-items:center;justify-content:center;overflow:hidden}
.catalog-asset-preview>img{width:100%;height:100%;object-fit:contain;padding:13px}
.asset-preview-placeholder{text-align:center;display:flex;flex-direction:column;gap:5px;align-items:center;color:#a1afb1}
.asset-preview-symbol{font:300 46px Roboto;color:#7e999f}
.asset-preview-placeholder>span:last-child{font:10px 'Roboto Mono';letter-spacing:.12em}
.asset-format{position:absolute;top:12px;right:12px;font:700 10px 'Roboto Mono';background:#fff;color:#1f4d5e;padding:6px 8px}
.catalog-asset-details{padding:17px;flex:1;display:flex;flex-direction:column}
.asset-index{font:10px 'Roboto Mono';color:#a96800;letter-spacing:.1em}
.catalog-asset-details h3{font:400 15px/1.35 Roboto;margin:7px 0 6px;overflow-wrap:anywhere}
.asset-filename{font:10px/1.55 'Roboto Mono';overflow-wrap:anywhere;color:#819197;margin-bottom:17px}
.asset-row{border-top:1px solid #eff0ee;padding-top:11px;margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:9px;flex-wrap:wrap}
.asset-state{font:10px 'Roboto Mono';padding:6px 8px;background:#f0f0ef;color:#63747b}
.asset-state.is-ready{background:#e9f3f1;color:#226353}
.asset-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.asset-download,.asset-preview-button{border:0;background:none;color:#1f4d5e;font:700 12px Roboto;text-decoration:none;padding:5px 0;border-bottom:1px solid #ff9900}
.catalog-bottom-note{padding:21px 24px;margin-top:35px;background:#f4f3f1;border-left:4px solid #ff9900;font-size:13px;line-height:1.7;color:#4b656e}
.catalog-bottom-note strong{color:#1f4d5e}
.catalog-bottom-note code{background:#fff;color:#1f4d5e;font-size:12px;padding:3px 5px}
.catalog-lightbox[hidden]{display:none}
.catalog-lightbox{position:fixed;inset:0;z-index:500;display:grid;place-items:center;padding:20px}
.catalog-lightbox-backdrop{position:absolute;inset:0;background:rgba(9,30,38,.87)}
.catalog-lightbox-dialog{position:relative;background:#fff;width:min(980px,100%);max-height:90vh;display:flex;flex-direction:column}
.catalog-lightbox-top{padding:12px 15px;display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid #e0e5e3}
.catalog-lightbox-top strong{font-size:13px;overflow-wrap:anywhere}
.catalog-lightbox-top button{background:#fff;color:#1f4d5e;border:1px solid #d0dddd;min-width:40px;min-height:40px;font-size:24px}
#catalog-lightbox-content{display:flex;align-items:center;justify-content:center;min-height:0;overflow:auto;padding:13px}
#catalog-lightbox-content img,#catalog-lightbox-content video{display:block;max-width:100%;max-height:75vh;object-fit:contain}
.catalog-modal-open{overflow:hidden}
@media(max-width:900px){.category-grid,.catalog-file-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.subcat-head-layout{grid-template-columns:minmax(0,1fr) 210px}.catalog-title-row{align-items:flex-start;flex-direction:column}.catalog-search{flex:0 1 auto;width:min(410px,100%)}}
@media(max-width:580px){.category-grid,.catalog-file-grid{grid-template-columns:1fr}.cat-card{display:grid;grid-template-columns:125px minmax(0,1fr)}.cat-card-media{height:100%;min-height:174px}.cat-card-body{padding:14px}.cat-card-body h3{font-size:17px}.cat-number{top:7px;left:7px}.cat-photo-label{display:none}.subcat-head-layout{grid-template-columns:1fr}.subcat-cover{display:none}.catalog-hero{padding:42px 0}.catalog-title-count{margin-left:10px}.catalog-facts span{font-size:11px}.catalog-asset-card{display:grid;grid-template-columns:110px 1fr}.catalog-asset-preview{aspect-ratio:auto;min-height:170px}.catalog-asset-details{padding:12px}.catalog-asset-details h3{font-size:14px}.asset-row{align-items:flex-start;flex-direction:column}.catalog-file-grid{gap:11px}}

.asset-actions{flex-wrap:wrap}.asset-row{align-items:flex-start;gap:10px;flex-wrap:wrap}.asset-state{font-size:11px}.catalog-asset-preview img{object-fit:contain;background:#f3f3f1}.asset-download{cursor:pointer;font:inherit}.download-status{font-size:12px;display:block;max-width:230px;overflow-wrap:anywhere}.catalog-asset-details h3{overflow-wrap:anywhere}.catalog-asset-preview{cursor:default}

.published-video-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 48px}.published-video-group{margin-top:30px;min-width:0}.published-video-group h3{font-size:21px;font-weight:400}.published-video-links{list-style:none;margin:0;padding:0}.published-video-links li{border-bottom:1px solid #dce4e2}.published-video-links a{display:block;padding:13px 0;color:#1f4d5e;text-decoration:underline;text-decoration-color:#ff9900;text-underline-offset:4px;overflow-wrap:anywhere;font-size:15px}.published-video-links a:hover{color:#986000}@media(max-width:650px){.published-video-groups{grid-template-columns:1fr;gap:10px}}

.download-banner .asset-preview-button,.download-banner .download-status{color:#fff}
