.source-body{background:#f7f9fc;color:var(--ink)}
.source-hero{padding:24px 0 0;background:#f7f9fc}
.source-hero-grid{position:relative;isolation:isolate;display:flex;align-items:center;min-height:370px;padding:38px 44px;overflow:hidden;border:1px solid #202d55;border-radius:24px;background:#081124;box-shadow:0 18px 40px rgba(20,32,70,.12)}
.source-hero-background{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;object-position:center}
.source-hero-grid::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(5,12,32,.5),rgba(5,12,32,.18) 49%,transparent 72%);pointer-events:none}
.source-hero-copy{width:min(54%,590px)}
.source-kicker{display:inline-flex;align-items:center;gap:9px;color:#b7c8ec;font-size:11px;font-weight:700;letter-spacing:.18em}
.source-kicker::before{content:"";width:22px;height:2px;background:#f3ca79;border-radius:2px}
.source-hero h1{margin:17px 0 16px;color:#fff;font-size:clamp(38px,4.2vw,54px);font-weight:800;line-height:1.22;letter-spacing:-.025em;text-shadow:0 2px 18px rgba(0,0,0,.18)}
.source-hero h1 em{font-style:normal;color:#f7d88c}
.source-hero p{max-width:420px;margin:0;color:#c5cfe1;font-size:14px;line-height:1.9;white-space:pre-line}
.source-hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:24px}
.source-hero-actions .btn{min-height:44px;padding:12px 19px;border-radius:10px;font-size:13px}
.source-browse-button{border:1px solid #ffe0a0;background:#f7d88c;color:#16233c;box-shadow:0 5px 20px rgba(225,174,69,.14)}
.source-browse-button:hover{background:#ffe6ad;transform:translateY(-1px)}
.source-consult-button{border:1px solid rgba(195,211,242,.35);background:rgba(15,29,61,.55);color:#fff}
.source-consult-button:hover{border-color:#cfdbf6;background:rgba(42,63,104,.8)}
.source-hero-actions a:focus-visible{outline:3px solid #fff;outline-offset:4px}
.source-catalog{padding-top:40px;padding-bottom:72px}.source-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:30px}.source-heading h2{margin:6px 0 8px;font-size:36px;letter-spacing:-.035em}.source-heading p{margin:0;color:#728096}.source-note{display:flex;flex-direction:column;gap:3px;padding:14px 18px;border:1px solid #ffd99a;border-radius:14px;background:#fffaf0}.source-note strong{color:#c26a00}.source-note span{font-size:12px;color:#8b6c3d}.source-filters{display:flex;gap:9px;margin:28px 0 22px}.source-filters button{padding:9px 16px;border:1px solid var(--line);border-radius:999px;background:#fff;color:#58667a;font-weight:700;cursor:pointer}.source-filters button.active{border-color:#246bfd;background:#edf4ff;color:#246bfd}
.source-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}.source-card{display:flex;flex-direction:column;min-width:0;overflow:hidden;border:1px solid #e2e7ef;border-radius:20px;background:#fff;box-shadow:0 12px 32px rgba(31,51,88,.06);transition:.2s}.source-card:hover{transform:translateY(-3px);box-shadow:0 18px 42px rgba(31,51,88,.1)}.source-card-media{position:relative;display:block;aspect-ratio:4/3;flex-shrink:0;overflow:hidden;background:#172033}.source-card-media img,.source-card-media>.resource-preview-art{width:100%;height:100%;object-fit:cover;transition:transform .35s}.source-card:hover .source-card-media img{transform:scale(1.025)}.source-card-media>span,.source-card-media>b{position:absolute;top:14px;padding:7px 10px;border-radius:9px;background:rgba(16,25,45,.82);color:#fff;font-size:11px}.source-card-media>span{left:14px}.source-card-media>b{right:14px;background:#fff2c5;color:#7a4f00}.source-card-body{display:flex;flex:1;flex-direction:column;min-width:0;padding:18px}.source-delivery{font-size:11px;font-weight:800;color:#246bfd}.source-card h3{margin:8px 0;font-size:18px;line-height:1.5;overflow-wrap:anywhere}.source-card h3 a{color:var(--ink)}.source-card p{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:44px;margin:0;color:#6c798d;font-size:13px;line-height:1.7}.source-tech{display:flex;flex-wrap:wrap;gap:7px;margin:15px 0}.source-tech span{padding:5px 7px;border-radius:7px;background:#f2f5f9;color:#617087;font-size:10px;font-weight:800}.source-card-bottom{margin-top:auto;display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:15px;padding-top:16px;border-top:1px solid #edf0f4}.source-card-bottom>div:first-child{display:flex;flex-direction:column}.source-card-bottom small{color:#8a95a8}.source-card-bottom strong{font-size:20px;color:#f07818}.source-card-bottom strong i{font-size:11px;font-style:normal}.source-card-bottom>div:last-child{display:flex;gap:8px}.source-card-bottom .btn{padding:10px 13px;font-size:12px}.source-empty{text-align:center;padding:70px 20px;border:1px dashed #cfd7e3;border-radius:18px;background:#fff}.source-contact-banner{display:flex;align-items:center;justify-content:space-between;gap:35px;margin-bottom:72px;padding:34px 38px;border-radius:24px;background:linear-gradient(120deg,#172b5d,#245fd1);color:#fff}.source-contact-banner span{color:#bcd1ff;font-weight:700}.source-contact-banner h2{margin:6px 0;font-size:32px}.source-contact-banner p{margin:0;color:#dfe9ff}.source-footer{background:#fff}
@media(max-width:1023px){.source-hero-grid{min-height:340px;padding:32px}.source-hero-copy{width:64%}.source-hero h1{font-size:42px}.source-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.source-heading{align-items:flex-start;flex-direction:column}.source-contact-banner{align-items:flex-start;flex-direction:column}}
@media(max-width:620px){.source-grid{grid-template-columns:1fr}.source-hero{padding:16px 0 0}.source-hero-grid{min-height:358px;padding:28px 22px;border-radius:18px}.source-hero-background{object-position:70% center}.source-hero-grid::after{background:linear-gradient(90deg,rgba(5,12,32,.94),rgba(5,12,32,.7) 65%,rgba(5,12,32,.4))}.source-hero-copy{width:100%}.source-hero h1{font-size:clamp(30px,8vw,40px)}.source-hero p{font-size:13px}.source-hero-actions{gap:10px;margin-top:22px}.source-hero-actions .btn{padding:11px 13px;font-size:12px}.source-catalog{padding-top:30px}.source-card-bottom{align-items:flex-start;flex-direction:column}.source-heading h2,.source-contact-banner h2{font-size:28px}.source-contact-banner{padding:26px}.source-note{width:100%}}
