@font-face {
  font-family: "cadiz-regular";
  src: url(//cdn.shopify.com/s/files/1/0997/4496/t/22/assets/Cadiz-Regular.otf?40032); }

@font-face {
  font-family: "cadiz-light";
  src: url(//cdn.shopify.com/s/files/1/0997/4496/t/22/assets/Cadiz-Light.otf?40032); }

@font-face {
  font-family: "cadiz-bold";
  src: url(//cdn.shopify.com/s/files/1/0997/4496/t/22/assets/Cadiz-Bold.otf?40032); }

#app {
  font-family: "Cadiz-Light", Arial, Helvetica, sans-serif;
  font-size: 14px;
  margin: 35px 0px 10px; }

h2,
h3 {
  color: #2f4b4f;
  font-family: "Cadiz-Regular", Arial, Helvetica, sans-serif;
  font-size: 18px;
  font-weight: 300; }

img {
  display: block;
  max-width: 100%; }

#header {
  margin-bottom: 15px; }
  #header img.logo {
    width: 205px; }

.form-control {
  font-size: 13px; }

@media (max-width: 480px) {
  .checkout-body {
    flex-direction: column-reverse; } }

@media (max-width: 480px) {
  .checkout-body.step-3 {
    flex-direction: column; } }

.billing-details,
.shipping-details,
.confirmation-details,
.payment-details,
.shipping-methods {
  padding: 15px 0px; }
  .billing-details h3,
  .shipping-details h3,
  .confirmation-details h3,
  .payment-details h3,
  .shipping-methods h3 {
    border-bottom: 1px solid #ddd;
    margin-bottom: 18px;
    padding-bottom: 12px;
    width: 100%; }

.total {
  font-family: "Cadiz-Bold", Arial, Helvetica, sans-serif; }

.shipping-rate {
  align-items: center;
  border: 1px solid transparent;
  cursor: pointer;
  display: flex;
  padding: 7px 12px !important; }
  .shipping-rate i {
    color: #74cada;
    margin-right: 15px;
    transition: 0.2s all ease; }
    .shipping-rate i.faded {
      color: #333;
      opacity: 0.2; }
  .shipping-rate.selected {
    border-color: #ccc; }
    .shipping-rate.selected .circle {
      background: #ccc; }
  .shipping-rate .rate-price {
    margin-left: auto; }

.order-summary {
  background: #f8f8f8;
  padding: 15px; }
  .order-summary h3 {
    border-bottom: 1px solid #ddd;
    margin-bottom: 18px;
    padding-bottom: 12px; }
  .order-summary .order-item {
    border-bottom: 1px solid #ddd;
    margin-bottom: 18px;
    padding-bottom: 12px; }
    .order-summary .order-item__title {
      font-size: 1.2em;
      font-weight: bold; }
    .order-summary .order-item__price.strike {
      text-decoration: line-through; }

.cart_lines {
  padding: 15px;
  font-size: 1.15em; }
  .cart_lines ul {
    list-style: none;
    margin: 0px;
    padding: 0;
    width: 100%; }
    .cart_lines ul li {
      font-size: 13px;
      font-weight: 300;
      margin-bottom: 10px; }
      .cart_lines ul li span {
        float: right;
        font-weight: 600; }

.checkout-actions {
  padding: 15px 0px;
  text-align: right; }
  .checkout-actions button {
    background: #74cada;
    color: #fff;
    font-weight: 600; }
    @media (max-width: 480px) {
      .checkout-actions button {
        width: 100%; } }

.edit {
  cursor: pointer; }

.upsell .btn {
  background: #74cada;
  color: #fff; }
  @media (max-width: 480px) {
    .upsell .btn {
      width: 100%; } }

.btn.upsell {
  background: #74cada;
  color: #fff; }
  @media (max-width: 480px) {
    .btn.upsell {
      width: 100%; } }

.payment-details form {
  display: block;
  margin: 0 auto;
  width: calc(100%) !important; }

.payment-details #card-element {
  display: block;
  margin: 10px 5px;
  width: 100% !important; }

.payment-details .StripeElement {
  background-color: white;
  height: 40px;
  padding: 10px 0px;
  border-radius: 0px;
  border-bottom: 1px solid #ddd;
  -webkit-transition: box-shadow 150ms ease;
  transition: box-shadow 150ms ease; }

.payment-details .StripeElement--focus {
  box-shadow: 0 1px 3px 0 #cfd7df; }

.payment-details .StripeElement--invalid {
  border-color: #fa755a; }

.payment-details .StripeElement--webkit-autofill {
  background-color: #fefde5 !important; }
