:root {
  --color-duits: #c55118;
  --bs-primary: #0076A3; /* Links */
}

/* BASIC
-------------------------------------------------- */

body {
  font-family: 'Ubuntu', sans-serif !important;
  line-height: 1.7;
  font-weight: 300;
  background-color: var(--site-bg);
}

.bg-duits {background-color: var(--color-duits);}
.bg-header {background-color: var(--header-bg);}
.text-header {color: var(--site-bg);}

.rounded-pill {
  font-weight: 400;
  padding: 0.6rem 1.5rem;
  letter-spacing: 1px;
}

.star-bg {background-image: url(https://www.duits.co/media/star-bg-5-ms.png); background-position: 50% 50%; background-repeat: no-repeat; background-size: 45vh;
}

.btn {
  margin: 0 5px 0 0;
}

.keywords .btn {
  margin-bottom: 5px;
}
  
.btn-primary {
  color: #fff !important;
  background-color: var(--bs-primary);
  border-color: var(--bs-primary);
  border-radius: 0 !important;
  letter-spacing: 2px;
  text-transform: uppercase;
  padding: 0.5rem 1rem;
}
@media (min-width: 992px) {
  .btn-primary {
    font-size: 1.25rem;
  }
}

.btn-primary:hover {
  color: #fff;
  background-color: var(--color-duits);
  border-color: var(--color-duits);
}

.btn-primary:disabled, .btn-primary.disabled {
  color: #fff;
  background-color: #9c9d9e;
  border-color: #9c9d9e;
}

.btn-round {
  padding: 0.5rem 1.5rem;
  font-size: 1.25rem;
  border-radius: 0.3rem;
  font-weight: 400;
  padding: 0.6rem 1.5rem;
  letter-spacing: 1px;
  border-radius: 50rem !important;
}

.btn-sm, .btn-group-sm > .btn {
  padding: 0.25rem 0.5rem;
  font-size: 0.875rem !important;
}

.border-primary {border-color: var(--bs-primary) !important;}
.border-duits {border-color: var(--color-duits) !important;}

textarea {height: 100px !important;}

.form-check {
  padding-left: 0em;
  margin-bottom: 1rem;
}

.navbar-light .navbar-toggler-icon {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 80' width='40' height='40'%3E%3Crect width='100' height='20'%3E%3C/rect%3E%3Crect y='30' width='100' height='20'%3E%3C/rect%3E%3Crect y='60' width='100' height='20'%3E%3C/rect%3E%3C/svg%3E");
}

.navbar-toggler {
  padding: 0.25rem 0rem;
  font-size: 30px;
  border: 0;
}

.navbar-bg {
  background-color: var(--navbar-bg);
}

.figure-caption {
  margin-top: 0.5rem !important;
  line-height: 1.5 !important;
  font-size: 0.75em !important;
}

@media (min-width: 768px) {
  .columns {
  -webkit-columns: 2 auto; /* Chrome, Safari, Opera */
  -moz-columns: 2 auto; /* Firefox */
  columns: 2 auto;
  }
}

.accent {
  display: inline-block !important;
  background-color: var(--attention-bg) !important;
  color: var(--attention-text) !important;
  padding: 0.25rem 0.5rem !important;
  letter-spacing: 2px !important;
}

/* NAVBAR & DROPDOWN MENU
-------------------------------------------------- */

.navbar-light .navbar-nav .nav-link {
  color: var(--bs-dark);
}

.navbar-light .navbar-nav .nav-link:hover, .navbar-light .navbar-nav .nav-link:focus {
  color: var(--color-duits) !important;
}

.dropdown-item {
  padding-left: 0.8rem !important;
  padding-right: 0.15rem !important;
  white-space: pre-line !important;
}
@media (min-width: 768px) {
.dropdown-item {
  padding: 0.25rem 1rem !important;
  white-space: nowrap !important;
}
}

.dropdown-item.active, .dropdown-item:active {
  background-color: var(--color-duits) !important;
}

.dropdown-item:hover, .dropdown-item:focus {
  color: #ffffff;
  background-color: var(--color-duits) !important;
}

.nav-active {
  color: var(--color-duits) !important;
}

.dropdown-menu {
  color: var(--bs-dark);
  background-color: var(--navbar-bg);
  border: 0;
  border-radius: 0;
  border-left: 2px solid var(--color-duits);
}

.dropdown-divider {
  border-top: 1px solid var(--color-duits);
}

/* CARD
-------------------------------------------------- */

.card {
  background-color: var(--card-bg);
  color: var(--card-text);
}

.radius-0 {border-radius: 0;}

@media (min-width: 992px) {
  .card-body {
    padding-right var(--card-padding-right) !important;
    padding-left: var(--card-padding-left) !important;
  }
}
@media (min-width: 992px) {
  .cards-no-padding .card-body {
    padding-right: 0 !important;
    padding-left: 0 !important;
  }
}

.card-list {
  background-color: transparent;
}

.card-list .card-body {
  padding: 0.5rem !important;
}

.card-list a {color: var(--bs-dark);}

.card-list h2, .archive-list h2 {
  font-size: 1.25rem !important;
}

.card-list h2 span {
  text-transform: uppercase !important;
  font-size: 1rem !important;
  line-height: 2 !important;
  letter-spacing: 3px;
}

.card-list h2 span, .archive-list h2 span {
  font-weight: 300 !important;
  color: var(--card-focus);
}

.archive-list h2 span {
  font-size: 0.95rem !important;
}

.card-photo {
  color: var(--card-photo-focus) !important;
}

.title-upper h2,
.article h1 {
  text-transform: uppercase !important;
  font-size: calc(1.3rem + 0.6vw) !important;
  letter-spacing: 2px !important;
}
@media (min-width: 1200px) {
  .title-upper h2 {
    font-size: 1.75rem !important;
  }
}

.title-upper h2 span {
  font-size: 1.25rem;
  letter-spacing: 5px;
  font-weight: 300 !important;
  display: inline-block;
  margin-bottom: 8px;
  color: var(--card-focus) !important;
}

.card-img,
.card-img-top {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.card-img,
.card-img-bottom {
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}

.card:hover svg {
  margin-left: 15px;
  -moz-transition: all 0.3s;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

.card-slogan,
.card-square {
  padding-top: 3rem !important;
  padding-bottom: 3rem !important;
  background-color: transparent !important;
  justify-content: center !important;
  text-align: center !important;
}

.card-slogan h2 {
  font-size: calc(1.575rem + 3.9vw);
  font-weight: 300;
  line-height: 1.5 !important;
  margin-bottom: 3rem !important;
}
@media (min-width: 1200px) {
  .card-slogan h2 {
    font-size: 4.5rem;
  }
}

.card-square {
  padding-right: 1rem !important;
  padding-left: 1rem !important;
}
@media (min-width: 768px) {
  .card-square {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }
}
@media (min-width: 992px) {
  .card-square {
    padding-right: 3rem !important;
    padding-left: 3rem !important;
  }
}

.card-square h2 {
  font-size: calc(1.3rem + 0.6vw);
  margin-bottom: 1.5rem !important;
  letter-spacing: 5px;
  text-transform: uppercase;
}
@media (min-width: 992px) {
  .card-square h2 {
  margin-bottom: 3rem !important;
  }
}
@media (min-width: 1200px) {
  .card-square h2 {
    font-size: 1.75rem;
  }
}

.read-more {
  letter-spacing: 1px;
  text-transform: uppercase !important;
}

/* Responsive container sets height of image to prevent a jump in the page, which lowers the Google rating */
.responsive-container {
    width: 100%;
    padding-bottom: var(--img-aspect-ratio);
    position: relative;
}
.responsive-container img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.rounded-4 {border-radius: 0.5rem !important;}
.rounded-5 {border-radius: 1rem !important;}

.card-cover {
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}

/* .card-cover a {
  background-color: rgba(0,0,0,0.6);
  padding: 10px;
} */

.card-cover a:hover {
  text-decoration: underline;
}

/* CARD DISPLAY
-------------------------------------------------- */

.cards-tight, .cards-tight .row {
  --bs-gutter-x: 0.25rem;
  --bs-gutter-y: 0.25rem;
}

.cards-tight .row {
  padding-top: 0.25rem !important;
  padding-bottom: 0.25rem !important;
}

.cards {
  --bs-gutter-x: 0;
  --bs-gutter-y: 0;
}

@media (min-width: 992px) {
  .cards, .cards .row {
    --bs-gutter-x: 3rem;
    --bs-gutter-y: 3rem;
    }
  .cards .row {
    margin-top: auto !important;
    padding-bottom: 3rem !important;
    }
}

/* SECTION HEADER
-------------------------------------------------- */

.section-header {
  padding-top: 6rem;
  padding-bottom: 6rem;
  text-align: center !important;
  /* color: var(--attention-bg); */
}

.section-header h1, .section-header h2, .section-header h3 {
  text-transform: lowercase;
}

/* ARTICLE LAYOUT
-------------------------------------------------- */

/* article header for photo with data  */
.article-header {
  background-color: var(--header-bg);
}

.article-header h1 {
  margin-top: 1.5rem;
  font-size: calc(1.425rem + 2.1vw);
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: var(--header-spacing);
  text-transform: var(--header-casing);
  color: var(--header-title);
}
@media (min-width: 1200px) {
  .article-header h1 {
    font-size: 3rem;
  }
}

.article-header h1 span {
  color: var(--header-focus);
}

/* plain article header for photo with title below  */
.article-header-plain {
  margin-top: 3rem !important;
}

.article-header-plain h1 {
  margin-top: 1.5rem !important;
  margin-bottom: 1.5rem !important;
  font-size: calc(1.375rem + 1.5vw);
  font-weight: 700 !important;
  line-height: 1.2;
  letter-spacing: 5px;
  text-transform: uppercase !important;
}
@media (min-width: 1200px) {
  .article-header-plain h1 {
    font-size: 3.5rem;
  }
}

.article-header-plain h1 span {
  color: var(--header-focus);
}

.article-header-plain p {
  margin-top: 1.5rem !important;
  color: #6c757d !important;
  text-transform: uppercase !important;
  letter-spacing: 2px;
}

/* > :not(img,figure,picture) affects all elements but not img, figure or picture. Use > * to affect all elements, > p to affect only p elements  */
.article > :not(.breakout) {
  padding-right: 1rem;
  padding-left: 1rem;
  word-wrap: break-word !important;
  word-break: break-word !important;
}
@media (min-width: 992px) {
.article > :not(.breakout) {
  padding-right: 5.5rem;
  padding-left: 5.5rem;
  }
}

.article > :not(h6,.h6,h5,.h5,h4,.h4,h3,.h3,h2,.h2,h1,.h1) {
  font-size: 1.2rem; /* OR: 1.125rem (18px) */
}

.article > *, .blockquote p {
  line-height: 1.9;
}

.article > ul {
  padding-left: 2.5rem !important;
  }
@media (min-width: 992px) {
.article > ul {
  padding-left: 7rem !important;
  }
}

.article > ol {
  padding-left: 3.5rem !important;
  }
@media (min-width: 992px) {
.article > ol {
  padding-left: 8rem !important;
  }
}

.article > ul.list-unstyled, .article > ol.list-unstyled {
  padding-left: 1rem !important;
  }
@media (min-width: 992px) {
.article > ul.list-unstyled, .article > ol.list-unstyled {
  padding-left: 5.5rem !important;
  }
}

.focus {color: var(--header-focus);}
.headline {color: var(--headline);}

.headline-text {
  font-size: calc(1.575rem + 3.9vw);
  font-weight: 300;
  line-height: 1.25;
}
@media (min-width: 1200px) {
  .headline-text {
    font-size: 4.5rem;
  }
}

.attention {
  padding: 2rem 0;
  line-height: 1.5 !important;
  background-color: var(--attention-bg);
  color: var(--attention-text);
}

.attention-text {
  font-size: calc(1.3rem + 0.6vw) !important;
  font-weight: 400 !important;
}
@media (min-width: 1200px) {
  .attention-text {
  font-size: 1.75rem !important;
  }
}

.more-attention {
  padding: 2rem 0;
  line-height: 1.5 !important;
  background-color: var(--header-bg);
  color: var(--header-text);
}

.more-attention h2 {
  color: var(--header-focus);
}

.highlight {
  padding: .3em .15em;
  background-color: var(--bs-warning);
}

.blockquote > :last-child {
  margin-bottom: 2rem;
}

.blockquote-footer::before {
  content: none;
}

.blockquote-footer {
  margin-bottom: 0.5rem;
  color: var(--bq) !important;
  text-transform: uppercase;
  letter-spacing: 3px;
  font-size: 1rem;
}

.blockquote-footer span {
  font-weight: 400;
}

.blockquote div:before {
  display: block;
  font-family: Georgia, Times New Roman, Times, serif;
  content: '\201C';
  color: var(--bq);
  font-size: 12rem;
  line-height: 1rem;
  font-weight: 900;
  margin-left: -1.5rem;
  margin-right: 0rem;
  margin-top: 1.5rem;
  @media (min-width: 992px) {
  margin-left: 5.5rem;
  }
}

.blockquote-text p {
  font-size: calc(1.3rem + 0.6vw) !important;
  font-weight: 400 !important;
  line-height: 1.5 !important;
}
@media (min-width: 1200px) {
  .blockquote-text p {
  font-size: 1.75rem !important;
  }
}

.comment {
  border-left: 5px solid var(--attention-bg);
  padding-left: 1rem !important;
  margin-top: 1rem !important;
  margin-bottom: 1rem !important;
  font-size: 1.2rem; /* OR: 1.125rem (18px) */
  line-height: 1.9;
}

.comment-author {
  border-color: var(--attention-bg);
}

#cpreview {
  color: var(--bs-red);
  border-top: 5px dotted var(--bs-red);
  padding-top: 2rem;
}

.img-border {
  border: 5px var(--bs-dark) solid;
}
@media (min-width: 992px) {
.img-border {
  border: 35px var(--bs-dark) solid;
}
}

.portrait, .portrait-90, .portrait-80, .portrait-70, .portrait-60, .portrait-50 {
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.portrait-90 {width: 90%;}
.portrait-80 {width: 80%;}
.portrait-70 {width: 70%;}
.portrait-60 {width: 60%;}
.portrait-50 {width: 50%;}

.article .social {margin: 0 0.5rem;}

/* TABLES
-------------------------------------------------- */

.table {font-size: 1rem !important; line-height: 1.5 !important; border-color: var(--attention-bg); --bs-table-bg: var(--site-bg);}
.table-50 th, .table-50 td {width: 50% !important;}
.table-nowrap th {white-space: nowrap;}
.table-center th {text-align: center !important;}
th {font-weight: 400;}

.timeline th {
  white-space: nowrap;
  font-size: 1.5rem !important;
  padding-right: 1.5rem;
  font-weight: 500;
  text-transform: uppercase !important;
  text-align: center !important;
  color: var(--timeline);
}
@media (min-width: 992px) {
.timeline th {
  font-size: 3rem !important;
  letter-spacing: 1px;
  padding-right: 3rem;
  font-weight: 700;
}
}
.timeline th, .timeline td {
  padding-top: 1rem;
  padding-bottom: 1rem;
  vertical-align: middle !important;
}
@media (min-width: 992px) {
.timeline th, .timeline td {
  padding-top: 2.5rem;
  padding-bottom: 2.5rem;
}
}
.timeline {border-color: var(--timeline) !important;margin-bottom: 3rem;}

.table-text-small th, .table-text-small td{font-size: 0.75rem !important;}
@media (min-width: 992px) {
  .table-text-small th, .table-text-small td{font-size: 1rem !important;}
}

.table-hover > tbody > tr:hover a {color: var(--bs-table-hover-link);}
.table-hover > tbody > tr a:hover {color: var(--bs-table-hover-link-hover);}
.table-hover > tbody > tr:hover .btn {color: #ffffff;}
.table-hover > tbody > tr .btn:hover {color: #ffffff;}
.table-uppercase th, .table-uppercase td {text-transform: uppercase !important; letter-spacing: 1px;}

.table-duits {
  --bs-table-bg: var(--header-bg);
  --bs-table-color-type: var(--header-text);
  --bs-table-hover-bg: var(--bs-white);
  --bs-table-hover-color: var(--header-text-hover);
  border-color: var(--header-focus) !important;
  --bs-table-hover-link: var(--bs-primary);
  --bs-table-hover-link-hover: var(--color-duits);
}

.table-duits a {color: var(--header-text);}

/* LETTER SPACING
-------------------------------------------------- */

.ls-1 {letter-spacing: 1px;}
.ls-2 {letter-spacing: 2px;}
.ls-3 {letter-spacing: 3px;}
.ls-4 {letter-spacing: 4px;}
.ls-5 {letter-spacing: 5px;}

/* SEARCH
-------------------------------------------------- */

.has-search .form-control {
    padding-left: 2.85rem;
}

.has-search .form-control-feedback {
  position: absolute;
  z-index: 2;
  display: block;
  width: 2.85rem;
  height: 2.75rem;
  line-height: 2.7rem;
  text-align: center;
  pointer-events: none;
  color: #ced4da;
}

/* STICKY TOP
-------------------------------------------------- */

.sticky-top .social {margin-bottom:1.5rem;}

/* FOOTER
-------------------------------------------------- */

.social {font-size: 1.5rem;}

.footer .social {margin-right: 0.7rem;}

.footer {
  padding-top: 5rem;
  padding-bottom: 5rem;
  background-color: var(--footer-bg);
  color: var(--footer-text);
}
.footer a {color: var(--footer-text);}

.copyright {
  text-align: center !important;
  padding-top: 1rem !important;
  padding-bottom: 1rem !important;
}
.copyright a {margin-right: 1.5rem; color: var(--dark);}
.copyright a:last-child {margin-right: 0rem;}

/* PAGINATION
-------------------------------------------------- */

.page-link {
  font-weight: 500;
  color: var(--bs-primary);
  background-color: inherit;
  border: 0;
}

.page-link:hover {
  color: var(--bs-white);
  background-color: var(--color-duits);
}

.page-item.active .page-link {
  background-color: var(--bs-primary);
  border-color: var(--bs-primary);
}

.disabled .page-link {
  background-color: inherit !important;
}

@media (min-width: 992px) {
.pagination .page-link {
  padding: 0.75rem 1.5rem;
  font-size: 1.25rem;
  }
.pagination .page-item:first-child .page-link {
  border-top-left-radius: 0.3rem;
  border-bottom-left-radius: 0.3rem;
  }
.pagination .page-item:last-child .page-link {
  border-top-right-radius: 0.3rem;
  border-bottom-right-radius: 0.3rem;
  }
}


/* LINKS
-------------------------------------------------- */

a, .link {outline: none; color: var(--bs-primary); text-decoration: none;}
.links-dark a {color: var(--bs-dark);}
.attention a {color: var(--attention-text); text-decoration: underline;}
a:hover {color: var(--color-duits);}