:root {
    --gold: #fad25a;
    --paragraphs: white;
    --accents: deepskyblue;
    --backgrounds: #222222;
    --paragraphLineHeight: 24px;
    --paragraphFontSize: 16px;
    --homeTitleFontSize: 75px;
    --homeSectionWidth: 800px;
}

html, body {
    background-color: #222;
}

body {
    overflow-x: hidden;
}

.site-content-contain {
    background: linear-gradient(180deg, #3E3E3E 0%, #040404 100%);
}

#pricing th {
    color: var(--gold);
}

.bold {
    font-weight: 900 !important;
  text-shadow:
   -0.25px -0.25px 0 var(--gold),  
    0.5px -0.25px 0 var(--gold),
    -0.25px 0.25px 0 var(--gold),
     0.25px 0.25px 0 var(--gold) !important;
  overflow: visible !important;
  letter-spacing: 2px;
  -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: optimizeLegibility;
}

.e-con-inner {
    padding: 0 !important;
}

.entry-content {
    margin: 0 !important;
}



#price .header {
    font-size: 50px !important;
}

.paragraph, .label {
    font-size: 20px;
    color: white;
}

.label {
    padding: 0 !important;
}

#pricing {
    display: flex;
    flex-direction: column;
    align-items: center;
    white-space: nowrap;
}

.header {
    color: var(--gold);
    font-size: 30px;
    font-weight: bolder;
    text-align: center;
    letter-spacing: 2px;
    width: 100%;
}

#pricingWrapper {
    height: 100%;
    width: 100vw;
    margin-left: calc(-50vw + 50%);
    margin-top: 25px;
    overflow-x: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    padding-bottom: 80.2px;
}

#pricing table {
    
    font-size: 30px;
    width: fit-content;
    text-align: left;
}




.coordinatesInput {
    display: block;
    margin-bottom: 20px;
    width: 50%;
}




#price {
    display: none;
    justify-content: center;
}



#pricing tr > td {
    border-right: 1px solid var(--gold);
}

th:first-child {
    border-right: 1px solid var(--gold);
}

tr {
    padding: 0 15px !important;
}

td, th {
    padding: 15px !important;
}


#pricing table {
    background-color: transparent;
    font-size: 30px;
    width: min-content;
    text-align: left;
}

#houseCoordinatesWrapper {
    display: none;
}

.coordinatesInput > div {
  margin: auto !important;
}
.paragraph.enter-coordinates-text.home {
    margin-top: 12px;    
}

.enter-coordinates-text {
    font-size: 30px;
}

#calculatePriceWrapper {
  display: flex;
  justify-content: center;
}

#price div {
  width: min-content;
  text-wrap: nowrap;
}

#calculatePrice {
    width: 100%;
}

/* Chrome, Safari, Edge, Opera */
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

/* Firefox */
input[type=number] {
    -moz-appearance: textfield;

    height: 30px;
    font-size: 25px;
}

#coordinatesWrapper {
    display: flex;
    width: 100%;
}

#latitude, #longitude {
    transform: scale(1.3);
    transform-origin: left;
    margin-bottom: 15px;
}

#getCoordinates {
    margin-bottom: 20px;
}

.buttonWrapper button {
    width: 100%;
    left: 50%;
    transform: translate(-50%, 0);
    position: relative;
}

.buttonWrapper {
    transform: translateY(6px);
}

.goldDivider {
    height: 2px;
    width: calc(100% + 30px);
    background-color: var(--gold);
    margin-left: -15px;
}

#loadingWrapper {
    width: 100vw;
    height: 100vh;
    background-color: #00000050;
    position: fixed;
    top: 0;
    left: 0;
    display: none;
    align-items: center;
    justify-content: center;
    
}

#loading {
    content: url("../images/loading.gif");
    width: 300px;
    height: 300px;
}



#calculatorWrapper {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100vw;
    height: 100vh;
    margin-left: calc(-50vw + 50%);
}
#calculator {
    width: 1100px;
    height: min-content;
    border-radius: 15px;
    padding: 15px;
    border: 2px solid var(--gold);
    white-space: nowrap;
    margin: 0 20px;

}

.buttonWrapper{
    width: 50%;
    display: flex;
    justify-content: center;
    align-content: center;
    flex-direction: column;
    margin: 15px 0;
    
}

#optionsWrapper {
    width: 50%;
}

#verticalGoldDivider {
    width: 2px;
    background-color: var(--gold);
    margin-bottom: -15px;
    margin-right: 15px;
}

#optionsAndPriceWrapper {
    display: flex;
}

#priceWrapper {
    display: flex;
    flex-direction: column;
    width: 50%;
    justify-content: center;
    align-items: center;
}

#priceWrapper .buttonWrapper {
    width: 100%;
}

.paragraph.enter-coordinates-text {
    margin-bottom: 15px;
    width: 100%;
    text-align: center;
    white-space: wrap;
}

.label.coordinates {
    font-size: 26px;
    text-align: left;
}

.label input {
    margin-left: 10px;
}

.options {
    display: block;
    max-width: 50%;
    justify-content: left;
}

.options.transportation div {
    justify-content: left;
}

.options div {
    width: min-content;
    display: flex;
    align-items: center;
    column-gap: 0;
    white-space: nowrap;
    max-width: 50%;
}

.options input {
    transform: scale(2.5);
    margin-right: 20px;
}




/* CSS */
.button-pushable {
  position: relative;
  border: none;
  background: transparent;
  padding: 0;
  cursor: pointer;
  outline-offset: 4px;
  transition: filter 250ms;
  user-select: none;
  -webkit-user-select: none;
  touch-action: manipulation;
}

.button-shadow {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-radius: 12px;
  background: hsl(0deg 0% 0% / 0.25);
  will-change: transform;
  transform: translateY(2px);
  transition:
    transform
    600ms
    cubic-bezier(.3, .7, .4, 1);
}

.button-edge {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-radius: 12px;
  background: rgb(6,75,164);
    background: linear-gradient(90deg, rgba(6,75,164,1) 0%, rgba(0,155,255,1) 15%, rgba(0,155,255,1) 85%, rgba(6,75,164,1) 100%);
}

.button-front {
  display: block;
  position: relative;
  padding: 12px 27px;
  border-radius: 12px;
  font-size: 1.1rem;
  color: white;
  background: #0066b2;
  will-change: transform;
  transform: translateY(-4px);
  transition:
    transform
    600ms
    cubic-bezier(.3, .7, .4, 1);
}

@media (min-width: 768px) {
  .button-front {
    font-size: 1.25rem;
    padding: 12px 42px;
  }
}

.button-pushable:hover {
  filter: brightness(110%);
  -webkit-filter: brightness(110%);
}

.button-pushable:hover .button-front {
  transform: translateY(-6px);
  transition:
    transform
    250ms
    cubic-bezier(.3, .7, .4, 1.5);
}

.button-pushable:active .button-front {
  transform: translateY(-2px);
  transition: transform 34ms;
}

.button-pushable:hover .button-shadow {
  transform: translateY(4px);
  transition:
    transform
    250ms
    cubic-bezier(.3, .7, .4, 1.5);
}

.button-pushable:active .button-shadow {
  transform: translateY(1px);
  transition: transform 34ms;
}

.button-pushable:focus:not(:focus-visible) {
  outline: none;
}





tbody {
    color: white;
}

table, th, td {
    border-collapse: collapse;
}

td{
    border: 1px solid var(--gold);
    border-top: none;
    border-bottom: none;
}

tr {
    border: 1px solid var(--gold) !important;
}




table {
    margin: 0 !important;
}


#tableWrapper {
    border-radius: 15px;
    border: 1px solid var(--gold);
    overflow: hidden;
}



/* Chrome, Safari, Edge, Opera */
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

/* Firefox */
input[type=number] {
    -moz-appearance: textfield;

    height: 30px;
    font-size: 25px;
}

@media (max-width: 600px) {
    #pricing table {
        font-size: 25px;
    }
}

@media (max-width: 530px) {
    #pricing table {
        font-size: 18px;
    }
    
    .label {
        font-size: 14.5px;
    }
    
    input[type="checkbox"] {
        transform: scale(2) !important;
    }
    
    .button-front {
        font-size: 0.9rem;
    }
}



@media (max-width: 1185px) {
    #optionsAndPriceWrapper {
        flex-direction: column;
        margin-top: 50px;
    }
    #coordinatesWrapper {
        flex-direction: column;
    }
    #calculator {
        width: min-content;
    }
    #calculatorWrapper {
        height: fit-content;
    }

    .buttonWrapper, .buttonWrapper button span, .buttonWrapper button {
        width: 100%;
    }

    #priceWrapper {
        width: 100%;
    }

    #verticalGoldDivider {
        display: none;
    }
    
    input[type=number] {
        width: calc(130% + 90px);
        outline: none;
        border: none;
    }
}