  /*::gradiente::/*
  /*RESET*/
  body, html {
      height: 100%;
      color: #333;
  }
  body {
      display: flex;
      flex-direction: column;
  }
  .content {
      flex: 1 0 auto;
  }
  .footer {
      flex-shrink: 1;
  }
  a {
      text-decoration: none;
  }
  h1, h2, h3, h4, h5, p {
      margin-top: 0;
  }
  p {
      margin-bottom: 1em;
  }
  figure {
      margin: 0;
  }
  /*UTILITY*/
  .spacer-h-1 {
      margin-left: 1em;
      margin-right: 1em;
  }
  .spacer-h-2 {
      margin-left: 2em;
      margin-right: 2em;
  }
  .spacer-v-1 {
      margin-top: 1em;
      margin-bottom: 1em;
  }
  .spacer-v-2 {
      margin-top: 2em;
      margin-bottom: 2em;
  }
  .spacer-bottom-3 {
      margin-bottom: 3em;
  }
  .text-container {
      margin-left: 15em;
  }

  /*HEADER*/
  .main-header, #fixed-header {
      padding: 2em 2em 3em;
      margin: 0;
  }
  #fixed-header {
      position: fixed;
      top: 0;
      z-index: 5;
      width: 100%;
      background: linear-gradient(to bottom, #fff, rgba(255,255,255,1) 80%, rgba(255,255,255,0));
      padding: 2em 2em 3em;
      margin: 0;
      z-index: 3;
  }
  /*placeholder logo*/
  svg {
      max-width: 100%;
  }
  .logo {
      height: 1em;
  }
  .logo a {
      display: block;
      width: 45%;
      max-height: 70px;
      position: relative;
  }
  .logo a:hover #mono-logo {
      display: none;
  }
  .logo a:hover #color-logo {
      display: block !important;
  }



  /*Navbar*/
  header nav {
    z-index: 3;
  }
  header nav ul {
      display: flex;
      width: 100%;
      justify-content: space-between;
      background: #333;
      margin: 0;
      padding: .15em 2em 0;
      list-style: none;
  }
  header nav ul a {
      color: #fff;
      text-transform: uppercase;
      font-weight: 500;
  }
  header nav ul a:hover {
     color: #ccc;
  }
  .nav-toggle, #close-nav {
      display: none;
      z-index: 3;
  }

  @media screen and (max-width: 64em) {
      .logo a {
          width: 85%;
          z-index: 9;
      }

      header nav {
          display: none;
          position: absolute;
          width: 100vw;
          height: 100vh;
          left: 0;
          top: 0;
          background: #111;
      }
      header nav ul {
          flex-direction: column;
          margin: 6em auto;
          padding: 1em 0 0;
          border-top: 2px solid #fff;
          width: calc(100% - 3em);
          border-bottom: 2px solid #fff;
      }
      ul li {
          margin: 0 0 1.5em;
      }
      .nav-toggle {
          display: block;
          position: relative;
  margin-left: auto;
      }
  button.nav-toggle {
      max-width: 3em;
  }
      #close-nav {
          width: 2.4em;
          margin-left: auto;
      }
      #close-nav rect {
          fill: #fff;
      }

  }
  /*GRID*/
  @supports( grid-area: auto ) {
      .the-grid {
          display: grid;
          grid-template-columns: repeat(3, 1fr [col]);
          grid-gap: 1em;
          align-items: stretch;
          min-height: 0;
          min-width: 0;
          grid-auto-columns: min-content;
          margin-top: 7em;
      }
      .the-grid .block {
          position: relative;
          overflow: hidden;
          min-width: 0;
          float: none;
          width: 100%;
          background: #fafafa;
      }
          .block:hover img {
            opacity: 0;
          }
      .block:hover a::after {
          content: "";
          display: block;
          width: 100%;
          height: 100%;
          top: 0;
          left: 0;
          position: absolute;
          background-image: radial-gradient(
                circle at top left,
                rgba(133, 229, 213, 1),
                rgba(133, 229, 213, 0.1),
                transparent
             ),
             radial-gradient(
                farthest-side at bottom,
                rgba(255, 147, 133, 1),
                rgba(255, 147, 133, 0.6),
                transparent
             ),
              radial-gradient(
                circle at top right,
                rgba(255, 240, 105, 1),
                rgba(255, 240, 105, 0.5),
                transparent
             )
      }

      .block h2, .slide-block h2 {
          position: absolute;
          top: 1rem;
          left: 1rem;
          margin: 0;
          padding: 0 .5em;
          background: #fff;
          color: #111;
          line-height: 1.4;
          font-stretch: expanded;
          z-index: 2;
          max-width: 90%;
      }
      .block--large {
        grid-area: span 2 / span 2;
      }
      .large {
          min-width: calc(100% + 1rem);
      }
      .block--large h2 {
          font-size: 2.5em;
          max-width: calc(100% - 1.8em);
      }
  }
  @media screen and (max-width: 40em) {
    .spacer-h-2 {
      margin-left: 1em;
      margin-right: 1em;
  }
    .main-header, #fixed-header {
          padding: 2em 1em 3em;
          margin-left: 0;
          margin-right: 0;1
      }
    .the-grid {
      grid-template-columns: repeat(1, 1fr [col]);
    }
    .the-grid .block {
      grid-column: auto !important;
      grid-row: auto !important;
    }
    .block h2, .large h2 {
      font-size: 1.15em;
    }

  }
  /*SLIDER*/
  .slide-block {
      position: relative;
      display: block;
  }
  .section-title {
      padding: 0 2em;
      text-transform: uppercase;
      border-top: 2px solid #111;
      border-bottom: 2px solid #111;
  }
  .section-title h3 {
      margin: 0;
  }


  /*UPDATE FORM*/
  .edit-form-container {
      width: 60vw;
      margin: auto;
      display: none;
      padding: 1em;
      border: 1px solid steelblue;
      border-radius: 4px;
  }
  .acf-button {
      padding: 6px 20px;
      border-radius: 2px;
      border: 1px solid steelblue;
  }
  .edit-btn {
      position: fixed;
      bottom: 2%;
      right: 2em;
      z-index: 9;
  }
  #edit-feed, #save-feed, #edit-posts {
      border: 1px solid steelblue;
      color: steelblue;
      padding: 10px;
      cursor: pointer;
      background: #fff;
  }
  .block:hover .feedform {
      opacity: 1;
  }
  .feedform {
      position: absolute;
      z-index: 99;
      bottom: 0;
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between;
      bottom: 2%;
      left: 2%;
      opacity: 0;
      width: 200px;
  }
  .feedform div {
      width: 44%;
  }
  .feedform span {
      display: block;
  }
  .feedform input {
      width: 100%;
      border: 0;
      padding: 10px;
  }
  #add-to-feed {
      background: #fafafa;
      border: 1px solid #eee;
      width: 50%;
      border-radius: 4px;
      margin: auto;
      display: flex;
      max-height: 300px;
      overflow: scroll;
  }
  #add-to-feed ul {
      width: 50%;
      list-style: none;
  }
  #add-to-feed li {
    padding: 5px 1em;
  }
  #add-to-feed li:hover {
    border: 1px solid #eee;
    background: #fff;
    cursor: pointer;
  }
  #add-to-feed li:hover::after {
    color: #fff;
    padding: 5px;
    line-height: .5;
    border-radius: 100%;
    height: 19px;
    width: 19px;
    display: inline-block;
    margin-left: 1em;
  }
  .all-posts li:hover::after {
    content: "+";
    background: forestgreen;
  }
  .posts li:hover::after {
    content: "-";
    background: #e65;
  }
  /*SLICK*/
  .slider {
      margin-left: 1.1em;
      margin-right: 2em;
      position: relative;
  }
  .slider .slick-arrow {
      position: absolute;
      top: 0;
      height: 100%;
      width: 5em;
      z-index: 2;
      margin: 0;
      cursor: pointer;
  }
  .slick-arrow.prev {
      left: 1em;
      background: linear-gradiente(90deg,rgba(255,255,255,1), rgba(255,255,255,0));
  }
  .slick-arrow.next {
      right: 0;
      background: linear-gradiente(-90deg,rgba(255,255,255,1), rgba(255,255,255,0));
  }
  .slick-slide div {
      margin: 0 .5em;
      /*border-left: .25em solid #fff;
      border-right: .25em solid #fff;*/
  }
  .prev::after, .next::after {
      content: "<";
      font-weight: bold;
      font-size: 1.5em;
      position: absolute;
      top: 45%;
      bottom: 55%;
      margin: auto;
      height: 1em;
      width: 1em;
      left: 1em;
  }
  .next::after {
      content: ">";
      right: .4em;
  }

  /*PAGE*/
  .page h1 {
      font-size: 3em;
      margin: 0;
      line-height: 1.4;
      font-stretch: expanded;
  }
  .tag-container {
      display: flex;
      margin: 2em 0;
      width: 100%;
      text-transform: uppercase;
      border-top: 2px solid #111;
      border-bottom: 2px solid #111;
      padding-top: 3px;
  }
  .tag-container .simplesocialbuttons {
    margin: 0 10px 0 0;
  }
  .tag-container a {
      margin-right: 1em;
  }
  .hero img {
      width: 100%; /* FOR DEMO */
  }
  .text-block p {
      width: 90%;
  }
  .text-block h2 {
      font-weight: bold;
      font-size: 1em;
  }
  .text-block figure {
      margin: 0;
  }
  @media screen and (max-width: 40em) {
      .page h1 {
          font-size: 1.7em;
          width: 100%;
      }
      .text-block p {
          width: 100%;
      }


  }
  /*MAP*/
  .map-container {
      border-right: 2px solid #000;
      padding: 3em;
  }
  .map-container g {
      cursor:pointer;
  }
  .map-text {
      padding: 3em;
  }
  .legenda {
      margin: auto 0 2em;
  }
  .legenda figure {
      width: 2em;
      margin: 8px 8px 0 0;
  }
  .legenda section {
      display: flex;
  }
  .legenda section span {
      width: 70%;
  }
  .estab path {
      fill: #3066de;
  }
  .pion path {
      fill: #ff9485;
  }
  figure.click-icon {
      width: 5em;
      margin: 9em auto;
  }
  .grupo-sint {
      display: none;
  }
  .group-logo {
      width: 60%;
  }
  .group-logo .assinatura {
      margin-bottom: 8px;
  }
  .group-logo .at {
      width: 1.8em;
     display: inline-block;
  }
  span.city-name {
      display: inline-block;
      font-size: 2.3em;
      line-height: 0;
      font-stretch: expanded;
  }
  .grupo-sint a {
      display: block;
  }
  .grupo-sint h4 {
      margin: 0;
  }
  .grupo-sint div {
      margin: 1.5em 0;
  }
  .grupo-local-content {
      margin: 2em 0;
  }
  .grupo-ext h4 {
      font-size: 1.8em;
      font-weight: normal;
      text-transform: uppercase;
      margin: .5em 0;
  font-stretch: expanded;
      font-weight: bold;
      color: #ff9485;
  }
  #braga h4, #porto h4, #coimbra h4, #lisboa h4 {
      color: #3066de;
  }
  .grupo-ext {
      border-top: 2px solid #000;
  }
  .grupo-ext td:first-of-type {
      width: 70%;
  }
  .grupo-ext a {
      display: block;
  }
  .grupo-ext div {
      margin: 1.4em 0;
  }
  .grupo-ext span {
      font-size: 1em;
      display: block;
  }
  .grupo-ext table.wp-block-table {
      width: 80%;
  }
  .city-nav ul {
      padding: 0;
      list-style: none;
  }
  .city-nav {
      position: sticky;
      right: 2em;
      top: 6em;
      border-top: 2px solid #000;
      border-bottom: 2px solid #000;
      width: 80%;
      margin-left: auto;
  }
  @media screen and (max-width: 40em) {
      .map-container {
          padding: .2em;
      }
      .legenda section span {
          font-size: .8em;
      line-height: 1.2;
      margin-top: 7px;
      }
      .map-text {
          padding: .3em 0 0 .5em;
          font-size: 90%;
      }
      .map-text h3 {
          font-size: 1em;
          line-height: 1;
      }
      figure.click-icon {
          margin: 4em auto;
      }
      section.grupo-sint {
          font-size: 90%;
      }
      .grupo-sint div {
          margin: 1em 0;
      }
      .group-logo {
          width: 90%;
      }
      .group-logo .at {
          width: 1em;
      }
      .group-logo .assinatura {
          margin: 0;
      }
      .group-logo .city-name {
          font-size: 1.3em;
      }
      .city-nav {
          display: none;
      }
  .grupo-ext td {
      border-bottom: 1px solid #eee;
  }


  }
  /*SCROLLTOP*/
  .scrolltop {
      position: sticky;
      bottom: 1em;
      text-align: right;
      margin-right: 1.5em;
  }
  .scrolltop button {
      width: 1.8em;
      height: 2em;
      cursor: pointer;
      z-index: 2;
  }
  /*SUBSCRIBE*/
  .subscribe-btn {
    position: fixed;
    width: 100px;
    border-radius: 40% 52% 39% 47%;
    cursor: pointer;
    font-weight: bold;
    font-size: .8em;
    height: 70px;
    line-height: 1.3;
    z-index: 3;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
    right: .5em;
    box-shadow: 0px 4px 12px -4px rgba(0,0,0,0.54);
    transition: all .5s ease;
  }
  .subscribe-btn:hover {
    transform: scale(1.1);
  }
  .subscribe-btn.newsletter {
      background: #83e5d5;
      top: 35%;
  }
  .subscribe-btn.newsletter.jump {
      top: 10%;
  }
  .subscribe-btn.funding {
      background: #fff069;
      top: 50%;
  }
  .subscribe-btn.funding.jump {
    top: 25%;
  }
  .subscribe-btn.follow {
      background: #ff9385;
      top: 65%;
  }
  .subscribe-btn.follow.jump {
    top: 40%;
  }
  .subscribe-btn a {
      color: #222;
      display: block;
  }


  /*FOOTER*/
  .footer-info {
      background: #111;
      color: #fff;
      padding: 2em 4em 2em;
      margin-top: 3em;
  }
  .footer h5 {
      margin: 0;
      font-size: 1em;
  }
  .footer p {
      margin: 0;
  }
  footer p a {
      color: #fff;
      text-decoration: underline;
  }
  footer a:hover {
     color: #ccc;
  }
  footer .gradiente {
      height: 2em;
      width: 100%;
      background: linear-gradient(90deg, #ff9385, #83e5d5, #fff069);
  }
  @media screen and (max-width: 40em) {
      .scrolltop button {
          right: 0;
          width: 2em;
          background: #000;
          border-radius: 0;
          height: 3em;
          padding: 7px;
          bottom: 2em;
      }
      .scrolltop {
      margin-right: 0;
      }
      .scrolltop button polygon {
          fill: #fff;
      }
      .subscribe-btn.funding {
        position: absolute;
        top: 1.5%;
        right: 25%;
      }
      .subscribe-btn.newsletter, .subscribe-btn.follow {
        position: static;
        float: left;
      }
      .subscribe-btn.newsletter {
        margin-left: 2em;
        margin: 0 2em 0 4em;
      }
  }

  /*listing*/
  .listing {
      padding-right: 1em;
  }
  .listing-block {
      border-bottom: 1px solid #eee;
      margin-bottom: 2em;
  }
  .listing-block figure {
      margin-right: 1em;
  }
  .listing-block h3 {
      margin: 0;
      color: #0a0a0a;
  }
  .listing-block-tag {
      display: inline-block;
      margin-right: .5em;
  }
  .listing-block-tag p {
      margin: 0;
  }
  .listing-block span {
      color: #727272;
      font-style: italic;
      display: block;
  }
  .tag-listing ul {
      list-style: none;
  }
  .archive-pre-title {
      margin: 0;
  }

  .dicas .uagb-section__inner-wrap {
    list-style: none;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .dicas h3 {
    width: 100%;
  }
  .dicas__block {
    width: 48%;
    min-width: 300px;
    text-align: center;
    border: 1px solid #83e5d5;
    border-radius: 2px;
    margin: .85em 0;
    box-shadow: 0px 8px 8px -4px rgba(50,50,50,0.4);
    padding: .5em .5em 1em;
  }
  .dicas__block strong {
    display: block;
    position: relative;
    z-index: 2;
  }
  .dicas__block strong::after {
    content: "";
    width: 80%;
    height: 11px;
    background: #83e5d5;
    display: block;
    position: absolute;
    bottom: 1px;
    z-index: -1;
    margin: auto;
    opacity: .8;
    left: 0;
    right: 0
  }
