/* Lean Post Grid – front end. Class names match The Post Grid. */

/* Base ------------------------------------------------------------------- */
.rt-tpg-container,
.rt-tpg-container *,
.rt-tpg-container *::before,
.rt-tpg-container *::after { box-sizing: border-box; }
.rt-tpg-container { position: relative; }
.rt-tpg-container img { max-width: 100%; height: auto; object-fit: cover; }
.rt-tpg-container a { text-decoration: none; }
.rt-tpg-container a.disabled { cursor: default; }
.rt-tpg-container ul { margin: 0; }
.rt-tpg-container .tpg-icon { display: inline-block; width: 1em; height: 1em; margin-right: 5px; vertical-align: -0.125em; flex-shrink: 0; }
.entry .rt-tpg-container .entry-title::before { content: none; }

/* 12-column grid (24 = one fifth) ------------------------------------------- */
.rt-container-fluid { margin-left: auto; margin-right: auto; padding-left: 15px; padding-right: 15px; }
.rt-container-fluid::after,
.rt-row::after { content: ""; display: table; clear: both; }
.rt-row { margin-left: -15px; margin-right: -15px; }
[class*="rt-col-"] { position: relative; min-height: 1px; padding-left: 15px; padding-right: 15px; float: left; width: 100%; }

.rt-col-xs-1 { width: 8.33333333%; } .rt-col-xs-2 { width: 16.66666667%; } .rt-col-xs-3 { width: 25%; }
.rt-col-xs-4 { width: 33.33333333%; } .rt-col-xs-5 { width: 41.66666667%; } .rt-col-xs-6 { width: 50%; }
.rt-col-xs-7 { width: 58.33333333%; } .rt-col-xs-8 { width: 66.66666667%; } .rt-col-xs-9 { width: 75%; }
.rt-col-xs-10 { width: 83.33333333%; } .rt-col-xs-11 { width: 91.66666667%; } .rt-col-xs-12 { width: 100%; }
.rt-col-xs-24 { width: 20%; }

@media (min-width: 768px) {
	.rt-col-sm-1 { width: 8.33333333%; } .rt-col-sm-2 { width: 16.66666667%; } .rt-col-sm-3 { width: 25%; }
	.rt-col-sm-4 { width: 33.33333333%; } .rt-col-sm-5 { width: 41.66666667%; } .rt-col-sm-6 { width: 50%; }
	.rt-col-sm-7 { width: 58.33333333%; } .rt-col-sm-8 { width: 66.66666667%; } .rt-col-sm-9 { width: 75%; }
	.rt-col-sm-10 { width: 83.33333333%; } .rt-col-sm-11 { width: 91.66666667%; } .rt-col-sm-12 { width: 100%; }
	.rt-col-sm-24 { width: 20%; }
}
@media (min-width: 992px) {
	.rt-col-md-1 { width: 8.33333333%; } .rt-col-md-2 { width: 16.66666667%; } .rt-col-md-3 { width: 25%; }
	.rt-col-md-4 { width: 33.33333333%; } .rt-col-md-5 { width: 41.66666667%; } .rt-col-md-6 { width: 50%; }
	.rt-col-md-7 { width: 58.33333333%; } .rt-col-md-8 { width: 66.66666667%; } .rt-col-md-9 { width: 75%; }
	.rt-col-md-10 { width: 83.33333333%; } .rt-col-md-11 { width: 91.66666667%; } .rt-col-md-12 { width: 100%; }
	.rt-col-md-24 { width: 20%; }
}

/* Even rows: flex so every card in a row is the same height. */
.tpg-even { display: flex; flex-wrap: wrap; }
.tpg-even .rt-holder { display: flex; height: 100%; }
.tpg-even.layout1 .rt-holder,
.tpg-even.layout12 .rt-holder { flex-direction: column; }
@media (max-width: 767px) {
	.tpg-even .rt-holder { flex-direction: column; }
}

.tpg-shortcode-main-wrapper .even-grid-item,
.tpg-shortcode-main-wrapper .masonry-grid-item { margin-bottom: 30px; }
.rt-tpg-container .no-margin { margin: 0 !important; padding: 0 !important; }
.lpg-hidden { display: none !important; }

/* Card ----------------------------------------------------------------------- */
.tpg-shortcode-main-wrapper .rt-holder { overflow: hidden; }
.rt-tpg-container .rt-holder .rt-img-holder { position: relative; overflow: hidden; }
.rt-img-holder > a { display: block; text-align: center; }
.rt-img-responsive { display: block; max-width: 100%; height: auto; transition: transform .4s ease-in-out; }
@media (max-width: 991px) {
	.rt-img-holder > a,
	.rt-img-responsive { width: 100%; }
}

.rt-tpg-container .rt-holder .rt-detail { padding: 15px 15px 0; }
.rt-tpg-container .rt-holder .entry-title { line-height: 1.25; margin: 0 0 12px; }
.rt-holder .entry-title a { color: #000; }
.rt-tpg-container .rt-holder .tpg-excerpt { margin-bottom: 10px; }
.rt-tpg-container .rt-holder .tpg-excerpt iframe { width: 100%; max-height: 250px; }

/* Image hover effects: zoom in by default. */
.rt-tpg-container .rt-holder:hover .rt-img-holder img { transform: scale(1.1); }
.rt-tpg-container .img_zoom_out .rt-holder .rt-img-holder img { transform: scale(1.1); }
.rt-tpg-container .img_zoom_out .rt-holder:hover .rt-img-holder img,
.rt-tpg-container .img_no_effect .rt-holder:hover .rt-img-holder img { transform: none; }

/* Date, author and terms */
.post-meta-user { margin-bottom: 15px; padding: 0; font-size: 95%; line-height: 1; }
.post-meta-user,
.post-meta-user a { color: #646464; }
.post-meta-user a:hover { color: #000; }
.post-meta-user > span { display: inline-flex; flex-wrap: wrap; align-items: center; margin-bottom: 3px; padding-right: 10px; }
.post-meta-user span.rt-separator { display: inline-block; padding-right: 5px; }
.categories-links { display: inline-block; line-height: 1.3; }

.post-meta-user.dot > span + span::before,
.post-meta-user.s_slash > span + span::before,
.post-meta-user.d_slash > span + span::before,
.post-meta-user.hypen > span + span::before,
.post-meta-user.v_pipe > span + span::before { margin-right: 10px; }
.post-meta-user.dot > span + span::before { content: "."; }
.post-meta-user.s_slash > span + span::before { content: "/"; }
.post-meta-user.d_slash > span + span::before { content: "//"; }
.post-meta-user.hypen > span + span::before { content: "-"; }
.post-meta-user.v_pipe > span + span::before { content: "|"; }

/* Read more */
.rt-tpg-container .rt-holder .rt-detail .post-meta { overflow: hidden; line-height: 25px; }
.rt-tpg-container .rt-holder .post-meta.right { text-align: right; }
.rt-tpg-container .rt-holder .post-meta.center { text-align: center; }
.rt-tpg-container .rt-holder .read-more a {
	display: inline-flex; align-items: center; padding: 6px 20px;
	font-size: 15px; line-height: 1.8; color: #1a1a1a;
	background-color: rgba(255,255,255,.7); border: 1px solid #e5e5e5;
	transition: color .2s, border-color .2s, background-color .2s;
}
.rt-tpg-container .rt-holder .read-more a:hover { background-color: #fff; border-color: var(--tpg-primary-color, #0d6efd); color: var(--tpg-primary-color, #0d6efd); }

/* Grid 1 + filterable grid ---------------------------------------------------- */
.tpg-shortcode-main-wrapper .layout1 .rt-holder,
.tpg-shortcode-main-wrapper .isotope1 .rt-holder { box-shadow: 0 0 2px 0 rgba(0,0,0,.3); }
.tpg-shortcode-main-wrapper .layout1 .rt-holder .rt-detail,
.tpg-shortcode-main-wrapper .isotope1 .rt-holder .rt-detail { padding: 15px; background: #fff; }
.tpg-shortcode-main-wrapper .layout1 .rt-holder .entry-title,
.tpg-shortcode-main-wrapper .isotope1 .rt-holder .entry-title { margin: 0 0 18px; font-size: 26px; font-weight: 400; line-height: 1.25; }
.tpg-shortcode-main-wrapper .layout1 .rt-detail .tpg-excerpt,
.tpg-shortcode-main-wrapper .isotope1 .rt-detail .tpg-excerpt { margin-bottom: 20px; }
.tpg-shortcode-main-wrapper .layout1 .rt-holder .rt-img-holder img,
.tpg-shortcode-main-wrapper .isotope1 .rt-holder .rt-img-holder img { transition: transform 1.1s ease; }
.tpg-shortcode-main-wrapper .layout1 .rt-holder .read-more a,
.tpg-shortcode-main-wrapper .isotope1 .rt-holder .read-more a { display: inline-block; padding: 8px 20px; border-color: rgba(204,204,204,.4); }

/* Grid 2 --------------------------------------------------------------------- */
.tpg-shortcode-main-wrapper .layout12 .rt-holder { background: #fff; box-shadow: 0 1px 2px 0 rgba(0,0,0,.22); }
.tpg-shortcode-main-wrapper .layout12 .rt-holder:hover img { transform: scale(1.05); transition: transform .25s ease-in-out; }
.tpg-shortcode-main-wrapper .layout12 .rt-holder .rt-detail { display: inline-block; flex-grow: 1; width: 100%; padding: 25px; background: #fff; transition: background .3s ease-out, color .3s ease-out; }
.tpg-shortcode-main-wrapper .layout12 .rt-holder .entry-title { margin: 15px 0; font-size: 22px; font-weight: 500; line-height: 1.25; }
.tpg-shortcode-main-wrapper .layout12 .rt-holder .read-more { display: block; text-align: right; }
.tpg-shortcode-main-wrapper .layout12 .rt-holder:hover .rt-detail { background: #0850d0; color: #fff; }
.tpg-shortcode-main-wrapper .layout12 .rt-holder:hover .rt-detail a,
.tpg-shortcode-main-wrapper .layout12 .rt-holder:hover .rt-detail .post-meta-user { color: #fff !important; }

/* Lists ---------------------------------------------------------------------- */
.rt-tpg-container .layout2 .rt-holder .rt-detail,
.rt-tpg-container .layout3 .rt-holder .rt-detail { padding: 0; }
.tpg-shortcode-main-wrapper .layout2 .rt-holder .entry-title,
.tpg-shortcode-main-wrapper .layout3 .rt-holder .entry-title { margin: 0 0 15px; font-size: 26px; font-weight: 400; line-height: 1.25; }
.tpg-shortcode-main-wrapper .layout2 .rt-detail .tpg-excerpt,
.tpg-shortcode-main-wrapper .layout3 .rt-holder .rt-detail p { margin-bottom: 20px; }
.tpg-shortcode-main-wrapper .layout2 .rt-holder .rt-img-holder img { transition: transform 1.1s ease; }
.tpg-shortcode-main-wrapper .layout2 .rt-holder .read-more,
.tpg-shortcode-main-wrapper .layout3 .rt-holder .read-more { display: inline-block; width: 100%; }
.tpg-shortcode-main-wrapper .layout2 .rt-holder .read-more a { border-radius: 5px; }
.tpg-shortcode-main-wrapper .layout2 .rt-holder .read-more.right,
.tpg-shortcode-main-wrapper .layout3 .rt-holder .read-more.right { text-align: right; }
.tpg-shortcode-main-wrapper .layout2 .rt-holder .read-more.center,
.tpg-shortcode-main-wrapper .layout3 .rt-holder .read-more.center { text-align: center; }
.tpg-shortcode-main-wrapper .layout3 .rt-holder .rt-img-holder,
.tpg-shortcode-main-wrapper .layout3 .rt-holder .rt-img-holder > a.rounded img { border-radius: 50%; overflow: hidden; }
.layout3 .rt-img-responsive { display: inline-block; aspect-ratio: 1 / 1; object-fit: cover; }
@media (max-width: 767px) {
	.tpg-shortcode-main-wrapper .layout2 .rt-holder .rt-detail,
	.tpg-shortcode-main-wrapper .layout3 .rt-holder .rt-detail { padding: 15px 0; }
}

/* Shared by the hover layouts */
.tpg-shortcode-main-wrapper .rt-holder .overlay,
.tpg-shortcode-main-wrapper .rt-holder > a[data-id] { width: 100%; }
.tpg-shortcode-main-wrapper .layout5 .overlay .entry-title,
.tpg-shortcode-main-wrapper .layout6 .overlay .entry-title,
.tpg-shortcode-main-wrapper .layout7 .overlay .entry-title { color: #fff; font-size: 22px; font-weight: 400; }
.tpg-shortcode-main-wrapper .layout5 .overlay .entry-title a,
.tpg-shortcode-main-wrapper .layout6 .overlay .entry-title a,
.tpg-shortcode-main-wrapper .layout7 .overlay .entry-title a,
.tpg-shortcode-main-wrapper .layout5 .overlay .post-meta-user,
.tpg-shortcode-main-wrapper .layout5 .overlay .post-meta-user a,
.tpg-shortcode-main-wrapper .layout6 .overlay .post-meta-user,
.tpg-shortcode-main-wrapper .layout6 .overlay .post-meta-user a,
.tpg-shortcode-main-wrapper .layout7 .post-meta-user a { color: #fff; }
.tpg-shortcode-main-wrapper .layout5 .overlay .read-more a,
.tpg-shortcode-main-wrapper .layout6 .overlay .read-more a,
.tpg-shortcode-main-wrapper .layout7 .read-more a { padding: 8px 15px; border: 1px solid rgba(255,255,255,.4); }

/* Grid hover 1 ---------------------------------------------------------------- */
.tpg-shortcode-main-wrapper .layout5 .rt-holder { position: relative; display: flex; min-height: 250px; overflow: hidden; }
.tpg-shortcode-main-wrapper .layout5 .rt-holder .rt-img-responsive { height: 100%; object-fit: cover; }
.tpg-shortcode-main-wrapper .layout5 .rt-holder .overlay {
	position: absolute; left: 0; bottom: 0; z-index: 1;
	display: flex; flex-direction: column; justify-content: center;
	height: 25%; min-height: 150px; padding: 20px;
	background: rgba(235,0,0,.8); transition: height 1s ease;
}
.tpg-shortcode-main-wrapper .layout5 .rt-holder:hover .overlay { height: 100%; }
.tpg-shortcode-main-wrapper .layout5 .overlay .entry-title { margin: 0 0 10px; line-height: 1.3; }
.tpg-shortcode-main-wrapper .layout5 .overlay .post-meta-user { display: block; }
.tpg-shortcode-main-wrapper .layout5 .overlay .rt-detail { max-height: 0; padding: 0; overflow: hidden; color: #fff; opacity: 0; visibility: hidden; transition: all .6s; }
.tpg-shortcode-main-wrapper .layout5 .rt-holder:hover .overlay .rt-detail { max-height: 300px; opacity: 1; visibility: visible; }

/* Grid hover 2 ---------------------------------------------------------------- */
.tpg-shortcode-main-wrapper .layout6 .rt-holder { position: relative; }
.tpg-shortcode-main-wrapper .layout6 .rt-holder .overlay {
	position: absolute; z-index: 9; height: 100%; padding: 15px;
	display: flex; flex-direction: column; align-items: center; justify-content: center;
	text-align: center; background: rgba(0,0,0,.7); opacity: 0; transition: opacity .3s ease-out;
}
.tpg-shortcode-main-wrapper .layout6 .rt-holder:hover .overlay,
.tpg-shortcode-main-wrapper .layout6 .rt-holder:focus-within .overlay { opacity: 1; }
.tpg-shortcode-main-wrapper .layout6 .overlay .entry-title { margin: 0 0 18px; padding-top: 5%; line-height: 1.25; }
.tpg-shortcode-main-wrapper .layout6 .overlay .line { width: 0; height: 2px; min-height: 2px; margin: 12px auto; background-color: #fff; transition: width .5s ease-out; }
.tpg-shortcode-main-wrapper .layout6 .overlay:hover .line { width: 40%; }
.tpg-shortcode-main-wrapper .layout6 .overlay .tpg-excerpt,
.tpg-shortcode-main-wrapper .layout6 .overlay .post-meta { color: #fff; text-align: center; overflow: hidden; }

/* Grid hover 3 ---------------------------------------------------------------- */
.tpg-shortcode-main-wrapper .layout7 .rt-holder { position: relative; }
.tpg-shortcode-main-wrapper .layout7 .rt-holder img { opacity: .9; transition: opacity .35s; }
.tpg-shortcode-main-wrapper .layout7 .rt-holder .overlay {
	position: absolute; top: 0; left: 0; height: 100%; padding: 0 12px;
	display: flex; flex-direction: column; align-items: center; justify-content: center;
	background: rgba(0,0,0,.3); transition: background .35s;
}
.tpg-shortcode-main-wrapper .layout7 .rt-holder .overlay:hover { background: rgba(0,0,0,.5); }
.tpg-shortcode-main-wrapper .layout7 .rt-holder .overlay::before {
	content: ""; position: absolute; top: 20px; right: 20px; bottom: 20px; left: 20px;
	border: 2px solid #fff; box-shadow: 0 0 0 30px rgba(255,255,255,.2);
	opacity: 0; transform: scale3d(1.4,1.4,1); transition: opacity .35s, transform .35s; pointer-events: none;
}
.tpg-shortcode-main-wrapper .layout7 .rt-holder:hover .overlay::before { opacity: 1; transform: scale3d(1,1,1); }
.tpg-shortcode-main-wrapper .layout7 .overlay .entry-title { margin: 0 !important; text-align: center; line-height: 1.25; transition: transform .35s; }
.tpg-shortcode-main-wrapper .layout7 .rt-holder:hover .entry-title { transform: scale(.9); }
.tpg-shortcode-main-wrapper .layout7 .rt-holder .overlay > :not(.entry-title) { max-height: 0; overflow: hidden; opacity: 0; color: #fff; text-align: center; transition: max-height .6s, opacity .6s; }
.tpg-shortcode-main-wrapper .layout7 .rt-holder:hover .overlay > :not(.entry-title),
.tpg-shortcode-main-wrapper .layout7 .rt-holder:focus-within .overlay > :not(.entry-title) { max-height: 300px; opacity: 1; }
.tpg-shortcode-main-wrapper .layout7 .post-meta-user p { margin-bottom: 0; }

/* Grid heading --------------------------------------------------------------- */
.tpg-widget-heading-wrapper { position: relative; display: flex; margin-bottom: 30px; }
.tpg-widget-heading-wrapper .tpg-widget-heading { position: relative; margin: 0 0 -1px; padding: 0 15px 0 0; font-size: 28px; line-height: 1.2; }
.tpg-widget-heading-wrapper.center { justify-content: center; }
.tpg-widget-heading-wrapper.center .tpg-widget-heading { margin: 0; padding: 0; }
.tpg-widget-heading-wrapper.right { flex-direction: row-reverse; }
.tpg-widget-heading-wrapper.right .tpg-widget-heading { padding: 0 0 0 15px; }
.tpg-widget-heading-wrapper .tpg-widget-heading-line { display: none; }
.tpg-widget-heading-wrapper.heading-style1 .tpg-widget-heading-line { display: block; flex-grow: 1; align-self: center; height: 4px; margin-left: 15px; border: solid #e5e5e5; border-width: 1px 0; }
.tpg-widget-heading-wrapper.heading-style1 .tpg-widget-heading-line.line-left { display: none; }
.tpg-widget-heading-wrapper.heading-style1.center .tpg-widget-heading-line.line-left { display: block; margin: 0 15px 0 0; }
.tpg-widget-heading-wrapper.right .tpg-widget-heading-line { margin: 0 15px 0 0; }
.tpg-widget-heading-wrapper.heading-style1 .tpg-widget-heading::before {
	content: ""; position: absolute; top: 50%; right: -7.5px; width: 8px; height: 8px; margin: -4px 7px 0 0;
	border-radius: 50%; background-color: var(--tpg-primary-color, #0d6efd);
}
.tpg-widget-heading-wrapper.heading-style1.center .tpg-widget-heading::before { display: none; }
.tpg-widget-heading-wrapper.right .tpg-widget-heading::before { left: 0; right: auto; }
.tpg-widget-heading-wrapper.heading-style2 .tpg-widget-heading,
.tpg-widget-heading-wrapper.heading-style3 .tpg-widget-heading { padding: 5px 15px; color: #fff; line-height: 1.4; background-color: var(--tpg-primary-color, #0d6efd); }
.tpg-widget-heading-wrapper.heading-style2 .tpg-widget-heading a,
.tpg-widget-heading-wrapper.heading-style3 .tpg-widget-heading a { color: inherit; }
.tpg-widget-heading-wrapper.heading-style2,
.tpg-widget-heading-wrapper.heading-style3 { border-bottom: 1px solid var(--tpg-primary-color, #0d6efd); }
.tpg-widget-heading-wrapper.heading-style2 .tpg-widget-heading::after {
	content: ""; position: absolute; top: 0; right: -11px;
	border-style: solid; border-width: 12px 12px 0 0;
	border-color: var(--tpg-primary-color, #0d6efd) transparent transparent transparent;
}
.tpg-widget-heading-wrapper.heading-style2.right .tpg-widget-heading::after { left: -11px; right: auto; border-width: 12px 0 0 12px; }
.tpg-widget-heading-wrapper.heading-style2.center .tpg-widget-heading::after { content: none; }

/* Filter buttons ---------------------------------------------------------------- */
.rt-tpg-container .tpg-iso-filter { margin: 15px 0 45px; padding: 0 15px; text-align: center; }
.rt-tpg-container .rt-tpg-isotope-buttons button {
	margin: 4px; padding: 8px 20px; border: none; border-radius: 3px;
	font-size: 15px; font-weight: 400; line-height: 1.8; text-transform: none; color: #fff;
	background: #8e8e8e; box-shadow: none; text-shadow: none; cursor: pointer;
}
.rt-tpg-container .rt-tpg-isotope-buttons button.selected { background: var(--tpg-primary-color, #0d6efd); }
.rt-tpg-container .rt-tpg-isotope-buttons button:focus-visible { outline: 2px solid currentColor; outline-offset: 2px; }
.rt-tpg-isotope { position: relative; }
.isotope-term-no-post { min-height: 30px; padding: 0 15px; }
.isotope-term-no-post p { display: none; margin-bottom: 0; }

/* Pagination ------------------------------------------------------------------ */
.rt-tpg-container .rt-pagination-wrap { display: inline-block; width: 100%; margin-top: 10px; text-align: center; }
.rt-pagination { margin: 30px 0; text-align: center; }
.rt-pagination .pagination-list { display: inline-block; padding-left: 0; background: transparent; border-top: 0; }
.rt-pagination .pagination-list > li { display: inline-block; margin: 2px; list-style: none; }
.rt-pagination .pagination-list > li::before,
.rt-pagination .pagination-list > li::after { content: none; }
.rt-pagination .pagination-list > li > a,
.rt-pagination .pagination-list > li > span {
	position: relative; display: block; min-width: 45px; min-height: 45px; margin-left: -1px;
	line-height: 45px; text-align: center; color: #212121;
	background-color: #fff; border: 1px solid #ddd; border-radius: 3px; box-shadow: none;
	box-sizing: content-box; transition: .3s ease-in-out;
}
.rt-pagination .pagination-list > li > a:hover,
.rt-pagination .pagination-list > li > a:focus,
.rt-pagination .pagination-list > .active > span {
	z-index: 2; color: #fff;
	background-color: var(--tpg-primary-color, #0d6efd); border-color: var(--tpg-primary-color, #0d6efd);
}
.rt-pagination .pagination-list > .active > span { cursor: default; }

@media (prefers-reduced-motion: reduce) {
	.rt-tpg-container *,
	.rt-tpg-container *::before { transition: none !important; }
}
