.tour-description-container {
    display: flex;
    justify-content: center;
    width: 100%;
    background: #e3e9ee;
    margin: 0px;
    padding: 0px 0px 50px 0px;
}
  
.tour-description-container-inside {
    display: flex;  
    flex-flow: row wrap;
    justify-content: center;
    align-items: stretch;
    width: 1000px;
    padding: 0;

}

.cell-3a-big img, .cell-3b-big img, .cell-3a-small img, .cell-3b-small img { display: block; }   /* use this to avoid small margin at bottom of image */

/*** cells ***/

.tour-description-container .cell-full-width {        /*text cell full width */
    box-sizing: border-box;
    width:100%;
    height: auto;
    padding: 20px 30px;
    background: white;
    text-align: center;
    display:table;
    margin: 15px 0px 0px 0px;
}

.cell-3a-big, .cell-3b-big {   /*picture 667px width */
    box-sizing: border-box;
    width: 667px;
    padding: 0px 0px;
    margin: 15px 0px 0px 0px;
}

.cell-3a-small {   /*picture 328px width + 5px left */
    box-sizing: border-box;
    width: 333px;
    padding: 0px 0px 0px 5px;
    margin: 15px 0px 0px 0px;
}
  
.cell-3b-small {   /*picture 328px width + 5px right */
    box-sizing: border-box;
    width: 333px;
    padding: 0px 5px 0px 0px;
    margin: 15px 0px 0px 0px;
}

.cell-3b-small-text {   /*picture 328px width + 5px right */
    box-sizing: border-box;
    width: 328px;
    height: 270px;
    padding: 20px 30px;
    background: white;
    display:table;
    margin: 15px 5px 0px 0px;
}

  
/*** end of cells ***/

.tour-description-container h1 {
    font-size: 2rem;
    font-weight: 500;
    line-height: 3rem;
    font-family: 'Open Sans', Arial, Helvetica, sans-serif;
    padding: 0px;
    color: white;
    display:table-cell;
    vertical-align:middle;
}

.tour-description-container h2 {
    font-family: 'Open Sans', Arial, Helvetica, sans-serif;
    font-size: 1.5rem;
    font-weight: 600;
    color: #a0001e; 
    margin: 0;
    padding: 0 0 5px 0;
    text-align: left;
}

.tour-description-container h3 {
    font-family: 'Open Sans', Arial, Helvetica, sans-serif;
    font-size: 1.0rem;
    font-weight: 400;
    line-height: 1.5rem;
    margin: 0;
    text-align: left;
}

.tour-description-container p {
    font-family: 'Open Sans', Arial, Helvetica, sans-serif;
    font-size: 0.9rem;
    font-weight: 400;
    line-height: 1.5rem;
    margin: 0;
    text-align: left;
}

.tour-description-container ul {
    font-family: 'Open Sans', Arial, Helvetica, sans-serif;
    font-size: 0.9rem;
    font-weight: 400;
    line-height: 1.5rem;
    margin: 0;
    text-align: left;
    list-style-type: disc;  /* Default value. The marker is a filled circle */
    padding-left: 20px;
}

.tour-description-container a {
    color: #635bff;
    text-decoration: none;
    font-weight: 700;
}

.tour-description-container a:hover {
    color: #0a2540;
}

.tour-description-container .cell-3b-small-text p {
    text-align: left;
    padding-top: 8px;
}

.tour-description-container .cell-3b-small-text a {
    color: black;
    font-weight: 400;
    text-decoration: none;
}

.tour-description-container .cell-3b-small-text a:hover {
    color: black;
    font-weight: 400;
    text-decoration: underline;
}

.tour-description-container .justify {
    text-align: justify;
}



@media screen and (min-width: 709.5px) and (max-width: 1019.5px) {

.tour-description-container-inside {
    width: 667px;
}

.tour-description-container .cell-full-width {   /*text cell full width */
    width: 100%;
    height: auto;
}

.cell-3a-big, .cell-3b-big {   /*picture 667px width */
    box-sizing: border-box;
    width: 667px;
    margin: 15px 0px 0px 0px;
}
.cell-3a-small, .cell-3b-small {   /*picture 328px width */
    display: none;
}
.cell-3a-big img, .cell-3b-big img, .cell-3a-small img, .cell-3b-small img {
    margin: 0 auto;
}

.cell-3b-small-text {   /*picture 328px width + 5px right */
    width: 100%;
    height: auto;
    margin: 15px 0px 0px 0px;
}

} /* end of @media */


@media screen and (min-width: 363.5px) and (max-width: 709.5px) {

.tour-description-container-inside {
    width: 96%;
}

.tour-description-container .cell-full-width {   /*text cell full width */
    width: 100%;
    height: auto;
    padding: 15px;
    margin: 10px 0px 0px 0px;
}

.cell-3a-big, .cell-3b-big {   /*picture 667px width */
    box-sizing: border-box;
    width: 100%;
    margin: 10px 0px 0px 0px;
}
.cell-3a-small, .cell-3b-small {   /*picture 328px width */
    display: none;
}
.cell-3a-big img, .cell-3b-big img, .cell-3a-small img, .cell-3b-small img {
    width: 100%;
}

.cell-3b-small-text {   /*picture 328px width + 5px right */
    width: 100%;
    height: auto;
    padding: 15px;
    margin: 10px 0px 0px 0px;
}

} /* end of @media */


@media screen and (min-width: 0.5px) and (max-width: 363.5px) {

.tour-description-container-inside {
    width: 96%;
}

.tour-description-container .cell-full-width {   /*text cell full width */
    width: 100%;
    height: auto;
    padding: 15px;
    margin: 10px 0px 0px 0px;  /* keep gap between tours on small screen */
}

.cell-3a-big, .cell-3b-big {   /*picture 667px width */
    box-sizing: border-box;
    width: 100%;
    margin: 10px 0px 0px 0px;
}
.cell-3a-small, .cell-3b-small {   /*picture 328px width */
    display: none;
}
.cell-3a-big img, .cell-3b-big img, .cell-3a-small img, .cell-3b-small img {
    width: 100%;
}

.cell-3b-small-text {   /*picture 328px width + 5px right */
    width: 100%;
    height: auto;
    padding: 15px;
    margin: 10px 0px 0px 0px;
}
    
} /* end of @media */



/*************************************************/
/*************************************************/
/*** css styling of the table with itineraries ***/
/*************************************************/
/*************************************************/

.tour-description-container table {
    font-family: 'Open Sans', Arial, Helvetica, sans-serif;
    font-size: 0.9rem;
    font-weight: 400;
    line-height: 1.5rem;
    border-collapse: collapse;
    border: 0px;
    width: 100%;
    margin-top: 10px;
    margin-bottom: 10px;
}




/*** table with Day by Day itinerary ***/

.tour-description-container td.col1 {
    width: 60px;
    border: 0px;
    text-align: left;
    vertical-align: top;
    padding: 5px 0px;
    color: #a0001e; 
}

.tour-description-container td.col2 {
    width: auto;
    border: 0px;
    text-align: left;
    padding: 5px 0px;
    color: #a0001e; 
}

.tour-description-container .tour-descriptions {
    padding: 10px 0px;
}

.tour-description-container .tour-descriptions p {
    padding: 7px 0px;
    text-align: left;
    color: black; 
}
@media screen and (min-width: 0.5px) and (max-width: 499.5px) {
    .tour-description-container .tour-descriptions p {
        font-size: 0.8rem;
        line-height: 1.3rem;
    }
}

.tour-description-container .tour-descriptions .justify {
    text-align: justify;
}

.tour-description-container .tour-photos {
    padding: 7px 0px;
    text-align: left;
    line-height: 0rem;
    font-size: 0rem; /* so that the white space between <a> elements is not 4px wide but 0. Ref. https://stackoverflow.com/questions/5078239/how-to-remove-the-space-between-inline-inline-block-elements */
}
@media screen and (min-width: 0.5px) and (max-width: 709.5px) {
    .tour-description-container .tour-photos {padding: 0px 0px;}
}


.tour-description-container .tour-photos a {
    display: inline-block;
    width: 100px;
    margin-right: 4px;
    margin-bottom: 4px;
}
@media screen and (min-width: 0.5px) and (max-width: 709.5px) {
    .tour-description-container .tour-photos a {width: 75px;}
}
.tour-description-container .tour-photos img {
    display: block; /* use this to avoid small margin at bottom of image */
    width: 100%;
    margin: 0 0 0 0;
}







@media screen and (min-width: 679.5px) and (max-width: 1019.5px) {
    .tour-description-container td.col-tour {
        width: auto;
    }
    .tour-description-container td.col-distance {
        width: 80px;
    }
    .tour-description-container td.col-price-long {
        width: 155px;
    }
}

@media screen and (min-width: 589.5px) and (max-width: 679.5px) {
    .tour-description-container td.col-tour {
        width: auto;
    }
    .tour-description-container td.col-distance {
        width: 80px;
    }
    .tour-description-container td.col-price-short {
        display: block;
        width: 80px;
    }
    .tour-description-container td.col-price-long {
        display: none;
    }
}

@media screen and (min-width: 509.5px) and (max-width: 589.5px) {
    .tour-description-container td.col-tour {
        width: auto;
        font-size: 0.8rem;
    }
    .tour-description-container td.col-distance {
        width: 60px;
        font-size: 0.8rem;
    }
    .tour-description-container td.col-price-short {
        display: block;
        width: 60px;
        font-size: 0.8rem;
    }
    .tour-description-container td.col-price-long {
        display: none;
    }
}

@media screen and (min-width: 109.5px) and (max-width: 509.5px) {
    .tour-description-container td.col-tour {
        width: auto;
        font-size: 0.8rem;
        padding: 3px 5px 3px 5px;
        line-height: 1.3rem;
    }
    .tour-description-container td.col-distance {
        display: none;
    }
    .tour-description-container td.col-price-short {
        display: block;
        width: 60px;
        font-size: 0.8rem;
    }
    .tour-description-container td.col-price-long {
        display: none;
    }
}



/*** table in intro ***/

.tour-description-container td.col1-intro {
    width: 30px;
    border: 0px;
    text-align: left;
    vertical-align: top;
    padding: 5px 0px;
    color: black; 
}

.tour-description-container td.col2-intro {
    width: auto;
    border: 0px;
    text-align: left;
    padding: 5px 0px;
    color: black; 
}


/*** table options to extend and shorten the tour ***/

.tour-description-container td.col1-extend-shorten {
    width: 80px;
    border: 0px;
    text-align: left;
    vertical-align: top;
    padding: 10px 0px;
    color: black;
}

.tour-description-container td.col1-extend-shorten .plus-one {
    font-family: 'Open Sans', Arial, Helvetica, sans-serif;
    font-size: 0.7rem;
    font-weight: 600;
    line-height: 1.8rem;
    margin: 2px;
    color: green;
    padding: 3px 5px;
    border-radius: 5px;
    border: 1px solid green;
}

.tour-description-container td.col1-extend-shorten .minus-one {
    font-family: 'Open Sans', Arial, Helvetica, sans-serif;
    font-size: 0.7rem;
    font-weight: 600;
    line-height: 1.8rem;
    margin: 2px;
    color: #a0001e;
    padding: 3px 5px;
    border-radius: 5px;
    border: 1px solid #a0001e;
}


.tour-description-container td.col2-extend-shorten {
    width: auto;
    border: 0px;
    padding: 10px 0px;
    color: black; 
}


