/*
 Theme Name:   Repaircafe
 Theme URI:    https://repaircafedanmark.dk
 Description:  Child theme for Lodestar
 Author:       Symbiotisk
 Author URI:   https://symbiotisk.dk
 Template:     lodestar
 Version:      1.0.0
 Text Domain:  repaircafe
*/
body {
  overflow-x: hidden;
}

.blog #main article.post {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 20px 2fr;
  grid-template-columns: 1fr 2fr;
  grid-gap: 20px;
  padding-bottom: 3em;
}
.blog #main article.post .entry-content, .blog #main article.post footer {
  -ms-grid-column: 1;
  -ms-grid-column-span: 2;
  grid-column: 1/3;
}
.blog #main article.post .entry-content:after, .blog #main article.post footer:after {
  display: none;
}
.blog #main article.post footer {
  padding-bottom: 0;
  border-bottom: 1px solid #999;
  width: 100%;
  text-align: center;
}
.blog #main article.post footer > :last-child {
  padding-bottom: 2em;
}
.blog #main article.post:last-of-type footer {
  border: none;
}

.more-link {
  display: block;
  margin-top: 20px;
  max-width: 104px;
}

body,
button,
input,
select,
textarea,
.entry-content div.sharedaddy h3,
.entry-content div.sharedaddy h3.sd-title,
.entry-content div#jp-relatedposts h3.jp-relatedposts-headline {
  font-family: "Open Sans", "Helvetica Neue", helvetica, arial, sans-serif;
}

.cafes-list {
  display: -ms-grid;
  display: grid;
  grid-gap: 20px;
  margin: 0 0 40px;
}

@media screen and (min-width: 768px) {
  .cafes-list {
    -ms-grid-columns: 1fr 20px 1fr 20px 1fr;
    grid-template-columns: 1fr 1fr 1fr;
  }
}
.d-flex {
  display: -webkit-box !important;
  display: -ms-flexbox !important;
  display: flex !important;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  display: flex !important;
  justify-content: center;
  background: #f2f2f2;
  padding: 20px 15px;
  margin-bottom: -20px;
}

.reset-map {
  background: transparent;
  color: #666;
  text-transform: none;
  padding: 0.75em 1.5em 0.7em;
}

.reset-map:hover {
  background: transparent;
  opacity: 0.85;
}

.cafe {
  border: 1px solid black;
  padding: 20px;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}

.cafe img {
  display: block;
  margin: 0 auto;
  max-width: 100px;
}

.cafe h3 {
  text-align: center;
  max-width: 220px;
  margin-left: auto;
  margin-right: auto;
}

.cafe h4 {
  letter-spacing: 0.05rem;
  font-size: 18px;
  margin-bottom: 0;
  font-weight: normal;
  text-transform: none;
}

.map-count {
  text-align: center;
  font-size: 20px;
  margin: 20px;
}

.links {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.filter-box input + button {
  font-family: sans-serif;
  padding: 0.75em 1.5em 0.7em;
  position: relative;
  top: -1px;
}

@media screen and (min-width: 768px) {
  .filter-box input {
    width: 300px;
  }
}
@media screen and (max-width: 767px) {
  .filter-box div {
    width: 100%;
  }
  .filter-box input {
    width: 75%;
  }
  .filter-box {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
}
.edit {
  text-align: center;
  font-style: italic;
  margin-top: 20px;
}

.edit a {
  color: red;
}

/* accordion styles */
.accordion {
  background-color: #f6f6f6;
  color: #616161;
  margin: 2rem 0 3rem;
}
.accordion .active > a {
  text-decoration: none;
}
.accordion .active > a:before {
  -webkit-transform: translateY(-50%) rotate(180deg);
          transform: translateY(-50%) rotate(180deg);
}
.accordion > li > a, .accordion .accordion .result_table .opener {
  display: block;
  padding: 15px 40px 15px 25px;
  margin-bottom: 0;
  font-size: 16px;
  line-height: 24px;
  font-weight: 700;
  color: #333;
  background: #eee;
  border-bottom: 1px solid #d7d7d7;
  position: relative;
}
.accordion .opener {
  font-family: "Work Sans", "Helvetica Neue", helvetica, arial, sans-serif;
  font-size: 1.125rem;
  letter-spacing: 0.1rem;
  text-transform: uppercase;
}
.accordion > li > a:hover, .accordion .accordion .result_table .opener:hover {
  text-decoration: none;
  background: #222;
  color: #fff;
}
.accordion > li > a:before, .accordion .accordion .result_table .opener:before {
  content: "";
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%) rotate(90deg);
          transform: translateY(-50%) rotate(90deg);
  right: 20px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 4px 4px 4px;
  border-color: transparent transparent #333 transparent;
}
.accordion li:hover .opener:before {
  border-color: transparent transparent #fff transparent;
}
.accordion .slide {
  padding: 35px 25px 30px;
}
.accordion .slide a {
  color: #222;
}
.accordion .slide a[type="application/pdf"]:after, .accordion .slide a[href$=".pdf"]:after {
  content: "\f1c1";
  display: inline-block;
  font-family: "FontAwesome";
  border-bottom: none;
  margin-left: 5px;
}
.accordion .slide a[href$=".xls"]:after,
.accordion .slide a[href$=".xlsx"]:after {
  content: "\f1c3";
  display: inline-block;
  font-family: "FontAwesome";
  border-bottom: none;
  margin-left: 5px;
}
.accordion .slide a[href$=".ppt"]:after,
.accordion .slide a[href$=".pptx"]:after {
  content: "\f1c4";
  display: inline-block;
  font-family: "FontAwesome";
  border-bottom: none;
  margin-left: 5px;
}
.accordion .slide a[href$=".key"]:after {
  content: "\f016";
  display: inline-block;
  font-family: "FontAwesome";
  border-bottom: none;
  margin-left: 5px;
}
.accordion .slide a[href$=".png"]:after,
.accordion .slide a[href$=".jpg"]:after,
.accordion .slide a[href$=".jpeg"]:after,
.accordion .slide a[href$=".ai"]:after,
.accordion .slide a[href$=".eps"]:after {
  content: "\f1c5";
  display: inline-block;
  font-family: "FontAwesome";
  border-bottom: none;
  margin-left: 5px;
}
.accordion .slide a[type="application/application/msword"]:after,
.accordion .slide a[type="application/vnd.openxmlformats-officedocument.wordprocessingml.document"]:after,
.accordion .slide a[href$=".doc"]:after,
.accordion .slide a[href$=".docx"]:after {
  content: "\f1c2";
  display: inline-block;
  font-family: "FontAwesome";
  border-bottom: none;
  margin-left: 5px;
}
.accordion .accordion-title {
  display: block;
  font-size: 20px;
  line-height: 24px;
  font-weight: 700;
  color: #616161;
  margin-bottom: 10px;
}
.accordion .btn-list li {
  display: inline-block;
  vertical-align: top;
  margin-right: 5px;
  margin-bottom: 10px;
}

h2 + .accordion, h3 + .accordion, h4 + .accordion {
  margin-top: 24px;
}

.text-box {
  background-color: #f6f6f6;
  font-size: 12px;
  line-height: 19px;
  padding: 30px 15px 5px;
}

.text-box .text-title {
  display: block;
  font-size: 28px;
  line-height: 34px;
  font-weight: 700;
  color: #616161;
  margin-bottom: 10px;
}

#content ul:not(.accordion), .content-block ul:not(.accordion), .btn-list.small, .accordion, .accordion .btn-list, .color-codes .color-category, .color-codes .color-codes-indicator, .social-networks ul, #nav ul, .post .btn-list, .live-stream-list ul, .news-section ul.tabset, #content .news-section ul.tabset, .news-section .tab .news-list, #content .news-section .tab .news-list, .tabset-block ul, .tabset-block .main-tabs, .sponsors-list, .post-sorting .right-block .sorting-list, .post-single .btn-list, #footer .footer-nav ul, #footer .footer-social-nav ul {
  list-style: none;
}

.single-cafes .site-branding img {
  border-radius: 50%;
  max-width: 200px;
  height: auto;
}
@media screen and (max-width: 60em) {
  .single-cafes .site-branding img {
    max-width: 100px;
  }
}
.single-cafes .custom-logo-link {
  pointer-events: none;
}

.entry-content ul {
  list-style: circle;
}
.entry-content ol {
  list-style: decimal;
}

.header-top .wrap {
  max-width: calc(100vw - 1em);
}
@media screen and (min-width: 900px) {
  .header-top .wrap a {
    font-size: 14px;
  }
  .header-top .wrap .main-navigation {
    width: 85%;
  }
  .header-top .wrap .site-top-content {
    width: 15%;
    min-width: 300px;
  }
}

@media screen and (max-width: 768px) {
  .entry-content section {
    max-width: 100%;
    overflow-x: auto;
  }
}

@-webkit-keyframes opacity {
  0% {
    opacity: 0.25;
  }
  20% {
    opacity: 0.5;
  }
  80% {
    opacity: 0.75;
  }
  100% {
    opacity: 1;
  }
}

@keyframes opacity {
  0% {
    opacity: 0.25;
  }
  20% {
    opacity: 0.5;
  }
  80% {
    opacity: 0.75;
  }
  100% {
    opacity: 1;
  }
}
.animate-opacity, .environment-calculator .environment-results .result.television svg .fa-primary {
  -webkit-animation-name: opacity;
          animation-name: opacity;
  -webkit-animation-duration: 2s;
          animation-duration: 2s;
  -webkit-animation-iteration-count: 2;
          animation-iteration-count: 2;
}

@-webkit-keyframes shake {
  10%, 90% {
    -webkit-transform: translate3d(-1px, 0, 0);
            transform: translate3d(-1px, 0, 0);
  }
  20%, 80% {
    -webkit-transform: translate3d(2px, 0, 0);
            transform: translate3d(2px, 0, 0);
  }
  30%, 50%, 70% {
    -webkit-transform: translate3d(-4px, 0, 0);
            transform: translate3d(-4px, 0, 0);
  }
  40%, 60% {
    -webkit-transform: translate3d(4px, 0, 0);
            transform: translate3d(4px, 0, 0);
  }
}

@keyframes shake {
  10%, 90% {
    -webkit-transform: translate3d(-1px, 0, 0);
            transform: translate3d(-1px, 0, 0);
  }
  20%, 80% {
    -webkit-transform: translate3d(2px, 0, 0);
            transform: translate3d(2px, 0, 0);
  }
  30%, 50%, 70% {
    -webkit-transform: translate3d(-4px, 0, 0);
            transform: translate3d(-4px, 0, 0);
  }
  40%, 60% {
    -webkit-transform: translate3d(4px, 0, 0);
            transform: translate3d(4px, 0, 0);
  }
}
.animate-shake, .environment-calculator .environment-results .result.driving svg {
  -webkit-animation: shake 0.82s infinite cubic-bezier(0.36, 0.07, 0.19, 0.97) both;
          animation: shake 0.82s infinite cubic-bezier(0.36, 0.07, 0.19, 0.97) both;
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-perspective: 1000px;
          perspective: 1000px;
  -webkit-animation-iteration-count: 5;
          animation-iteration-count: 5;
}

.animate-bounce, .environment-calculator .environment-results .result.beef svg {
  -webkit-animation: bounce 2s ease 2;
          animation: bounce 2s ease 2;
}

@-webkit-keyframes bounce {
  70% {
    -webkit-transform: translateY(0%);
            transform: translateY(0%);
  }
  80% {
    -webkit-transform: translateY(-15%);
            transform: translateY(-15%);
  }
  90% {
    -webkit-transform: translateY(0%);
            transform: translateY(0%);
  }
  95% {
    -webkit-transform: translateY(-7%);
            transform: translateY(-7%);
  }
  97% {
    -webkit-transform: translateY(0%);
            transform: translateY(0%);
  }
  99% {
    -webkit-transform: translateY(-3%);
            transform: translateY(-3%);
  }
  100% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}

@keyframes bounce {
  70% {
    -webkit-transform: translateY(0%);
            transform: translateY(0%);
  }
  80% {
    -webkit-transform: translateY(-15%);
            transform: translateY(-15%);
  }
  90% {
    -webkit-transform: translateY(0%);
            transform: translateY(0%);
  }
  95% {
    -webkit-transform: translateY(-7%);
            transform: translateY(-7%);
  }
  97% {
    -webkit-transform: translateY(0%);
            transform: translateY(0%);
  }
  99% {
    -webkit-transform: translateY(-3%);
            transform: translateY(-3%);
  }
  100% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
.animate-pop, .cat-img, .environment-calculator .environment-results .result.large svg, .environment-calculator .environment-results .result.small {
  -webkit-animation-duration: 1.25s;
          animation-duration: 1.25s;
  -webkit-animation-iteration-count: 1;
          animation-iteration-count: 1;
  -webkit-animation-name: animate-pop;
          animation-name: animate-pop;
}

@-webkit-keyframes animate-pop {
  0% {
    opacity: 0;
    -webkit-transform: scale(0.5, 0.5);
            transform: scale(0.5, 0.5);
  }
  100% {
    opacity: 1;
    -webkit-transform: scale(1, 1);
            transform: scale(1, 1);
  }
}

@keyframes animate-pop {
  0% {
    opacity: 0;
    -webkit-transform: scale(0.5, 0.5);
            transform: scale(0.5, 0.5);
  }
  100% {
    opacity: 1;
    -webkit-transform: scale(1, 1);
            transform: scale(1, 1);
  }
}
@media screen and (min-width: 60em) {
  .page-template-template-environmental .custom-header {
    height: calc(33vh + 144px);
    overflow: hidden;
  }
  .page-template-template-environmental .custom-header .custom-header-image {
    margin-top: 0 !important;
    height: calc(33vh + 144px);
    padding: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .page-template-template-environmental .custom-header .custom-header-image h1 {
    font-size: 2vw;
  }
  .page-template-template-environmental .custom-header .custom-header-image .site-branding {
    margin-top: 72px;
  }
  .page-template-template-environmental .custom-header .custom-header-image .site-logo-link img {
    max-height: 5vw;
  }
}

.environment-calculator {
  font-size: 20px;
  margin-top: 2rem;
  margin-bottom: 4rem;
}
.environment-calculator select, .environment-calculator option {
  font-size: 20px;
}
.environment-calculator select {
  padding: 0.5rem;
}
.environment-calculator .environment-label {
  margin-bottom: 1rem;
}
.environment-calculator .select-row {
  text-align: center;
  margin-bottom: 2rem;
}
.environment-calculator .select-row label {
  display: block;
}
.environment-calculator #weight-input {
  margin: 2vw auto 1vw;
}
.environment-calculator #weight-input button {
  position: relative;
  margin-top: -2px;
  font-size: 18px;
  border: 1px solid black;
  margin-left: 10px;
}
@media screen and (max-width: 767px) {
  .environment-calculator #weight-input {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1fr 0 auto;
    grid-template-columns: 1fr auto;
    grid-gap: 0;
  }
  .environment-calculator #weight-input label {
    -ms-grid-column: 1;
    -ms-grid-column-span: 2;
    grid-column: 1/3;
    text-align: center;
    padding-left: 0 !important;
  }
  .environment-calculator #weight-input input {
    max-width: initial !important;
    padding-right: 2.5rem !important;
  }
  .environment-calculator #weight-input span {
    margin-left: -2rem;
  }
  .environment-calculator #weight-input button {
    margin-top: 1rem;
    margin-left: 0;
    -ms-grid-column: 1;
    -ms-grid-column-span: 2;
    grid-column: 1/3;
  }
}
.environment-calculator #weight-input label, .environment-calculator #weight-input span {
  padding: 5px 1rem;
}
.environment-calculator #weight-input input {
  font-size: 20px;
  padding: 0.75rem 0.25rem 0.76rem 1rem;
  text-align: right;
  max-width: 200px;
  border-right: 0;
}
.environment-calculator #weight-input span {
  border: 1px solid #bbb;
  border-left: 0;
  display: inline-block;
  padding: 0.75rem 1rem 0.76rem 0;
}
.environment-calculator #weight-input input:focus + span {
  border-color: #000;
}
.environment-calculator .environment-results {
  padding: 5vh 0;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr;
  grid-template-columns: 1fr;
  grid-gap: 5rem;
}
@media screen and (min-width: 768px) {
  .environment-calculator .environment-results {
    -ms-grid-columns: 1fr 3rem 1fr 3rem 1fr;
    grid-template-columns: 1fr 1fr 1fr;
    grid-gap: 3rem;
  }
}
.environment-calculator .environment-results .result {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  font-family: "Work Sans";
}
.environment-calculator .environment-results .result svg {
  max-height: 120px;
  margin: 0 auto;
}
.environment-calculator .environment-results .result.small svg {
  max-height: 60px;
  margin-bottom: 1rem;
}
.environment-calculator .environment-results .result .result-number {
  font-size: clamp(40px, 767px, 2vw);
}
@media screen and (min-width: 768px) {
  .environment-calculator .environment-results .result.large {
    -ms-grid-column: 1;
    -ms-grid-column-span: 3;
    grid-column: 1/4;
  }
}
.environment-calculator .environment-results .result.large label {
  margin-top: 20px;
}
.environment-calculator .environment-results .result.large .result-number {
  font-size: clamp(60px, 767px, 3vw);
}
.environment-calculator .environment-results .result.small {
  -webkit-animation-iteration-count: 1;
          animation-iteration-count: 1;
}
.environment-calculator .environment-results .result.small svg {
  -webkit-animation-delay: 1s;
          animation-delay: 1s;
}
.environment-calculator .environment-results svg {
  fill: currentcolor;
}

.reset {
  margin: auto;
  text-align: center;
}
.reset button {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 8px;
  margin: 1rem auto;
  background: white;
  color: black;
}
.reset button svg {
  width: 20px;
  height: 20px;
  fill: black;
}
*--------------------------------------------------------------
# Links
--------------------------------------------------------------*/
a,
a:visited {
	color: #0000ff;
	text-decoration: underline;
}

section table th + th, section table th + td, section table td + th, section table td + td {
  text-align: right;
}
section table.emmissions-total th, section table.emmissions-total td {
  text-align: right;
}

.cat-img {
  display: none;
  max-height: 120px;
  margin: 0 auto;
  -webkit-animation-iteration-count: 1;
          animation-iteration-count: 1;
}
.cat-img svg {
  -webkit-animation-delay: 1s;
          animation-delay: 1s;
}

.cat-img-wrapper {
  text-align: center;
  margin-top: 0 auto;
}