/* 
Colours:
#333333 Dark Grey
#f78f20 Orange of the logo
rgb(228, 228, 228) Light Grey (Border)
*/


body {
    background-color: #f5f4f0;
    font-family: 'DM Sans', sans-serif;
}

#header {
    padding: 20px;
    margin-bottom: 4rem;
    display: flex;
}

.vr {
    border: rgb(108, 117, 125);
    margin: 0 20px;
}

#why-us-hr {
    padding-bottom: 32px;
}

#logo {
    width: 17vw;
    min-width: 190px;
}

.aboutMe {
    line-height: 1.7;
}

h1, h2 {
    margin: 20px 0;
    text-align: center;
    font-size: 38px;
    font-weight: 300;
}

.pHeader {
    font-weight: 400;
}

a {
    text-decoration: none;
    color: #000;
}

.twenty-two,
.carousel-item p {
    font-size: 22px;
}

.sheen {
  position: relative;
  display: inline-block;

  background-image: linear-gradient(
    120deg,
    #000 0%,
    #000 45%,
    rgba(255, 255, 255, 0.8) 50%,
    #000 55%,
    #000 100%
  );
  background-size: 300% 100%;
  background-position: 0% 0;

  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;

  animation: sheen 6s ease-in-out infinite;
  animation-delay: 6s; /* time before first pass */
}

@keyframes sheen {
  0% {
    background-position: 0% 0; /* far left */
  }
  15% {
    background-position: 100% 0; /* streak crosses fully */
  }
  100% {
    background-position: 100% 0; /* hold cleared state */
  }
}

mark {
    background: linear-gradient(-100deg,
            hsla(32, 92%, 55%, 0.3),
            hsla(32, 92%, 55%, 0.7) 95%,
            hsla(32, 92%, 55%, 0.1));
    border-radius: 1em 0;
    padding: 0.3rem 0.5rem;
    color: inherit;
    white-space: nowrap;
}

.mark-white {
    background: linear-gradient(-100deg,
            hsla(0, 0%, 100%, 0.4),
            hsla(0, 0%, 100%, 0.8) 95%,
            hsla(0, 0%, 100%, 0.2));
}

.mark-green {
    background: linear-gradient(-100deg,
            hsla(145, 60%, 70%, 0.3),
            hsla(145, 60%, 70%, 0.7) 95%,
            hsla(145, 60%, 70%, 0.1));
}

p mark {
    font-weight: 300;
}

.custom-underline {
    display: inline;
    background-image: repeating-linear-gradient(to right,
            currentColor 0,
            currentColor 7px,
            transparent 7px,
            transparent 14px);
    background-size: 100% 1px;
    background-position: 0 100%;
    background-repeat: repeat-x;
}

.text-echo {
    text-shadow: rgba(247, 143, 32, 0.8) 2px -2px, rgba(247, 143, 32, 0.6) 4px -4px, rgba(247, 143, 32, 0.4) 6px -6px, rgba(247, 143, 32, 0.2) 8px -8px, rgba(247, 143, 32, 0.05) 10px -10px;
}

p {
    text-align: center;
    font-size: 18px;
    font-weight: 200;
}

.centering {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.toggle-container {
    max-width: 90%;
    margin: 10px 0;
    background-color: rgba(0, 0, 0, 0.1);
    border-radius: 8px;
    padding: 8px;
    display: flex;
    flex-direction: row;
    align-items: center;
}

.role {
    border-radius: 8px;
    padding: 15px 10px;
    text-align: center;
    display: flex;
    align-items: center;
    cursor: pointer;
}

.role-selected {
    background-color: #f5f4f0;
    box-shadow: 0px 2px 5px 0px rgba(0, 0, 0, 0.2);
}

.contacts-container {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    margin-bottom: 15px;
}

.contacts {
    display: flex;
    align-items: center;
    background-color: rgba(0, 0, 0, 0.1);
    border-radius: 8px;
}

.contacts p {
    font-weight: 400;
    font-size: 20px;
    padding: 5px 0;
}

.carousel-caption {
    padding: 0;
}

.carousel-caption * {
    color: #000 !important;
    margin-bottom: 0;
}

.carousel-control-prev-icon,
.carousel-control-next-icon {
    filter: invert(0%) brightness(0%) !important;
    /* makes them black */
}

.carousel-indicators [data-bs-target] {
    background-color: #000 !important;
    opacity: 0.5;
}

.carousel-indicators .active {
    opacity: 1;
}

.contacts-container {
    padding: 0 0 4rem 0;
}

.contacts p {
    margin: 0;
}

.bi-telephone {
    margin-bottom: 3px;
}

#why-us-title,
#why-us {
    background-color: #d2f7e1;
}

#why-us-title {
    padding: 1rem;
    cursor: pointer;
}

#chevronIcon {
  transition: transform 0.3s ease;
}

#chevronIcon.rotated {
  transform: rotate(180deg);
}

#why-us {
    overflow: hidden;
    transition: height 0.5s ease;
    height: 0;
}

.locality {
    margin-top: 40px;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
}

.locality p {
    max-width: 25vw;
}

@media only screen and (max-width: 600px) {
    .aboutMe, .vr {
        display: none;
    }

    .locality p {
        max-width: 95vw;
        padding-bottom: 1.5rem;
    }

    #myCarousel {
        height: 200px;
    }

    .carousel-caption p {
        margin-top: 15px;
    }

    .role {
        height: 78px;
    }

    #role-toggle {
        margin-bottom: 1.5rem;
    }
}

.map-container {
    width: 450px;
    height: 450px;
    clip-path: polygon(47.5% 5.66987%,
            48.2899% 5.30154%,
            49.13176% 5.07596%,
            50% 5%,
            50.86824% 5.07596%,
            51.7101% 5.30154%,
            52.5% 5.66987%,
            87.14102% 25.66987%,
            87.85495% 26.16978%,
            88.47124% 26.78606%,
            88.97114% 27.5%,
            89.33948% 28.2899%,
            89.56505% 29.13176%,
            89.64102% 30%,
            89.64102% 70%,
            89.56505% 70.86824%,
            89.33948% 71.7101%,
            88.97114% 72.5%,
            88.47124% 73.21394%,
            87.85495% 73.83022%,
            87.14102% 74.33013%,
            52.5% 94.33013%,
            51.7101% 94.69846%,
            50.86824% 94.92404%,
            50% 95%,
            49.13176% 94.92404%,
            48.2899% 94.69846%,
            47.5% 94.33013%,
            12.85898% 74.33013%,
            12.14505% 73.83022%,
            11.52876% 73.21394%,
            11.02886% 72.5%,
            10.66052% 71.7101%,
            10.43495% 70.86824%,
            10.35898% 70%,
            10.35898% 30%,
            10.43495% 29.13176%,
            10.66052% 28.2899%,
            11.02886% 27.5%,
            11.52876% 26.78606%,
            12.14505% 26.16978%,
            12.85898% 25.66987%);
    position: relative;
    overflow: hidden;
    z-index: 1;
}

.map-wrapper {
    position: relative;
    width: 450px;
    height: 450px;
}

.map-wrapper::before {
    content: "";
    position: absolute;
    top: -15px;
    left: -15px;
    width: calc(100% + 30px);
    height: calc(100% + 30px);
    background: #f78f20;
    clip-path: polygon(47.5% 5.66987%,
            48.2899% 5.30154%,
            49.13176% 5.07596%,
            50% 5%,
            50.86824% 5.07596%,
            51.7101% 5.30154%,
            52.5% 5.66987%,
            87.14102% 25.66987%,
            87.85495% 26.16978%,
            88.47124% 26.78606%,
            88.97114% 27.5%,
            89.33948% 28.2899%,
            89.56505% 29.13176%,
            89.64102% 30%,
            89.64102% 70%,
            89.56505% 70.86824%,
            89.33948% 71.7101%,
            88.97114% 72.5%,
            88.47124% 73.21394%,
            87.85495% 73.83022%,
            87.14102% 74.33013%,
            52.5% 94.33013%,
            51.7101% 94.69846%,
            50.86824% 94.92404%,
            50% 95%,
            49.13176% 94.92404%,
            48.2899% 94.69846%,
            47.5% 94.33013%,
            12.85898% 74.33013%,
            12.14505% 73.83022%,
            11.52876% 73.21394%,
            11.02886% 72.5%,
            10.66052% 71.7101%,
            10.43495% 70.86824%,
            10.35898% 70%,
            10.35898% 30%,
            10.43495% 29.13176%,
            10.66052% 28.2899%,
            11.02886% 27.5%,
            11.52876% 26.78606%,
            12.14505% 26.16978%,
            12.85898% 25.66987%);
    z-index: -1;
}

.map-wrapper::after {
    content: "";
    position: absolute;
    top: -5px;
    left: -5px;
    width: calc(100% + 10px);
    height: calc(100% + 10px);
    background: #f5f4f0;
    clip-path: polygon(47.5% 5.66987%,
            48.2899% 5.30154%,
            49.13176% 5.07596%,
            50% 5%,
            50.86824% 5.07596%,
            51.7101% 5.30154%,
            52.5% 5.66987%,
            87.14102% 25.66987%,
            87.85495% 26.16978%,
            88.47124% 26.78606%,
            88.97114% 27.5%,
            89.33948% 28.2899%,
            89.56505% 29.13176%,
            89.64102% 30%,
            89.64102% 70%,
            89.56505% 70.86824%,
            89.33948% 71.7101%,
            88.97114% 72.5%,
            88.47124% 73.21394%,
            87.85495% 73.83022%,
            87.14102% 74.33013%,
            52.5% 94.33013%,
            51.7101% 94.69846%,
            50.86824% 94.92404%,
            50% 95%,
            49.13176% 94.92404%,
            48.2899% 94.69846%,
            47.5% 94.33013%,
            12.85898% 74.33013%,
            12.14505% 73.83022%,
            11.52876% 73.21394%,
            11.02886% 72.5%,
            10.66052% 71.7101%,
            10.43495% 70.86824%,
            10.35898% 70%,
            10.35898% 30%,
            10.43495% 29.13176%,
            10.66052% 28.2899%,
            11.02886% 27.5%,
            11.52876% 26.78606%,
            12.14505% 26.16978%,
            12.85898% 25.66987%);
    z-index: -1;
}

.map-container iframe {
    width: 100%;
    height: 100%;
}