.trip-entry {
    min-height: 37.5px;
    background: #2f3a8a;
}

.trip-input {
    position: relative;
    padding: 0;
}

.trip-input h1 {
    color: #fff !important;
    text-transform: lowercase;
}

.input-inner {
    padding: 0;
    background: #2F3A88;
    position: relative;
}

.hero .input-inner {
    padding: 22px;
}

.trip-input .bus-substitution-notice {
    margin-top: 15px;
    display: flex;
    img {
        margin-right: 10px;
    }
    p {
        color: white;
        margin-top: 20px;
    }
}

.trip-input .form-wrapper {
    padding-top: 35px;
    margin: 0 0 25px 0;
    background: transparent;
}

.trip-input .form-wrapper.top {
    padding-top: 0;
}

.form-inputs {
    display: -ms-flexbox;
    display: -webkit-box;
    display: flex;
    -ms-flex-direction: column;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    flex-direction: column;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -ms-flex-pack: start;
    -webkit-box-pack: start;
    justify-content: flex-start;
    -ms-flex-line-pack: start;
    align-content: flex-start;
    -ms-flex-align: center;
    -webkit-box-align: center;
    align-items: center;
}

.form-inputs .entry-field {
    position: relative;
    margin: 0 0 10px 0;
    padding: 20px;
    width: 100%;
    background: #fff;
    font-family: "futura-pt",sans-serif;
    font-size: 18px;
    font-weight: 700;
    text-transform: lowercase;
    color: #b2afbb;
    -webkit-transition: -webkit-box-shadow .25s ease;
    transition: -webkit-box-shadow .25s ease;
    transition: box-shadow .25s ease;
    transition: box-shadow .25s ease, -webkit-box-shadow .25s ease;
}

.form-inputs .entry-field {
    padding: 0;
}

.entry-field label {
    position: absolute;
    visibility: visible;
    height: 0;
    width: 0;
    font-size: 0;
    opacity: 0;
}

span.k-dropdown {
    background-image: none;
    width: 100%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.form-inputs .go-button, .form-input .entry-field {
    -ms-flex-order: 0;
    -webkit-box-ordinal-group: 1;
    order: 0;
    -ms-flex: 0 1 auto;
    -webkit-box-flex: 0;
    flex: 0 1 auto;
    -webkit-align-self: auto;
    -ms-flex-item-align: auto;
    align-self: auto;
}

.form-inputs .go-button {
    width: 100%;
    border: 0;
    font-size: 0;
    color: transparent;
    cursor: pointer;
}

    .form-inputs .go-button:disabled img, .form-inputs .go-button[disabled] img {
        opacity: .5;
    }

    .form-inputs .go-button[disabled]:hover {
        -webkit-box-shadow: none;
        box-shadow: none;
        cursor: default;
        background: linear-gradient(135deg, #ea0a2a 0%, #eb4a25 100%);
    }

    .form-inputs .go-button img {
        margin: 0;
        max-height: 25px; /*	width: auto;*/
    }

.shortcuts {
    position: relative;
    margin: 0 auto -22px -22px;
    padding: 0 22px;
    width: calc(100% + 44px);
    background: #7b74a3;
    -webkit-transform: none;
    transform: none;
}

.shortcuts a {
    display: block;
    margin: 0;
    padding: 20px 0 20px 55px;
    width: 100%;
    color: #fff;
    font-size: .85rem;
    text-transform: uppercase;
    font-weight: 900;
    letter-spacing: 1px;
    border-bottom: 1px solid rgba(245, 246, 247, 0.2);
}

.shortcuts a:last-of-type {
    border-bottom: 0px;
}

.shortcuts a:hover {
    text-decoration: none;
}

.shortcuts a.schedule {
    background: url(../../../assets/img/icon_btn_schedule.svg) no-repeat left center;
}

.shortcuts a.fares {
    background: url(../../../assets/img/icon_btn_fares.svg) no-repeat left center;
}

.shortcuts a.dest {
    background: url(../../../assets/img/icon_btn_destinations.svg) no-repeat left center;
}

.trip-date .k-i-calendar:before {
    content: url(../../../assets/img/calendar_icon.png);
    width: 100%;
    height: 100%;
}

.time .k-i-clock:before {
    content: url(../../../assets/img/clock_icon.png);
    width: 100%;
    height: 100%;
}

.clearfix:before, .clearfix:after {
    content: "";
    display: table;
    clear: both;
}

#tripEntry div.error {
	color: #ea0d2a;
	clear: both;
}

.col-md-7, .col-md-5 {
	padding-left: 0;
	padding-right: 0;
}

#tripContainer .button-group {
	margin: 0 0 24px 0;
	min-height: 55px;
	max-width: 360px;
}

#tripContainer .basic-button {
	padding: 8px;
	color: #fff;
	background: #bbbbbd;
	line-height: 1.25;
}

#tripContainer .basic-button.selected {
	background: #ea0a2a;
	text-decoration: underline;
}


.trip-results {
	display: block;
    margin: 0;
	position: relative;
    padding: 22px;
    width: 100%;
	border: 0;
    min-height: 20rem;
    -webkit-transition: padding .25s ease;
    transition: padding .25s ease;
}

td {
    font-size: 12px;
}

.metro-north-row td {
    font-size: 14px;
}

.fare-row {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    position: relative;
    padding: 0 1rem;
    max-width: 455px;
    color: #fff;
    background: #303b8a;
    height: 90px;
    font-size: 15px;
}

    .fare-row p {
        margin: 0;
    }

    .fare-row:after {
        content: "";
    }

.one-way, .round-trip {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
    padding: 1rem 0;
    text-align: center;
    padding: 1rem;
}

.fare-row .fare span[data-format="c2"] {
    display: block;
    font-size: 1.5rem;
    font-weight: 700;
}

.fare-row .fare span:nth-child(2) {
    font-size: .9rem;
}

.disclaimer a {
    display: inline-block;
    padding: 10px 8px;
    color: #fff;
    background: linear-gradient(135deg, #ea0a2a 0%, #eb4a25 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ea0a2a', endColorstr='#eb4a25', GradientType=1);
    -webkit-box-shadow: 0px;
    box-shadow: 0px;
    -webkit-transition: all 0.15s ease-in-out;
    transition: all 0.15s ease-in-out;
}

    .disclaimer a:hover {
        -webkit-box-shadow: 0 3px 8px rgba(0, 0, 0, .5), -2px -3px 8px rgba(0, 0, 0, .05);
        box-shadow: 0 3px 8px rgba(0, 0, 0, .5), -2px -3px 8px rgba(0, 0, 0, .05);
        -webkit-box-shadow: 0 10px 20px rgba(0, 0, 0, 0.19), 0px 6px 6px rgba(0, 0, 0, 0.13);
        box-shadow: 0 10px 20px rgba(0, 0, 0, 0.19), 0 6px 6px rgba(0, 0, 0, 0.13);
        background: linear-gradient(135deg, #f43c27 0%, #f43c27 100%);
    }

.itin-wrapper {
	/* display: none; */
	position: relative;
	margin: 0 0 1rem 0;
	padding: 1.5rem 1rem 0 1rem;
}

.itin-row h3 {
	display: inline-block;
	text-transform: uppercase;
	font-size: 1.1em;
	padding-right: .5rem;
	font-weight: bold;
	font-style: italic;
	color: #222222;
}
.map-wrapper {
	padding-left: 0 !important;
	padding-right: 0 !important;
}

.itin-row span {
	display: inline-block;
	color: #ef3e42;
	font-weight: 600;
	font-size: 1.1em;
	text-transform: uppercase;
	width: auto !important;
	height: 1.5rem !important;
}
.legend {
	background-color: #ffffff;
	border: 1px solid #a3a3a3;
	max-width: 176px;
	color: #404040;
	font-size: 1rem;
}

.legend .heading {
	display: block;
	padding: 5px 0 10px 10px;
	font-weight: bold;
	text-transform: uppercase;
	letter-spacing: 4px;
}

.legend .item {
	padding: 4px 0px 4px 0;
	width: 100%;
	clear: both;
}

.legend .item .icon {
	float: left;
	width: 20%;
	height: 20px;
	margin: 0 0 0 8px;
	background: url("../../../assets/img/map_legend_icons.png") no-repeat 0 0;
}

.legend .item .legend-label {
	float: left;
	width: 70%;
	padding: 0 0 0 5px;
	font-size: .75rem;
}

.legend .item .station {
	background-position: 0px 0px;
}

.legend .item .hartford-line {
	background-position: 0px -20px;
}

.legend .item .connecting-bus {
	background-position: 0px -40px;
}

.legend .item .newhaven-line {
	background-position: 0px -60px;
}

.legend .item .sle-line {
	background-position: 0px -80px;
}

.legend .item .disabilities {
	background-position: 0px -100px;
}

.legend .item.ada {
	border-top: 1px;
	border-top-style: solid;
	border-top-color: #a3a3a3;
}

.legend .item.ada .legend-label {
	color: #999999;
	font-style: italic;
}

.bus-info {
	display: inline-block;
	position: relative;
	margin: 0 auto 0 0;
	width: 100%;
}

.bus-info img, .bus-info p {
	display: inline-block;
	vertical-align: top;
}

.bus-info p {
	margin-left: 8px;
	color: #949394;
	text-transform: uppercase;
	font-size: .7rem;
}

.bus-route-info  {
	color:#222222;
	font-weight: bold;
	font-size: 1.1rem;
}

#map2 {
	position: relative;
	margin: 0 auto;
	width: 100%;
	min-height: 500px;
}

#tripNoResults {
    padding: 25px;
    margin-bottom: 10em;
}

/* Media Queries */
@media (min-width: 550px) {
	.fare-row {
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		-ms-flex-direction: row;
		flex-direction: row;
		-webkit-box-pack: start;
		-ms-flex-pack: start;
		justify-content: flex-start;
		-webkit-box-align: stretch;
		-ms-flex-align: stretch;
		-ms-grid-row-align: stretch;
		align-items: stretch;
	}

	.fare-row:after {
		content: "";
		position: absolute;
		right: 50%;
		bottom: 50%;
		width: 1px;
		height: 50%;
		background: #fff;
		-webkit-transform: translate(50%, 50%);
		transform: translate(50%, 50%);
	}

	.one-way, .round-trip {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		-ms-flex-direction: row;
		flex-direction: row;
		-webkit-box-align: center;
		-ms-flex-align: center;
		-ms-grid-row-align: center;
		align-items: center;
		-ms-flex-preferred-size: 50%;
		flex-basis: 50%;
	}

	.round-trip {
		padding: 1rem 0 1rem 1rem;
	}

	.one-way {
		padding: 1rem 1rem 1rem 0;
	}

	.fare {
		-webkit-box-flex: 1;
		-ms-flex: 1 0 auto;
		flex: 1 0 auto;
	}

	.round-trip div:not(.fare), .one-way div:not(.fare) {
		-webkit-box-flex: 1;
		-ms-flex: 1 1 40px;
		flex: 1 1 40px;
		text-align: left;
		padding: 4px 0 0 0;
		line-height: 1.4;
	}

	.round-trip div:not(.fare) {
		padding-left: 12px;
	}
}


@media (min-width: 600px) {
    .input-inner {
        position: relative;
        margin: 0 auto;
        padding: 22px 0;
        /* max-width: 1070px; */
        max-width: 1270px;
        background: rgba(47, 58, 138, 0.9);
    }

    .hero .input-inner {
        padding: 22px;
    }

    .form-inputs {
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
        -ms-flex-direction: row;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        flex-direction: row;
        -ms-flex-pack: justify;
        -webkit-box-pack: justify;
        justify-content: space-between;
    }

    .form-inputs .entry-field, 
    .form-inputs .go-button {
        margin: 0 8px 8px 0;
        width: auto;
    }

    .form-inputs .entry-field {
        -ms-flex: 1 1 25%;
        -webkit-box-flex: 1;
        flex: 1 1 25%;
    }

    .form-inputs .entry-field.end-station {
        margin: 0 0 8px 0;
    }

    .shortcuts {
        padding: 0;
    }

    .shortcuts a {
        padding: 32px 0 32px 75px;
    }

    .shortcuts a.schedule {
        background: url(../../../assets/img/icon_btn_schedule.svg) #7b74a3 no-repeat 22px center;
        background-size: 32px;
    }

    .shortcuts a.fares {
        background: url(../../../assets/img/icon_btn_fares.svg) #7b74a3 no-repeat 22px center;
        background-size: 32px;
    }

    .shortcuts a.dest {
        background: url(../../../assets/img/icon_btn_destinations.svg) #7b74a3 no-repeat 22px center;
        background-size: 32px;
    }

    .form-inputs .go-button {
        -webkit-box-flex: 0;
        -ms-flex: 0 1 13%;
        flex: 0 1 13%;
        margin: 0 0 8px 0;
    }
}

@media (min-width: 700px){
    .shortcuts {
        right: 22px;
        padding: 0;
        bottom: 50%;
        -webkit-transform: translateY(50%);
        transform: translateY(50%);
        margin: 0 0 -22px 0;
    }

    .shortcuts a {
        display: inline-block;
        /*padding: 14px 16px;*/
        color: #fff;
        text-transform: uppercase;
        font-weight: 900;
        letter-spacing: 1px;
        background: #7b74a3;
        vertical-align: middle;
        -webkit-transition: color 0.25s ease;
        transition: color 0.25s ease;
    }

    .shortcuts a:hover {
        color: #504c58;
        text-decoration: none;
        background: #fff;
    }

    .shortcuts a:not(:last-child) {
        margin: 0 1rem 0 0;
    }
    
    .trip-results {
        width: auto;
    }
}

@media (min-width: 800px) {

	.itin-wrapper {
		display: -ms-flexbox;
		display: -webkit-box;
		display: flex;
		-ms-flex-direction: row;
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		flex-direction: row;
		-ms-flex-wrap: nowrap;
		flex-wrap: nowrap;
		-ms-flex-pack: justify;
		-webkit-box-pack: justify;
		justify-content: space-between;
		-ms-flex-line-pack: stretch;
		align-content: stretch;
		-ms-flex-align: start;
		-webkit-box-align: start;
		align-items: flex-start;
		margin: 1rem auto 0 auto;
		padding: 0;
	}

	.trip-details, .map-wrapper {
		-ms-flex-order: 0;
		-webkit-box-ordinal-group: 1;
		order: 0;
		-ms-flex: 0 1 auto;
		-webkit-box-flex: 0;
		flex: 0 1 auto;
		-webkit-align-self: stretch;
		-ms-flex-item-align: stretch;
		align-self: stretch;
		min-width: calc(50% - 2rem);
		margin: 0 auto;
		padding: 0 1rem;
		max-width: 50%;
	}

	#map2 {
		height: 100%;
		min-height: 600px;
		z-index: 0;
	}

}

@media (min-width: 950px) {
    .trip-entry .input-inner {
        padding: 22px 0 0 0;
        max-width: none;
    }

    .trip-entry .form-wrapper {
        margin: 0;
    }

    .form-inputs {
        width: 50%;
        float: left;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
    }

    .form-inputs.first-row {
        width: calc(45% - 8px);
        margin-right: 8px;
    }

    .form-inputs .entry-field {
        -webkit-box-flex: 0;
        -ms-flex: 1 1 22%;
        flex: 0 1 22%;
        margin: 0 8px 0 0;
    }
    .form-inputs .entry-field:nth-child(1) {
        flex: 0 1 33%;
        -ms-flex: 0 1 33%;
    }

    .form-inputs .entry-field:nth-child(2) {
        flex: 0 1 20%;
        -ms-flex: 1 1 20%;
    }

    .form-inputs .entry-field.start-station, 
    .form-inputs .entry-field.end-station {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 49%;
        flex: 0 0 49%;
        max-width: 49%;
    }

    .form-inputs .entry-field.end-station {
        margin: 0;
    }

    .form-inputs.second-row {
        width: 55%;
    }

    .shortcuts {
        display: block;
        position: absolute;
        top: 22px;
        right: 22px;
        margin: 0;
        padding: 0;
        width: auto;
        height: 65px;
        background: transparent;
        -webkit-transform: none;
        transform: none;
        -webkit-transition: font-size 0.25s ease, color 0.25s ease;
        transition: font-size 0.25s ease, color 0.25s ease;
    }

    .shortcuts a {
        display: inline-block;
        padding: 16px 55px 16px 16px;
        width: auto;
        border-bottom: 0;
        font-size: .9rem;
        -webkit-transition: color 0.25s ease, background .25s ease, padding .25s, font-size .25s;
        transition: color 0.25s ease, background .25s ease, padding .25s, font-size .25s;
        -webkit-transition-timing-function: var(--ease-in-quint);
        transition-timing-function: var(--ease-in-quint);
    }

    .shortcuts a.schedule {
        background: url(../../../assets/img/icon_btn_schedule.svg) #7b74a3 no-repeat 90% center;
    }
    .shortcuts a.schedule:hover{
        background: url(../../../assets/img/icon_btn_schedule.svg) #fff no-repeat 90% center;
    }

    .shortcuts a.fares {
        background: url(../../../assets/img/icon_btn_fares.svg) #7b74a3 no-repeat 90% center;
    }

    .shortcuts a.fares:hover {
        background: url(../../../assets/img/icon_btn_fares.svg) #fff no-repeat 90% center;
    }

    .shortcuts a.dest {
        background: url(../../../assets/img/icon_btn_destinations.svg) #7b74a3 no-repeat 90% center;
    }

    .shortcuts a.dest:hover {
        background: url(../../../assets/img/icon_btn_destinations.svg) #fff no-repeat 90% center;
    }

    .shortcuts a:not(:last-child) {
        margin: 0 0.75rem 0 -4px;
    }

    .form-inputs .go-button {
        -webkit-box-flex: 1;
        -ms-flex: 1 1 10%;
        flex: 1 1 5%;
        margin: 0;
    }

    
}

@media (min-width: 1050px) {
    .shortcuts a {
        font-size: 13.5px;
    }
}

@media (min-width: 1200px) {
    .trip-entry {
        padding: 26px 60px;
    }
    .trip-results {
        padding: 32px 60px;
    }
}

@media (max-width: 1200px) {
    .trip-entry {
        padding: 20px 40px;
    }
}


@media (max-width: 968px) {
	.hero .trip-input .k-autocomplete .k-input, 
	.hero .trip-input .k-dropdown-wrap .k-input, 
	.hero .trip-input .k-multiselect-wrap .k-input, 
	.hero .trip-input .k-numeric-wrap .k-input, 
	.hero .trip-input .k-picker-wrap .k-input, 
	.hero .trip-input .k-selectbox .k-input, 
	.hero .trip-input .k-textbox > input, 
	.hero .trip-input .k-ie .k-autocomplete 
	.hero .trip-input .k-input, 
	.hero .trip-input .k-ie .k-dropdown-wrap .k-input, 
	.hero .trip-input .k-ie .k-multiselect-wrap .k-input, 
	.hero .trip-input .k-ie .k-selectbox .k-input{
		font-size: 14px;
	}
}

@media (max-width: 950px) {
    .hero .input-inner {
        width: 100%;
        margin-left: -22px;
    }    

    .trip-planner-wrapper {
        display: flex;
        flex-direction: column-reverse;
    }

    .shortcuts {
        transform: none;
        margin: 0 0 0 5px
    }

    .hero .trip-input .k-autocomplete .k-input, 
	.hero .trip-input .k-dropdown-wrap .k-input, 
	.hero .trip-input .k-multiselect-wrap .k-input, 
	.hero .trip-input .k-numeric-wrap .k-input, 
	.hero .trip-input .k-picker-wrap .k-input, 
	.hero .trip-input .k-selectbox .k-input, 
	.hero .trip-input .k-textbox > input, 
	.hero .trip-input .k-ie .k-autocomplete 
	.hero .trip-input .k-input, 
	.hero .trip-input .k-ie .k-dropdown-wrap .k-input, 
	.hero .trip-input .k-ie .k-multiselect-wrap .k-input, 
	.hero .trip-input .k-ie .k-selectbox .k-input{
		font-size: 18px;
	}
}

@media (max-width: 800px) {
    .trip-results .itin-wrapper {
        padding: 0;
    }

    .trip-results #tripContainer {
        margin-right: 40px;
    }

    #map2 {
        width: 95% !important;
        margin-left: -10px;
    }
}


@media (max-width: 699px) {
    .shortcuts {
        padding: 0 22px;
        margin: 0 0 0 -15px;
    }
}

@media (max-width: 600px) {
    .shortcuts {
        width: 100%;
        margin: 0 auto -22px -22px;
    }
}
@media (max-width: 900px) {
    #tripEntryBackground img {
        height: 400px;
        width: 1300px !important;
        max-width: 1300px!important;
    }
}