/* =====================================================================
   POST CARD — uniform image heights (carried forward)
   Images shown FULLY (proportional fit, no cropping) — May 2026 update.
   The 200px fixed-height container gives a uniform card grid; a soft
   neutral background fills any letterbox space so portrait + landscape
   images both look intentional.
   ===================================================================== */
.kt-card-post {
    display: flex !important;
    flex-direction: column !important;
    margin-bottom: 14px;
}
.kt-card-post .kt-card-post__media,
article.kt-card-post a.kt-card-post__media {
    display: block !important;
    position: relative !important;
    width: 100% !important;
    height: 200px !important;
    min-height: 200px !important;
    max-height: 200px !important;
    overflow: hidden !important;
    border-radius: 3px !important;
    background: #f3f4f6 !important;
    text-decoration: none !important;
    box-sizing: border-box !important;
    aspect-ratio: auto !important;
}
.kt-card-post .kt-card-post__media img,
article.kt-card-post a.kt-card-post__media img {
    width: 100% !important;
    height: 100% !important;
    max-height: 100% !important;
    object-fit: cover !important;
    object-position: center top !important;
    background: #f3f4f6 !important;
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    aspect-ratio: auto !important;
}
.kt-card-post:hover .kt-card-post__media img {
    transform: scale(1.04);
    transition: transform .35s;
}
.kt-card-post .kt-card-post__date {
    position: absolute !important;
    bottom: 8px !important;
    left: 8px !important;
    background: rgba(0,0,0,.65) !important;
    color: #fff !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    letter-spacing: .05em !important;
    padding: 3px 8px !important;
    border-radius: 2px !important;
    z-index: 2 !important;
}
.kt-card-post .kt-card-post__body { padding: 10px 0 0 !important; }
.kt-card-post .kt-card-post__title {
    font-size: 16px !important;
    line-height: 1.3 !important;
    margin: 0 0 6px !important;
    font-weight: 700 !important;
}
.kt-card-post .kt-card-post__excerpt {
    font-size: 13px !important;
    line-height: 1.5 !important;
    color: #666 !important;
    margin: 0 !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
}
@media (max-width: 600px) {
    /* PHONE: drop the fixed height/aspect, let each image render at its
       NATURAL aspect at FULL container width.
         → no horizontal blank space (image IS the full width)
         → no cropping (height adjusts to the image) */
    .kt-card-post .kt-card-post__media,
    article.kt-card-post a.kt-card-post__media {
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        aspect-ratio: auto !important;
        background: transparent !important;
    }
    .kt-card-post .kt-card-post__media img,
    article.kt-card-post a.kt-card-post__media img {
        width: 100% !important;
        height: auto !important;
        max-height: none !important;
        aspect-ratio: auto !important;
        object-fit: contain !important;
        object-position: center !important;
    }
}

/* =====================================================================
   SIDEBAR spacing (carried forward)
   ===================================================================== */
.kt-hero-side > * + *,
.kt-col-side > * + * { margin-top: 24px; }
.kt-row + .kt-row { margin-top: 8px; }
.kt-twocol-main { align-items: start; }

/* =====================================================================
   WA STORIES — show all stories at once in a grid
   ===================================================================== */
.kt-stories-grid {
    background: #fff;
    border-radius: 8px;
    padding: 14px;
    border: 1px solid #e8e8e8;
}
.kt-stories-grid__title {
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .08em;
    color: #c0392b;
    margin: 0 0 12px;
    padding-bottom: 8px;
    border-bottom: 2px solid #c0392b;
}
.kt-stories-grid__items {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 10px;
}
.kt-story-card {
    position: relative;
    aspect-ratio: 9 / 16;
    border-radius: 8px;
    overflow: hidden;
    text-decoration: none;
    color: #fff;
    background: #2c3e50;
    box-shadow: 0 2px 6px rgba(0,0,0,.1);
    transition: transform .15s;
    min-height: 180px;
}
.kt-story-card:hover { transform: translateY(-2px); }
.kt-story-card__img {
    position: absolute; inset: 0;
    width: 100%; height: 100%;
    object-fit: cover; display: block;
}
.kt-story-card__avatar {
    position: absolute; top: 8px; left: 8px;
    width: 32px; height: 32px;
    border-radius: 50%;
    border: 2px solid #fff;
    display: flex; align-items: center; justify-content: center;
    font-size: 14px;
    z-index: 2;
}
.kt-story-card__caption {
    position: absolute; bottom: 0; left: 0; right: 0;
    padding: 24px 10px 10px;
    background: linear-gradient(to top, rgba(0,0,0,.85) 0%, transparent 100%);
    z-index: 2;
}
.kt-story-card__caption strong {
    display: block;
    font-size: 12px;
    line-height: 1.25;
    margin-bottom: 2px;
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}
.kt-story-card__caption small { font-size: 10px; opacity: .85; }
@media (max-width: 600px) {
    .kt-stories-grid__items { grid-template-columns: repeat(3, 1fr); }
}

/* =====================================================================
   SINGLE POST — share buttons
   ===================================================================== */
.kt-share {
    margin: 32px 0 24px;
    padding: 16px 0;
    border-top: 1px solid #e8e8e8;
    border-bottom: 1px solid #e8e8e8;
}
.kt-share__label {
    display: block;
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: .08em;
    color: #555;
    margin-bottom: 10px;
}
.kt-share__buttons {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}
.kt-share__btn {
    display: inline-flex; align-items: center;
    padding: 8px 14px;
    border-radius: 4px;
    font-size: 13px;
    font-weight: 600;
    text-decoration: none;
    color: #fff !important;
    border: 0;
    cursor: pointer;
    transition: opacity .15s;
}
.kt-share__btn:hover { opacity: .85; }
.kt-share__btn--fb   { background: #1877f2; }
.kt-share__btn--tw   { background: #000; }
.kt-share__btn--wa   { background: #25d366; }
.kt-share__btn--li   { background: #0a66c2; }
.kt-share__btn--tg   { background: #229ed9; }
.kt-share__btn--copy { background: #444; }

/* =====================================================================
   SINGLE POST — Previous / Next navigation
   ===================================================================== */
.kt-prevnext {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
    margin: 24px 0 32px;
}
.kt-prevnext__item {
    display: block;
    padding: 14px 18px;
    border: 1px solid #e8e8e8;
    border-radius: 6px;
    text-decoration: none;
    color: inherit;
    background: #fff;
    transition: border-color .15s, transform .15s;
}
.kt-prevnext__item:not(.kt-prevnext__item--empty):hover {
    border-color: #c0392b;
    transform: translateY(-1px);
}
.kt-prevnext__item--empty {
    visibility: hidden;
}
.kt-prevnext__item--next { text-align: right; }
.kt-prevnext__label {
    display: block;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: .08em;
    color: #c0392b;
    font-weight: 700;
    margin-bottom: 4px;
}
.kt-prevnext__title {
    display: block;
    font-size: 14px;
    font-weight: 600;
    line-height: 1.35;
    color: #1f2328;
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}
@media (max-width: 600px) {
    .kt-prevnext { grid-template-columns: 1fr; }
    .kt-prevnext__item--next { text-align: left; }
    .kt-prevnext__item--empty { display: none; }
}
