/* ----------------------------------------------------------------

	Custom CSS



	Add all your Custom Styled CSS here for New Styles or

	Overwriting Default Theme Styles for Better Handling Updates

-----------------------------------------------------------------*/

:root {
	--jurisprudenciaBlue:#1198CD;
	--jurisprudenciaWhite:#ffffff;
	--jurisprudenciaDarkBlue: #0c455c;
	--jurisprudenciaDarkBlueRGB: rgb(12, 69, 92);
	--cnvs-themecolor: var(--jurisprudenciaWhite);
	--cnvs-themecolor-rgb: rgb(255, 255, 255);
	--cnvs-link-color:	 var(--jurisprudenciaBlue);
	--cnvs-owl-nav-bg: var(--jurisprudenciaBlue);
}

:root .entry-timeline{
	--cnvs-themecolor: var(--jurisprudenciaDarkBlue);
	--cnvs-themecolor-rgb:var(--jurisprudenciaDarkBlueRGB);
}

/* :root {
	--cnvs-themecolor: #1198CD;
	--cnvs-themecolor-rgb: rgb(17, 152, 205);
} */

/* For Adaptive Sticky Logo */
.adaptive-color-scheme.dark .sticky-header #logo [class^="logo-"] { display: none !important; }
.adaptive-color-scheme.dark .sticky-header #logo .logo-sticky-dark { display: flex !important; }

/* For Adaptive Mobile Logo */
body.adaptive-color-scheme.dark:not(.is-expanded-menu) #logo [class^="logo-"] { display: none !important; }
body.adaptive-color-scheme.dark:not(.is-expanded-menu) #logo .logo-mobile-dark { display: flex !important; }

#footer a{
	color: white;
}
#header.sticky-header{
	background-color: var(--jurisprudenciaBlue)!important;
}

/* @media (max-width: 991.98px) {
	body:not(.primary-menu-open) #header,
	body:not(.primary-menu-open) #header-wrap {
		background: var(--jurisprudenciaBlue) !important;
		border-bottom: 0 !important;
		z-index: 499;
	}
} */

@media (max-width: 991.98px) {
	body:not(.primary-menu-open) #header,
	body:not(.primary-menu-open) #header-wrap {
		background: var(--jurisprudenciaBlue) !important;
		border-bottom: 0 !important;
		z-index: 499;
	}
}

.blueBackground{
	background-color: #1198CD;
}

.lightBlueBackground{
	background-color: #95CDE4;
}
.darkBlueBackground{
	background-color: #0c455c;
}

.whiteishBackground{
	background-color: #ecebe2;
}


.shapeDividersMargin{
	padding-top:100px;
	padding-bottom: 100px;
}
a .menu-link{
	color:#ffffff
}

.fbox-icon i, .fbox-icon img {
    border-radius: 50%;
    /*background-color: tra!important;*/
	width: auto!important;
	height: auto!important;
}
.fs-7{
	font-size: 0.85rem!important;
}

#header.sticky-header {
    --cnvs-primary-menu-hover-color: #1198CD;
    --cnvs-primary-menu-active-color: var(--jurisprudenciaBlue);
}
/* Owl Carousel - Curiosities */

.owl-carousel {
	--cnvs-carousel-animation-transition: 1000ms;
	--cnvs-owl-video-play-icon-size:	64px;
	--cnvs-owl-video-play-icon: url("images/icons/play.png");
	--cnvs-owl-video-play-icon-hover: scale(1.3);
	--cnvs-owl-autoHeight-transition: 500ms ease-in-out;
	--cnvs-owl-nav-hidden: true;
	--cnvs-owl-nav-border: 1px solid rgba(var(--cnvs-contrast-rgb), 0.2);
	--cnvs-owl-nav-background: var(--cnvs-body-bg);
	--cnvs-owl-nav-color: var(--cnvs-contrast-600);
	--cnvs-owl-nav-border-radius: 50%;
	--cnvs-owl-full-nav-size: 28px;
	--cnvs-owl-full-nav-border-radius: 0.25rem;
	--cnvs-owl-full-nav-bgcolor: rgba(var(--cnvs-contrast-rgb), 0.4);
	--cnvs-owl-full-nav-color: var(--cnvs-contrast-100);
	--cnvs-owl-full-nav-hover-bgcolor: var(--cnvs-themecolor);
	--cnvs-owl-full-nav-hover-color: var(--cnvs-body-bg);
	--cnvs-owl-dots-background: var(--cnvs-themecolor);
	--cnvs-owl-dots-opacity: 0.5;
	--cnvs-owl-nav-sizes: 36px;
	--cnvs-owl-dots-gutters: 0.25rem;
	--cnvs-owl-dots-sizes: 0.5rem;
	--cnvs-owl-nav-bg: var(--jurisprudenciaBlue);
	--cnvs-owl-nav-margin: calc(var(--cnvs-owl-nav-sizes) / -2);
	--cnvs-owl-nav-with-dots: calc( var(--cnvs-owl-nav-margin) - calc( calc( 30px + var(--cnvs-owl-dots-sizes) ) / 2 ) );
  }

.owl-carousel .owl-item.active.center .oc-desc {
    opacity: 1;
    transform: scale(1);
}
.owl-carousel .owl-item .oc-desc {
    opacity: 0;
    transform: scale(0.7);
    transition: all .3s cubic-bezier(0.4, 0.2, 0.2, 1);
}
.oc-desc {
    position: absolute;
    top: 5%;
    left: 5%;
    bottom: 16px;
    background-color: #FFF;
    padding: 25px;
    border-radius: 3px;
    height: 90%;
    width: 90%;
}

/* Animated Setting
-----------------------------------------------------------------*/
.animated {
	-webkit-animation-duration: .4s;
	animation-duration: .4s;
  }
  
  @-webkit-keyframes fadeInUp {
	from {
	  opacity: 0;
	  -webkit-transform: translate3d(0, 30px, 0);
	  transform: translate3d(0, 30px, 0);
	}
  
	to {
	  opacity: 1;
	  -webkit-transform: translate3d(0, 0, 0);
	  transform: translate3d(0, 0, 0);
	}
  }
  
  @keyframes fadeInUp {
	from {
	  opacity: 0;
	  -webkit-transform: translate3d(0, 30px, 0);
	  transform: translate3d(0, 30px, 0);
	}
  
	to {
	  opacity: 1;
	  -webkit-transform: translate3d(0, 0, 0);
	  transform: translate3d(0, 0, 0);
	}
  }

  /* Carousel
-----------------------------------------------------------------*/
.oc-desc {
	position: absolute;
	top: 5%;
	left: 5%;
	bottom: 16px;
	background-color: #FFF;
	padding: 25px;
	border-radius: 3px;
	height: 90%;
	width: 90%;
}
.charity-card p {
	overflow: hidden;
	display: -webkit-box;
	-webkit-line-clamp: 5;
	-webkit-box-orient: vertical;
}

.charity-card h3 { font-size: 16px; }
.charity-card h3 a { color: #111; }

.charity-card .skill-progress-percent::after {
	content: "\F518";
	font-family: 'bootstrap-icons';
	color: var(--cnvs-themecolor);
	position: absolute;
	right: -8px;
	top: 50%;
	transform: translateY( -50% );
}

.charity-card .counter.counter-inherit.counter-instant { display: inline-block; }

.charity-card .skill-progress-percent {
	display: inherit;
	position: relative;
	background-color: transparent;
	color: #222;
	text-shadow: none;
	font-size: 14px;
	font-weight: 400;
	left: 0;
	line-height: inherit;
	padding: 0;
	border-radius: 0;
}

.skill-progress-percent { right: -14px; }

.progress:not(.skills-animated) {
	opacity: 0;
}

.charity-card .skill-progress-percent .counter {
	display: block;
	position: relative;
	white-space: nowrap;
}

.owl-carousel .owl-item .oc-desc {
	opacity: 0;
	transform: scale(0.7);
	transition: all .3s cubic-bezier(0.4, 0.2, 0.2, 1);
}

/* .owl-carousel .owl-item:hover .oc-desc, */
.owl-carousel .owl-item.active.center .oc-desc {
	opacity: 1;
	transform: scale(1);
}

.world-map-image {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: auto;
	z-index: 1;
}

.counter-section [class^=col-]:not(:last-child)::after {
	content: '';
	position: absolute;
	top: 0;
	right: 0;
	width: 10px;
	height: 100%;
	opacity: .4;
	background-image: url('images/divider-2.svg');
	background-repeat: no-repeat;
	background-position: center center;
}

.device-sm .counter-section [class^=col-]:nth-child(2)::after,
.device-md .counter-section [class^=col-]:nth-child(2)::after,
.device-xs .counter-section [class^=col-]::after  { display: none; }


/* Página de Blog */

* Tema azul para páginas de blog */
.blog-page {
    --cnvs-body-bg: #f8f9fa;
}

.blog-page #header {
    background-color: var(--jurisprudenciaBlue) !important;
    border-bottom: 1px solid rgba(255,255,255,0.1) !important;
}

.blog-page #header .logo-default {
    display: none !important;
}

.blog-page #header .logo-dark,
.blog-page #header .logo-sticky,
.blog-page #header .logo-mobile {
    display: inline-block !important;
}

/* Page title com gradiente azul */
.blog-page .page-title {
    background: linear-gradient(135deg, var(--jurisprudenciaBlue) 0%, var(--jurisprudenciaDarkBlue) 100%);
    padding: 80px 0 50px;
    position: relative;
    overflow: hidden;
}

.blog-page .page-title::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><circle cx="20" cy="20" r="2" fill="rgba(255,255,255,0.1)"/><circle cx="80" cy="40" r="1" fill="rgba(255,255,255,0.1)"/><circle cx="40" cy="80" r="1.5" fill="rgba(255,255,255,0.1)"/></svg>');
    opacity: 0.3;
}

.blog-page .page-title h1 {
    color: white;
    text-shadow: 0 2px 4px rgba(0,0,0,0.3);
    font-weight: 700;
    margin-bottom: 10px;
}

.blog-page .page-title .breadcrumb-item,
.blog-page .page-title .breadcrumb-item a {
    color: rgba(255,255,255,0.9);
    text-decoration: none;
}

.blog-page .page-title .breadcrumb-item a:hover {
    color: white;
}

/* Melhorar cards */
.blog-page .card {
    border: 1px solid rgba(17, 152, 205, 0.1);
    box-shadow: 0 4px 12px rgba(0,0,0,0.08);
    border-radius: 8px;
    transition: box-shadow 0.3s ease;
}

.blog-page .card:hover {
    box-shadow: 0 6px 20px rgba(0,0,0,0.12);
}

/* Sidebar posts relacionados */
.blog-page .sidebar .entry-image img {
    width: 60px;
    height: 60px;
    object-fit: cover;
    border-radius: 6px;
    transition: transform 0.3s ease;
}

.blog-page .sidebar .entry-image:hover img {
    transform: scale(1.05);
}

.blog-page .sidebar .entry-title h4 a {
    color: var(--jurisprudenciaBlue);
    text-decoration: none;
    transition: color 0.3s ease;
}

.blog-page .sidebar .entry-title h4 a:hover {
    color: var(--jurisprudenciaDarkBlue);
}

/* Botões de compartilhamento */
.blog-page .social-icon {
    margin-right: 8px;
    transition: transform 0.3s ease;
}

.blog-page .social-icon:hover {
    transform: translateY(-2px);
}

/* Melhorar tipografia */
.blog-page .entry-content {
    font-size: 16px;
    line-height: 1.7;
    color: #444;
}

.blog-page .entry-content h1,
.blog-page .entry-content h2,
.blog-page .entry-content h3,
.blog-page .entry-content h4 {
    color: var(--jurisprudenciaDarkBlue);
    margin-top: 2rem;
    margin-bottom: 1rem;
}

.blog-page .entry-content p {
    margin-bottom: 1.2rem;
}

/* Tags */
.blog-page .tagcloud a {
    background-color: rgba(17, 152, 205, 0.1);
    color: var(--jurisprudenciaBlue);
    padding: 4px 12px;
    border-radius: 20px;
    text-decoration: none;
    font-size: 12px;
    margin-right: 6px;
    margin-bottom: 6px;
    display: inline-block;
    transition: all 0.3s ease;
}

.blog-page .tagcloud a:hover {
    background-color: var(--jurisprudenciaBlue);
    color: white;
}

/* Responsivo */
@media (max-width: 768px) {
    .blog-page .page-title {
        padding: 60px 0 40px;
    }
    
    .blog-page .page-title h1 {
        font-size: 1.8rem;
    }
    
    .blog-page .sidebar {
        margin-top: 3rem;
    }
}

/* Corrigir z-index do header e menu */
#header {
    z-index: 999 !important;
}

#header-wrap {
    z-index: 999 !important;
}

.primary-menu {
    z-index: 998 !important;
}

.primary-menu-trigger {
    z-index: 1000 !important;
}

/* Garantir que o menu mobile funcione corretamente */
@media (max-width: 991.98px) {
    .primary-menu {
        z-index: 1001 !important;
    }
    
    body.primary-menu-open .primary-menu {
        z-index: 1002 !important;
    }
}