/* K2 layouts aligned with TZ Jollyany cards */
#k2Container.tpp-k2-list,
#k2Container.tpp-k2-item {
    max-width: 100%;
}
#k2Container.tpp-k2-list .k2-page-heading,
#k2Container.tpp-k2-item h1.itemTitle,
#k2Container.tpp-k2-item h2.itemTitle {
    font-size: 28px;
    font-weight: 400;
    margin: 0 0 20px;
    color: #196575;
}
#k2Container.tpp-k2-list .k2-cat-desc {
    margin: 0 0 24px;
    line-height: 1.6;
}
#k2Container.tpp-k2-list .itemListPrimary,
#k2Container.tpp-k2-list .itemListLeading,
#k2Container.tpp-k2-list .itemListSecondary {
    display: flex;
    flex-wrap: wrap;
    margin: 0 -8px;
}
#k2Container.tpp-k2-list .itemContainer {
    width: 33.333% !important;
    float: none !important;
    padding: 8px;
    box-sizing: border-box;
}
@media (max-width: 991px) {
    #k2Container.tpp-k2-list .itemContainer { width: 50% !important; }
}
@media (max-width: 640px) {
    #k2Container.tpp-k2-list .itemContainer { width: 100% !important; }
}
.tpp-k2-card {
    background: #fff;
    border: 1px solid #eee;
    height: 100%;
    display: flex;
    flex-direction: column;
}
.tpp-k2-card .catItemImageBlock,
.tpp-k2-card .catItemImageBlock img {
    width: 100%;
    display: block;
}
.tpp-k2-card .catItemImageBlock img {
    height: 200px;
    object-fit: cover;
}
.tpp-k2-card .catItemHeader,
.tpp-k2-card .catItemBody {
    padding: 12px 14px 16px;
}
.tpp-k2-card .catItemTitle {
    font-size: 16px;
    line-height: 1.35;
    margin: 0;
    font-weight: 400;
}
.tpp-k2-card .catItemTitle a {
    color: #2a2a2a;
}
.tpp-k2-card .catItemIntroText {
    margin-top: 8px;
    font-size: 13px;
    color: #666;
}
#k2Container.tpp-k2-item .itemImageBlock img,
#k2Container.tpp-k2-item .itemImage img {
    max-width: 100%;
    height: auto;
}
#k2Container.tpp-k2-item .itemBody {
    line-height: 1.7;
}
#k2Container.tpp-k2-item .itemVideoBlock iframe {
    max-width: 100%;
    width: 100%;
    min-height: 360px;
    border: 0;
}
.k2ItemsBlock.tpp-k2-mod ul {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
}
.k2ItemsBlock.tpp-k2-mod li {
    width: 20%;
    padding: 8px;
    box-sizing: border-box;
}
@media (max-width: 991px) {
    .k2ItemsBlock.tpp-k2-mod li { width: 50%; }
}
.k2ItemsBlock.tpp-k2-mod .moduleItemImage img {
    width: 100%;
    height: 140px;
    object-fit: cover;
    display: block;
}
.k2ItemsBlock.tpp-k2-mod .moduleItemTitle {
    display: block;
    margin-top: 8px;
    font-weight: 400;
    color: #2a2a2a;
}
.k2-feed-icon, .k2FeedIcon { display: none !important; }

/* Doctors page — TZ Arum portfolio look */
#k2Container.tpp-k2-doctors .itemListPrimary,
#k2Container.tpp-k2-doctors .itemListLeading,
#k2Container.tpp-k2-doctors .itemListSecondary {
    display: flex;
    flex-wrap: wrap;
    margin: 0 -10px;
}
#k2Container.tpp-k2-doctors .itemContainer {
    float: none !important;
    width: 33.333% !important;
    padding: 0 10px;
    box-sizing: border-box;
}
#k2Container.tpp-k2-doctors .element .TzInner {
    padding: 0;
    margin: 20px 0;
    border: none;
    overflow: hidden;
    background: transparent;
}
#k2Container.tpp-k2-doctors .TzArticleMedia {
    margin-bottom: 0;
    position: relative;
    overflow: hidden;
}
#k2Container.tpp-k2-doctors .TzArticleMedia img {
    width: 100%;
    height: 320px;
    object-fit: cover;
    object-position: top center;
    display: block;
    transition: transform .45s ease;
}
#k2Container.tpp-k2-doctors .overlay-link {
    display: none !important;
}
#k2Container.tpp-k2-doctors .element .TzInner:hover .TzArticleMedia img {
    transform: scale(1.04);
}
#k2Container.tpp-k2-doctors .TzPortfolioDescription {
    padding: 1em 12px 1.1em;
    text-align: center;
    background-color: #fff;
}
#k2Container.tpp-k2-doctors .TzPortfolioTitle {
    margin: 0;
    line-height: 1.25;
    font-size: 16px;
    font-weight: 400;
}
#k2Container.tpp-k2-doctors .TzPortfolioTitle a {
    color: #196575;
    text-decoration: none !important;
}
#k2Container.tpp-k2-doctors .TzInner:hover .TzPortfolioTitle a {
    color: #3cc5de;
}

/* Homepage / sidebar team module */
.tpp-k2-doctor {
    display: block;
    border: 1px solid #E5E9EC;
    background: #fff;
    height: 100%;
    text-decoration: none !important;
    color: inherit;
    overflow: hidden;
    transition: border-color .25s ease, box-shadow .25s ease;
}
.tpp-k2-doctor:hover {
    border-color: #d4e8ed;
    box-shadow: 0 8px 22px rgba(25, 101, 117, .08);
}
.tpp-k2-doctor__photo {
    display: block;
    position: relative;
    background-color: #f4f7f8;
    overflow: hidden;
}
.tpp-k2-doctor__photo::after {
    display: none !important;
}
.tpp-k2-doctor__photo img {
    width: 100%;
    height: 320px;
    object-fit: cover;
    object-position: top center;
    display: block;
    transition: transform .45s ease;
}
.tpp-k2-doctor:hover .tpp-k2-doctor__photo img {
    opacity: 1;
    transform: scale(1.04);
}
.tpp-k2-doctor__body {
    display: block;
    padding: 16px 16px 20px;
    text-align: center;
}
.tpp-k2-doctor__name {
    display: block;
    font-family: "Roboto Condensed", "Arial Narrow", sans-serif;
    font-weight: 400;
    text-transform: none;
    font-size: 16px;
    letter-spacing: .01em;
    color: #196575;
    line-height: 1.35;
    transition: color .25s ease;
}
.tpp-k2-doctor:hover .tpp-k2-doctor__name {
    color: #3cc5de;
}
.tpp-k2-doctor__role {
    display: block;
    margin-top: 8px;
    color: #a2a7aa;
    font-size: 13px;
    line-height: 1.45;
}
.k2ItemsBlock.tpp-k2-team li {
    width: 20%;
}
.k2ItemsBlock.tpp-k2-team .tpp-k2-doctor__photo img {
    height: 220px;
}
@media (max-width: 991px) {
    #k2Container.tpp-k2-doctors .itemContainer,
    .k2ItemsBlock.tpp-k2-team li { width: 50% !important; }
}
@media (max-width: 640px) {
    #k2Container.tpp-k2-doctors .itemContainer,
    .k2ItemsBlock.tpp-k2-team li { width: 100% !important; }
}
