/* Catalog components only. The production shared stylesheet is unchanged. */
.browse-page{background:#f8fafc;color:#1d3357;background-image:radial-gradient(ellipse at 85% 0%,#edf2fb,transparent 55%)}
.browse-page .header{border-bottom:1px solid #e2e8f0}
.browse-page .brand,.browse-page .nav{color:#243a60}
.browse-page .brand small{color:#6b7d95}
.browse-page .brand-symbol{color:#3768ce}
.browse-page .nav [aria-current=page]{color:#2453a0;font-weight:700}
.browse-page .nav-contact{background:#214a99;border-color:#214a99;box-shadow:none}
.browse-page .menu-toggle{color:#243a60;border-color:#ccd7e6;background:white}
.browse-main{padding-block:56px 80px;min-height:70vh}
.browse-intro h1{font-family:inherit;font-size:clamp(30px,3.2vw,46px);line-height:1.25;letter-spacing:-.03em}
.browse-intro>p,.browse-heading>p{font-size:16px;line-height:1.7;color:#667790;margin-top:14px}
.browse-toolbar{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-top:32px;flex-wrap:wrap}
.browse-filters{display:flex;gap:8px;flex-wrap:wrap}
.browse-filters button,.browse-empty button{font:inherit;min-height:44px;border:1px solid #d9e1ec;border-radius:999px;padding:8px 20px;background:#fff;color:#51637e;cursor:pointer}
.browse-filters button[aria-pressed=true]{color:#fff;background:#244c91;border-color:#244c91}
.browse-search{display:flex;flex-direction:column;gap:8px;width:min(420px,100%);color:#4c607f;font-size:13px}
.browse-search input{width:100%;min-height:48px;border:1px solid #cdd8e7;border-radius:10px;padding:12px 16px;font:inherit;font-size:16px;color:#203759;background:#fff}
.browse-result{font-size:13px;color:#6a7c93;margin:24px 0 18px}
.browse-grid{display:grid;gap:24px;align-items:stretch}
.browse-paid{grid-template-columns:repeat(3,minmax(0,1fr))}
.browse-free{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.browse-card{min-width:0;display:flex;flex-direction:column;overflow:hidden;border:1px solid #dce4ef;border-radius:17px;background:#fff;color:#203759;box-shadow:0 5px 16px #193d7010;text-decoration:none;transition:transform .2s,box-shadow .2s}
.browse-card:hover{transform:translateY(-3px);box-shadow:0 12px 26px #193d701b}
.browse-image{position:relative;aspect-ratio:16/9;overflow:hidden;background:#edf2f8}
.browse-image img{display:block;width:100%;height:100%;object-fit:cover}
.browse-badge{position:absolute;top:12px;left:12px;padding:4px 10px;background:#fffffff2;border:1px solid #e4eaf2;border-radius:999px;font-size:11px;line-height:1.4;font-weight:600;color:#365985}
.browse-copy{display:flex;flex-direction:column;flex:1;padding:22px 24px 24px}
.browse-copy h3{font:700 clamp(18px,1.65vw,23px)/1.5 'PingFang SC','Microsoft YaHei',sans-serif;overflow-wrap:anywhere;margin:0}
.browse-copy p{font-size:14px;color:#697b93;line-height:1.65;margin:9px 0 0}
.browse-price{display:block;margin-top:auto;padding-top:22px;font-size:17px;font-weight:650;color:#294d85}
.browse-free .browse-copy{padding:17px 18px 19px}
.browse-free .browse-copy h3{font-size:17px}
.browse-free .browse-copy p{margin-top:6px;font-size:13px}
.browse-empty{text-align:center;padding:60px 16px;color:#5d6f8b}
.browse-empty h2{font:600 23px/1.5 inherit}
.browse-empty p{margin:14px 0 24px}
.browse-section{padding-block:58px 54px}
.browse-heading{margin-bottom:28px}
.browse-heading h2{font-family:inherit;font-size:clamp(26px,2.6vw,36px);line-height:1.35;letter-spacing:-.02em}
.browse-more{display:table;margin:30px auto 0;font-size:15px;font-weight:600;padding:12px 20px;border:1px solid #d7e1ef;border-radius:999px;background:#fff;color:#294d85}
.browse-page .site-footer{background:#eef3f8;color:#526783;border-color:#dce5ef}
.browse-page .footer-company,.browse-page .footer-legal{color:#647791}
.browse-page :is(a,button,input):focus-visible,.browse-section a:focus-visible{outline:3px solid #558de0;outline-offset:4px}
@media(max-width:1100px){.browse-grid{gap:18px}.browse-free{grid-template-columns:repeat(3,minmax(0,1fr))}.browse-copy{padding:18px}.browse-copy h3{font-size:20px}}
@media(max-width:900px){.browse-paid,.browse-free{grid-template-columns:repeat(2,minmax(0,1fr))}.browse-page .nav{background:#fff;border-color:#dce4ef;box-shadow:0 16px 34px #244c9124}.browse-page .nav a{color:#243a60}.browse-page .nav .nav-contact{color:white}}
@media(max-width:600px){.browse-main{padding-block:32px 48px}.browse-section{padding-block:38px}.browse-toolbar{margin-top:25px;gap:20px}.browse-search{width:100%}.browse-filters{gap:6px}.browse-filters button{padding:8px 16px;font-size:14px}.browse-paid,.browse-free{grid-template-columns:minmax(0,1fr)}.browse-copy h3,.browse-free .browse-copy h3{font-size:20px}.browse-intro>p,.browse-heading>p{font-size:14px}.browse-image{aspect-ratio:16/9}.browse-heading{margin-bottom:22px}.browse-price{padding-top:16px}}
@media(prefers-reduced-motion:reduce){.browse-card{transition:none}.browse-card:hover{transform:none}}

.browse-page .footer-links,.browse-page .footer-legal a,.browse-page .footer-legal button{color:#526783}
