/* stylelint-disable selector-list-comma-newline-after */

body[data-theme="light"] {
  --bg-color: white;
  --text-color: black;
}

body[data-theme="dark"] {
  --bg-color: #202124;
  --text-color: white;
}

.form-control::placeholder {
  color: #a9a9a9;
}

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

.fw-300 {
  font-weight: 300;
}

.fw-700 {
  font-weight: 700;
}

.form-control,
.form-control:focus {
  background-color: var(--input-bg);
  color: var(--input-text);
}

.modal-content {
  background-color: var(--bg-color);
  color: var(--input-text);
  border-color: #777;
  border-width: 1;
  border-style: solid;
}

.jumbotron {
  background: url(../ggbridge.webp);
  background-size: cover;
  background-position: 0;
}

.container {
  width: 75%;
}

.header-logo {
  font-family: "Open Source Sans", sans-serif;
  font-weight: 700;
  font-size: 2.25rem;
}

.header-logo:hover {
  text-decoration: none;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: "Open Source Sans", sans-serif;
}

.playfair {
  font-family: "Open Source Sans", sans-serif;
}

.display-4 {
  font-size: 2.5rem;
}
@media (min-width: 768px) {
  .display-4 {
    font-size: 3rem;
  }
}

.form-control {
  resize: none;
}

.mobile-header {
  font-weight: 700;
  display: none;
}

.gradient-border {
  --borderWidth: 3px;
  border-radius: var(--borderWidth);
}
.gradient-border:after {
  content: "";
  position: absolute;
  top: calc(-1 * var(--borderWidth));
  left: calc(-1 * var(--borderWidth));
  height: calc(100% + var(--borderWidth) * 2);
  width: calc(100% + var(--borderWidth) * 2);
  background: linear-gradient(
    60deg,
    #f79533,
    #f37055,
    #ef4e7b,
    #a166ab,
    #5073b8,
    #1098ad,
    #07b39b,
    #6fba82
  );
  border-radius: calc(2 * var(--borderWidth));
  z-index: -1;
  -webkit-animation: animatedgradient 3s ease alternate infinite;
  animation: animatedgradient 3s ease alternate infinite;
  background-size: 300% 300%;
}

@-webkit-keyframes animatedgradient {
  0% {
    background-position: 0% 50%;
  }
  50% {
    background-position: 100% 50%;
  }
  100% {
    background-position: 0% 50%;
  }
}

@keyframes animatedgradient {
  0% {
    background-position: 0% 50%;
  }
  50% {
    background-position: 100% 50%;
  }
  100% {
    background-position: 0% 50%;
  }
}

/* Mobile Only */

@media (max-width: 768px) {
  .header-logo {
    display: none;
  }
  .url-header {
    display: none;
  }
  .jumbotron {
    background: url(../ggbridge.webp);
    background-size: cover;
  }
  .mobile-header {
    display: block;
    font-size: 1.25rem;
  }
  .container {
    width: 95%;
  }
  #btn-phone {
    background-image: url(../call.png);
    background-size: contain;
    display: block !important;
    width: 60px;
    height: 60px;
    position: fixed;
    bottom: 1rem;
    left: 2rem;
    z-index: 2;
    opacity: 0.7;
  }

  #contactPaulBtn {
    display: none;
  }
}

.nav-scroller {
  position: relative;
  z-index: 2;
  height: 2.75rem;
  overflow-y: hidden;
}

.nav-scroller .nav {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  padding-bottom: 1rem;
  margin-top: -1px;
  overflow-x: auto;
  text-align: center;
  white-space: nowrap;
  -webkit-overflow-scrolling: touch;
}

.nav-scroller .nav-link {
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
  font-size: 0.875rem;
}

.card-img-right {
  height: 100%;
  border-radius: 0 3px 3px 0;
}

.flex-auto {
  -ms-flex: 0 0 auto;
  flex: 0 0 auto;
}

.h-250 {
  height: 250px;
}
@media (min-width: 768px) {
  .h-md-250 {
    height: 250px;
  }
}

/*
 * Footer
 */
.footer {
  padding: 2.5rem 0;
  color: #999;
  text-align: center;
  background-color: #f9f9f9;
  border-top: 0.05rem solid #e5e5e5;
}
.footer p:last-child {
  margin-bottom: 0;
}

.bd-placeholder-img {
  font-size: 1.125rem;
  text-anchor: middle;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

@media (min-width: 768px) {
  .bd-placeholder-img-lg {
    font-size: 3.5rem;
  }
}

#paul {
  margin-left: 1rem;
  height: 7rem;
  width: 6rem;
  position: relative;
  float: right;
  object-fit: cover;
}

.shadow-text {
  text-shadow: 1px 1px 10px black;
}

li {
  list-style-type: none;
}

ul {
  padding: 0;
}

#btn-phone {
  display: none;
}

#close-btn {
  color: var(--input-text);
}
