#spinner {
opacity:0;
visibility:hidden;
transition:opacity .5s ease-out,visibility 0s linear .5s;
z-index:99999
}

#spinner.show {
transition:opacity .5s ease-out,visibility 0s linear 0s;
visibility:visible;
opacity:1
}

.back-to-top {
position:fixed;
right:15px;
bottom:15px;
transition:.5s;
z-index:99
}

.btn {
font-weight:600;
transition:.5s
}

.btn-square {
width:32px;
height:32px
}

.btn-sm-square {
width:34px;
height:34px
}

.btn-md-square {
width:44px;
height:44px
}

.btn-lg-square {
width:36px;
height:36px
}

.btn-xl-square {
width:66px;
height:66px
}

.btn-square,.btn-sm-square,.btn-md-square,.btn-lg-square,.btn-xl-square {
padding:0;
display:flex;
align-items:center;
justify-content:center;
font-weight:400
}

.btn.btn-primary {
color:var(--bs-white);
border:none
}

.btn.btn-primary:hover {
background:#3A658E;
color:#FFF
}

.btn.btn-light {
color:var(--bs-primary);
border:none
}

.btn.btn-light:hover {
color:var(--bs-white);
background:var(--bs-primary)
}

.topbar .dropdown-toggle::after {
border:none;
content:"\f107";
font-family:"Font Awesome 5 Free";
font-weight:600;
vertical-align:middle;
margin-left:8px;
color:var(--bs-primary)
}

.topbar .dropdown .dropdown-menu a:hover {
background:var(--bs-primary);
color:var(--bs-white)
}

.topbar .dropdown .dropdown-menu {
transform:rotateX(0deg);
visibility:visible;
background:var(--bs-light);
padding-top:11px;
border:0;
transition:.5s;
opacity:1
}

.navbar-light .navbar-nav .nav-link {
font-family:'Roboto',sans-serif;
position:relative;
margin-right:25px;
padding:35px 0;
color:var(--bs-white);
font-size:17px;
font-weight:200;
outline:none;
text-transform:uppercase;
transition:.5s;
font-size:16px;
}

.sticky-top.navbar-light .navbar-nav .nav-link,.sticky-top.navbar-light .navbar-nav .nav-item .nav-link {
padding:20px 0;
color:var(--bs-dark)
}

.navbar-light .navbar-nav .nav-item .nav-link {
color:var(--bs-white)
}

.navbar-light .navbar-nav .nav-link:hover,.navbar-light .navbar-nav .nav-link.active,.navbar-light .navbar-nav .nav-item .nav-link:hover,.navbar-light .navbar-nav .nav-item .nav-link.active {
color:var(--bs-primary)
}

.navbar-light .navbar-brand img {
max-height:60px;
transition:.5s
}

.sticky-top.navbar-light .navbar-brand img {
max-height:45px
}

.navbar .dropdown-toggle::after {
border:none;
content:"\f107";
font-family:"Font Awesome 5 Free";
font-weight:600;
vertical-align:middle;
margin-left:8px
}

.dropdown .dropdown-menu a:hover {
background:var(--bs-primary);
color:var(--bs-white)
}

.navbar .nav-item:hover .dropdown-menu {
transform:rotateX(0deg);
visibility:visible;
background:var(--bs-light);
transition:.5s;
opacity:1
}

@media (max-width: 991.98px) {
.sticky-top.navbar-light {
position:relative;
background:var(--bs-white)
}

.navbar.navbar-expand-lg .navbar-toggler {
padding:10px 20px;
border:1px solid var(--bs-primary);
color:var(--bs-primary)
}

.navbar-light .navbar-collapse {
margin-top:15px;
border-top:1px solid #DDD
}

.navbar-light .navbar-nav .nav-link,.sticky-top.navbar-light .navbar-nav .nav-link {
padding:10px 0;
margin-left:0;
color:var(--bs-dark)
}

.navbar-light .navbar-nav .nav-item .nav-link {
color:var(--bs-dark)
}

.navbar-light .navbar-brand img {
max-height:45px
}
}

@media (min-width: 992px) {
.navbar .nav-item .dropdown-menu {
display:block;
visibility:hidden;
top:100%;
transform:rotateX(-75deg);
transform-origin:0 0;
border:0;
border-radius:10px;
transition:.5s;
opacity:0
}

.navbar-light {
position:absolute;
width:100%;
top:0;
left:0;
border-bottom:1px solid #ffffff1a;
z-index:999
}

.sticky-top.navbar-light {
position:fixed;
background:var(--bs-light)
}

.navbar-light .navbar-nav .nav-link::before {
position:absolute;
content:"";
width:0;
height:2px;
bottom:-1px;
left:50%;
background:var(--bs-primary);
transition:.5s
}

.navbar-light .navbar-nav .nav-link:hover::before,.navbar-light .navbar-nav .nav-link.active::before {
width:calc(100% - 2px);
left:1px
}

.navbar-light .navbar-nav .nav-link::after {
position:absolute;
content:"";
width:0;
height:0;
bottom:-1px;
left:50%;
background:var(--bs-primary);
transition:.5s
}

.navbar-light .navbar-nav .nav-link:hover::after,.navbar-light .navbar-nav .nav-link.active::after {
width:2px;
height:12px
}
}

.header-carousel .header-carousel-item img {
object-fit:cover
}

.header-carousel .header-carousel-item,.header-carousel .header-carousel-item img {
height:100vh
}

.header-carousel .owl-nav .owl-prev,.header-carousel .owl-nav .owl-next {
position:absolute;
width:60px;
height:60px;
border-radius:60px;
background:var(--bs-primary);
color:var(--bs-white);
font-size:26px;
display:flex;
align-items:center;
justify-content:center;
transition:.5s
}

.header-carousel .owl-nav .owl-prev {
bottom:30px;
left:30px;
margin-left:90px
}

.header-carousel .owl-nav .owl-next {
bottom:30px;
left:30px
}

.header-carousel .owl-nav .owl-prev:hover,.header-carousel .owl-nav .owl-next:hover {
box-shadow:inset 0 0 100px 0 var(--bs-light);
color:var(--bs-primary)
}

.header-carousel .header-carousel-item .carousel-caption {
position:absolute;
width:100%;
height:100%;
left:0;
bottom:0;
padding-top:120px;
background:#000000b3;
display:flex;
align-items:center
}

@media (max-width: 991px) {
.header-carousel .header-carousel-item .carousel-caption {
padding-top:45px
}
}

@media (max-width: 767px) {
.header-carousel .owl-nav .owl-prev {
left:50%;
transform:translateX(-50%);
margin-left:-45px
}

.header-carousel .owl-nav .owl-next {
left:50%;
transform:translateX(-50%);
margin-left:45px
}
}

.header-carousel .header-carousel-item img {
animation-name:image-zoom;
animation-duration:10s;
animation-delay:1s;
animation-iteration-count:infinite;
animation-direction:alternate;
transition:1s
}

@keyframes image-zoom {
0% {
height:100%;
opacity:.9
}

25% {
height:110%;
opacity:.5
}

50% {
height:115%;
opacity:1
}

75% {
height:110%;
opacity:.5
}

100% {
height:100%;
opacity:.9
}
}

.bg-breadcrumb {
position:relative;
overflow:hidden;
background:linear-gradient(#000000b3,#000000b3),url(/ficheiros/topos/topo.jpg);
background-position:center center;
background-repeat:no-repeat;
background-size:cover;
padding:140px 0 60px;
transition:.5s
}

@media (min-width: 992px) {
.bg-breadcrumb {
padding:140px 0 60px
}
}

@media (max-width: 991px) {
.bg-breadcrumb {
padding:60px 0
}
}

.bg-breadcrumb .breadcrumb {
position:relative
}

.bg-breadcrumb .breadcrumb .breadcrumb-item a {
color:var(--bs-white)
}

.service .service-item {
background:#E6CB9D;
border-radius:10px;
transition:.5s
}

.service .service-item:hover {
box-shadow:0 0 45px #0003;
cursor:pointer
}

.service .service-item .service-img {
position:relative;
overflow:hidden;
border-top-left-radius:10px;
border-top-right-radius:10px;
transition:.5s
}

.service .service-item .service-img img {
transition:.5s
}

.service .service-item:hover .service-img img {
transform:scale(1.2)
}

.service .service-item .rounded-bottom {
min-height:220px
}

.service .service-item .rounded-bottom .h4 {
color:#3A658E
}

.service .service-item .rounded-bottom .intro {
color:#3A658E;
font-size:14px;
overflow:hidden;
text-overflow:ellipsis;
display:-webkit-box;
-webkit-line-clamp:2;
line-clamp:2;
-webkit-box-orient:vertical;
max-height:42px
}

.feature .feature-item {
text-align:center;
border-radius:10px;
background:var(--bs-light);
border:1px solid transparent;
transition:.5s
}

.feature .feature-item:hover {
border:1px solid var(--bs-primary)
}

.feature .feature-item .feature-icon {
background:var(--bs-white);
border-radius:10px;
display:inline-block
}

.offer-section .nav a.accordion-link {
width:100%;
border-radius:10px;
display:flex;
background:var(--bs-white);
transition:.5s
}

.offer-section .nav a.accordion-link.active {
color:var(--bs-white);
background:var(--bs-primary)
}

.offer-section .nav a.accordion-link h5 {
transition:.5s
}

.offer-section .nav a.accordion-link.active h5 {
color:var(--bs-white)
}

.blog .blog-item {
border-radius:10px;
background:var(--bs-white);
box-shadow:inset 0 0 45px #0000001a;
transition:.5s
}

.blog .blog-item a {
transition:.5s
}

.blog .blog-item:hover a:hover {
color:var(--bs-primary)
}

.blog .blog-item .blog-img {
border-radius:10px;
position:relative;
overflow:hidden
}

.blog .blog-item .blog-img img {
transition:.5s
}

.blog .blog-item:hover .blog-img img {
transform:scale(1.2)
}

.blog .blog-item .blog-img::after {
content:"";
position:absolute;
width:100%;
height:100%;
top:0;
left:0;
border-radius:10px;
background:#00d0841a;
opacity:0;
transition:.5s;
z-index:1
}

.blog .blog-item:hover .blog-img::after {
opacity:1
}

.blog .blog-item .blog-img .blog-title {
position:absolute;
bottom:25px;
left:25px;
z-index:5
}

.blog .blog-item .blog-img .blog-title a {
color:var(--bs-white);
background:var(--bs-primary);
transition:.5s
}

.blog .blog-item:hover .blog-img .blog-title a:hover {
color:var(--bs-dark)
}

.necro h2 {
font-size:30px;
margin-bottom:100px;
margin-top:0
}

.necro-carousel .owl-stage-outer {
margin-top:58px
}

.necro .owl-nav .owl-prev {
position:absolute;
top:-58px;
left:0;
background:var(--bs-primary);
color:var(--bs-white);
padding:6px 35px;
border-radius:30px;
transition:.5s
}

.necro .owl-nav .owl-prev:hover {
background:var(--bs-dark);
color:var(--bs-primary)
}

.necro .owl-nav .owl-next {
position:absolute;
top:-58px;
right:0;
background:var(--bs-primary);
color:var(--bs-white);
padding:6px 35px;
border-radius:30px;
transition:.5s
}

.necro .owl-nav .owl-next:hover {
background:var(--bs-dark);
color:var(--bs-primary)
}

.faq-section .accordion .accordion-item .accordion-header .accordion-button {
color:var(--bs-secondary)
}

.faq-section .accordion .accordion-item .accordion-header .accordion-button.collapsed {
color:var(--bs-dark)
}

.necro .necro-item {
position:relative;
padding:0 25px 25px;
border-radius:10px;
transition:.5s
}

.necro .necro-item::before {
content:"";
position:absolute;
width:100%;
height:100%;
bottom:0;
left:0;
background:#E6CB9D;
border-radius:10px;
transition:.5s;
z-index:-1
}

.necro .necro-item:hover::before {
height:0
}

.necro .necro-item::after {
content:"";
position:absolute;
width:100%;
height:0;
bottom:0;
left:0;
border-radius:10px;
transition:.5s;
z-index:-1
}

.necro .necro-item:hover::after {
height:100%;
background:var(--bs-primary)
}

.necro .necro-item:hover {
cursor:pointer
}

.necro .necro-item .necro-img {
width:100%;
height:100%;
border-radius:100%;
position:relative;
margin-top:50%;
transform:translateY(-50%);
margin-bottom:-50%;
display:flex;
justify-content:center;
border:4px solid var(--bs-primary);
border-style:dotted;
padding:4px;
background:var(--bs-white);
transition:.5s
}

.necro .necro-item:hover .necro-img {
border:4px solid var(--bs-white);
border-style:dotted;
background:0
}

.necro .necro-item .necro-img img {
width:100%;
height:100%;
border-radius:100%;
transition:.5s
}

.necro .necro-item .necro-title {
padding:25px 0;
text-align:center;
max-height:100px
}

.necro .necro-item .necro-title h4 {
font-size:22px;
font-weight:300;
height:50px
}

.necro .necro-item .necro-title p {
font-size:14px;
font-weight:300;
font-size:14px;
font-weight:300;
font-style:italic
}

.necro .necro-item .necro-title p span {
font-size:12px;
font-weight:600;
font-style:italic
}

.necro .necro-item .necro-title p span.idade {
font-size:16px;
font-weight:600;
font-style:italic
}

.necro .necro-item .necro-title h4,.necro .necro-item .necro-title p {
transition:.5s;
color:#3A658E
}

.necro .necro-item:hover .necro-title h4,.necro .necro-item:hover .necro-title p {
color:var(--bs-white)
}

.necro .necro-item .necro-icon {
display:flex;
justify-content:center
}

.necro .necro-item .necro-icon a {
transition:.5s
}

.necro .necro-item:hover .necro-icon a {
color:var(--bs-dark);
background:var(--bs-white)
}

.necro .necro-item:hover .necro-icon a:hover {
color:var(--bs-primary);
background:var(--bs-dark)
}

.testimonial .testimonial-item {
position:relative;
margin-bottom:30px;
padding:0 25px 25px
}

.testimonial .testimonial-item::before {
content:"";
position:absolute;
width:100%;
height:calc(100% - 50px);
bottom:0;
left:0;
border-radius:10px;
background:var(--bs-light);
z-index:-1
}

.testimonial .testimonial-item .testimonial-img {
display:flex;
justify-content:center
}

.testimonial .testimonial-item .testimonial-img img {
width:100px;
height:100px;
border-radius:100px;
border:5px solid var(--bs-light);
border-style:double;
background:var(--bs-white)
}

.testimonial .testimonial-item .testimonial-text {
padding:25px 0;
text-align:center
}

.testimonial .testimonial-item .testimonial-title {
display:flex;
justify-content:space-between
}

.testimonial .testimonial-item .testimonial-quote-left {
position:absolute;
width:60px;
height:60px;
top:20px;
left:25px;
border-radius:60px;
color:var(--bs-primary);
background:var(--bs-white);
display:flex;
align-items:center;
justify-content:center
}

.testimonial .testimonial-item .testimonial-quote-right {
position:absolute;
width:60px;
height:60px;
bottom:-30px;
right:25px;
margin-top:-5px;
border-radius:60px;
color:var(--bs-primary);
background:var(--bs-white);
display:flex;
align-items:center;
justify-content:center
}

.testimonial-carousel .owl-stage-outer {
margin-top:58px;
margin-right:-1px
}

.testimonial .owl-nav .owl-prev {
position:absolute;
top:-58px;
left:0;
background:var(--bs-primary);
color:var(--bs-white);
padding:5px 30px;
border-radius:30px;
transition:.5s
}

.testimonial .owl-nav .owl-prev:hover {
background:var(--bs-secondary);
color:var(--bs-white)
}

.testimonial .owl-nav .owl-next {
position:absolute;
top:-58px;
right:0;
background:var(--bs-primary);
color:var(--bs-white);
padding:5px 30px;
border-radius:30px;
transition:.5s
}

.testimonial .owl-nav .owl-next:hover {
background:var(--bs-secondary);
color:var(--bs-white)
}

.testimonial-carousel .owl-dots {
display:flex;
justify-content:center
}

.testimonial-carousel .owl-dots .owl-dot {
width:30px;
height:30px;
border-radius:30px;
margin:20px 10px 0;
background:var(--bs-primary);
transition:.5s
}

.testimonial-carousel .owl-dots .owl-dot.active {
width:30px;
height:30px;
border-radius:30px;
background:var(--bs-secondary);
transition:.5s
}

.testimonial-carousel .owl-dots .owl-dot span {
position:relative;
margin-top:50%;
margin-left:50%;
transform:translate(-50%,-50%);
display:flex;
align-items:center;
justify-content:center;
text-align:center
}

.testimonial-carousel .owl-dots .owl-dot.active span::after {
background:var(--bs-primary)
}

.testimonial-carousel .owl-dots .owl-dot span::after {
content:"";
width:15px;
height:15px;
border-radius:15px;
position:absolute;
top:50%;
left:0;
transform:translateY(-50%);
display:flex;
align-items:center;
justify-content:center;
text-align:center;
background:var(--bs-white);
transition:.5s
}

.footer {
color:#FFF
}

.footer .text-body {
color:#FFF
}

.footer .footer-item {
display:flex;
flex-direction:column
}

.footer a {
transition:.5s;
color:#CC953E
}

.footer a:hover {
color:#FFF
}

.footer .footer-item .footer-btn a,.footer .footer-item .footer-btn a i {
transition:.5s
}

.footer .footer-item .footer-btn a:hover {
background:var(--bs-white)
}

.footer .footer-item .footer-btn a:hover i {
color:var(--bs-primary)
}

.copyright {
background:var(--bs-dark);
color:#FFF
}

.pagination {
margin:20px 0;
font-family:"Roboto",Helvetica,Arial,sans-serif;
border-radius:0
}

.pagination > li > a,.pagination > li > span {
padding:3px 6px;
line-height:1.42857143;
text-decoration:none;
color:#3A658E;
background-color:#fff;
border:1px solid #3A658E;
font-size:16px;
margin-right:15px;
border-radius:5px
}

.pagination > li > a:hover,.pagination > li > span:hover,.pagination > li > a:focus,.pagination > li > span:focus {
color:#3A658E;
background-color:#a7dbe5;
border-color:#ddd
}

.pagination > .active > a,.pagination > .active > span,.pagination > .active > a:hover,.pagination > .active > span:hover,.pagination > .active > a:focus,.pagination > .active > span:focus {
z-index:2;
color:#fff;
background-color:#3A658E;
border-color:#3A658E
}

.pagination > .disabled > span,.pagination > .disabled > span:hover,.pagination > .disabled > span:focus,.pagination > .disabled > a,.pagination > .disabled > a:hover,.pagination > .disabled > a:focus {
color:#999;
background-color:#fff;
border-color:#ddd
}

.textos {
	font-family:"Courier New", Courier, monospace;
}
.textos h2 {
color:#3A658E;
font-size:30px
}

.textos h3 {
color:#3A658E;
font-size:22px
}

.textos {
color:#3A658E;
font-size:16px;
}

.textos p {
color:#3A658E;
font-size:16px;
text-align:justify;
}

.img-funeraria {
border-radius:5px;
-webkit-box-shadow:3px 1px 5px 5px #C2C2C2;
box-shadow:3px 1px 5px 5px #C2C2C2
}

.obito h1 {
	font-size: 28px;
}
.obito {
margin-top:40px;
margin-bottom:40px
}

.obito .obito-item {
position:relative;
padding:25px;
border-radius:10px;
transition:.5s
}

.obito .obito-item::before {
content:"";
position:absolute;
width:100%;
height:100%;
bottom:0;
left:0;
background:#cc953e00;
border-radius:10px;
transition:.5s;
z-index:-1
}

.obito .obito-item:hover::before {
height:0
}

.obito .obito-item .obito-img {
width:500px;
height:500px;
border-radius:100%;
transition:.5s
}

.obito .obito-item .obito-title {
padding:25px 0;
text-align:center;
max-height:100px
}

.homenagens .homenagem-item .homenagem-content h3 {
margin-bottom:10px;
font-size:16px
}

.homenagens .homenagem-item .homenagem-content {
font-size:14px
}

.homenagens .homenagem-item .homenagem-content .homenagem-info {
margin-bottom:20px;
margin-top:-15px
}

.homenagens .homenagem-item .homenagem-content .linha {
border-bottom:#999 thin solid;
margin-bottom:20px
}

.homenagens .homenagem-item .homenagem-content .data-h {
font-style:italic;
font-size:11px
}

.alerta {
font-size:13px;
font-style:italic
}

.social {
color:#fff;
background-color:#CC953E;
border-color:#CC953E;
height:30px;
width:30px
}

.social:hover {
color:#fff;
background-color:#E6CB9D;
border-color:#E6CB9D
}