.image-with-spinner{position:relative;width:100%;height:100%}.image-with-spinner__loader{position:absolute;top:0;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:center;background:#f5f5f5;z-index:1}.image-with-spinner__spinner{animation:sway 1.2s ease-in-out infinite}.image-with-spinner__image--loading{opacity:0}@keyframes sway{0%{transform:translateX(-15px)}50%{transform:translateX(15px)}to{transform:translateX(-15px)}}.post-card{display:block;text-decoration:none;color:inherit;height:100%;cursor:pointer;transition:transform .3s ease}.post-card:hover{transform:translateY(-4px)}.post-card:hover .post-card__link{gap:.75rem}.post-card:hover .post-card__arrow{transform:translateX(4px)}.post-card__inner{display:flex;flex-direction:column;height:100%;background:rgba(0,0,0,0);border-radius:16px;overflow:hidden}.post-card__image-wrapper{position:relative;width:100%;height:280px;overflow:hidden;border-radius:16px}.post-card__image{-o-object-fit:cover;object-fit:cover;-o-object-position:center;object-position:center}.post-card__content{padding:1.5rem 0;display:flex;flex-direction:column;gap:.875rem;flex:1}.post-card__date{display:flex;align-items:center;gap:.5rem;color:#666;font-size:.875rem}.post-card__title{color:#1a1a1a;font-size:1.25rem;font-weight:700;line-height:1.3;margin:0}.post-card__description{color:#666;font-size:.9375rem;line-height:1.6;margin:0;flex:1}.post-card__footer{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:.25rem}.post-card__link{display:inline-flex;align-items:center;gap:.5rem;color:#2563eb;font-size:.9375rem;font-weight:600;width:-moz-fit-content;width:fit-content;transition:gap .3s ease}.post-card__reading-time{display:flex;align-items:center;gap:.5rem;color:#666;font-size:.875rem;font-weight:500;white-space:nowrap}.post-card__arrow{transition:transform .3s ease}@media(max-width:1024px){.post-card__image-wrapper{height:240px}.post-card__content{padding:1.25rem 0}.post-card__title{font-size:1.125rem}}@media(max-width:768px){.post-card__image-wrapper{height:220px}.post-card__content{padding:1.25rem 0}.post-card__title{font-size:1.125rem}.post-card__description{font-size:.875rem}}.post-card--horizontal:hover{transform:none}.post-card--horizontal .post-card__inner{position:relative;flex-direction:row;background:rgba(0,0,0,0);border-radius:0;overflow:visible;min-height:220px;box-shadow:none}.post-card--horizontal .post-card__image-wrapper{position:relative;width:55%;height:auto;aspect-ratio:3/2;flex-shrink:0;border-radius:0;overflow:hidden}.post-card--horizontal .post-card__image{transition:none}.post-card--horizontal .post-card__content{position:absolute;left:38%;top:50%;transform:translateY(-50%);width:62%;background:#f8f8f8;padding:2rem 2.5rem;display:flex;flex-direction:column;justify-content:center;gap:.75rem;border-top:3px solid #e55c30;box-shadow:none;z-index:1}.post-card--horizontal .post-card__title{font-size:1.375rem;font-weight:700;line-height:1.3;color:#1a1a1a;margin:0}.post-card--horizontal .post-card__description{font-size:.9375rem;line-height:1.55;color:#555;margin:0}.post-card--horizontal .post-card__category{display:inline-block;width:-moz-fit-content;width:fit-content;padding:0;background:rgba(0,0,0,0);color:#e55c30;font-size:.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:.15em;margin-top:.375rem}.post-card--horizontal .post-card__date{color:#888;font-size:.8125rem;margin-top:.25rem}@media(max-width:900px){.post-card--horizontal .post-card__inner{min-height:180px}.post-card--horizontal .post-card__image-wrapper{width:50%}.post-card--horizontal .post-card__content{left:35%;width:65%;padding:1.5rem 1.75rem}.post-card--horizontal .post-card__title{font-size:1.125rem}.post-card--horizontal .post-card__description{font-size:.875rem}}@media(max-width:640px){.post-card--horizontal .post-card__inner{flex-direction:column;min-height:auto}.post-card--horizontal .post-card__image-wrapper{width:100%;aspect-ratio:16/9;border-radius:0}.post-card--horizontal .post-card__content{position:relative;top:auto;right:auto;left:auto;transform:none;width:100%;padding:1.25rem 1.5rem;border-top:3px solid #e55c30;box-shadow:none}.post-card--horizontal .post-card__title{font-size:1.125rem}.post-card--horizontal .post-card__description{font-size:.875rem}}