/*
 Theme Name:   GeneratePress Child
 Theme URI:    https://generatepress.com
 Description:  Default GeneratePress child theme
 Author:       Tom Usborne
 Author URI:   https://tomusborne.com
 Template:     generatepress
 Version:      0.1
*/

/* Container */
.dh-cat-wrapper { 
	width: 100%; 
	margin: 0 auto; 
	padding: 20px 20px; 
	box-sizing: border-box; 
}


/* Row: arrows + list */
.dh-cat-row { 
	display:flex; 
	align-items:center; 
	gap:12px; 
	margin-bottom:20px; 
}

/* arrow buttons */
.dh-cat-scroll-btn {
    flex: 0 0 auto;
	font-size: 30px !important;
	padding: 10px 10px;
    width:0px; height:0px;
    border-radius:5px;
    background: var(--background);
	color: var(--text);
    cursor:pointer;
    display:flex; align-items:center; justify-content:center;
}

.dh-cat-scroll-btn:hover {
	background: var(--background)!important;
	color: var(--text)!important;
}

.dh-cat-scroll-btn:focus {
	background: var(--background)!important;
	color: var(--text)!important;
}

/* category list horizontal */
.dh-cat-list {
    display:flex;
    gap:10px;
    overflow-x:auto;
    -webkit-overflow-scrolling: touch;
    flex:1 1 auto;
    padding:6px;
    scroll-behavior: smooth;
}

/* hide scrollbar visually */
.dh-cat-list::-webkit-scrollbar { display:none; }
.dh-cat-list { scrollbar-width:none; -ms-overflow-style:none; }

/* category buttons */
.dh-cat-btn {
    flex:0 0 auto;
    padding: 8px 12px;
    border-radius:5px;
    color: var(--border-color); 
	background: var(--background);
	border:1px solid var(--border-color);
    font-weight:400;
    white-space:nowrap;
    transition: transform .12s ease, box-shadow .12s ease;
}

/* remove blue focus ring and outline */
.dh-cat-btn:focus { 
	outline:none !important;
	box-shadow:none !important;
}
/* active */
.dh-cat-btn.active {
	color: var(--text-1)!important;
	background: var(--background)!important;
	border:1px solid var(--text-1)!important;
	box-shadow: none!important;
}
/* hover */
.dh-cat-btn:hover { 
	transform: translateY(-3px); 
	box-shadow: 0 8px 18px rgba(0,0,0,0.04);
	color: var(--text-1);
	background: var(--background);
	border:1px solid var(--text-1);
}

/* Posts grid */
.dh-post-results { margin-top:6px; }
.dh-post-grid {
    display:grid;
    gap:20px; /* important: gap between cards */
}

/* responsive columns */
@media (min-width: 992px) { .dh-post-grid { grid-template-columns: repeat(3,1fr); } }
@media (min-width: 600px) and (max-width: 991px) { .dh-post-grid { grid-template-columns: repeat(2,1fr); } }
@media (max-width: 599px) { .dh-post-grid { grid-template-columns: 1fr; } }

/* post card */
.dh-post-item {
    background:#fff; 
	border-radius:7px; 
	overflow:hidden;
    border:1px solid rgba(0,0,0,0.04);
    transition: transform .16s ease, 
	box-shadow .16s ease;
}
.dh-post-item:hover { transform: translateY(-6px); box-shadow: 0 18px 40px rgba(12,12,12,0.06); }

/* link */
.dh-post-link { display:block; color:inherit; text-decoration:none; }

/* thumb */
.dh-post-thumb { width:100%; aspect-ratio:16/9; overflow:hidden; display:flex; align-items:center; justify-content:center; background:#efefef; }
.dh-post-thumb img { width:100%; height:100%; object-fit:cover; display:block; }

/* no-thumb placeholder */
.dh-no-thumb { padding:28px 0; color:#666; text-align:center; }

/* body */
.dh-post-body { padding:12px 14px 16px; }
.dh-post-title { 
	margin:0 0 10px; 
	font-size:18px;
	color: var(--text-1);
	line-height:1.2; }
.dh-post-meta { 
	display:flex; 
	justify-content:space-between; 
	gap:8px; 
	font-size:13px; color:#666; }

/* pagination */
.dh-pagination { 
	margin-top:20px; 
	text-align:center; 
	display:flex; 
	justify-content:center; 
	gap:8px; flex-wrap:wrap;
}
.dh-pg-btn { 
	padding:8px 15px; 
	border-radius:3px; 
	color: var(--text-1);
	border-color: 1px var(--border-color);
	background: var(--background); 
	font-weight: 400; 
}
.dh-pg-btn:hover { 
	transform: translateY(-2px);
	background: var(--color-background-hover);
	color: var(--background);
}
.dh-pg-active { 
	background: var(--color-background-hover);
	color: var(--background);
}

/* loading state */
.dh-loading .dh-loading-txt { padding:40px; text-align:center; color:#666; }

/* small screens */
@media (max-width:480px) {
    .dh-cat-scroll-btn { 
		width: 5px; 
		height: 5px; 
}
    .dh-cat-btn { 
		padding:6px 10px; 
		font-size:14px;
}
    .dh-post-body { 
		padding:10px 
		12px 12px; 
}
    .dh-post-title { 
		font-size:16px; 
}
}

/* accessibility focus for pagination (but subtle) */
.dh-pg-btn:focus { outline:3px solid rgba(3,169,244,0.14); outline-offset:3px; }

/*END*/ /*END*/ /*END*/ /*END*/ /*END*/ /*END*/ /*END*/

/*END*/ /*END*/ /*END*/ /*END*/ /*END*/ /*END*/ /*END*/

.main-navigation {
    box-shadow: rgb(0 0 0 / .16) 0 1px 4px;
}


.inb-home-heading:before {
    border-top: 1px solid var(--border-color);
    content: "";
    margin: 0 auto;
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    z-index: -1;
}

/*Social Share*/
.wpjankari-social-wrapper {
    margin: 20px 5px 20px 5px;
    font-size: 0;
    text-align: center;
	display: flex;
    flex-wrap: wrap;
}
.wpjankari-social-sharing {
	padding: 8px;
	margin: 4px;
	border-radius: 3px;
    flex: 1;
    transition: background-color 0.3s, transform 0.3s, color 0.3s;
}
.wpjankari-social-sharing:hover {
	transform: translateY(-3px);
	border: none;
	box-shadow: rgba(0, 0, 0, 0.1) 0px 20px 25px -5px, rgba(0, 0, 0, 0.04) 0px 10px 10px -5px;
}
@media only screen and (max-width: 600px) {
    .wpjankari-social-sharing {
		display: inline-block;
    }
}
.wpjankari-social-sharing svg {
    position: relative;
    top: 0.15em;
    display: inline-block;
}
.wpjankari-social-facebook {
    fill: #fff;
    background-color: rgba(59, 89, 152, 1);
}
.wpjankari-social-twitter {
    fill: #fff;
    background-color: rgba(0, 0, 0);
}
.wpjankari-social-whatsapp {
    fill: #fff;
    background-color: rgba(37, 211, 102, 1);
}
.wpjankari-social-telegram {
    fill: #fff;
    background-color: rgb(2, 126, 189);
}
.wpjankari-social-more {
    fill: #fff;
    background-color: rgba(0, 0, 0);
}
/*sticky footer menu*/
@media only screen and (min-width: 960px) {
.sticky-footer-menu{display:none!important;}
}
.sticky-footer-menu {
	position: fixed;
	height: 60px;
	width: 100%;
	bottom: 0;
	box-shadow: rgba(0, 0, 0, 0.35) 0px 5px 15px;
	z-index: 23235;
}

/* Sticky widgets */ 
.auto-width.gb-query-loop-wrapper {
    flex: 1;
}
@media (min-width: 768px) {
.sticky-container > .gb-inside-container,.sticky-container {
    position: sticky;
    top: 100px;
}
#right-sidebar .inside-right-sidebar {
    height: 100%;
}
}
select#wp-block-categories-1 {
    width: 100%;
}

.mobile-search {
	border-bottom: 1px solid var(--border-color)!important;
	padding-bottom: 5px;
}
#wp-block-search__input-1 {
	border: 0px;
	padding: 0px!important;
}
.mobile-search button{
	background-color: var(--background)!important;
    color: var(--text-1)!important;
	padding: 0px!important;
}






/*Post Headline*/
.posttemplate h2 {
	background-color: #E3ECFA;
  border-left: 8px solid var(--color-background);
  padding: 10px 5px 10px 16px;
}

.posttemplate h3 {
	background-color: #E3ECFA;
  border-left: 8px solid var(--color-background);
  padding: 10px 5px 10px 16px;
}

/* === Homepage Only Styles === */
.home input[type="search"],
.home .wp-block-search__input {
    border-radius: 25px;
    border: 1px solid #ccc;
    padding: 8px 15px;
    outline: none;
    transition: all 0.3s ease;
}

/* Focus effect */
.home input[type="search"]:focus,
.home .wp-block-search__input:focus {
    border-color: #0D4EA9;
    box-shadow: 0 0 5px rgba(13, 78, 169, 0.3);
}

/* Search button */
.home .wp-block-search__button,
.home input[type="submit"] {
    border-radius: 5px;
    background-color: #0D4EA9; /* Button color */
    color: #fff;
    padding: 8px 15px;
    border: none;
    cursor: pointer;
    transition: background-color 0.3s ease;
}

/* Hover effect */
.home .wp-block-search__button:hover,
.home input[type="submit"]:hover {
    background-color: #093E87; /* Slightly darker shade for hover */
}

/* Contact form wrapper */
.home .contact-form-wrapper {
    padding: 10px;
    margin-top: -50px;
    background: #fff;
    box-shadow: rgba(100, 100, 111, 0.2) 0px 7px 29px 0px;
    border-radius: 5px;
    margin-bottom: 16px;
}

.ad-slot{
  min-height:280px;
  margin:15px 0;
}
@media (min-width:768px){
  .ad-slot{
    min-height:320px;
  }
}