@charset "utf-8";
/**
 *------------------------------------------------------------------------------
 * CAFILESA
 *------------------------------------------------------------------------------
 * @website		  cafilesa.pt
 * @Template		SKY
 * @System      joomla 5
 * @file        template.css
 *------------------------------------------------------------------------------
 */
 :root {
  --transition-base: all 0.25s ease-in-out;
}
*, ::after, ::before {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}
html {
  scroll-behavior: smooth;
  scroll-padding-top: 7rem;
}
/*Os modals no backoffice Necessitam disto para apresentar
o body dentro do iframe sem scroll*/
body {
  display: flex;
  flex-direction: column;
  min-height: 100vh;
  position: relative;
  overflow-x: hidden;
 }
 
 /*////////////////////////////////////////////////////
-               Add-ons tests
////////////////////////////////////////////////////*/

/*mantem as imagens "intro image" e "Full Article Image" dentro da tag figure*/
figure img {
  width: 100%;
  object-fit: cover;
}
.figure img {
  width: 100%;
  object-fit: cover;
}
.p-big {
  font-size: 1.3rem;
}
@media (min-width: 720px) {
  .txt-col-1{
    column-count: 1 !important;
  }
  .txt-col-2{
    column-count: 2 !important;
  }
  .txt-col-3{
    column-count: 3 !important;
  }
}
.inline {
  display: inline-block;
}
.img-100{
  width: 100%;
}
.img-cover{
  object-fit: cover;
}
.no-gutters {
  margin-right: 0;
  margin-left: 0;
}
.no-gutters > .col,
.no-gutters > [class*=col-] {
  padding-right: 0;
  padding-left: 0;
}
div[class*="txt-col"]{
  column-count: 1;
  column-gap: 2.5em;
}

/*
* Do ficheiro classes.css
*/
.visible {
  visibility: visible !important;
}
.visually-hidden,
.visually-hidden-focusable:not(:focus):not(:focus-within) {
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}
.visually-hidden:not(caption),
.visually-hidden-focusable:not(:focus):not(:focus-within):not(caption) {
  position: absolute !important;
}
.sticky-top {
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  z-index: 1020;
}
.position-sticky {
  position: -webkit-sticky !important;
  position: sticky !important;
}


/*////////////////////////////////////////////////////
-                  RESPONSIVENESS
////////////////////////////////////////////////////*/


.contain{
  width: 100%;
}
.container{
  width: 100%;
  padding-right: 15px;
  padding-left: 15px;
  margin-right: auto;
  margin-left: auto;
}
.view-categories main > div,
.view-featured main > div,
.view-category main > div,
.view-article main > div {
  width: 100%;
  padding-right: 0;
  padding-left: 0;
  margin-right: auto;
  margin-left: auto;
}
@media (min-width: 576px) {
  .container {
    max-width: 100%;
  }
}
@media (min-width: 768px) {
  .container {
    max-width: 100%;
  }
}
@media (min-width: 992px) {
  .container,
  .view-categories main > div,
  .view-featured main > div,
  .view-category main > div,
  .view-article main > div {
    max-width: 98%;
  }
}
@media (min-width: 1350px) {
  .container,
  .view-categories main > div,
  .view-featured main > div,
  .view-category main > div,
  .view-article main > div {
    max-width: 1305px;
  }
}
.container .container {
  width: 100%;
  padding-right: 0;
  padding-left: 0;
}
.container-component .container {
  width: 100%;
  padding-right: 0;
  padding-left: 0;
}
.container-fluid {
  width: 100%;
  padding-right: 15px;
  padding-left: 15px;
  margin-right: auto;
  margin-left: auto;
}
.full-width {
  width: 100vw;
  position: relative;
  left: 50%;
  right: 50%;
  margin-left: -50vw;
  margin-right: -50vw;
  padding-left: 0px;
  padding-right: 0px;
}
/* .container-banner .row {
  justify-content: center;
} */
.container-top-a .row > div{
  width: 100%;
}
.container-top-b .row > div{
  width: 100%;
}
.container-bottom-a .row > div{
  width: 100%;
}
.container-bottom-b .row > div{
  width: 100%;
}
.container-footer .row > div{
  width: 100%;
}
.container-top-a > *, 
.container-top-b > *, 
.container-bottom-a > *, 
.container-bottom-b > * {
  flex: 1;
  margin: .5em 0;
}
/*////////////////////////////////////////////////////

-               TEMPLATE STRUCTURE
////////////////////////////////////////////////////*/

#stage{
  display: flex;
  flex-direction: column;
  min-height: 100vh;
}
.system-debug {
  display:block
 }
 .module {
  position: relative;
}
   
/*=================================================/
**   HEADER 
*/
header { 
  position: relative;
  z-index: 10;
}
.container-top-bar .row{
  justify-content: left;
}
.container-head-top .row{
  justify-content: center;
}
.container-nav-top .row{
  display: flex;
  justify-content: center;
}

/*
  NAVIGATION
==============================*/
#main-navbar .container-navbar{
  display: flex;
  flex-wrap: nowrap;
  }
      .navbar-item{
      display: flex;
      height: 100px;
      /* align-items: center; */
      flex-grow: 1;
      flex-shrink: 1;
      }
      #nav-left{
      /* background-color: cornflowerblue; */
      justify-content: start;
      /* align-items: center; */
      }
          .container-nav-left{
              /* background-color: #FF0000;  */
              display: flex;
              justify-content: start;  
              align-items: center;
          }
      #nav-center{
      /* background-color: rgb(192, 255, 195); */
      justify-content: center;
      /* align-items: center; */
      }
          .container-nav-center{
              /* background-color: #FF0000;  */
              display: flex;
              justify-content: center;
              align-items: center;
          }
      #nav-right{
      /* background-color: pink; */
      justify-content: flex-end;
      /* align-items: center; */
      }
          .container-nav-right{
              /* background-color:aqua; */
              display: flex;
              justify-content: flex-end;
              align-items: center;
          }

#nav-bottom{
  display: flex;
}
.container-nav-bottom .row {
  justify-content: center;
}

/*==============================================/
   SYSTEM MESSAGE CONTAINER
*/
#system-message-container joomla-alert {
  margin-top: 30px;
  margin-bottom: 30px;
}

/*==============================================/
   BREADCRUMBS
*/
#breadcrumbs {
  margin-top: 30px;
  margin-bottom: 30px;
}

/*==============================================/
   MAIN CONTENT AREA
*/
#main-content-area{
  /*background-color: rgb(255, 248, 183); */
  /* display: flex; */
  flex-flow: column wrap; 
  width:100%;
  /* border: 5px solid #e93fbe; */
}
#sidebar-left{
  /* background-color: cornflowerblue; */
  /* flex-grow: 1; */
  width:100%;
  order: 3;
}
#component-area{
  /* background-color: rgb(192, 255, 195); */
  /* flex-grow: 1; */
  width:100%;
  padding: 0;
}
#sidebar-right{
  /* background-color: pink; */
  /* flex-grow: 1; */ 
  width:100%;
  padding: 0;
}
@media (min-width: 992px) {
    #main-content-area{
      display: flex;
      flex-direction: row;
      flex-wrap: nowrap;
    }
    #sidebar-left{
      width: 21%;
      min-width: 220px;
      order: 0;
      flex-grow: 1; 
    }
    #component-area{
      width: 58%;
      flex-grow: 1; 
    }
    #sidebar-right{
      width: 21%;
      min-width: 220px;
      flex-grow: 1;
      padding-left: 15px; 
    }
}

/*
  Position Bottom B
==============================*/
.container-bottom-b{
  display: flex;
}

/*==============================================/
   FOOTER
*/
footer{
  margin-top: auto;
}


