/* PLEASE DO NOT EDIT THIS FILE - PLACE YOUR CHANGES IN RESULTS.CSS */


/* Ambit Black */
@font-face {
    font-family: 'Ambit';
    src: url('fonts/Ambit Black.otf') format('opentype');
    font-weight: 900;
    font-style: normal;
}

/* Ambit Black Italic */
@font-face {
    font-family: 'Ambit';
    src: url('fonts/Ambit Black Italic.otf') format('opentype');
    font-weight: 900;
    font-style: italic;
}

/* Ambit Bold */
@font-face {
    font-family: 'Ambit';
    src: url('fonts/Ambit Bold.otf') format('opentype');
    font-weight: 800;
    font-style: normal;
}

/* Ambit Bold Italic */
@font-face {
    font-family: 'Ambit';
    src: url('fonts/Ambit Bold Italic.otf') format('opentype');
    font-weight: 800;
    font-style: italic;
}

/* Ambit SemiBold */
@font-face {
    font-family: 'Ambit';
    src: url('fonts/Ambit SemiBold.otf') format('opentype');
    font-weight: 600;
    font-style: normal;
}

/* Ambit SemiBold Italic */
@font-face {
    font-family: 'Ambit';
    src: url('fonts/Ambit SemiBold Italic.otf') format('opentype');
    font-weight: 600;
    font-style: italic;
}

/* Ambit Regular */
@font-face {
    font-family: 'Ambit';
    src: url('fonts/Ambit Regular.otf') format('opentype');
    font-weight: normal;
    font-style: normal;
}

/* Ambit Italic */
@font-face {
    font-family: 'Ambit';
    src: url('fonts/Ambit Italic.otf') format('opentype');
    font-weight: normal;
    font-style: italic;
}

/* Ambit Light */
@font-face {
    font-family: 'Ambit';
    src: url('fonts/Ambit Light.otf') format('opentype');
    font-weight: 300;
    font-style: normal;
}

/* Ambit Light Italic */
@font-face {
    font-family: 'Ambit';
    src: url('fonts/Ambit Light Italic.otf') format('opentype');
    font-weight: 300;
    font-style: italic;
}

/* Ambit ExtraLight */
@font-face {
    font-family: 'Ambit';
    src: url('fonts/Ambit ExtraLight.otf') format('opentype');
    font-weight: 200;
    font-style: normal;
}

/* Ambit ExtraLight Italic */
@font-face {
    font-family: 'Ambit';
    src: url('fonts/Ambit ExtraLight Italic.otf') format('opentype');
    font-weight: 200;
    font-style: italic;
}

/* Ambit Thin */
@font-face {
    font-family: 'Ambit';
    src: url('fonts/Ambit Thin.otf') format('opentype');
    font-weight: 100;
    font-style: normal;
}

/* Ambit Thin Italic */
@font-face {
    font-family: 'Ambit';
    src: url('fonts/Ambit Thin Italic.otf') format('opentype');
    font-weight: 100;
    font-style: italic;
}

:root {
    --font-size: 16px;
    --text-color: #000000;
    --background-color: #ffffff;
    --border-color: #B2B2B2;
    --button-color: #42007D;
    --button-color-hover: #5C29D1;
  }

body {
    font-family: 'Ambit', sans-serif;
    font-weight: normal;
    font-style: normal;
    background-image: url('img/background.png');
    background-size: cover;
    background-repeat: no-repeat;
}
h1 {
    font-weight: 800;
    font-size: 24px;
}
.bold {
    font-weight: 800;
}
.semibold {
    font-weight: 600;
}
.body-lg {
    font-size: 18px;
}
.body-xl {
    font-size: 30px;
}

.button {
    font-weight: 800;
    color: var(--background-color);
    background-color: var(--button-color);
    padding: 10px 40px;
    border-radius: 30px;
    text-align: center;
    width: fit-content;
    font-size: 20px;
    margin-top: 20px;
    cursor: pointer;
    -webkit-transition: background-color .15s cubic-bezier(.4,0,.2,1);
    transition: background-color .15s cubic-bezier(.4,0,.2,1);
}
.button:hover {
    background-color: var(--button-color-hover);
}

header, section.top-section, section.results-section {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    max-width: calc(1300px + 3.75rem);
    width: 100%;
    margin: 0 auto;
    padding: 0 1.875rem;
}

header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 1.5rem;
    margin-bottom: 2.5rem;
}

.header-logo img {
    height: 50px;
}

section.results-section {
    display: grid;
    grid-template-columns: 2.75fr 1fr;
    gap: 30px;
    margin-top: 40px;
    margin-bottom: 40px;
}
section.results-list {
    display: flex;
    flex-direction: column;
    gap: 30px;
}
.results-item {
    display: grid;
    grid-template-columns: 3.5fr max-content 1fr;
}
.results-divider {
    height: 100%;
    margin-top: 20px;
    position: relative;
}
.results-divider-top, .results-divider-bottom {
    position: relative;
    height: calc(50% - 20px);
    width: 40px;
    background-color: var(--background-color);
    border-radius: 0;
  }
  .results-divider-top::after, .results-divider-top::before {
    content: "";
    position: absolute;
    background-color: transparent;
    top: -50px;
    height: 50px;
    width: 20px;
    box-shadow: 0 20px 0 0 var(--background-color);
  } 
  .results-divider-top::after {
    right: 0;
    border-bottom-right-radius: 20px;
  }
  .results-divider-top::before {
    left: 0;
    border-bottom-left-radius: 20px;
  }
  .results-divider-bottom::after, .results-divider-bottom::before {
    content: "";
    position: absolute;
    background-color: transparent;
    bottom: -50px;
    height: 50px;
    width: 20px;
    box-shadow: 0 -20px 0 0 var(--background-color);
  } 
  .results-divider-bottom::after {
    right: 0;
    border-top-right-radius: 20px;
  }
  .results-divider-bottom::before {
    left: 0;
    border-top-left-radius: 20px;
  }
.results-divider-middle {
    position: absolute;
    top: 4px;
    left: 48%;
    width: 0; /* No width, as border will create the line */
    height: calc(100% - 48px);
    border-left: 2px dashed var(--border-color); /* Dashed line with the desired color */
    z-index: 1;
}

.results-flight-info-container {
    background-color: var(--background-color);
    padding: 20px 0 20px 20px;
    box-sizing: border-box;
    border-radius: 20px 0 0 20px;
}
.results-pricing-container {
    background-color: var(--background-color);
    padding: 20px 20px 20px 0;
    box-sizing: border-box;
    border-radius: 0 20px 20px 0;  
}


.basket-section {
    background-color: var(--background-color);
    padding: 25px;
    box-sizing: border-box;
    border-radius: 20px;
    max-height: max-content;
    position: sticky;
    top: 20px;
}
.basket-header {
    padding-bottom: 15px;
    border: none;
    border-bottom: 1px dashed var(--border-color);
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.basket-title {
    font-weight: 800;
    font-size: 24px;
}
.clear-basket {
    display: none;
    text-decoration: underline;
    cursor: pointer;
}
.basket-outbound-container {
    padding-top: 20px;
    padding-bottom: 20px;
    border: none;
    border-bottom: 1px dashed var(--border-color);
}
.basket-return-container {
    padding-top: 20px;
}
.basket-outbound-header, .basket-return-header {
    padding-bottom: 10px;
}
.basket-outbound-content, .basket-return-content {
    display: grid;
    grid-template-columns: max-content 1fr;
    gap: 10px;
}
.basket-outbound-content .basket-outbound-icon, .basket-return-content .basket-return-icon {
    width: 30px;
}
.basket-outbound-details.none-selected, .basket-return-details.none-selected {
    color: var(--border-color);
}
.basket-outbound-details.selected, .basket-return-details.selected,
.basket-outbound-header.selected, .basket-return-header.selected {
    display: none;
}
.basket-outbound-details.selected, .basket-return-details.selected {
    line-height: 1.5;
    margin-top: -5px;
}
.basket-outbound-details.selected img, .basket-return-details.selected img {
    max-width: 120px;
    max-height: 60px;
    margin-top: 5px;
}
.basket-total-container {
    display: none;
    padding-top: 20px;
    margin-top: 20px;
    border: none;
    border-top: 1px dashed var(--border-color);
    text-align: right;
}

.results-flight-info-outbound-container {
    padding: 0 10px 20px;
    box-sizing: border-box;
}
.results-outbound-flight-airline, .results-return-flight-airline {
    width: 110px;
    max-height: 40px;
}
.results-outbound-flight-divider, .results-return-flight-divider {
    border-top: 1px dashed var(--border-color);
    position: relative;
    display: flex;
    justify-content: center;
}
.results-outbound-flight-divider img, .results-return-flight-divider img {
    position: absolute;
    top: -10px;
}
.results-outbound-flight-duration, .results-return-flight-duration {
    color: var(--border-color);
}
.results-flight-info-return-container {
    border: none;
    border-top: 1px dashed var(--border-color);
    padding: 20px 10px 0;
    box-sizing: border-box;
}