/*
Theme Name: twentytwentyfive-child
Theme URI: 
Author: Ghafar
Author URI: 
Description: Child theme for Twenty Twenty
Requires at least: 6.9
Tested up to: 6.9
Requires PHP: 5.7
Version: 
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Template: twentytwentyfive
Text Domain: twentytwentyfive-child
Tags: 
*/


* {
    box-sizing: border-box;
}

:where(.wp-site-blocks :focus) {
    outline-width: 0px;
    outline-style: none !important;
}


.text-deco-unset a , 
.text-deco-unset{
	text-decoration:unset;
}

.font-weight-regular{
	font-weight:400;
}


.width__100{
	width:100%;
}

.img-height-100{
	height:100%;
	object-fit:cover;
}

.img-height-100 img{
	min-height:100%;
}
.overflow-hidden{
	overflow:hidden;
}



@media(max-width:767px){
	.flex-col-reverse {
    flex-direction: column-reverse !important;
}
	
	.col-mob-padding{
	padding-left:5vw !important;
	padding-right:5vw !important;
}

}
/* ==========================================================================
 WPML CSS CODE
   ========================================================================== */
.wpml-cust-switcher .wpml-ls  ul{
      display: flex;
      list-style: none;
      padding: 4px;
      margin: 0;
      border: 1px solid #d1d5dc;
      border-radius: 6px;
      overflow: hidden;
      background-color: white;
	    gap:6px;
	   min-width:110px;
    }

.wpml-cust-switcher .wpml-ls-item {
      margin: 0;
    }

.wpml-cust-switcher .wpml-ls-statics-shortcode_actions.wpml-ls {
padding:0px;
}
.wpml-cust-switcher .wpml-ls-link {
      display: block;
      padding: 4px 12px;
      text-decoration: none;
      color: #364153;
      transition: background-color 150ms, color 150ms;
      cursor: pointer;
	    
    }

  .wpml-cust-switcher .wpml-ls-link:hover {
      background-color: #f6f3f4;
    }

.wpml-cust-switcher  br{
	display:none;
}

.wpml-cust-switcher .wpml-ls-current-language .wpml-ls-link {
      background-color: #f57c00;
      color: white;
 
    }

.wpml-cust-switcher  .wpml-ls-link {
    border-radius:4px;
    }





/* ==========================================================================
 BUTTON CSS CODE
   ========================================================================== */
.wp-block-button__link.wp-element-button {
    transition: background-color 0.3s ease, color 0.3s ease;
}
.wp-block-button__link.wp-element-button:hover{
	background-color:var(--wp--preset--color--custom-dark-black);
	color:#fff;
}




/* ==========================================================================
   Global Header Styles
   ========================================================================== */




header.wp-block-template-part .header-top-bar {
  position: static !important;
}

header.wp-block-template-part .global-header {
  position: relative;
  z-index: 10;
  width: 100%;
}


.global-header-spacer {
  height: 0;
}


header.wp-block-template-part .global-header.is-stuck {
  position: fixed !important;
  left: 0;
  right: 0;
  top: var(--wp-admin--admin-bar--height, 0px); /* handles WP admin bar */
  z-index: 99998 !important;
}


/* Mobile */
.al-offcanvas{
    position:fixed;
    top:0; left:0;
    height:100vh;
    width:320px;
    transform:translateX(-100%);
    transition:transform .3s ease;
    z-index:9999;
    background:#fff;
  }
  .al-menu-open .al-offcanvas{ transform:translateX(0); }


  .al-overlay{
    position:fixed;
    inset:0;
    background:rgba(0,0,0,.4);
    opacity:0;
    pointer-events:none;
    transition:opacity .25s ease;
    z-index:9998;
  }
  .al-menu-open .al-overlay{
    opacity:1;
    pointer-events:auto;
  }


  .al-burger{
    width:44px;
    height:44px;
    display:inline-flex;
    flex-direction:column;
    justify-content:center;
    gap:6px;
    padding:10px;
    border:0;
    background:transparent;
    cursor:pointer;
  }
  .al-burger__bar{
    height:2px;
    width:100%;
    background:currentColor;
    border-radius:2px;
    transition:transform .25s ease, opacity .25s ease;
  }

  .al-menu-open .al-burger__bar:nth-child(1){ transform:translateY(8px) rotate(45deg); }
  .al-menu-open .al-burger__bar:nth-child(2){ opacity:0; }
  .al-menu-open .al-burger__bar:nth-child(3){ transform:translateY(-8px) rotate(-45deg); }

  .al-close{
    width:44px;
    height:44px;
    border:0;
    background:transparent;
    cursor:pointer;
	margin-top:0px !important;
  }
  .al-close:before,
  .al-close:after{
    content:"";
    position:absolute;
    top:50%;
    left:50%;
    width:22px;
    height:2px;
    background:currentColor;
    border-radius:2px;
    transform-origin:center;
  }
  .al-close:before{ transform:translate(-50%,-50%) rotate(45deg); }
  .al-close:after { transform:translate(-50%,-50%) rotate(-45deg); }







/* ==========================================================================
   Forms Styles
   ========================================================================== */
.forminator-ui#forminator-module-881.forminator-design--default .forminator-input {
 


    min-height: 52px;
    padding: 5px 15px;
}




/* ==========================================================================
   BLOG PAGES ARCHIVES CSS
   ========================================================================== */

/* Loop Grid Template */
.post-card {
	justify-content:space-between !important;
}

.post-card .wp-block-read-more {
    border-radius: 9px;
    padding: 14px 28px;
    width: 100%;

    background-color: var(--wp--preset--color--custom-primary);
    color: var(--wp--preset--color--custom-white);

    font-size: var(--wp--preset--font-size--small);
    font-weight: 500;
    font-style: normal;
    letter-spacing: 0.2px;
    line-height: inherit;
    text-transform: uppercase;

    text-align: center;
}

.post-card .wp-block-read-more:hover {
    background-color: var(--wp--preset--color--custom-dark-black);
    color: #fff;
}



/* ==========================================================================
   BLOG PAGE SINGLE CSS
   ========================================================================== */



/* Related Blog Posts Carousel */
.rpc-carousel .owl-stage { display: flex; }
		.rpc-carousel .owl-item { display: flex; flex: 1 0 auto; }
		
		.rpc-card {
			display: flex;
			flex-direction: column;
			border: 0;
			border-radius: 14px;
			background-color: #f57a002b;
			min-height: 100%;
			padding: 15px;
			width: 100%; /* Ensure card fills slide */
			box-sizing: border-box;
		}
		
		/* Force removal of P tags via CSS as last resort */
		.rpc-card p:empty, .rpc-body p:empty { display: none; }

		.rpc-thumb {
			display: block;
			width: 100%;
			background: #f4f4f4;
			position: relative;
			margin-bottom: 0; /* Fix alignment */
		}
		.rpc-thumb img {
			border-radius: 7px;
			width: 100%;
			height: 100%;
			object-fit: cover;
			display: block; /* Remove inline gap */
		}

		.rpc-body {
			padding: 20px 0 0 0; /* Adjusted padding */
			flex-grow: 1;
			display: flex;
			flex-direction: column;
		}

		.rpc-meta {
			font-size: 11px;
			text-transform: uppercase;
			letter-spacing: 0.5px;
			color: #888;
			margin: 0 0 5px;
		}

		.rpc-title {
			margin: 0 0 10px;
			font-size: 16px;
			line-height: 1.3;
			font-weight: 700;
		}
		.rpc-title a {
			text-decoration: none;
			font-family: var(--wp--preset--font-family--inter-18-pt, sans-serif);
			font-size: clamp(15.747px, 0.984rem + ((1vw - 3.2px) * 0.897), 20px);
			color: var(--wp--preset--color--custom-dark-black, #000);
		}

		.rpc-excerpt {
			margin: 0 0 15px;
			font-size: 13px;
			opacity: 0.9;
		}

		.rpc-readmore {
			display: block;
			width: 100%;
			margin-top: auto;
			padding: 14px 28px;
			border-radius: 9px;
			background-color: var(--wp--preset--color--custom-primary, #007cba);
			color: var(--wp--preset--color--custom-white, #fff) !important;
			text-decoration: none;
			font-size: var(--wp--preset--font-size--small, 13px);
			font-weight: 500;
			text-transform: uppercase;
			text-align: center;
			transition: background 0.2s ease;
			box-sizing: border-box;
		}

		.rpc-readmore:hover {
			background-color: var(--wp--preset--color--custom-dark-black, #333);
			color: #fff;
		}

		/* Navigation */
		.rpc-carousel .owl-nav button.owl-prev,
		.rpc-carousel .owl-nav button.owl-next {
			position: absolute;
			top: 50%;
			transform: translateY(-50%);
			width: 40px;
			height: 40px;
			border-radius: 50%;
			background: #fff !important;
			box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
			display: flex !important;
			align-items: center;
			justify-content: center;
			font-size: 24px !important;
			color: #333 !important;
			margin: 0;
			z-index: 10;
		}
		.rpc-carousel .owl-nav button.owl-prev { left: -15px; }
		.rpc-carousel .owl-nav button.owl-next { right: -15px; }
		.rpc-carousel .owl-dots { margin-top: 15px !important; }



/* ==========================================================================
    TABLE OF CONTENT
   ========================================================================== */
 .nm-toc {
        background: #f8f9fa;
        border: 1px solid #e9ecef;
        border-radius: 8px;
        margin: 20px 0;
        overflow: hidden;
        width: 100%;
        box-shadow: 0 2px 5px rgba(0,0,0,0.02);
    }
    .nm-toc__header {
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding: 15px 20px;
        cursor: pointer;
        background: #f1f3f5;
        user-select: none;
        transition: background 0.2s;
    }
    .nm-toc__header:hover {
        background: #e9ecef;
    }
    .nm-toc__title {
        font-weight: 700;
        font-size: 18px;
        margin: 0;
        color: #333;
    }
    .nm-toc__toggle {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 24px;
        height: 24px;
        transition: transform 0.3s ease;
   }

    .nm-toc__toggle svg {
        transform: rotate(0deg);
        transition: transform 0.3s;
    }
    
   
    .nm-toc.is-closed .nm-toc__toggle svg {
        transform: rotate(180deg);
    }
    
    .nm-toc__body {
        display: block;
        padding: 0 20px 20px 20px;
        border-top: 1px solid #e9ecef;
        animation: nmFadeIn 0.3s ease-in-out;
    }
    
 
    .nm-toc.is-closed .nm-toc__body {
        display: none;
    }

    .nm-toc__list {
        margin: 0;
        padding-left: 20px;
        padding-top: 15px;
    }
    .nm-toc__item {
        margin-bottom: 8px;
        list-style-type: disc;
    }
    .nm-toc__item a {
        text-decoration: none;
        color: #0073aa;
        font-size: 15px;
    }
    .nm-toc__item a:hover {
        text-decoration: underline;
    }

    .nm-toc__item--h3 { margin-left: 20px; }
    .nm-toc__item--h4 { margin-left: 40px; }
    
    @keyframes nmFadeIn {
        from { opacity: 0; transform: translateY(-5px); }
        to { opacity: 1; transform: translateY(0); }
    }




    



/* ==========================================================================
    MENU BLOCK 
   ========================================================================== */

.grv-menu-block nav ul{
  list-style:none;
  margin:0;
  padding:0;
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:15px;
}

.grv-menu-block nav li{
  margin:0;
  padding:0;
  position:relative;
}

.grv-menu-block nav a{
  text-decoration:none;
  color:var(--wp--preset--color--custom-dark-black);
  position:relative;
  display:inline-flex;
  align-items:center;
  padding:10px 9px;
}

.grv-menu-block nav a:hover{
  color:var(--wp--preset--color--custom-primary);
}

.grv-menu > li > a::after{
  content:"";
  position:absolute;
  left:9px;
  right:9px;
  bottom:6px;
  height:2px;
  background:currentColor;
  transform:scaleX(0);
  transform-origin:left center;
  transition:transform 220ms ease;
}

.grv-menu > li > a:hover::after{
  transform:scaleX(1);
}

.grv-menu > li:hover > a,
.grv-menu > li:focus-within > a{
  color:var(--wp--preset--color--custom-primary);
}

.grv-menu > li:hover > a::after,
.grv-menu > li:focus-within > a::after{
  transform:scaleX(1);
}

.grv-menu > li.menu-item-has-children > a{
  padding-right:28px;
}

.grv-menu > li.menu-item-has-children > a::before{
  content:"";
  width:16px;
  height:16px;
  position:absolute;
  right:9px;
  top:50%;
  transform:translateY(-50%) rotate(0deg);
  transform-origin:center;
  transition:transform 180ms ease;
  opacity:.85;
  background-color:currentColor;
  -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath fill='black' d='M5.23 7.21a.75.75 0 0 1 1.06.02L10 10.94l3.71-3.71a.75.75 0 1 1 1.06 1.06l-4.24 4.24a.75.75 0 0 1-1.06 0L5.21 8.29a.75.75 0 0 1 .02-1.08z'/%3E%3C/svg%3E");
  -webkit-mask-repeat:no-repeat;
  -webkit-mask-position:center;
  -webkit-mask-size:16px 16px;
  mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath fill='black' d='M5.23 7.21a.75.75 0 0 1 1.06.02L10 10.94l3.71-3.71a.75.75 0 1 1 1.06 1.06l-4.24 4.24a.75.75 0 0 1-1.06 0L5.21 8.29a.75.75 0 0 1 .02-1.08z'/%3E%3C/svg%3E");
  mask-repeat:no-repeat;
  mask-position:center;
  mask-size:16px 16px;
}

.grv-menu > li.menu-item-has-children:hover > a::before,
.grv-menu > li.menu-item-has-children:focus-within > a::before,
.grv-menu > li.menu-item-has-children.is-open > a::before{
  transform:translateY(-50%) rotate(180deg);
}

.grv-menu > li.menu-item-has-children::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:100%;
  height:12px;
}

.grv-menu-block nav .sub-menu{
  position:absolute;
  left:0;
  top:calc(100% + 8px);
  min-width:220px;
  margin:0;
  padding:10px;
  list-style:none;
  background:#fff;
  border:1px solid rgba(0,0,0,0.08);
  z-index:9999;
  display:block;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transform:translateY(6px);
  transition:opacity 180ms ease, transform 180ms ease, visibility 0s linear 180ms;
}

.grv-menu-block nav li:hover > .sub-menu,
.grv-menu-block nav li:focus-within > .sub-menu,
.grv-menu-block nav li.is-open > .sub-menu{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
  transform:translateY(0);
  transition:opacity 180ms ease, transform 180ms ease, visibility 0s;
}

.grv-menu-block nav .sub-menu a{
  display:block;
  padding:9px 14px;
  white-space:nowrap;
  border-radius:7px;
}

.grv-menu-block nav .sub-menu li > a:hover,
.grv-menu-block nav .sub-menu li:focus-within > a,
.grv-menu-block nav .sub-menu li.current-menu-item > a,
.grv-menu-block nav .sub-menu li.current_page_item > a{
  background:rgb(245 124 0 / 12%);
}

.grv-menu-block nav li.current-menu-item > a,
.grv-menu-block nav li.current_page_item > a,
.grv-menu-block nav li.current-menu-ancestor > a,
.grv-menu-block nav li.current_page_ancestor > a,
.grv-menu-block nav li.current-menu-parent > a,
.grv-menu-block nav li.current_page_parent > a{
  color:var(--wp--preset--color--custom-primary);
}

.grv-menu-block .grv-menu > li.current-menu-item > a::after,
.grv-menu-block .grv-menu > li.current_page_item > a::after,
.grv-menu-block .grv-menu > li.current-menu-ancestor > a::after,
.grv-menu-block .grv-menu > li.current_page_ancestor > a::after,
.grv-menu-block .grv-menu > li.current-menu-parent > a::after,
.grv-menu-block .grv-menu > li.current_page_parent > a::after{
  transform:scaleX(1);
}

.grv-menu-block__preview{
  padding:12px;
  border:1px solid rgba(0,0,0,0.08);
  border-radius:12px;
  background:#fff;
}

.grv-menu-block__loading{
  padding:12px;
  border:1px dashed rgba(0,0,0,0.2);
  border-radius:12px;
  background:rgba(0,0,0,0.02);
}

@media(max-width:767px){
	.global-header {
		padding-top:10px !important;
		padding-bottom:10px !important;
	}
}




/* Mobile Version */






/* ==========================================================================
   VERTICAL MENU BLOCK 
   ========================================================================== */


.grv-vertical-menu-block nav { width: 100%; }

.grv-vertical-menu,
.grv-vertical-menu ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.grv-vertical-menu > li {
  border-bottom: 1px solid rgba(0,0,0,0.08);
}

.grv-vertical-menu a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 12px 14px;
  text-decoration: none;
}

.grv-vertical-menu a:hover , 
.grv-vertical-menu .sub-menu a:hover{
	color:var(--wp--preset--color--custom-primary);
}

.grv-vertical-menu > li > a , 
.grv-vertical-menu .sub-menu a {
  font-weight: 500;
	color: var(--wp--preset--color--custom-dark-black);
}


.grv-vertical-menu .sub-menu {
  overflow: hidden;
  max-height: 0;
  transition: max-height 260ms ease;
  padding-left: 14px;
}

.grv-vertical-menu .sub-menu a {
  padding: 10px 14px;
  font-weight: 500;
}

.grv-vertical-menu .grv-submenu-toggle {
  flex: 0 0 auto;
  width: 40px;
  height: 40px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 0;
  background: transparent;
  cursor: pointer;
  border-radius: 6px;
}

.grv-vertical-menu .grv-submenu-toggle:focus {
  outline: 2px solid currentColor;
  outline-offset: 2px;
}

.grv-vertical-menu .grv-submenu-toggle:hover {
  background: rgba(0,0,0,0.06);
}

.grv-vertical-menu .grv-chevron {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.grv-vertical-menu .grv-chevron-icon {
  width: 18px;
  height: 18px;
  display: block;
  transition: transform 220ms ease;
}

.grv-vertical-menu > li.is-open > a .grv-chevron-icon {
  transform: rotate(180deg);
}



/* ==========================================================================
   CUSTOM CAROUSEL BUILDER  BLOCK 
   ========================================================================== */

.grv-carousel {
  position: relative;
  width: 100%;
  overflow: hidden;
  border-radius: 14px;
  
  --grv-primary: #f57c00; 

  --grv-cols-desktop: 1;
  --grv-cols-tablet: 1;
  --grv-cols-mobile: 1;

  --grv-gap-desktop: 16px;
  --grv-gap-tablet: 12px;
  --grv-gap-mobile: 10px;

  --grv-cols: var(--grv-cols-desktop);
  --grv-gap: var(--grv-gap-desktop);
}
.grv-carousel * { box-sizing: border-box; }

@media (max-width: 1024px){
  .grv-carousel { --grv-cols: var(--grv-cols-tablet); --grv-gap: var(--grv-gap-tablet); }
}
@media (max-width: 767px){
  .grv-carousel { --grv-cols: var(--grv-cols-mobile); --grv-gap: var(--grv-gap-mobile); }
}

/* ===== Base Markup & Slides ===== */
.grv-carousel__viewport { width: 100%; }

.grv-carousel__slide { padding: 0; position: relative; }
.grv-carousel__slideInner { width: 100%; }
.grv-carousel__slideInner:empty { min-height: 220px; background: rgba(0,0,0,.03); border-radius: 10px; }

/* ===== Layout Shift Fix (Pre-loader) ===== */
.grv-carousel__track:not(.owl-loaded),
.editor-styles-wrapper .grv-carousel__track {
  display: flex;
  gap: var(--grv-gap);
  overflow-x: auto;
  scroll-behavior: smooth;
  scrollbar-width: none;
  margin: 0;
  padding: 0;
  list-style: none;
}

.grv-carousel__track:not(.owl-loaded)::-webkit-scrollbar,
.editor-styles-wrapper .grv-carousel__track::-webkit-scrollbar {
  display: none;
}

.grv-carousel__track:not(.owl-loaded) .grv-carousel__slide,
.editor-styles-wrapper .grv-carousel__slide {
  flex: 0 0 calc( (100% - ( (var(--grv-cols) - 1) * var(--grv-gap) )) / var(--grv-cols) );
  max-width: calc( (100% - ( (var(--grv-cols) - 1) * var(--grv-gap) )) / var(--grv-cols) );
  width: 100%;
}

/* ===== Editor Specific Overrides ===== */
body.block-editor-page .grv-carousel,
body.wp-admin .grv-carousel,
.editor-styles-wrapper .grv-carousel{
  overflow: visible;
}
body.block-editor-page .grv-carousel__viewport,
.editor-styles-wrapper .grv-carousel__viewport{
  overflow-x: auto;
  overflow-y: visible;
  padding-bottom: 6px;
}
.editor-styles-wrapper .grv-carousel__slide {
  outline: 1px dashed rgba(0,0,0,.18);
  outline-offset: -6px;
  border-radius: 12px;
}
.editor-styles-wrapper .grv-carousel__arrow,
.editor-styles-wrapper .grv-carousel__dots{
  display: none !important;
}

.grv-carousel-editorHint {
  border: 1px dashed rgba(0,0,0,.25);
  border-radius: 12px;
  padding: 10px 12px;
  margin-bottom: 10px;
  background: rgba(0,0,0,.02);
  font-size: 12px;
  opacity: .85;
}

/* ===== Owl Frontend Styles ===== */


.grv-carousel .owl-stage { display:flex; }
.grv-carousel .owl-item .grv-carousel__slide { width: 100%; max-width: 100%; flex: auto; }

.grv-carousel .owl-item { padding-right: var(--grv-gap); }
.grv-carousel .owl-stage { margin-right: calc(var(--grv-gap) * -1); } 

.grv-carousel .owl-dots {
  position: relative; 
  margin-top: 30px;   
  
  display: flex;
  gap: 8px;
  justify-content: center;
  z-index: 5;
	border:0px !important;
	padding:0px; 
}
.grv-carousel .owl-dot span {
  width: 8px; height: 8px; border-radius: 999px;
  background: rgba(0,0,0,.15); 
  border: 1px solid transparent;
  display: block;
  transition: all 0.3s ease;
}
.grv-carousel .owl-dot.active span {
  width: 26px; 
  background: var(--grv-primary);
}
.grv-carousel .owl-dot:hover span {
  background: var(--grv-primary);
  opacity: 0.6;
}

.owl-dot{
	padding:0px;
	border:0px;
}

.grv-carousel .owl-nav button.owl-prev,
.grv-carousel .owl-nav button.owl-next {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 44px; height: 44px;
  border-radius: 50%;
  border: 1px solid rgba(0,0,0,.08);
  background: rgba(255,255,255,.95);
  box-shadow: 0 4px 12px rgba(0,0,0,0.08);
  display: grid;
  place-items: center;
  cursor: pointer;
  z-index: 10;
  font-size: 24px;
  line-height: 1;
  color: #333;
  transition: all 0.2s ease;
}
.grv-carousel .owl-nav button.owl-prev { left: 12px; }
.grv-carousel .owl-nav button.owl-next { right: 12px; }

.grv-carousel .owl-nav button.owl-prev:hover,
.grv-carousel .owl-nav button.owl-next:hover {
  border-color: var(--grv-primary);
  color: var(--grv-primary);
  box-shadow: 0 6px 16px rgba(0,0,0,0.12);
}
.grv-carousel .owl-nav button:active { transform: translateY(-50%) scale(.96); }



/* ==========================================================================
  RCC Case Studies Carousel 
   ========================================================================== */

.rcc-carousel {
	position: relative;
}

.rcc-carousel .owl-stage {
	display: flex;
}

.rcc-carousel .owl-item {
	display: flex;
	flex: 1 0 auto;
}

.rcc-card {
    display: flex;
    flex-direction: column;
    border: 0;
    border-radius: 14px;
    background-color: #72277a29;
    min-height: 100%;
    padding: 15px;
    width: 100%;
    box-sizing: border-box;
}

.rcc-card p:empty,
.rcc-body p:empty {
	display: none;
}

.rcc-thumb {
	display: block;
	width: 100%;
	background: #f4f4f4;
	position: relative;
	margin-bottom: 0;
}

.rcc-thumb img {
	border-radius: 7px;
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.rcc-body {
	padding: 20px 0 0 0;
	flex-grow: 1;
	display: flex;
	flex-direction: column;
}

.rcc-meta {
	font-size: 11px;
	text-transform: uppercase;
	letter-spacing: 0.5px;
	color: #888;
	margin: 0 0 5px;
}

.rcc-title {
	margin: 0 0 10px;
	font-size: 16px;
	line-height: 1.3;
	font-weight: 700;
	margin-bottom:35px;
}

.rcc-title a {
	text-decoration: none;
	font-family: var(--wp--preset--font-family--inter-18-pt, sans-serif);
	font-size: clamp(15.747px, 0.984rem + ((1vw - 3.2px) * 0.897), 20px);
	color: var(--wp--preset--color--custom-dark-black, #000);
	
}

.rcc-excerpt {
	margin: 0 0 15px;
	font-size: 13px;
	opacity: 0.9;
}

.rcc-readmore {
	display: block;
	width: 100%;
	margin-top: auto;
	padding: 14px 28px;
	border-radius: 9px;
	background-color: var(--wp--preset--color--custom-purple);
	color: var(--wp--preset--color--custom-white, #fff) !important;
	text-decoration: none;
	font-size: var(--wp--preset--font-size--small, 13px);
	font-weight: 500;
	text-transform: uppercase;
	text-align: center;
	transition: background 0.2s ease;
	box-sizing: border-box;
	margin-top:auto;
}

.rcc-readmore:hover {
	background-color: var(--wp--preset--color--custom-dark-black, #333);
	color: #fff;
}

/* Navigation & Controls */
.rcc-carousel .owl-nav,
.rcc-carousel .owl-dots {
	display: block !important;
	visibility: visible !important;
	opacity: 1 !important;
	pointer-events: auto !important;
}

.rcc-carousel .owl-nav {
	position: absolute;
	top: 50%;
	left: 0;
	right: 0;
	transform: translateY(-50%);
	margin: 0;
	pointer-events: none;
}

.rcc-carousel .owl-nav button.owl-prev,
.rcc-carousel .owl-nav button.owl-next {
	position: absolute;
	top: 0;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background: #fff !important;
	box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
	display: flex !important;
	align-items: center;
	justify-content: center;
	font-size: 24px !important;
	color: #333 !important;
	margin: 0;
	z-index: 10;
	pointer-events: auto;
	transition: background 0.3s ease;
}

.rcc-carousel .owl-nav button.owl-prev {
	left: -15px;
}

.rcc-carousel .owl-nav button.owl-next {
	right: -15px;
}

.rcc-carousel .owl-nav button:hover {
	background: #f4f4f4 !important;
}

/* Dots Positioning */
.rcc-carousel .owl-dots {
	margin-top: 15px !important;
	position: relative;
	text-align: center;
}


/* ==========================================================================
   Mailchimp Newsletter Form  Styles
   ========================================================================== */
 .mc-label {
            display: block;
            margin-bottom: 10px;
            font-weight: 700;
            color: #333;
            font-size: 14px;
            text-transform: uppercase;
            letter-spacing: 0.5px;
        }

        .mc-overlap-group {
            position: relative;
            display: flex;
            width: 100%;
        }

        .mc-overlap-input {
            width: 100%;
            padding: 14px 130px 14px 20px !important;
            font-size: 16px;
            border: 2px solid #ddd !important;
            border-radius: 50px !important;
            outline: none;
            transition: border-color 0.3s ease;
            box-sizing: border-box !important;
            line-height: 1.5;
            background: #fff;
        }

        .mc-overlap-input:focus {
            border-color: #007c89 !important;
        }

        .mc-overlap-button {
            position: absolute;
            right: 6px;
            top: 6px;
            bottom: 6px;
            padding: 0 25px !important;
               background-color: var(--wp--preset--color--custom-primary);

            color: #ffffff !important;
            border: none !important;
            border-radius: 50px !important;
            cursor: pointer;
            font-weight: 600;
            font-size: 14px;
            transition: all 0.2s ease;
            z-index: 2;
            margin: 0 !important;
            display: flex;
            align-items: center;
            justify-content: center;
        }

        .mc-overlap-button:hover {
            background-color: #005a63 !important;
            box-shadow: 0 2px 8px rgba(0, 124, 137, 0.3);
        }

        .mc-overlap-button:active {
            transform: scale(0.95);
        }


/* ==========================================================================
   Global Footer Styles
   ========================================================================== */


.footer-menu a {
    font-size: var(--wp--preset--font-size--small) !important;
    color: var(--wp--preset--color--custom-white) !important;
    padding-left: 0;
    padding-right: 0;
	padding-top:8px;
	padding-right:8px;
}

.footer-menu .grv-vertical-menu{
	gap:10px;
}

.footer-nav-title {
    font-weight: 600 !important;
    font-size: 16px;
	text-transform:uppercase;
	letter-spacing:0.2px;
	
}




/* ==========================================================================
   PAGINATION STYLES
   ========================================================================== */
.wp-block-query-pagination {
            display: flex;
            align-items: center;
            gap: 12px;
         
          
            border-radius: 12px;
            
        }

        .wp-block-query-pagination a,
        .wp-block-query-pagination .page-numbers {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            min-width: 40px;
            height: 40px;
            padding: 0 14px;
            text-decoration: none;
            border-radius: 8px;
            font-weight: 600;
            font-size: 0.9rem;
            color: #475569;
            background-color: #f1f5f9;
            transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
            border: 1px solid transparent;
        }

        .wp-block-query-pagination a:hover {
            background-color: var(--wp--preset--color--custom-primary);
            color: #fff;
            border-color: #cbd5e1;
            transform: translateY(-2px);
        }

        .wp-block-query-pagination .page-numbers.current {
             background-color: var(--wp--preset--color--custom-primary);
            color: #ffffff;
            border-color:  background-color: var(--wp--preset--color--custom-primary);
            box-shadow: 0 4px 10px rgba(37, 99, 235, 0.25);
        }

        .wp-block-query-pagination-previous,
        .wp-block-query-pagination-next {
            background-color: transparent !important;
            border: 1px solid #e2e8f0 !important;
        }

        .wp-block-query-pagination-previous:hover,
        .wp-block-query-pagination-next:hover {
            border-color: var(--wp--preset--color--custom-primary) !important;
            color: #fff !important;
            background-color: var(--wp--preset--color--custom-primary) !important;
        }

        .wp-block-query-pagination-numbers {
            display: flex;
            gap: 8px;
            align-items: center;
        }



/* ==========================================================================
   COLUMNS CLASSE
   ========================================================================== */

.col-10  { width: 10%; }
.col-20  { width: 20%; }
.col-30  { width: 30%; }
.col-40  { width: 40%; }
.col-50  { width: 50%; }
.col-60  { width: 60%; }
.col-70  { width: 70%; }
.col-80  { width: 80%; }
.col-90  { width: 90%; }
.col-100 { width: 100%; }

@media (max-width: 767px) {
  .col-m-10  { width: 10%; }
  .col-m-20  { width: 20%; }
  .col-m-30  { width: 30%; }
  .col-m-40  { width: 40%; }
  .col-m-50  { width: 50% !important; flex-basis:50% !important;}
  .col-m-60  { width: 60%; }
  .col-m-70  { width: 70%; }
  .col-m-80  { width: 80%; }
  .col-m-90  { width: 90%; }
  .col-m-100 { width: 100%; }
}


@media (max-width: 1023px) {
  .col-t-10  { width: 10%; }
  .col-t-20  { width: 20%; }
  .col-t-30  { width: 30%; }
  .col-t-40  { width: 40%; }
  .col-t-50  { width: 50%; }
  .col-t-60  { width: 60%; }
  .col-t-70  { width: 70%; }
  .col-t-80  { width: 80%; }
  .col-t-90  { width: 90%; }
  .col-t-100 { width: 100%; }
}



/* ==========================================================================
   ROWS CLASSE
   ========================================================================== */
@media (min-width: 600px) and (max-width: 1024px) {
  .grid-cols-md-1 { grid-template-columns: repeat(1, 1fr); }
  .grid-cols-md-2 { grid-template-columns: repeat(2, 1fr); }
  .grid-cols-md-3 { grid-template-columns: repeat(3, 1fr); }
  .grid-cols-md-4 { grid-template-columns: repeat(4, 1fr); }
}



@media (max-width: 640px) {
  .grid-cols-sm-1 { grid-template-columns: repeat(1, 1fr); }
  .grid-cols-sm-2 { grid-template-columns: repeat(2, 1fr); }
  .grid-cols-sm-3 { grid-template-columns: repeat(3, 1fr); }
}