@media only screen and (max-width: 1800px) and (min-width: 1600px) {
	#home-rotator .swiper-slide .desktop-img {
		margin: 0 -100px;
		position: relative;
		width: calc(100% + 200px);
	}

	html.mobile-menu {
		overflow: auto;
	}
}
@media only screen and (max-width: 1599px) and (min-width: 1460px) {
	#home-rotator .swiper-slide .desktop-img {
		margin: 0 auto;
		position: relative;
		width: 100%;
	}

	html.mobile-menu {
		overflow: auto;
	}

	.individual-rooms .room-image img {
		max-width: 385px;
	}
}

@media only screen and (min-width: 1500px) {
	.individual-rooms .room-image img {
		max-width: 385px;
	}
}

@media only screen and (max-width: 1459px) {
	.embed-container iframe {
		height: 450px !important;
	}
}

@media only screen and (max-width: 1459px) and (min-width: 1200px) {
	.inner-ammenities-modal {
		max-height: 400px;
	}

	#hotelImageSlider.swiper-container,
	#map {
		height: 450px;
	}

	#page-id-151 > #wrapper > .page-container > .page-inner > .page-content p {
		max-width: 1140px;
		margin: 20px auto 0px auto;
	}

	#page-id-151
		> #wrapper
		> .page-container
		> .page-inner
		> .page-content
		> .related-pages-wrapper,
	#page-id-151
		> #wrapper
		> .page-container
		> .page-inner
		> .page-content
		> .first-accessible {
		margin: 0 auto;
		max-width: 1140px;
	}

	#accessible-services .column.three {
		padding: 0 35px;
	}

	#accessible-services {
		padding: 100px 65px;
	}

	#trip-planner-type label > span > span,
	#trip-planner select,
	#trip-planner #searchButton,
	#trip-planner #searchPackagesButton,
	a.button,
	.button {
		font-size: 12px;
	}

	#trip-planner-type {
		padding-left: 20px;
	}

	.swiper-button-next::after,
	.swiper-button-prev::after {
		font-size: 22px !important;
	}
	.swiper-button-prev,
	.swiper-button-next {
		height: 35px !important;
		width: 35px !important;
	}

	.swiper-button-prev {
		left: 20px !important;
	}

	.swiper-button-next {
		right: 20px !important;
	}

	#trip-planner .trip-planner-title,
	.trip-planner-title span {
		font-size: 20px;
		line-height: 40px;
	}
	#trip-planner .trip-planner-title {
		width: 10%;
	}
	/*
	#header-menu #hm-about-us .submenu {
		left: -10px;
	}*/

	#header-menu #hm-attractions .submenu {
		left: 767px;
	}
	/*
	#hm-packages .submenu {
		left: 475px !important;
	}*/

	#header-upper,
	.page-inner,
	#home-articles {
		margin: 0 auto;
		max-width: 1140px;
	}

	#home-articles h3 {
		font-size: 18px;
	}

	#header-nav-inner {
		max-width: 1140px;
		margin: 0 auto;
		padding: 0 0 0 25px;
	}
	/*
	#header-menu > li:first-child > a {
		margin-left: -35px;
	}*/

	#header-menu > li > a {
		font-size: 12px;
		padding: 10px 15px;
	}

	#header-menu #hm-Fares .submenu {
		left: 83px;
	}

	#header-menu #hm-Drive-on .submenu {
		left: 287px;
	}

	#header-menu #hm-package-deals .submenu {
		left: 512px;
	}

	#header-menu #hm-hotels .submenu {
		left: 686px;
	}

	#header-menu #hm-MV-Coho .submenu {
		left: 922px;
	}

	#footer-inner {
		max-width: 1140px;
	}

	#footer {
		background-size: auto 650px;
	}

	#footer-lower {
		margin: -75px 0 0;
		text-align: right;
	}

	#footer-lower-left {
		display: block;
		width: auto;
		margin: 0 0 20px;
	}

	#footer-lower-right {
		display: block;
		width: auto;
		margin: 0;
	}

	.footer-col {
		padding: 0 26px 0 0;
	}

	.footer-col.footer-col-4 {
		padding: 0;
	}

	#footer .footer-col-1 a,
	#footer .footer-heading a {
		font-size: 15px;
		line-height: 30px;
	}

	#footer a {
		font-size: 13px;
	}

	#footer .footer-col-1 a {
		font-size: 14px;
	}

	#trip-planner {
		left: 30px;
	}

	#home-route .block-inner {
		max-width: 1140px;
	}

	.content-left {
		max-width: 600px;
	}

	#home-welcome-aboard > img {
		max-width: calc(100% + 200px);
		margin: 0 -100px;
	}

	#home-welcome-aboard .grid-item img {
		max-width: 160px;
		margin-top: 20px;
	}

	#home-welcome-aboard .grid.grid-4 .grid-item {
		width: 20%;
	}

	#home-welcome-aboard .block-inner h3 {
		font-size: 18px;
	}

	a.button,
	.button {
		font-size: 18px;
		padding: 15px 30px;
	}

	a.button.button-secondary,
	.button.button-secondary {
		font-size: 14px;
		padding: 4px 15px 3px;
		margin: 4px 0 0;
	}

	.walk-on-content {
		margin: 0 0 60px;
	}

	#header-menu #trip-details-toggle {
		width: 88px;
	}

	#things-times-inner {
		max-width: 1140px;
	}

	html.mobile-menu {
		overflow: auto;
	}

	#newsletter h3 {
		font-size: 26px;
	}
	/*
	#header-menu #hm-travel-info .submenu {
		left: 278px;
		width: 205px;
	}*/

	#home-rotator .swiper-slide .desktop-img {
		margin: 0 auto;
		width: 100%;
		position: relative;
	}

	.columns .columns-heading .column,
	.current-fares .columns-heading .column.twelve-two,
	.vehicle-reservation-fees .columns-heading .column.twelve-two {
		font-size: 16px;
	}

	.contact-locations {
		padding: 0;
	}

	.packaging-wrapper {
		padding: 20px;
	}

	.contact-location label {
		min-width: 95px;
	}

	.list-article-content {
		height: 130px;
	}

	button.button-primary {
		padding: 14px 35px;
	}

	.accordion-header {
		font-size: 20px;
	}

	.alert-message {
		top: 60px;
	}

	.alert-message-inner {
		max-width: 1140px;
	}

	.related-page h3 {
		font-size: 16px;
	}

	.related-page-cta {
		font-size: 14px;
		padding: 11px 20px;
	}

	.list-article h3 {
		font-size: 22px;
		line-height: 26px;
	}

	.article-category-filter-wrapper {
		max-width: 1140px;
	}

	img.the-route-desktop {
		max-width: 120%;
		margin: 0 -10%;
	}

	.attraction-featured-img,
	.hotel-featured-img,
	.rental-featured-img {
		width: 400px;
		height: 400px;
	}

	.attraction-left,
	.hotel-left,
	.rental-left {
		width: 400px;
	}

	.accordion-title {
		line-height: 24px;
	}

	.attraction-right,
	.hotel-right .rental-right {
		width: calc(100% - 450px);
	}

	h1.attraction-title,
	h1.hotel-title,
	h1.rental-title {
		font-size: 42px;
		line-height: 44px;
	}

	.attraction-location,
	.hotel-location,
	.rental-location {
		font-size: 16px;
		margin: 0;
	}

	.attraction-description,
	.attraction-description p,
	.hotel-description,
	.hotel-description p,
	.rental-description,
	.rental-description p {
		font-size: 17px;
		margin: 0 0 30px;
	}

	.ticket-select {
		padding: 4px 0 3px;
		font-size: 15px;
	}

	.ticket-label {
		letter-spacing: 0.08em;
		line-height: 15px;
	}

	.hotel-right {
		width: calc(100% - 450px);
	}

	.hotel-right .room-results {
		display: none;
	}

	.hotel-description {
		min-height: 335px;
	}

	.hotel-booking-dates {
		position: absolute;
		left: 0;
		width: 100%;
		box-sizing: border-box;
	}

	.attraction .hotel-booking-dates {
		position: relative;
	}

	.related-page-bg {
		height: 200px;
	}

	#black-ball-shop .block-inner {
		padding: 0 40px;
	}

	#black-ball-shop .content-left {
		padding: 0 80px 0 0;
	}

	#black-ball-shop p {
		font-size: 18px;
		line-height: 26px;
	}

	.pages-image-gallery .column.six {
		width: 33.33333%;
	}

	.pages-image-gallery .column.six:nth-child(3n + 3) {
		padding-right: 0;
	}

	.pages-image-gallery .column.six:nth-child(3n + 4) {
		padding-left: 0;
	}

	a.image-gallery-item {
		max-height: 227px;
	}

	#charter-transporation-inner {
		max-width: 1140px;
	}

	#image-library-boat-img {
		margin: 60px 0 0;
	}

	#timeline-grid .column.four .timeline-img:after {
		left: 124%;
		width: 30%;
		border-top: 8px dotted;
	}

	#timeline-grid .column.four:nth-child(8n + 4) .timeline-img:after {
		width: 21%;
	}

	#timeline-grid .column.four:nth-child(8n + 5) .timeline-img:before {
		left: -31%;
		width: 21%;
		border-top: 8px dotted;
	}

	#media-downloads .column.six {
		width: 20%;
	}

	#media-video .column.three-two,
	#media-video .column.three {
		vertical-align: middle;
		width: 50%;
	}

	#media-video iframe {
		height: 400px;
	}

	#media-video h2 {
		font-size: 32px;
	}

	#media-video h3 {
		padding-left: 16px;
		font-size: 21px;
		margin: 20px 0 5px;
	}

	#mi-beginning-content .column.three-two {
		width: 60%;
	}

	#mi-beginning-content .column.three {
		width: 40%;
	}

	#history-rotator {
		max-width: 1140px;
	}

	.gs-column h3 {
		height: 110px;
	}

	#newsletter-form button.button-primary {
		padding: 12px 35px;
	}
}

@media only screen and (max-width: 1199px) {
	.container {
		width: 100%;
		margin: 0 auto;
	}

	.room-details h3 {
		font-size: 14px !important;
	}

	.room-description p {
		font-size: 16px !important;
	}

	.room-image img {
		height: 100%;
	}
}

@media only screen and (min-width: 1024px) {
	#mobile-room-modal-close {
		display: none;
	}
}

@media only screen and (max-width: 1024px) {
	.embed-container iframe {
		max-width: 95%;
	}

	#desktop-room-modal-close {
		display: none;
	}

	.question-info-box p {
		line-height: 15px !important;
		padding: 5px !important;
	}

	.accessibility-note {
		padding: 0px 50px;
	}

	.dog-images {
		flex-direction: column;
	}

	.dog-images img {
		align-self: center;
		max-width: 60%;
	}

	.pet-image-hide {
		display: none !important;
	}
	/*
	.bike-on-two-buttons {
		flex-direction: column;
		width: 100%;
		margin: 0 auto;
	}*/
}

@media only screen and (max-width: 1199px) {
	.nearby-activities {
		flex-wrap: wrap;
	}

	#nearbySlider > .swiper-wrapper > .swiper-slide {
		width: 100% !important;
	}

	#hotelImageSlider,
	#map {
		height: 425px;
	}
}

@media only screen and (max-width: 1199px) and (min-width: 1024px) {
	#nearbySlider .swiper-container {
		height: 275px;
	}

	.interest-point {
		max-width: 35%;
	}

	#page-id-151 > #wrapper > .page-container > .page-inner > .page-content p {
		max-width: 960px;
	}

	#page-id-151
		> #wrapper
		> .page-container
		> .page-inner
		> .page-content
		> .related-pages-wrapper,
	#page-id-151
		> #wrapper
		> .page-container
		> .page-inner
		> .page-content
		> .first-accessible {
		max-width: 960px;
		margin: 0 auto;
	}
	#accessible-services {
		padding: 100px 30px;
	}

	#accessible-services .column.three {
		padding: 0 25px;
	}

	#trip-planner {
		display: none;
	}

	#home-package-deals {
		margin-top: 60px;
	}
	#header-menu #hm-attractions .submenu {
		left: 610px;
	}

	#header-menu > li > a {
		letter-spacing: 0.1em;
	}
	/*
	#hm-packages .submenu {
		left: 375px !important;
	}*/

	html.mobile-menu {
		overflow: auto;
	}

	#home-articles,
	#header-upper,
	.page-inner {
		margin: 0 auto;
		max-width: 960px;
	}

	#header-nav-inner {
		max-width: 960px;
		margin: 0 auto;
		padding: 0;
	}

	#header-menu > li > a {
		font-size: 10px;
		padding: 8px 15px;
	}

	#header-menu > li.nav-book-now a {
		padding: 8px 18px;
		font-size: 12px;
	}
	/*
	#header-menu > li:first-child > a {
		margin-left: -15px;
	}*/

	#header-menu #hm-Fares .submenu {
		left: 55px;
	}

	#header-menu #hm-Drive-on .submenu {
		left: 226px;
	}

	#header-menu #hm-package-deals .submenu {
		left: 417px;
	}

	#header-menu #hm-hotels .submenu {
		left: 562px;
	}

	#header-menu #hm-MV-Coho .submenu {
		left: 763px;
	}

	#header-menu > li > .submenu > ul li > a {
		font-size: 14px;
		line-height: 20px;
	}

	#footer {
		background-size: auto 660px;
	}

	#footer-inner {
		max-width: 960px;
		height: 510px;
	}

	#footer .footer-col-1 a {
		font-size: 18px;
		line-height: 30px;
	}

	#footer .footer-col-1 a,
	#footer .footer-heading a {
		font-size: 13px;
		line-height: 28px;
	}

	#footer .footer-heading {
		height: 28px;
	}

	#footer a {
		font-size: 14px;
		line-height: 24px;
	}

	.footer-col {
		padding: 20px 35px 0 0;
	}

	.footer-col.footer-col-5 {
		position: absolute;
		top: 70px;
		right: 10px;
	}

	#footer-lower {
		margin: -125px 0 0;
		text-align: right;
	}

	#footer-lower-left {
		display: block;
		width: auto;
		margin: 0 0 20px;
	}

	#footer-lower-right {
		display: block;
		width: auto;
		margin: 0;
	}

	#footer-copyright {
		margin: 30px 0 0;
	}

	#trip-planner .trip-planner-title {
		font-size: 16px;
	}

	.trip-planner-title span {
		font-size: 42px;
	}

	#trip-planner .nav-pills a {
		font-size: 12px;
	}

	#trip-planner #ferry-only span {
		width: 40px;
		height: 18px;
	}

	#trip-planner #package-deal span {
		width: 20px;
		height: 20px;
	}

	#trip-planner .tab-content {
		padding: 20px 22px;
	}

	#trip-planner-type label span {
		line-height: 47px;
		font-size: 13px;
	}

	.passenger-icon-minus,
	.ticket-icon-minus {
		width: 29px;
		background-size: 8px;
	}

	.passenger-icon-plus,
	.ticket-icon-plus {
		width: 29px;
		background-size: 8px;
	}

	#trip-planner .passengers input,
	.ticket-number {
		width: 39px;
	}

	.ticket-input-box {
		width: 106px;
	}

	.ticket-group-info {
		width: calc(100% - 242px);
	}

	#trip-planner #searchButton,
	#trip-planner #searchPackagesButton {
		width: calc(100% + 44px);
		margin: 24px -22px -20px;
		font-size: 18px;
		height: 54px;
	}

	#trip-planner-wrapper {
		width: 100%;
		-webkit-transition: 0.8s all;
		-moz-transition: 0.8s all;
		-ms-transition: 0.8s all;
		transition: 0.8s all;
	}

	#trip-planner-wrapper.active {
		height: 528px;
		background: #fff;
		z-index: 100;
		padding: 20px 0;
		box-shadow: 0 40px 50px 20px #fff;
	}

	#trip-planner {
		left: 30px;
		width: 360px;
		-webkit-transition: 0.8s all;
		-moz-transition: 0.8s all;
		-ms-transition: 0.8s all;
		transition: 0.8s all;
	}

	#trip-planner-wrapper.active #trip-planner {
		left: calc(50% - 170px);
		top: 20px;
	}

	#home-package-deals a.button {
		width: 25%;
		padding: 14px 20px;
		font-size: 16px;
		min-width: 280px;
	}

	.content-block h2 {
		font-size: 45px;
	}

	.content-block p {
		font-size: 18px;
	}

	#home-route .block-inner {
		max-width: 960px;
	}

	.content-left {
		max-width: 500px;
	}

	#home-welcome-aboard > img {
		max-width: calc(100% + 200px);
		margin: 0 -100px;
	}

	#home-welcome-aboard .grid-item img {
		max-width: 140px;
		margin-top: 20px;
		margin-bottom: 5px;
	}

	#home-welcome-aboard .grid.grid-4 .grid-item {
		width: 18%;
	}

	#home-welcome-aboard .block-inner h3 {
		font-size: 16px;
	}

	#home-articles h3 {
		font-size: 18px;
	}

	#home-articles h3 {
		line-height: 20px;
		font-size: 16px;
		padding: 15px 0 0;
	}

	.page_heading h1,
	.page-content h1 {
		font-size: 42px;
	}

	h2 {
		font-size: 28px;
		line-height: 32px;
	}

	.page-content h3,
	.page_heading h3 {
		font-size: 22px;
		line-height: 24px;
	}

	a.button,
	.button {
		font-size: 16px;
		padding: 12px 25px;
	}

	#trip-details-toggle span {
		top: 10px;
	}

	#trip-details-toggle span:before {
		border-right: 2px solid #fff;
		border-bottom: 2px solid #fff;
	}

	#header-menu #trip-details-toggle {
		width: 88px;
	}

	#newsletter-icon {
		background-size: 64px;
		width: 45px;
		height: 27px;
	}

	#newsletter h3 {
		font-size: 24px;
	}

	#newsletter-form input[type="text"] {
		height: 50px;
		font-size: 16px;
		width: 240px;
	}

	#newsletter-form input[type="submit"] {
		padding: 8px 26px;
		font-size: 16px;
		height: 40px;
	}
	/*
	#header-menu #hm-travel-info .submenu {
		left: 215px;
		width: 206px;
	}*/

	#home-rotator .swiper-slide .desktop-img {
		margin: 0 -180px;
		width: calc(100% + 360px);
		position: relative;
	}

	.columns .columns-heading .column,
	.current-fares .columns-heading .column.twelve-two,
	.vehicle-reservation-fees .columns-heading .column.twelve-two {
		font-size: 16px;
	}

	.column-title {
		font-size: 20px;
	}

	.button-wrap {
		padding: 60px 0;
	}

	.contact-locations {
		padding: 0;
	}

	.packaging-wrapper {
		padding: 0 20px;
	}

	.contact-location h3 {
		font-size: 18px;
	}

	.contact-location .column {
		font-size: 18px;
		line-height: 28px;
	}

	.contact-location .column {
		display: block;
		width: 100%;
	}

	.column .hours-day:nth-child(4n + 2) {
		background: #eee;
	}

	.column .hours-day:nth-child(4n + 3) {
		background: #fff;
	}

	.list-article-content p {
		font-size: 16px;
	}

	.list-article-content {
		height: 110px;
	}

	button.button-primary {
		padding: 10px 30px 11px;
	}

	.accordion-header {
		font-size: 18px;
	}

	.alert-message {
		top: 40px;
	}

	.alert-message-inner {
		max-width: 960px;
		font-size: 15px;
	}

	#things-times-inner {
		max-width: 950px;
	}

	a.button.button-secondary,
	.button.button-secondary {
		font-size: 14px;
		padding: 4px 15px 3px;
		margin: 4px 0 0;
	}

	.walk-on-content {
		margin: 0 0 60px;
	}

	.page-content h4 {
		font-size: 16px;
	}

	.related-page h3 {
		font-size: 14px;
		padding: 10px 20px;
	}

	.related-page-cta {
		font-size: 14px;
		padding: 8px 18px;
		letter-spacing: 0.15em;
	}

	.related-page-bg {
		height: 170px;
	}

	.id-req-right {
		width: 25%;
	}

	.id-req-left {
		width: 75%;
	}

	.list-article {
		width: 50%;
	}

	.article-category-filter-wrapper {
		max-width: 960px;
	}

	img.the-route-desktop {
		max-width: 140%;
		margin: 0 -20%;
	}

	.card {
		width: 33.333%;
	}

	.attraction-featured-img,
	.hotel-featured-img,
	.rental-featured-img {
		width: 400px;
		height: 400px;
	}

	.attraction-left,
	.hotel-left,
	.rental-left {
		width: 400px;
	}

	.accordion-title {
		line-height: 24px;
	}

	.card.single-attraction-item .card-img,
	.card.single-hotel-item .card-img,
	.card.single-rental-item .card-img {
		min-height: 260px;
	}

	.attraction-right,
	.hotel-right,
	.rental-right {
		width: calc(100% - 450px);
	}

	h1.attraction-title,
	h1.hotel-title,
	h1.rental-title {
		font-size: 36px;
		line-height: 38px;
	}

	.attraction-location,
	.hotel-location,
	.rental-location {
		font-size: 16px;
		margin: 0;
	}

	.attraction-description,
	.attraction-description p,
	.hotel-description,
	.hotel-description p,
	.rental-description,
	.rental-description p {
		font-size: 17px;
		margin: 0 0 30px;
	}

	.ticket-select {
		padding: 4px 0 3px;
		font-size: 13px;
		width: 120px;
	}

	.ticket-label {
		letter-spacing: 0.08em;
		line-height: 15px;
		width: calc(100% - 100px);
	}

	.ticket-description p {
		font-size: 16px;
		line-height: 22px;
		margin: 0 0 10px;
	}

	.ticket-price {
		font-size: 16px;
		width: 100px;
	}

	.hotel-right .room-results {
		display: none;
	}

	.hotel-item-wrapper > .room-results {
		display: block;
		padding: 125px 0 0;
	}

	.hotel-description {
		min-height: 335px;
	}

	.hotel-booking-dates {
		position: absolute;
		left: 0;
		width: 100%;
		box-sizing: border-box;
	}

	.attraction .hotel-booking-dates {
		position: relative;
	}

	#vodka-img {
		margin-top: -70px;
	}

	.contact-form {
		padding: 0 20px 1px;
	}

	#black-ball-shop .content-left {
		padding: 40px 100px 40px 0;
		width: 55%;
	}

	#black-ball-shop .content-right {
		width: 60%;
	}

	#black-ball-shop .block-inner {
		padding: 0 40px;
	}

	#black-ball-shop p {
		font-size: 18px;
		line-height: 26px;
	}

	.current-fares.commercial-fares .column.twelve-ten {
		width: 80%;
	}

	.direct-billing-columns .column.two {
		width: 100%;
		padding: 0;
	}

	a.direct-billing-pdf {
		display: none;
	}

	.pages-image-gallery .column.six {
		width: 33.33333%;
	}

	.pages-image-gallery .column.six:nth-child(3n + 3) {
		padding-right: 0;
	}

	.pages-image-gallery .column.six:nth-child(3n + 4) {
		padding-left: 0;
	}

	a.image-gallery-item {
		max-height: 187px;
	}

	#charter-transporation-inner {
		max-width: 960px;
	}

	#travel-trade-image-library .column.three-two,
	#travel-trade-image-library .column.three {
		width: 50%;
	}

	#schedule-fares-fee-disclaimer {
		margin: 0px 100px 40px;
	}

	.timeline-img {
		max-width: 140px;
	}

	#timeline-grid img {
		border: 10px solid #fff;
	}

	#timeline-grid .column.four .timeline-img:after {
		left: 126%;
		width: 40%;
		border-top: 8px dotted;
	}

	#timeline-grid .column.four:nth-child(8n + 4) .timeline-img:after {
		width: 16%;
	}

	#timeline-grid .column.four:nth-child(8n + 5) .timeline-img:before {
		left: -30%;
		width: 16%;
		border-top: 8px dotted;
	}

	#media-downloads .column.six {
		width: 24%;
	}

	#media-video h3 {
		padding-left: 13px;
		font-size: 17px;
		margin: 18px 0 0;
	}

	#media-video .column.three-two,
	#media-video .column.three {
		vertical-align: middle;
		width: 50%;
	}

	#media-video iframe {
		height: 320px;
	}

	#media-video h2 {
		font-size: 26px;
	}

	a.media-download {
		display: inline-block;
		vertical-align: top;
		width: 50%;
	}

	#mi-beginning-content .column.three {
		width: 100%;
	}

	#mi-beginning-content .column.three-two {
		width: 100%;
	}

	#history-rotator {
		max-width: 960px;
	}

	#history-rotator h3:after {
		width: calc(100% - 160px);
	}

	.gs-column h3 > span:last-child {
		font-size: 18px;
	}

	.gs-column h3 {
		height: 100px;
	}

	#home-package-deals .block-inner {
		padding: 100px 0 40px;
	}

	#newsletter-form button.button-primary {
		padding: 14px 35px 13px;
	}
}

@media only screen and (min-width: 1024px) {
	#overnightMobileCards {
		display: none;
	}

	#morePkgsOvernightButton {
		display: none;
	}
}

@media only screen and (max-width: 1024px) {
	.contact-map {
		padding: 0;
	}

	#overnightDesktopCards {
		display: none;
	}
}

@media only screen and (max-width: 1023px) and (min-width: 768px) {
	#nearbySlider .swiper-container {
		height: 300px;
	}

	.interest-point {
		max-width: 40%;
	}

	.attraction-featured-img,
	.hotel-featured-img,
	.rental-featured-img {
		width: 100%;
		height: 50vh;
	}

	/*
	.hotel-featured-img img {
		height: 50vh !important;
	}
	*/

	.swiper-button-prev.hotels::after,
	.swiper-button-next.hotels::after {
		font-size: 22px !important;
	}

	.accessibility-note strong {
		padding: 0px 45px;
	}

	#page-id-151 > #wrapper > .page-container > .page-inner > .page-content p {
		max-width: 680px;
	}

	#page-id-151
		> #wrapper
		> .page-container
		> .page-inner
		> .page-content
		> .related-pages-wrapper,
	#page-id-151
		> #wrapper
		> .page-container
		> .page-inner
		> .page-content
		> .first-accessible {
		max-width: 680px;
	}

	#accessible-services {
		padding: 100px 30px;
	}

	#accessible-services .column.three {
		padding: 0 25px;
	}
	.swiper-button-next::after,
	.swiper-button-prev::after {
		font-size: 20px !important;
	}

	.swiper-button-prev {
		left: 20px !important;
	}

	.swiper-button-next {
		right: 20px !important;
	}

	#home-package-deals .swiper-button-prev {
		left: -43px !important;
	}

	#home-package-deals .swiper-button-next {
		right: -43px !important;
	}

	.swiper-button-prev,
	.swiper-button-next {
		top: 440px !important;
		height: 30px !important;
		width: 30px !important;
	}

	#mobile-nav-wrapper.active {
		left: 0%;
	}

	#header-nav #header-menu li {
		display: none;
	}

	#header-nav #header-menu li.nav-book-now {
		display: block;
		position: absolute;
		top: -64px;
		right: 8px;
	}

	#header-upper {
		padding: 0 25px;
		width: auto;
	}

	#mobile-nav-toggle {
		display: inline-block;
	}

	#header-right {
		width: calc(100% - 405px);
	}

	#header-reserve {
		position: relative;
		padding: 20px 20px;
		margin: 0 0 -10px;
		z-index: 100;
	}

	#header-reserve.active {
		background: #fff;
		color: #ed1c24;
		box-shadow: inset 0 0 0 2px #ed1c24;
		margin: -2px 0 -10px;
		padding: 22px 20px 20px;
	}

	#footer {
		background-size: auto 750px;
	}

	#footer-inner,
	.page-inner {
		max-width: 680px;
	}

	#home-articles {
		margin: 0 auto;
		max-width: 680px;
	}

	#footer .footer-col-1 a {
		font-size: 18px;
		line-height: 30px;
	}

	#footer .footer-col-1 a,
	#footer .footer-heading a {
		font-size: 13px;
		line-height: 28px;
	}

	.footer-col.footer-col-4 {
		position: absolute;
		top: 320px;
		left: 212px;
	}

	.footer-col.footer-col-5 {
		position: absolute;
		top: 280px;
		left: 438px;
	}

	#footer-lower {
		margin: -20px 0 0;
		float: none;
	}

	#footer .footer-heading {
		height: 28px;
	}

	#footer a {
		font-size: 14px;
		line-height: 24px;
	}

	.footer-col {
		padding: 0 40px 0 0;
	}

	.footer-col.footer-col-3 {
		padding-top: 40px;
	}

	#footer a.button.red {
		font-size: 14px;
	}

	#footer-lower-right {
		margin: 0;
	}

	#footer-lower-right > a:first-child + a {
		padding-right: 0;
		margin-bottom: 20px;
	}

	#footer-lower-right > a:first-child {
		padding-left: 150px;
		margin-bottom: 20px;
	}

	.footer-col.footer-col-1 {
		padding-bottom: 30px;
	}

	#footer-copyright {
		margin: 20px 0 0;
	}

	#mobile-menu > li {
		-webkit-column-break-inside: avoid;
		page-break-inside: avoid;
		break-inside: avoid;
	}

	#mobile-menu {
		position: relative;
		max-width: 720px;
		margin: 0 auto;
	}

	#mobile-nav-close {
		right: 2px;
	}

	.mm-lev-1 {
		width: 50%;
	}

	.mm-lev-1 a {
		font-size: 16px;
	}

	.mm-lev-1.slide-out {
		left: 0%;
	}

	.mm-lev-1.active {
		background: #444;
	}

	.submenu.mm-lev-2 {
		width: 50%;
		background: #444;
	}

	.submenu.mm-lev-2.active {
		left: 50%;
	}

	.mm-lev-2 .mm-back {
		display: none;
	}

	#trip-planner .passengers input {
		width: 39px;
		padding: 10px 0;
	}

	#trip-planner #searchButton,
	#trip-planner #searchPackagesButton {
		width: calc(100% + 44px);
		margin: 24px -22px -20px;
		font-size: 18px;
		height: 54px;
	}

	#trip-planner-wrapper {
		position: absolute;
		width: 100%;
		overflow: hidden;
		height: 0;
		-webkit-transition: 0.8s all;
		-moz-transition: 0.8s all;
		-ms-transition: 0.8s all;
		transition: 0.8s all;
	}

	#trip-planner-wrapper.active {
		height: 528px;
		background: #fff;
		z-index: 100;
		padding: 20px 0;
		box-shadow: 0 40px 50px 20px #fff;
	}

	#trip-planner {
		left: 0px;
		width: /*340px*/ 60%;
		top: 0;
		-webkit-transition: 0.8s all;
		-moz-transition: 0.8s all;
		-ms-transition: 0.8s all;
		transition: 0.8s all;
	}

	#trip-planner-wrapper.active #trip-planner {
		left: calc(40% - 170px);
		top: 20px;
	}

	#trip-planner .trip-planner-title {
		font-size: 14px;
	}

	.trip-planner-title span {
		font-size: 38px;
		line-height: 42px;
	}

	#trip-planner .trip-planner-title {
		padding: 25px 0;
	}

	#trip-planner .nav-pills a {
		font-size: 12px;
		line-height: 44px;
	}

	#trip-planner #ferry-only span {
		width: 40px;
		height: 18px;
	}

	#trip-planner #package-deal span {
		width: 20px;
		height: 20px;
	}

	#trip-planner .tab-content {
		padding: 20px;
	}

	#trip-planner label {
		font-size: 10px;
	}

	#trip-planner-type label span {
		line-height: 45px;
		font-size: 13px;
	}

	.passenger-icon-minus,
	.ticket-icon-minus {
		width: 26px;
		background-size: 6px;
		height: 40px;
	}

	.passenger-icon-plus,
	.ticket-icon-plus {
		width: 26px;
		background-size: 6px;
		height: 40px;
	}

	#trip-planner .passengers input,
	.ticket-number {
		font-size: 16px;
	}

	#home-package-deals .block-inner p {
		padding: 10px 0 0;
	}

	#home-package-deals .block-inner {
		padding: 30px 50px 40px;
		text-align: center;
	}

	.content-block h2 {
		font-size: 40px;
		line-height: 40px;
		margin: 0;
	}

	.content-block p {
		font-size: 16px;
		line-height: 26px;
		padding: 5px 0 0;
	}

	#home-package-deals a.button {
		width: 35%;
		font-size: 16px;
		padding: 14px 20px;
	}

	.block-inner {
		padding: 0 50px;
		box-sizing: border-box;
	}

	.content-left {
		max-width: 50%;
	}

	#home-route img {
		max-width: 160%;
		margin: 0 -30%;
	}

	#home-rotator .swiper-slide .desktop-img {
		margin: 0 -145px;
		position: relative;
		width: calc(100% + 290px);
	}

	#home-welcome-aboard > img {
		max-width: calc(100% + 400px);
		margin: 0 -200px;
	}

	#home-welcome-aboard .grid-item img {
		max-width: 140px;
		margin-top: 20px;
		margin-bottom: 5px;
	}

	#home-welcome-aboard .grid.grid-4 .grid-item {
		width: 25%;
	}

	#home-welcome-aboard .block-inner h3 {
		font-size: 14px;
	}

	#home-articles h3 {
		font-size: 16px;
	}

	#home-articles h3 {
		line-height: 20px;
		font-size: 16px;
		padding: 15px 0 0;
	}

	.page_heading h1,
	.page-content h1 {
		font-size: 36px;
		line-height: 44px;
	}

	h2 {
		font-size: 24px;
		line-height: 26px;
		font-weight: 700;
	}

	.page-content h3,
	.page_heading h3 {
		font-size: 18px;
		line-height: 20px;
	}

	p,
	.column {
		font-size: 16px;
	}

	.tablet-wide {
		width: 100% !important;
		padding: 0;
	}

	a.button,
	.button {
		font-size: 14px;
		padding: 12px 25px;
	}

	#header-menu #trip-details-toggle {
		width: 120px;
		padding: 12px 20px;
	}

	#newsletter-icon {
		background-size: 54px;
		width: 40px;
		height: 24px;
		background-position: -8px -10px;
	}

	#newsletter h3 {
		font-size: 20px;
		padding: 2px 10px;
	}

	#newsletter-form input[type="text"] {
		height: 50px;
		font-size: 16px;
		width: 240px;
	}

	#newsletter-form input[type="submit"] {
		padding: 8px 16px;
		font-size: 14px;
		height: 40px;
	}

	.current-fares.column.two,
	.vehicle-reservation-fees.column.two {
		width: 100%;
		padding: 0;
		margin: 0 0 20px;
	}

	.columns .columns-heading .column,
	.current-fares .columns-heading .column.twelve-two,
	.vehicle-reservation-fees .columns-heading .column.twelve-two {
		font-size: 14px;
		line-height: 18px;
	}

	.column-title {
		font-size: 20px;
	}

	.button-wrap {
		padding: 40px 0;
	}

	.accordion-header {
		font-size: 18px;
		padding-right: 50px;
		line-height: 20px;
		height: auto;
	}

	.ferry-schedule-accordion .accordion-departure-location:before {
		top: 43px;
		height: calc(100% - 73px);
	}

	.ferry-schedule-accordion .accordion-departure-location:last-child:before {
		height: calc(100% - 43px);
	}

	.contact-location.column {
		width: 100%;
		max-width: none;
		padding: 0 20px;
	}

	.contact-form-wrapper {
		width: 100%;
		max-width: none;
		padding: 0 20px;
	}

	.contact-locations {
		padding: 0;
	}

	.packaging-wrapper {
		padding: 0 20px;
	}

	.packaging-office .column.three,
	.packaging-office .column.three-two {
		width: 100%;
		padding: 0;
	}

	.packaging-left-content > .columns > .column {
		width: inherit;
		padding-left: 20px;
		padding-right: 20px;
	}

	.packaging-left-content > .columns > .column:first-child {
		padding-left: 0;
	}

	.packaging-left-content > .columns > .column:last-child {
		padding-right: 0;
	}

	button.button-primary {
		padding: 12px 30px 11px;
	}

	.alert-message {
		top: 20px;
		left: 20px;
		width: calc(100% - 40px);
	}

	.alert-message-inner {
		font-size: 14px;
	}

	a.button.button-secondary,
	.button.button-secondary {
		font-size: 12px;
		padding: 6px 10px 5px;
		margin: 4px 0 0;
		line-height: 18px;
	}

	#things-times-inner {
		max-width: 680px;
	}

	#things-times:before {
		background: url(/img/pages/coho-644.jpg) center center no-repeat;
		background-size: auto 100%;
	}

	p,
	ul {
		font-size: 16px;
	}

	.walk-on-content {
		margin: 0 0 40px;
	}

	.page-content h4 {
		font-size: 16px;
	}

	.related-page {
		width: 50%;
		margin: 0 0 4px;
	}

	.related-page h3 {
		font-size: 14px;
		padding: 10px 20px;
	}

	.related-page-cta {
		font-size: 14px;
		padding: 8px 18px;
		letter-spacing: 0.15em;
	}

	.related-page-bg {
		height: 180px;
	}

	.page-content .related-page-thumb {
		max-width: none;
		width: 110%;
		height: auto;
	}

	.id-req-right {
		width: 35%;
	}

	.id-req-left {
		width: 65%;
	}

	.list-article {
		width: 50%;
	}

	.list-article a {
		height: 500px;
	}

	.list-article-cta {
		bottom: 30px;
		left: calc(50% - 85px);
	}

	.article-category-filter-wrapper {
		max-width: none;
		margin: 0 20px 20px;
	}

	#article-category-filter-selected {
		width: 480px;
	}

	#article-category-filter {
		position: relative;
		right: auto;
		top: auto;
		width: 480px;
		margin: 20px auto;
	}

	#article-category-filter-selected:before {
		position: relative;
		top: 0px;
		right: auto;
		margin: 0px 12px 0px -15px;
		padding: 12px 14px 13px;
	}

	.card.single-attraction-item .card-img,
	.card.single-hotel-item .card-img,
	.card.single-rental-item .card-img {
		min-height: 220px;
	}

	.card-title {
		font-size: 16px;
		line-height: 22px;
	}

	.card-location {
		font-size: 10px;
	}

	.card-info {
		padding: 10px 20px;
		height: 105px;
	}

	.card-price .price-from,
	.card-price .price-currency {
		font-size: 16px;
	}

	.card-price-lower {
		font-size: 10px;
	}

	.card-price .price-dollars {
		font-size: 18px;
		line-height: 47px;
	}

	.card-price .price-cents {
		font-size: 18px;
		line-height: 22px;
		margin: -15px 0 0 -4px;
	}

	.card-button-book {
		font-size: 14px;
		width: 160px;
		padding: 16px 0;
		left: calc(50% - 80px);
	}

	.attraction .page-inner,
	.hotel .page-inner,
	.rental .page-inner {
		max-width: none;
		padding: 0 25px;
	}

	.attraction-featured-img,
	.hotel-featured-img,
	.rental-featured-img {
		width: 300px;
		height: 300px;
	}

	.attraction-left,
	.hotel-left .rental-left {
		width: 300px;
		padding: 30px 30px 0 0;
	}

	.attraction-right,
	.hotel-right,
	.rental-right {
		width: calc(100% - 330px);
		padding: 30px 0 0;
	}

	.attraction-thumbs,
	.hotel-thumbs,
	.rental-thumbs {
		height: 45px;
	}

	.attraction-description,
	.attraction-description p,
	.hotel-description,
	.hotel-description p,
	.rental-description,
	.rental-description p {
		margin: 0 0 20px;
	}

	.attraction-item-wrapper > .attraction-tickets {
		display: block;
		margin-top: 160px !important;
	}

	.attraction-right .attraction-tickets {
		display: none;
	}

	.ticket-input-box {
		width: 100px;
	}

	.ticket-select {
		font-size: 14px;
		padding: 4px 0 3px;
	}

	.ticket-group-info {
		width: calc(100% - 275px);
	}

	.hotel-right .room-results {
		display: none;
	}

	.hotel-item-wrapper > .room-results {
		display: block;
	}

	.hotel-left {
		width: /*450px*/ 45vw;
		padding: 35px 50px 0 0;
	}

	.hotel-right {
		width: /*calc( 100% - 500px )*/ 40vw;
		padding: 35px 0 0;
	}

	.hbd-check-in-input,
	.hbd-check-out-input {
		width: calc(50% - 8px);
	}

	.hbd-check-in-input input.datepicker,
	.hbd-check-out-input input.datepicker {
		width: 100%;
	}

	.hbd-rooms-input,
	.hbd-adults-input,
	.hbd-children-input {
		padding: 10px 15px 0 0;
	}

	.hbd-submit-wrapper #searchButton {
		margin: 30px 0 0;
		width: 180px;
	}

	.hotel-booking-dates-inner {
		max-width: 568px;
		margin: 0 auto;
		position: relative;
	}

	.hotel-item-wrapper > .room-results {
		display: block;
		padding: 205px 0 0;
	}

	.hotel-description {
		min-height: 245px;
	}

	.hotel-booking-dates {
		position: absolute;
		left: 0;
		width: 100%;
		box-sizing: border-box;
	}

	.attraction-description {
		min-height: 270px;
	}

	.attraction .hbd-submit-wrapper #searchButton {
		margin: 22px 0 0;
		padding: 9px 23px;
		width: 140px;
	}

	#vodka-img {
		margin-top: 0px;
	}

	.contact-form {
		margin: 0;
	}

	#black-ball-shop .content-left {
		padding: 40px 40px 40px 0;
		width: 55%;
	}

	#black-ball-shop .content-right {
		width: 60%;
	}

	#black-ball-shop .block-inner {
		padding: 0 40px;
	}

	#black-ball-shop p {
		font-size: 18px;
		line-height: 26px;
	}

	.commercial-contact-info.column.two {
		width: 100%;
		padding: 0;
	}

	.pages-image-gallery .column.six {
		width: 33.33333%;
	}

	.pages-image-gallery .column.six:nth-child(3n + 3) {
		padding-right: 0;
	}

	.pages-image-gallery .column.six:nth-child(3n + 4) {
		padding-left: 0;
	}

	a.image-gallery-item {
		max-height: 124px;
	}

	#charter-transporation-inner {
		max-width: 680px;
	}

	#charter-transporation-img-wrapper {
		position: relative;
		height: auto;
		margin: -40px 0 0;
		height: 300px;
		overflow: hidden;
	}

	#charter-transportation-img {
		position: relative;
		left: 0;
		max-width: 100%;
		height: auto;
		margin: -120px 0;
	}

	#charter-transporation-inner .column.two:first-child {
		width: 100%;
		display: block;
	}

	#charter-transporation-inner .column.two:last-child {
		display: none;
	}

	#travel-trade-image-library {
		position: relative;
		padding: 180px 0 0;
	}

	#image-library-boat-img {
		margin: 0;
	}

	#travel-trade-image-library .column.three-two {
		width: 100%;
		padding: 0;
	}

	#travel-trade-image-library .column.three {
		width: 100%;
		padding: 0;
		position: absolute;
		top: 0;
		left: 0;
		height: 190px;
		overflow: hidden;
	}

	#seattle-victoria-four-columns .column.three {
		width: 100%;
		padding: 0 0 40px;
	}

	#seattle-victoria-four-columns .icon {
		margin: 0px 40px 110px 0;
		float: left;
	}

	#seattle-victoria-route .column.three {
		width: 100%;
		padding: 0 0 20px;
	}

	#schedule-fares-fee-disclaimer {
		margin: 0 0 40px;
	}

	.timeline-img {
		max-width: 140px;
	}

	#timeline-grid img {
		border: 10px solid #fff;
	}

	#timeline-grid .column.four {
		width: 50%;
	}

	#timeline-grid .column.four .timeline-img:after {
		left: 130%;
		width: 105%;
		border-top: 8px dotted;
	}

	#timeline-grid .column.four:nth-child(2n + 2) .timeline-img:after {
		width: 36%;
	}

	#timeline-grid .column.four:nth-child(2n + 2) {
		padding-right: 0;
	}

	#timeline-grid .column.four:nth-child(2n + 1) {
		padding-left: 0;
	}

	#timeline-grid .column.four:nth-child(8n + 5) .timeline-img:before {
		left: -30%;
		width: 16%;
		border-top: 8px dotted;
	}

	#media-downloads .column.six {
		width: 33.3%;
	}

	#timeline-grid .column.four:nth-child(2n + 1) .timeline-img:before {
		content: "";
		position: absolute;
		top: 50%;
		color: #bbb;
		left: -50%;
		width: 36%;
		border-top: 8px dotted;
	}

	#timeline-grid .column.four:first-child .timeline-img:before {
		display: none;
	}

	#timeline-grid p {
		padding: 0 20px;
	}

	#media-video .column.three-two,
	#media-video .column.three {
		width: 50%;
	}

	#media-video h3 {
		padding-left: 0;
	}

	#media-video iframe {
		height: 360px;
	}

	a.media-download {
		display: inline-block;
		vertical-align: top;
		width: 65%;
	}

	#mi-beginning-content .column.three {
		width: 100%;
	}

	#mi-beginning-content .column.three-two {
		width: 100%;
	}

	#history-rotator {
		max-width: 680px;
	}

	#history-rotator h3 {
		font-size: 40px;
		line-height: 45px;
	}

	#history-rotator h3:after {
		width: calc(100% - 140px);
		left: calc(50% + 70px);
		top: 48px;
	}

	#bb-history .column.three {
		width: 100%;
		padding: 0;
	}

	#boat-red {
		max-width: 170px;
		height: auto;
		margin: 0 40px 40px 0;
	}

	#accessible-services img {
		margin: 0 auto;
		max-width: 60px;
	}

	#seattle-victoria-four-columns h3 {
		text-align: left;
		margin: 0;
	}

	.list-article-content {
		height: 105px;
	}

	.itinerary-table .table-row .col:first-child {
		width: 30%;
	}

	.itinerary-table .table-row .col:last-child {
		width: 70%;
	}

	#newsletter-form button.button-primary {
		padding: 15px 35px 14px;
	}
}

@media only screen and (max-width: 980px) {
	.inner-ammenities-modal {
		flex-direction: column;
		margin: 0 auto;
	}

	.inner-ammenities-modal .room-image img {
		max-width: none;
		width: 100%;
		height: auto;
	}

	.modal-room-info .room-title h3 {
		line-height: 20px !important;
		margin: 20px 0 0;
	}
}

@media only screen and (max-width: 767px) {
	.individual-rooms-modal {
		background: rgba(0, 0, 0, 0.85);
	}

	.inner-ammenities-modal {
		padding: 50px 50px 0;
	}

	.combos-hotels-inner {
		height: 80%;
	}

	.individual-rooms .room-image img {
		width: 100%;
		max-width: none;
	}

	.room-modal-expand {
		margin: 5px 0 5px;
	}

	.modal-room-info {
		margin: 0 auto;
		width: 90%;
	}

	.card-price.hotels.combos {
		height: 200px;
	}

	.card-price-inner {
		margin: 0 0 35px;
	}

	.card-price.hotels.combos {
		justify-content: space-evenly;
	}

	.card-button {
		opacity: 1;
		position: absolute;
		bottom: 10px;
		left: 0;
		width: 100%;
		z-index: 20;
		background: none !important;
		cursor: pointer;
		-webkit-transition: 0.3s all;
		-moz-transition: 0.3s all;
		-ms-transition: 0.3s all;
		transition: 0.3s all;
	}

	.card-button-book,
	.card:hover .card-button-book {
		top: 90%;
	}

	.card-button-book {
		padding: 5px 0;
	}

	.step-modal-close.hotelAmenities {
		top: 10px;
		right: 10px;
	}

	.hotel-notice h2 {
		padding: 0 0 20px;
	}

	#nearbyPackages {
		width: 70vw;
		margin: 0 auto;
		display: flex;
		flex-direction: column;
		background: var(--light-gray);
	}

	#nearbyPackages h2 {
		width: 75%;
		margin: 10px auto 20px;
	}

	.nearby-activities {
		flex-wrap: wrap;
		flex-direction: column;
	}

	.interest-point {
		max-width: 75%;
		margin: 0 auto;
	}

	.interest-point-content-wrapper {
		padding: 0 0 30px;
	}

	.interest-point-content-wrapper h3 {
		text-align: left !important;
		font-size: 22px !important;
	}

	#nearbyPackages {
		margin: 0 auto 50px;
	}

	.swiper-button-prev.hotels::after,
	.swiper-button-next.hotels::after {
		font-size: 20px !important;
	}

	.hotel-right div .contact-map #map-wrapper #map {
		margin: 0;
		height: 425px;
	}

	.individual-rooms {
		flex-direction: column;
		width: 70%;
		margin: 35px auto;
	}

	.rooms-header {
		width: 70vw;
		margin: 0 auto !important;
		text-align: left !important;
	}

	.drop-down-blue-bar {
		padding-right: 40px;
	}

	.room-image {
		width: 100%;
	}

	#trip-planner {
		display: none;
	}

	.room-title h3 {
		font-size: 21px !important;
		text-align: left !important;
	}

	.accessibility-phone {
		flex-direction: column;
	}

	.three.column.accessibility-phone-one,
	.three.column.accessibility-phone-two,
	.three.column.accessibility-phone-three {
		width: 100%;
	}
	.accessibility-phone-one,
	.accessibility-phone-two {
		justify-content: center;
		margin-bottom: 20px;
		padding-right: 0px;
	}

	.accessibility-phone-three {
		justify-content: center;
		padding-right: 0px;
	}

	.cycle-route-links {
		flex-direction: column;
	}

	.page-content.accomodate .page-inner {
		width: 90vw;
		max-width: none;
	}

	.page-content.accomodate
		> .page-inner
		> .columns
		> .column.one
		> .vehicles-content
		> .columns {
		display: flex;
		flex-direction: column;
		align-items: center;
		margin: 0 auto;
	}

	.page-content.accomodate
		> .page-inner
		> .columns
		> .column.one
		> .vehicles-content
		> .columns
		> .column.three
		> p {
		width: 100%;
	}
	#trip-planner.mobile.active {
		display: block !important;
	}

	.room-title h3 {
		font-size: 21px !important;
		text-align: left !important;
	}

	.accessibility-phone {
		flex-direction: column;
	}

	.room-details h3 {
		font-size: 12px !important;
	}

	.three.column.accessibility-phone-one,
	.three.column.accessibility-phone-two,
	.three.column.accessibility-phone-three {
		width: 100%;
	}
	.accessibility-phone-one,
	.accessibility-phone-two {
		justify-content: center;
		margin-bottom: 20px;
		padding-right: 0px;
	}

	.accessibility-phone-three {
		justify-content: center;
		padding-right: 0px;
	}

	.cycle-route-links {
		flex-direction: column;
	}

	.page-content.accomodate .page-inner {
		width: 90vw;
		max-width: none;
	}

	.page-content.accomodate
		> .page-inner
		> .columns
		> .column.one
		> .vehicles-content
		> .columns {
		display: flex;
		flex-direction: column;
		align-items: center;
		margin: 0 auto;
	}

	.page-content.accomodate
		> .page-inner
		> .columns
		> .column.one
		> .vehicles-content
		> .columns
		> .column.three
		> p {
		width: 100%;
	}

	.container {
		width: 100%;
		margin: 0 auto;
	}

	#ReservationEmail {
		margin: 20px 0;
	}

	.input.text > label[for="ReservationEmail"] {
		text-align: center;
	}
	#ReservationOrderStoreProblemFrontendForm div:nth-child(3) {
		text-align: left;
	}

	#page-id-order-problem > #wrapper > div.container > p {
		text-align: center;
	}

	#page-id-order-problem > #wrapper > div.container > h3 {
		text-align: center;
	}

	#ReservationOrderStoreProblemFrontendForm > .submit > input {
		padding: 10px 20px;
	}

	.accessibility-phone {
		flex-direction: column;
	}

	.columns.accessibility-phone .accessibility-phone-one,
	.columns.accessibility-phone .accessibility-phone-two,
	.columns.accessibility-phone .accessibility-phone-three {
		width: 100% !important;
		margin: 20px 0;
		padding: 0;
	}

	.container {
		width: 100%;
		margin: 0 auto;
	}

	#ReservationEmail {
		margin: 20px 0;
	}

	.input.text > label[for="ReservationEmail"] {
		text-align: center;
	}
	#ReservationOrderStoreProblemFrontendForm div:nth-child(3) {
		text-align: left;
	}

	#page-id-order-problem > #wrapper > div.container > p {
		text-align: center;
	}

	#page-id-order-problem > #wrapper > div.container > h3 {
		text-align: center;
	}

	#ReservationOrderStoreProblemFrontendForm > .submit > input {
		padding: 10px 20px;
	}

	.accessibility-phone {
		flex-direction: column;
	}

	.columns.accessibility-phone .accessibility-phone-one,
	.columns.accessibility-phone .accessibility-phone-two,
	.columns.accessibility-phone .accessibility-phone-three {
		width: 100% !important;
		margin: 20px 0;
		padding: 0;
	}

	.header-link-desktop {
		display: none;
	}

	.drive-on-images {
		height: auto !important;
	}

	.input.email.required {
		margin: 0px;
	}
	#UserForgotForm {
		flex-direction: column;
	}
	#UserEmail {
		width: 250px;
	}
	.swiper-button-next::after,
	.swiper-button-prev::after {
		font-size: 18px !important;
	}
	.swiper-button-prev {
		left: 8px !important;
	}

	.swiper-button-prev,
	.swiper-button-next {
		height: 30px !important;
		width: 30px !important;
	}

	.swiper-button-next {
		right: 8px !important;
	}

	.swiper-button-prev,
	.swiper-button-next {
		top: 492px !important;
	}

	#home-package-deals .swiper-button-prev {
		left: -38px !important;
	}

	#home-package-deals .swiper-button-next {
		right: -38px !important;
	}

	#accessibility-contact-wrapper {
		max-width: 90vw;
	}
	#accessibility-contact-subheader {
		max-width: 350px;
	}
	#accessibility-contact-subheader p:first-of-type {
		margin: 0;
	}
	#accessibility-contact-form form button {
		font-size: 15px;
	}
}

@media only screen and (max-width: 767px) and (min-width: 501px) {
	.room-details h3:first-child::after,
	.room-details h3:nth-child(2)::after {
		margin: 0 5px;
	}
}

@media only screen and (max-width: 767px) and (min-width: 480px) {
	#accessible-services .column.three h3 {
		text-align: center !important;
	}

	.accessibility-note strong {
		padding: 20px 25px;
	}

	#page-id-151
		> #wrapper
		> .page-container
		> .page-inner
		> .page-content
		> .related-pages-wrapper {
		margin-bottom: 60px;
		max-width: 350px;
	}

	#page-id-151 > #wrapper > .page-container > .page-inner > .page-content p {
		max-width: 400px;
	}

	#page-id-151
		> #wrapper
		> .page-container
		> .page-inner
		> .page-content
		> .first-accessible {
		max-width: 400px;
	}

	#accessible-services {
		padding: 100px 30px;
	}

	#accessible-services .column.three h3 {
		text-align: center !important;
	}

	.accessibility-note strong {
		padding: 20px 25px;
	}

	#page-id-151
		> #wrapper
		> .page-container
		> .page-inner
		> .page-content
		> .related-pages-wrapper {
		margin-bottom: 60px;
		max-width: 350px;
	}

	#page-id-151 > #wrapper > .page-container > .page-inner > .page-content p {
		max-width: 400px;
	}

	#page-id-151
		> #wrapper
		> .page-container
		> .page-inner
		> .page-content
		> .first-accessible {
		max-width: 400px;
	}

	#accessible-services {
		padding: 100px 30px;
	}

	.dog-images img {
		max-width: 90%;
	}
	.drive-on-icons > span {
		width: 40%;
	}
	.whats-on-board-cards .list-article h3,
	.whats-on-board-cards .list-article .list-article-cta {
		font-size: 12px;
	}

	/*.whats-on-board-cards .list-article .list-article-cta {
		bottom: 5px;
	}*/

	.whats-on-board-cards .list-article {
		width: 45% !important;
		margin: 0 auto;
	}

	#mobile-nav-wrapper.active {
		left: 0%;
	}

	#header-nav #header-menu li {
		display: none;
	}

	#header-upper {
		padding: 0 10px 0 13px;
		width: auto;
	}

	#header-nav #header-menu li.nav-book-now {
		display: block;
		position: absolute;
		top: -53px;
		right: 10px;
	}

	#header-menu .nav-book-now a {
		padding: 8px 18px;
		line-height: 27px;
		font-size: 13px;
		width: auto;
		text-align: center;
	}

	#header-menu #trip-details-toggle span {
		top: 7px;
		right: 8px;
	}

	#mobile-nav-toggle {
		display: inline-block;
		font-size: 14px;
		width: 32px;
		margin: 0 15px 0 0;
	}

	#header-right {
		width: calc(100% - 355px);
		padding: 0 0 0 30px;
	}

	#header-reserve {
		position: relative;
		padding: 16px 14px;
		margin: 0 0 -10px;
		z-index: 100;
		font-size: 14px;
	}

	#header-reserve.active {
		background: #fff;
		color: #ed1c24;
		box-shadow: inset 0 0 0 2px #ed1c24;
		margin: -3px 0 -10px;
		padding: 18px 14px 16px;
	}

	#header-reserve span {
		font-size: 18px;
	}

	#header-phone span:first-child {
		background: url(../../img/frontend/icon-phone-red.png) center center
			no-repeat;
		background-size: 16px;
		height: 21px;
		margin: 0 4px 1px 0;
		width: 16px;
	}

	#header-phone {
		font-size: 15px;
	}

	#site-logo {
		width: 150px;
	}

	#log-in {
		margin: 0 0 0 10px;
	}

	#log-in span {
		display: inline-block;
		vertical-align: middle;
		width: 18px;
		height: 18px;
		background: url(../../img/frontend/icon_user.png) center 1px no-repeat;
		background-size: 12px;
		margin: 0 4px 0 0;
	}

	/*
	#header-trip {
		font-size: 12px;
		padding: 0 16px;
	}

	#header-trip span {
		width: 26px;
		height: 26px;
	}
	*/

	#mobile-nav-toggle div {
		width: 28px;
		margin: 6px 2px 18px;
		height: 3px;
		box-shadow: 0 7px 0 0, 0 14px 0 0;
	}

	#footer {
		background-size: auto 1100px;
	}

	#footer-inner {
		max-width: 400px;
		padding: 40px 0;
	}

	.page-inner {
		max-width: 400px;
		padding: 0;
	}

	#footer .footer-col-1 a {
		font-size: 18px;
		line-height: 30px;
	}

	#footer .footer-col-1 a,
	#footer .footer-heading a {
		font-size: 14px;
		line-height: 30px;
		margin: 0;
	}

	.footer-col.footer-col-1 {
		padding-top: 20px;
	}

	#footer p {
		font-size: 14px;
	}

	#footer .footer-heading {
		height: 28px;
	}

	#footer a {
		font-size: 13px;
		line-height: 24px;
	}

	#footer-copyright a,
	#footer-copyright span {
		font-size: 12px;
	}

	#footer a.footer-logo {
		width: 160px;
		margin: 22px -5px -15px 0;
	}

	.footer-social-links {
		display: block;
		padding: 0;
	}

	#footer a.footer-social {
		width: 40px;
		height: 40px;
	}

	.footer-logo img {
		max-width: 100%;
	}

	.footer-col {
		padding: 0 40px 0 0;
	}

	.footer-col.footer-col-3 {
		position: absolute;
		right: 0;
		text-align: right;
		padding: 0;
		top: 320px;
	}

	#footer .footer-col.footer-col-3 a {
		margin: 0;
	}

	#footer a.button.red {
		font-size: 14px;
	}

	#footer-lower-right {
		margin: 0;
	}

	#footer-lower-right > a:first-child + a {
		padding-right: 0;
		margin-bottom: 20px;
	}

	#footer-lower-right a:first-child {
		padding-left: 20px;
		margin-bottom: 20px;
	}

	.footer-col.footer-col-1 {
		padding-bottom: 30px;
	}

	#footer-copyright {
		margin: 20px 0 0;
	}

	.footer-col.footer-col-1 {
		padding-right: 0;
		text-align: right;
		position: absolute;
		right: 0;
	}

	#footer .footer-col-1 a.button.red {
		margin-top: 30px;
	}

	.footer-col.footer-col-5 {
		padding: 0;
	}

	.footer-col.footer-col-6 {
		padding: 20px 40px 20px 0;
	}

	.footer-col.footer-col-5 {
		position: absolute;
		display: block;
		top: 310px;
		right: 0;
		width: 100px;
		text-align: right;
	}

	#footer .footer-col-5 a {
		margin: 0;
	}

	.footer-col.footer-col-2 {
		padding: 0 35px 20px 0;
	}

	#footer-lower {
		float: none;
		margin: 20px 0 0;
	}

	#footer-lower-left img {
		width: 100%;
	}

	#footer-lower-left {
		display: inline-block;
		vertical-align: top;
		width: 160px;
	}

	#footer-lower-right {
		width: calc(100% - 160px);
	}

	#footer-lower-right a.footer-social {
		width: 20px;
		height: 20px;
		padding: 6px;
		margin: 0 0 0 14px;
	}

	#footer-copyright a:first-child {
		padding: 0;
	}

	#footer-lower-right a.footer-social:hover {
		box-shadow: 0 0 1px 2px #b2b0b0;
		width: 20px;
		height: 20px;
		padding: 6px;
	}

	#mobile-menu > li {
		-webkit-column-break-inside: avoid;
		page-break-inside: avoid;
		break-inside: avoid;
	}

	#mobile-menu {
		position: relative;
		max-width: 580px;
		margin: 0 auto;
	}

	#mobile-nav-close {
		right: 20px;
	}

	.mm-lev-1 {
		width: 50%;
	}

	.mm-lev-1 a {
		font-size: 16px;
	}

	.mm-lev-1.slide-out {
		left: 0%;
	}

	.mm-lev-1.active {
		background: #444;
	}

	.submenu.mm-lev-2 {
		width: 50%;
		background: #444;
	}

	.submenu.mm-lev-2.active {
		left: 50%;
	}

	.mm-lev-2 .mm-back {
		display: none;
	}

	#trip-planner-wrapper {
		position: absolute;
		width: 100%;
		overflow: hidden;
		height: 0;
		-webkit-transition: 0.8s all;
		-moz-transition: 0.8s all;
		-ms-transition: 0.8s all;
		transition: 0.8s all;
	}

	#trip-planner-wrapper.active {
		height: 70vh;
		background: #fff;
		z-index: 100;
		padding: 20px 0;
	}

	#trip-planner,
	#trip-planner-wrapper.active #trip-planner {
		top: 20px;
		background: rgb(255, 255, 255);
		width: 415px;
		left: calc(50% - 207px);
	}

	#trip-planner .nav-pills a {
		font-size: 12px;
	}

	#trip-planner-type label span {
		line-height: 45px;
		font-size: 12px;
	}

	#trip-planner label {
		font-size: 10px;
	}

	#trip-planner .passengers .form-group {
		width: 95px;
		padding: 0 25px 0 0;
	}

	#trip-planner .passengers input {
		width: 39px;
		padding: 10px 0;
	}

	#trip-planner #searchButton,
	#trip-planner #searchPackagesButton {
		width: calc(100% + 44px);
		margin: 24px -22px -20px;
		font-size: 18px;
		height: 54px;
	}

	#trip-planner .trip-planner-title {
		font-size: 14px;
	}

	.trip-planner-title span {
		font-size: 38px;
		line-height: 42px;
	}

	#trip-planner .trip-planner-title {
		padding: 25px 0;
	}

	#trip-planner .nav-pills a {
		font-size: 12px;
		line-height: 44px;
	}

	#trip-planner #ferry-only span {
		width: 40px;
		height: 18px;
	}

	#trip-planner #package-deal span {
		width: 20px;
		height: 20px;
	}

	#trip-planner .tab-content {
		padding: 20px;
	}

	#trip-planner label {
		font-size: 10px;
	}

	#trip-planner-type label span {
		line-height: 45px;
		font-size: 13px;
	}

	.passenger-icon-minus,
	.ticket-icon-minus {
		width: 26px;
		background-size: 6px;
		height: 40px;
	}

	.passenger-icon-plus,
	.ticket-icon-plus {
		width: 26px;
		background-size: 6px;
		height: 40px;
	}

	#trip-planner .passengers input,
	.ticket-number {
		font-size: 16px;
	}

	.content-block h2,
	.packages-city {
		font-size: 35px;
		line-height: 34px;
		margin: 0;
	}

	.content-block p {
		font-size: 14px;
		line-height: 22px;
		padding: 5px 0 0;
	}

	#home-package-deals .block-inner {
		padding: 50px 0 40px;
	}

	a.button {
		font-size: 16px;
	}

	#home-package-deals a.button {
		width: 260px;
		padding: 16px 20px;
	}

	.block-inner {
		padding: 0 50px;
		box-sizing: border-box;
	}

	.content-left {
		width: 60%;
	}

	#home-route img {
		margin: 0 -590px;
		width: calc(100% + 1000px);
		max-width: none;
	}
	#home-welcome-aboard > img {
		max-width: none;
		margin: 0 -700px;
		width: 2000px;
	}

	.grid {
		max-width: 80%;
		margin: 0 auto;
	}

	.grid.grid-4 .grid-item {
		width: 40%;
		max-width: 140px;
		margin: 0 5%;
	}

	.block-inner h3 {
		font-size: 14px;
	}

	.grid-2 .grid-item {
		width: 100%;
		padding: 0 0 80px;
		max-width: 500px;
	}

	.grid-2 .grid-item:last-child {
		padding-bottom: 0;
	}

	.page_heading h1,
	.page-content h1 {
		font-size: 32px;
		line-height: 36px;
		max-width: 400px;
		margin: 0 auto;
	}

	h2 {
		font-size: 21px;
		line-height: 22px;
		font-weight: 700;
	}

	.page-content h3,
	.page_heading h3 {
		font-size: 16px;
		line-height: 18px;
		text-align: center;
		padding: 0;
	}

	p {
		font-size: 15px;
		margin: 0 0 12px 0;
	}

	.column {
		font-size: 15px;
	}

	.tablet-wide {
		width: 100% !important;
		padding: 0;
	}

	#header-search.active input[type="text"] {
		width: 110px;
		font-size: 14px;
	}

	#header-search {
		margin: 0 10px 0 0;
	}

	#header-search label {
		font-size: 12px;
		width: 41px;
	}

	#header-mag {
		background: url(../../img/frontend/icon-search-red.png) 5px 9px no-repeat;
		background-size: 16px;
		width: 25px;
		padding: 0 46px 0 0;
	}

	#header-search input[type="submit"] {
		background: url(../../img/frontend/icon-search-red.png) center 7px no-repeat;
		background-size: 19px;
	}

	a.button,
	.button {
		font-size: 16px;
		padding: 15px 30px;
	}

	a.post-item {
		padding: 0;
	}

	#newsletter-form {
		display: block;
		padding: 15px 0 0;
	}

	#newsletter h3 {
		padding: 0 0 0 15px;
		font-size: 24px;
	}

	#newsletter-form input[type="submit"] {
		font-size: 16px;
		height: 50px;
	}

	#home-rotator .swiper-slide .desktop-img {
		display: block;
	}

	.current-fares.column.two,
	.vehicle-reservation-fees.column.two {
		width: 100%;
		padding: 0;
		margin: 0 0 20px;
	}

	.columns .columns-heading .column,
	.current-fares .columns-heading .column.twelve-two,
	.vehicle-reservation-fees .columns-heading .column.twelve-two {
		font-size: 12px;
		line-height: 14px;
	}

	.column-title {
		font-size: 16px;
	}

	.button-wrap {
		padding: 0 0 30px;
	}

	#schedule-fares-fee-disclaimer p {
		font-size: 14px;
	}

	.accordion-header {
		font-size: 13px;
		letter-spacing: 0.1em;
	}

	.current-fares .column.twelve-ten,
	.vehicle-reservation-fees .column.twelve-eight {
		font-size: 16px;
	}

	.current-fares .column.twelve-two,
	.vehicle-reservation-fees .column.twelve-two {
		font-size: 17px;
	}

	.current-fares .column.twelve-ten {
		width: 78.333%;
	}

	.vehicle-reservation-fees .column.twelve-eight {
		width: 56.666%;
	}

	.vehicle-reservation-fees .column.twelve-two {
		width: 21.666%;
	}

	.accordion-section .accordion-toggle:before {
		border-width: 3px;
		width: 8px;
		height: 8px;
	}

	.ferry-schedule-accordion .column.hide-mobile {
		display: none;
	}

	.ferry-schedule-accordion .column.four {
		width: 100%;
	}

	.ferry-schedule-accordion .columns-heading .column.four br {
		display: none;
	}

	.current-fares .column span {
		font-size: 14px;
	}

	.terms-conditions {
		columns: 1;
	}

	.ferry-schedule-accordion .accordion-departure-location:before {
		display: none;
	}

	.contact-locations {
		padding: 0;
	}

	.packaging-wrapper {
		padding: 0 20px;
	}

	.contact-location.column {
		width: 100%;
		padding: 0 !important;
	}

	.contact-form {
		padding: 0 20px 5px;
		margin: 0;
	}

	.contact-location h3 {
		padding: 12px 15px;
		font-size: 14px;
	}

	.contact-location .column {
		font-size: 16px;
		line-height: 26px;
		display: block;
		width: 100%;
	}

	.column .hours-day:nth-child(4n + 2) {
		background: #eee;
	}

	.column .hours-day:nth-child(4n + 3) {
		background: #fff;
	}

	.hearing-impaired .column {
		font-size: 16px;
		line-height: 30px;
	}

	.packaging-office .column {
		width: 100%;
		padding: 0;
	}

	.packaging-office h3 {
		text-align: left;
	}

	.page-content {
		padding: 0;
	}

	.contact-location h4 {
		font-size: 13px;
	}

	.contact-form-wrapper {
		padding: 0 20px;
	}

	.list-article-left {
		display: block;
		width: 100%;
	}

	.list-article-right {
		width: 100%;
		display: block;
		padding: 20px 0 0;
	}

	.list-article-cta {
		position: relative;
		bottom: auto;
	}

	.list-article-right h3 {
		text-align: left;
	}

	.list-article-posted-date {
		font-size: 12px;
	}

	button.button-primary {
		padding: 16px 30px 15px;
	}

	.alert-message {
		position: relative;
		top: 0;
	}

	.alert-message-inner {
		padding: 12px 20px;
	}

	#home-package-deals-carousel .button-wrap {
		padding: 40px 0;
	}

	.column.two {
		width: 100%;
		padding: 0;
	}

	a.button.button-secondary,
	.button.button-secondary {
		font-size: 12px;
		padding: 6px 10px 5px;
		margin: 4px 0 0;
		line-height: 18px;
	}

	.related-page {
		width: 100%;
		margin: 0 0 4px;
	}

	.related-page h3 {
		font-size: 14px;
		padding: 10px 20px;
	}

	.related-page-cta {
		font-size: 14px;
		padding: 8px 18px;
		letter-spacing: 0.15em;
	}

	.related-page-bg {
		height: 180px;
	}

	.page-content .related-page-thumb {
		max-width: none;
		width: 100%;
		height: auto;
	}

	#things-times-inner {
		max-width: 400px;
	}

	.page-content h4 {
		font-size: 14px;
	}

	#things-times:before {
		background: url(/img/pages/coho-644.jpg) center center no-repeat;
		background-size: auto 100%;
	}

	p,
	ul {
		font-size: 15px;
	}

	.related-page a {
		margin: 0;
	}

	.related-pages-wrapper {
		margin: 0 0 60px;
	}

	.id-req-left {
		width: 100%;
	}

	.id-req-right {
		display: none;
	}

	.duty-free-item-wrapper {
		columns: 1;
	}

	.list-article {
		width: 100%;
	}

	.list-article a {
		height: 540px;
		margin: 0 0 15px;
	}

	.list-article-cta {
		bottom: -20px;
		left: calc(50% - 95px);
	}

	.article-category-filter-wrapper {
		max-width: none;
		margin: 0 20px 20px;
	}

	#article-category-filter-selected {
		width: 450px;
	}

	#article-category-filter {
		position: relative;
		right: auto;
		top: auto;
		width: 450px;
		margin: 20px auto;
	}

	#article-category-filter-selected:before {
		position: relative;
		top: 0px;
		right: auto;
		margin: 0px 12px 0px -15px;
		padding: 12px 14px 13px;
	}

	.filter-item {
		font-size: 11px;
	}

	#article-category-filter-selected {
		font-size: 12px;
	}

	#home-route .block-inner {
		margin-top: -80px;
	}

	.accordion-title {
		line-height: 18px;
	}

	.card {
		width: 50%;
	}

	.card.single-attraction-item .card-img,
	.card.single-hotel-item .card-img,
	.card.single-rental-item .card-img {
		min-height: 180px;
	}

	.card-title {
		font-size: 18px;
		line-height: 20px;
		padding: 0;
	}

	.card-location {
		font-size: 10px;
	}

	.card-info {
		padding: 10px;
		height: 105px;
	}

	.card-price .price-from,
	.card-price .price-currency {
		font-size: 12px;
	}

	.card-price-lower {
		font-size: 10px;
	}

	.card-price .price-dollars {
		font-size: 18px;
		line-height: 47px;
	}

	.card-price .price-cents {
		font-size: 18px;
		line-height: 22px;
		margin: -15px 0 0 -4px;
	}

	.card-button-book {
		font-size: 14px;
		width: 160px;
		padding: 6px 0;
		left: calc(50% - 80px);
	}

	.attraction .page-inner,
	.hotel .page-inner,
	.rental .page-inner {
		max-width: none;
		padding: 0 25px;
	}

	.attraction-featured-img,
	.hotel-featured-img,
	.rental-featured-img {
		width: 240px;
		height: 240px;
	}

	.attraction-left,
	.hotel-left,
	.rental-left {
		width: 240px;
		padding: 30px 20px 0 0;
	}

	.attraction-right,
	.hotel-right,
	.rental-right {
		width: calc(100% - 260px);
		padding: 30px 0 0;
	}

	.attraction-thumbs,
	.hotel-thumbs,
	.rental-thumbs {
		height: 45px;
	}

	.attraction-description,
	.attraction-description p,
	.hotel-description,
	.hotel-description p,
	.rental-description,
	.rental-description p {
		margin: 0 0 20px;
		font-size: 16px;
		line-height: 26px;
	}

	.attraction-item-wrapper > .attraction-tickets {
		display: block;
		margin-top: 140px !important;
	}

	.attraction-right .attraction-tickets {
		display: none;
	}

	.ticket-input-box {
		width: 100px;
		display: block;
		margin: 0 auto 10px;
	}

	.ticket-group {
		text-align: center;
	}

	.ticket-select {
		font-size: 14px;
		padding: 4px 0 3px;
	}

	.ticket-group-info {
		width: 100%;
	}

	.ticket-label {
		width: 100%;
		text-align: center;
	}

	.ticket-price {
		display: block;
		text-align: center;
		width: 100%;
		padding: 5px 0 10px;
	}

	h1.attraction-title,
	h1.hotel-title,
	h1.rental-title {
		font-size: 28px;
		line-height: 32px;
		margin: 0;
	}

	.attraction-location,
	.hotel-location,
	.rental-location {
		font-size: 14px;
		line-height: 10px;
		margin: 0;
	}

	.attraction-description h3,
	.hotel-description h3,
	.rental-description h3 {
		text-align: left;
	}

	.hotel-right .room-results {
		display: none;
	}

	.hotel-item-wrapper > .room-results {
		display: block;
	}

	.hotel-item-wrapper > .room-results {
		display: block;
		padding: 260px 0 0;
	}

	.hotel-description {
		min-height: 190px;
	}

	.hotel-booking-dates {
		position: absolute;
		left: 0;
		width: 100%;
		box-sizing: border-box;
	}

	.hbd-check-in-input,
	.hbd-check-out-input {
		width: calc(50% - 8px);
	}

	.hbd-check-in-input input.datepicker,
	.hbd-check-out-input input.datepicker {
		width: 100%;
	}

	.hbd-rooms-input,
	.hbd-adults-input {
		padding: 10px 15px 0 0;
	}

	.hbd-children-input {
		padding: 10px 0;
	}

	.hbd-submit-wrapper #searchButton {
		margin: 5px auto 0;
		width: 220px;
		display: block;
		position: relative;
	}

	.hotel-booking-dates-inner {
		position: relative;
		margin: 0 auto;
		max-width: 374px;
	}

	.hbd-submit-wrapper {
		display: block;
	}

	.hbd-room-select {
		position: relative;
		bottom: auto;
		left: auto;
		width: calc(100% - 30px);
		margin: 0 auto 18px;
	}

	.hbd-room-price {
		position: relative !important;
		top: auto;
	}

	.hbd-room-price span {
		margin: 0 auto;
	}

	.page-content li.hbd-room-item:before {
		display: none;
	}

	.page-content .rooms-available {
		font-size: 0;
	}

	.hbd-room-item {
		display: inline-block !important;
		width: calc(50% - 14px);
		margin: 0 7px 15px;
		vertical-align: top;
	}

	.hbd-room-item:last-child {
		margin: 0 7px 0;
	}

	.hbd-room-img {
		display: block;
		width: 100%;
	}

	.hbd-room-img img {
		margin: -50px 0;
	}

	.hbd-room-info {
		display: block;
		width: 100%;
		padding: 22px;
	}

	.hbd-room-right {
		position: relative;
		top: auto;
		left: auto;
		width: 100%;
		height: auto;
		overflow: hidden;
	}

	.attraction-description {
		min-height: 190px;
	}

	.attraction .hbd-submit-wrapper #searchButton {
		margin: 22px 0 0;
		padding: 9px 23px;
		width: 140px;
	}

	.attraction .hotel-booking-dates-inner {
		position: relative;
		padding: 0 28px;
		max-width: none;
		margin: 0;
	}

	.attraction .hbd-submit-wrapper {
		display: inline-block;
	}

	.attraction .hotel-booking-dates h3 {
		text-align: left;
	}

	#duty-free-vodka .three-two,
	#duty-free-vodka .three {
		display: block;
		width: 100%;
	}

	#vodka-img {
		margin-top: 0;
	}

	#duty-free-vodka h2 {
		text-align: center;
	}

	#coffee-shop-wrapper {
		columns: 1;
	}

	#black-ball-shop .content-left {
		display: block;
		width: 100%;
		margin: 0;
		padding: 40px 0;
	}

	#black-ball-shop .content-right {
		display: none;
	}

	#black-ball-shop .content-mobile {
		display: block;
		margin: 0px auto -100px;
		left: auto;
		position: relative;
		width: 100%;
		padding: 0;
		top: -40px;
	}

	.pages-image-gallery .column.six {
		width: 33.33333%;
	}

	.pages-image-gallery .column.six:nth-child(3n + 3) {
		padding-right: 0;
	}

	.pages-image-gallery .column.six:nth-child(3n + 4) {
		padding-left: 0;
	}

	a.image-gallery-item {
		max-height: 82px;
		margin: 0 0 10px;
	}

	.pages-image-gallery .column.six {
		padding-left: 5px;
		padding-right: 5px;
	}

	#image-gallery-wrapper {
		margin: 0 0 60px;
	}

	.pages-image-gallery .column.six:first-child {
		padding-left: 0;
	}

	#charter-transporation-inner {
		max-width: 400px;
	}

	#charter-transporation-img-wrapper {
		position: relative;
		height: auto;
		margin: -40px 0 0;
		height: auto;
		max-height: 300px;
		overflow: hidden;
	}

	#charter-transportation-img {
		position: relative;
		left: 0;
		max-width: 100%;
		height: auto;
		margin: -20px 0;
	}

	#charter-transporation-inner .column.two:first-child {
		width: 100%;
		display: block;
	}

	#charter-transporation-inner .column.two:last-child {
		display: none;
	}

	#travel-trade-image-library {
		position: relative;
		padding: 180px 0 0;
	}

	#image-library-boat-img {
		margin: -50px 0 0;
	}

	#travel-trade-image-library .column.three-two {
		width: 100%;
		padding: 0;
	}

	#travel-trade-image-library .column.three {
		width: 100%;
		padding: 0;
		position: absolute;
		top: 0;
		left: 0;
		height: 190px;
		overflow: hidden;
	}

	#seattle-victoria-four-columns .column.three {
		width: 100%;
		padding: 0 0 40px;
	}

	#seattle-victoria-four-columns .icon {
		margin: 0 auto 20px;
		float: none;
	}

	#seattle-victoria-route .column.three {
		width: 100%;
		padding: 0 0 20px;
	}

	#schedule-fares-fee-disclaimer {
		margin: 0 0 40px;
	}

	#timeline-grid .column.four {
		width: 100%;
		padding-left: 0;
		padding-right: 0;
		font-size: 0;
	}

	#timeline-grid .column.four .timeline-img:before,
	#timeline-grid .column.four .timeline-img:after {
		display: none;
	}

	.timeline-img {
		display: inline-block;
		vertical-align: middle;
		max-width: 120px;
	}

	.timeline-content {
		display: inline-block;
		vertical-align: middle;
		width: calc(100% - 160px);
		text-align: left;
		padding: 0 0 0 40px;
	}

	#timeline-grid img {
		border: 8px solid #fff;
	}

	.timeline-content h2 {
		padding-top: 0;
	}

	#flags-through-the-years .column.four {
		padding: 10px 10px 0;
	}

	#media-downloads .column.six {
		width: 100%;
		padding: 0;
		display: block;
		margin: 0 0 20px;
	}

	#media-video .column.three-two,
	#media-video .column.three {
		display: block;
		width: 100%;
		text-align: center;
	}

	#media-video {
		padding: 40px 0 60px;
	}

	#media-video h3 {
		padding-left: 0;
	}

	#media-video iframe {
		height: 320px;
		margin: 0 0 80px 0;
	}

	a.media-download {
		display: inline-block;
		vertical-align: top;
		width: 100%;
	}

	#mi-beginning-content .column.three {
		width: 100%;
		padding: 0;
	}

	#mi-beginning-content .column.three-two {
		width: 100%;
		padding: 0;
	}

	#media-downloads {
		margin: 10px 30px 10px 20px;
	}

	.media-download span {
		font-size: 16px;
	}

	#history-rotator h3 {
		font-size: 32px;
		line-height: 45px;
	}

	#history-rotator h3:after {
		width: calc(100% - 140px);
		left: calc(50% + 70px);
		top: 48px;
	}

	#bb-history .column.three {
		width: 100%;
		padding: 0;
	}

	#boat-red {
		margin: 0 auto 20px;
		float: none;
		height: auto;
		max-width: 160px;
	}

	#accessible-services .column.three {
		width: 100%;
		padding: 0;
	}

	#accessible-services img {
		max-width: 80px;
	}

	#history-rotator-outer {
		margin: 50px 0 0;
	}

	#home-route .content-left {
		background: rgb(255 255 255 / 0.7);
		box-shadow: 0 0 0 20px rgb(255 255 255 / 0.7);
	}
}

@media only screen and (max-width: 600px) {
	/* .overnight-pkgs .booking-hotel-item.card .card-button*/
	.card-button-book {
		left: calc(50% - 75px);
		font-size: 13px;
	}

	.vehicle-types-buttons {
		display: flex;
		flex-direction: row;
		flex-wrap: nowrap;
		justify-content: space-between;
	}

	#header-nav {
		display: none;
	}

	#header-right {
		width: calc(100% - 240px);
	}

	#header-lower {
		display: block;
	}

	#mobile-nav-wrapper.active {
		left: 0%;
	}

	.swiper-slide .mobile-img {
		display: block;
	}

	#home-rotator .swiper-slide .desktop-img {
		display: none;
	}

	#header-menu .nav-book-now a {
		padding: 8px 42px 8px 18px;
		line-height: 27px;
		font-size: 13px;
		width: auto;
		text-align: center;
	}

	.attraction-featured-img,
	.hotel-featured-img,
	.rental-featured-img {
		width: 100%;
		height: auto;
	}

	.attraction-left,
	.hotel-left,
	.rental-left {
		display: block;
		width: 100%;
		padding: 30px 0 0;
	}

	.attraction-thumbs,
	.hotel-thumbs,
	.rental-thumbs {
		height: 75px;
	}

	.attraction-right,
	.hotel-right,
	.rental-right {
		width: 100%;
		padding: 20px 0 0;
	}

	.attraction-featured-img img,
	.hotel-featured-img img,
	.rental-featured-img img {
		margin: -80px 0;
	}

	.hotel-description,
	.rental-description {
		min-height: 0;
	}

	.page-content .rooms-available {
		font-size: 0;
	}

	.hbd-room-item {
		display: inline-block !important;
		vertical-align: top;
		width: calc(50% - 14px);
		margin: 0 7px 15px;
	}

	.hbd-room-item:last-child {
		margin: 0 7px 0;
	}

	.hbd-room-img {
		display: block;
		width: 100%;
		height: auto;
	}

	.hbd-room-img img {
		margin: -50px 0;
	}

	.hbd-room-info {
		display: block;
		width: 100%;
		padding: 22px;
	}

	.hbd-room-right {
		position: relative;
		width: 100%;
		height: 180px;
		overflow: hidden;
	}

	.attraction-description {
		min-height: none;
	}

	#history-rotator h3 {
		font-size: 32px;
		line-height: 45px;
	}

	#history-rotator h3:after {
		width: calc(100% - 140px);
		left: calc(50% + 70px);
		top: 48px;
	}

	#bb-history .column.three {
		width: 100%;
		padding: 0;
	}

	#boat-red {
		margin: 0 auto 20px;
		float: none;
		height: auto;
		max-width: 160px;
	}

	#accessible-services .column.three {
		width: 100%;
		padding: 0;
	}

	#accessible-services img {
		margin: 0 auto;
		max-width: 60px;
		padding: 10%;
	}

	#seattle-victoria-four-columns .icon,
	#accessible-services .icon {
		max-width: 80px;
	}

	#home-package-deals-swiper a,
	.swiper-slide > a {
		margin-right: 0px;
	}
}

@media only screen and (max-width: 500px) {
	.room-details h3 {
		margin: 0px;
	}

	.room-details h3:first-child::after,
	.room-details h3:nth-child(2)::after {
		content: "";
	}

	.drop-down-blue-bar.nearby p,
	.drop-down-blue-bar p,
	.rooms-header {
		font-size: 14px;
	}

	.room-details {
		display: flex;
		flex-direction: column;
		margin: 12px 0;
		align-items: baseline;
	}

	.hotel-featured-caption p {
		font-size: 14px;
		margin: 0;
	}

	.desktopSeperator {
		display: inline-block;
	}
}

@media only screen and (min-width: 479px) {
	.mobileBreak {
		display: none;
	}
}

@media only screen and (max-width: 479px) {
	.save-link {
		right: 5px;
	}

	.individual-rooms-modal .step-modal-width {
		width: 90%;
	}

	.individual-rooms .room-image img {
		max-width: none;
	}

	.inner-ammenities-modal {
		padding: 0px;
		overflow-x: hidden;
		max-height: 600px;
	}

	.step-modal-close.hotelAmenities {
		top: 5px;
		right: 5px;
		width: 25px;
		height: 25px;
		line-height: 24px;
	}

	#hotelImageSlider,
	#map {
		height: 400px;
	}

	.desktopSeperator {
		display: none;
	}

	.mobileBreak {
		display: block;
	}

	.interest-point-content p {
		line-height: 22px;
	}

	.interest-point {
		max-width: 70%;
	}

	.interest-point-content-wrapper h3 {
		font-size: 20px !important;
		line-height: 20px !important;
	}

	.interest-point-distance-info p {
		line-height: 15px;
		padding-top: 5px;
	}

	#nearbyPackages {
		width: 85%;
	}

	.inner-ammenities-modal .room-image img {
		height: auto;
		max-width: 100%;
	}

	.room-image img {
		height: 100%;
		max-height: 400px;
		width: 100%;
	}

	#nearbyPackages h2 {
		width: auto;
	}

	#ReservationOrderStoreProblemFrontendForm > .submit > input {
		font-size: 12px;
	}

	.accessibility-note strong {
		padding: 20px 15px;
	}

	#accessible-services {
		padding: 100px 40px;
	}

	#accessible-services .column.three h3 {
		text-align: center !important;
	}

	#page-id-151
		> #wrapper
		> .page-container
		> .page-inner
		> .page-content
		> .related-pages-wrapper {
		margin-bottom: 60px;
		max-width: 350px;
	}

	#page-id-151
		> #wrapper
		> .page-container
		> .page-inner
		> .page-content
		> .first-accessible
		> .column.two
		h2,
	#page-id-151
		> #wrapper
		> .page-container
		> .page-inner
		> .page-content
		> .first-accessible
		> .column.two
		h3 {
		text-align: center !important;
	}

	#page-id-151 > #wrapper > .page-container > .page-inner > .page-content p {
		max-width: 90%;
	}

	#page-id-151
		> #wrapper
		> .page-container
		> .page-inner
		> .page-content
		> .first-accessible {
		max-width: 90%;
	}

	div.hotel-location > span {
		font-size: 14px;
	}

	.hotel-right {
		margin-top: 30px;
	}

	.swiper-button-prev.hotels,
	.swiper-button-next.hotels {
		padding: 2px;
	}

	.swiper-button-prev.hotels::after,
	.swiper-button-next.hotels::after {
		font-size: 16px !important;
	}

	.swiper-button-prev.down-arrow::after {
		font-size: 20px !important;
	}

	.individual-rooms {
		width: auto;
	}

	#ReservationOrderStoreProblemFrontendForm > .submit > input {
		font-size: 12px;
	}

	.accessibility-note strong {
		padding: 20px 15px;
	}

	#accessible-services {
		padding: 100px 40px;
	}

	#accessible-services .column.three h3 {
		text-align: center !important;
	}

	#page-id-151
		> #wrapper
		> .page-container
		> .page-inner
		> .page-content
		> .related-pages-wrapper {
		margin-bottom: 60px;
		max-width: 350px;
	}

	#page-id-151
		> #wrapper
		> .page-container
		> .page-inner
		> .page-content
		> .first-accessible
		> .column.two
		h2,
	#page-id-151
		> #wrapper
		> .page-container
		> .page-inner
		> .page-content
		> .first-accessible
		> .column.two
		h3 {
		text-align: center !important;
	}

	#page-id-151 > #wrapper > .page-container > .page-inner > .page-content p {
		max-width: 90%;
	}

	#page-id-151
		> #wrapper
		> .page-container
		> .page-inner
		> .page-content
		> .first-accessible {
		max-width: 90%;
	}
}

@media only screen and (max-width: 479px) {
	.page-content.accomodate
		> .page-inner
		> .columns
		> .column.one
		> .vehicles-content
		> .columns
		> .three.column {
		width: 100% !important;
	}

	.form#UserLoginForm {
		width: auto;
	}

	#UserFrontendRegisterForm .col-md-6 .input-group div:nth-child(2) {
		width: 60% !important;
	}

	#UserFrontendRegisterForm .col-md-6 .input-group .input-group-addon,
	.input-group-btn {
		width: auto !important;
	}

	.telephone-columns {
		margin-left: 7px;
	}

	.dog-images img {
		max-width: 90%;
	}

	.home-travel-mode-icon {
		width: 60px;
		height: 60px;
	}

	.whats-on-board-cards .list-article {
		width: 90% !important;
		margin: 0 auto;
	}

	#mobile-nav-wrapper.active {
		left: 0%;
	}

	#header-nav {
		display: none;
	}

	#header-upper {
		padding: 0 0 0 10px;
		width: auto;
	}

	#mobile-nav-toggle {
		display: inline-block;
		font-size: 14px;
		width: 32px;
		margin: 0 15px 0 0;
	}

	#header-right {
		width: calc(100% - 180px);
		padding: 0 15px;
		box-sizing: border-box;
		white-space: nowrap;
	}

	#header-reserve {
		display: none;
	}

	#header-phone span {
		display: none;
	}

	#header-phone {
		font-size: 13px;
		overflow: hidden;
		width: 25px;

		-webkit-transition: 0.3s all;
		-moz-transition: 0.3s all;
		-ms-transition: 0.3s all;
		transition: 0.3s all;
	}

	#header-phone.search-active {
		width: 0;
	}

	#site-logo {
		width: 130px;
	}

	/*
	#header-trip {
		font-size: 12px;
		padding: 0 16px;
	}

	#header-trip span {
		width: 26px;
		height: 26px;
	}
	*/

	#mobile-nav-toggle div {
		width: 28px;
		margin: 6px 2px 18px;
		height: 3px;
		box-shadow: 0 7px 0 0, 0 14px 0 0;
	}

	#footer {
		background-size: auto 1300px;
	}

	#footer-inner {
		max-width: none;
		padding: 40px;
	}

	.page-content {
		padding: 0;
	}

	.page-inner {
		max-width: none;
		padding: 0 20px;
	}

	#footer .footer-col-1 a {
		font-size: 16px;
		line-height: 28px;
	}

	#footer .footer-col-1 a,
	#footer .footer-heading a {
		font-size: 13px;
		line-height: 28px;
	}

	#footer p {
		font-size: 14px;
	}

	#footer .footer-heading {
		height: 26px;
		padding: 0 0 5px;
	}

	#footer .footer-col-7 .footer-heading {
		height: 0;
	}

	#footer a {
		font-size: 13px;
		line-height: 24px;
	}

	#footer-copyright a,
	#footer-copyright span {
		font-size: 13px;
	}

	.footer-col {
		padding: 0 40px 0 0;
	}

	#footer a.button.red {
		display: none;
	}

	#footer-lower-right {
		margin: 0;
	}

	#footer-lower-right > a:first-child + a {
		padding-right: 0;
		margin-bottom: 20px;
	}

	#footer-lower-right > a:first-child {
		padding-left: 20px;
		margin-bottom: 20px;
	}

	.footer-col.footer-col-1 {
		padding-bottom: 30px;
	}

	#footer-copyright {
		margin: -40px 0 0px;
	}

	.footer-col.footer-col-1 {
		padding-right: 20px;
	}

	.footer-col.footer-col-2 {
		padding-right: 0;
		width: 100%;
		text-align: center;
	}

	#footer .footer-col-1 a.button.red {
		margin-top: 30px;
	}

	.footer-col.footer-col-5 {
		position: absolute;
		top: 684px;
		left: 160px;
	}

	.footer-subheading {
		font-size: 13px;
	}

	.footer-col.footer-col-6 {
		padding: 0;
		display: block;
		margin: 0;
		width: 145px;
	}

	#footer-lower-left img {
		width: 100%;
	}

	#footer-lower-left {
		display: inline-block;
		vertical-align: top;
		width: 160px;
	}

	#footer-lower-right {
		width: calc(100% - 160px);
	}

	#footer-lower-right a.footer-social {
		width: 20px;
		height: 20px;
		padding: 6px;
		margin: 0 0 0 14px;
	}

	#footer-copyright a:first-child {
		padding: 0;
	}

	#footer-lower-right a.footer-social:hover {
		box-shadow: 0 0 1px 2px #b2b0b0;
		width: 20px;
		height: 20px;
		padding: 6px;
	}

	#mobile-menu {
		margin: 0 auto;
	}

	#header-lower {
		display: block;
	}

	#trip-planner-wrapper {
		/*position: absolute;*/
		width: 100%;
		overflow: hidden;
		/*height: 0;*/
		-webkit-transition: 0.8s all;
		-moz-transition: 0.8s all;
		-ms-transition: 0.8s all;
		transition: 0.8s all;
	}

	#trip-planner-wrapper.active {
		/*height: 417px;*/
		box-shadow: 0 0 30px rgba(0, 0, 0, 0.5);
		padding: 0;
	}

	#trip-planner {
		top: 0px;
		background: rgb(255, 255, 255);
		width: 100%;
	}

	#trip-planner-wrapper.active #trip-planner {
		left: 0;
		top: 0;
	}

	#trip-planner .nav-pills a {
		font-size: 12px;
	}

	#trip-planner-type label span {
		line-height: 45px;
		font-size: 12px;
	}

	#trip-planner label {
		font-size: 10px;
	}

	.passenger-icon-minus,
	.ticket-icon-minus {
		width: 26px;
		background-size: 6px;
		height: 40px;
	}

	.passenger-icon-plus,
	.ticket-icon-plus {
		width: 26px;
		background-size: 6px;
		height: 40px;
	}

	#trip-planner .passengers input,
	.ticket-number {
		font-size: 16px;
		padding: 10px 0;
		width: 40px;
	}

	.passenger-input-box {
		background: #fff;
		width: 92px;
	}

	#trip-planner .trip-planner-title {
		font-size: 14px;
	}

	.trip-planner-title span {
		font-size: 36px;
		line-height: 42px;
	}

	#trip-planner .trip-planner-title {
		padding: 25px 0;
	}

	#trip-planner #searchButton,
	#trip-planner #searchPackagesButton {
		font-size: 16px;
		height: 56px;
	}

	.content-block h2 {
		font-size: 35px;
		line-height: 34px;
		margin: 0;
	}

	.content-block p {
		font-size: 14px;
		line-height: 22px;
		padding: 5px 0 0;
	}

	#home-package-deals .block-inner {
		padding: 50px 0 40px;
	}

	a.button {
		font-size: 16px;
	}

	#home-package-deals a.button {
		width: 260px;
		padding: 14px 20px;
		font-size: 15px;
		margin: 10px 0 0;
	}

	.block-inner {
		padding: 0 50px;
		box-sizing: border-box;
	}

	.content-left {
		width: 100%;
	}

	#home-package-deals-swiper img {
		margin: -40px 0;
	}

	#home-package-deals-carousel .swiper-slide:hover .pd-title-vcenter {
		margin-top: -30%;
	}

	.pd-title {
		font-size: 25px;
		line-height: 30px;
	}

	.pd-location {
		font-size: 13px;
	}

	.pd-price {
		font-size: 14px;
	}

	.pd-price span {
		font-size: 24px;
	}

	.pd-cta {
		font-size: 14px;
		width: 180px;
		margin: 0 -90px;
		line-height: 40px;
	}

	#home-package-deals .block-inner p {
		padding: 10px 30px 0;
	}

	#home-route.block.background-img .block-overlay {
		position: relative;
		height: auto;
		padding: 30px;
		box-sizing: border-box;
	}

	#home-route .block-inner {
		padding: 0;
		text-align: center;
	}

	.content-block h2 {
		font-size: 30px;
		line-height: 30px;
		margin: 0;
	}

	#home-route .the-route-desktop {
		display: none;
	}

	#home-route .the-route-mobile {
		display: block;
	}

	#home-welcome-aboard > img {
		max-width: none;
		margin: 0 -700px;
		width: 1700px;
	}

	.grid {
		max-width: 100%;
		margin: 0 auto;
	}

	.grid.grid-4 .grid-item {
		width: 40%;
		max-width: 140px;
		margin: 0 5%;
	}

	.block-inner h3 {
		font-size: 13px;
		line-height: 18px;
	}

	#home-welcome-aboard .grid-item img {
		margin-top: 20px;
		max-width: 100px;
	}

	.grid-2 .grid-item {
		width: 90%;
		padding: 0 0 20px;
	}

	.grid-2 .grid-item:last-child {
		padding-bottom: 0;
	}

	#home-articles h3 {
		font-size: 16px;
		line-height: 20px;
	}

	.footer-col.footer-col-1 {
		padding: 20px 0;
		display: block;
	}

	.footer-col.footer-col-3,
	.footer-col.footer-col-4 {
		width: calc(50% - 45px);
	}

	.footer-col.footer-col-4 {
		padding: 30px 0 0 0;
		width: 50%;
	}

	.footer-col.footer-col-3 {
		padding: 20px 40px 20px 0;
	}

	#footer-lower {
		float: none;
		margin: 0;
	}

	.footer-social-links {
		padding: 0 0 20px;
		display: block;
	}

	#footer a.footer-social {
		width: 40px;
		height: 40px;
	}

	.footer-logo img {
		max-width: 100%;
	}

	#footer a.footer-logo {
		width: 160px;
		padding: 0 0 0 20px;
	}

	#footer-lower-right {
		position: absolute;
		right: 40px;
		top: 575px;
		width: 130px;
		text-align: right;
	}

	#footer-sharing {
		text-align: right;
		padding: 0 0 10px;
		margin: 20px 0 50px;
	}

	#footer-lower-right > a:first-child {
		padding-right: 0;
		display: block;
		margin-bottom: 10px;
	}

	.footer-col.footer-col-4 {
		margin: -30px 0 0px;
		width: 100%;
	}

	#footer-lower-right a.footer-social {
		display: block;
		margin: 0 0 20px !important;
	}

	#footer-copyright a,
	#footer-copyright span {
		font-size: 11px;
	}

	.page_heading h1,
	.page-content h1 {
		font-size: 30px;
		line-height: 34px;
		padding: 0 40px;
	}

	h2 {
		font-size: 20px;
		line-height: 20px;
		font-weight: 700;
	}

	.page-content h3,
	.page_heading h3 {
		font-size: 15px;
		line-height: 16px;
	}

	p {
		font-size: 14px;
		margin: 0 0 10px 0;
	}

	.column {
		font-size: 14px;
		padding-left: 10px;
		padding-right: 10px;
		line-height: 16px;
		margin: 0 0 10px 0;
	}

	.page_heading {
		padding: 10px 0 10px;
	}

	.tablet-wide {
		width: 100% !important;
		padding: 0;
	}

	#header-search.active {
		margin: 0 -10px 0 0;
	}

	#header-mag {
		padding: 0;
	}

	#header-search label {
		display: none;
	}

	#header-search {
		margin: 0 10px 0 0;
	}

	#header-search.active input[type="text"] {
		font-size: 14px;
	}

	a.post-item {
		padding: 0;
	}

	a.button,
	.button {
		font-size: 16px;
		padding: 12px 30px;
	}

	#footer p {
		font-size: 13px;
		line-height: 22px;
	}

	#newsletter h3 {
		display: block;
		font-size: 22px;
	}

	#newsletter-form input[type="text"] {
		font-size: 15px;
		height: 40px;
		width: 200px;
	}

	#newsletter-form input[type="submit"] {
		font-size: 14px;
		padding: 11px 18px;
	}

	#newsletter h3 {
		display: block;
		font-size: 22px;
		padding: 2px 0 12px;
	}

	#newsletter-icon {
		display: none;
	}

	.swiper-slide .mobile-img {
		display: block;
	}

	.swiper-slide .desktop-img {
		display: none;
	}

	#featured-banner-desktop {
		display: none;
	}

	#featured-banner-mobile {
		display: block;
	}

	.page-container .page_heading {
		padding: 30px 0;
	}

	.current-fares.column.two,
	.vehicle-reservation-fees.column.two {
		width: 100%;
		padding: 0;
		margin: 0 0 20px;
	}

	.columns .columns-heading .column,
	.current-fares .columns-heading .column.twelve-two,
	.vehicle-reservation-fees .columns-heading .column.twelve-two {
		font-size: 12px;
		line-height: 14px;
	}

	.column-title {
		font-size: 16px;
	}

	.button-wrap {
		padding: 0 0 30px;
	}

	#schedule-fares-fee-disclaimer p {
		font-size: 14px;
	}

	.accordion-header {
		font-size: 12px;
		padding: 15px 55px 15px 20px;
		height: auto;
	}

	.current-fares .column.twelve-ten,
	.vehicle-reservation-fees .column.twelve-eight {
		font-size: 16px;
	}

	.current-fares .column.twelve-two,
	.vehicle-reservation-fees .column.twelve-two {
		font-size: 17px;
	}

	.current-fares .column.twelve-ten {
		width: 78.333%;
	}

	.vehicle-reservation-fees .column.twelve-eight {
		width: 56.666%;
	}

	.vehicle-reservation-fees .column.twelve-two {
		width: 21.666%;
	}

	.accordion-section .accordion-toggle:before {
		border-width: 3px;
		width: 8px;
		height: 8px;
	}

	.ferry-schedule-accordion .column.hide-mobile {
		display: none;
	}

	.ferry-schedule-accordion .column.four {
		width: 100%;
	}

	.ferry-schedule-accordion .columns-heading .column.four br {
		display: none;
	}

	.current-fares .column span {
		font-size: 13px;
		line-height: 16px;
	}

	.accordion {
		margin: 0 !important;
		position: relative;
	}

	.terms-conditions {
		columns: 1;
	}

	.ferry-schedule-accordion .accordion-departure-location:before {
		display: none;
	}

	.contact-locations {
		padding: 0;
	}

	.packaging-wrapper {
		padding: 0 20px;
	}

	.contact-location.column {
		width: 100%;
	}

	.contact-location h3 {
		padding: 12px 15px;
		font-size: 13px;
	}

	.contact-location .column {
		font-size: 15px;
		line-height: 26px;
		margin: 0;
	}

	.contact-location label {
		min-width: 95px;
	}

	.hearing-impaired .column {
		font-size: 16px;
		line-height: 30px;
	}

	.packaging-office .column {
		width: 100%;
		padding: 0;
	}

	.packaging-office h3 {
		text-align: left;
	}

	.hearing-impaired {
		padding: 15px 10px 20px !important;
	}

	.contact-locations h2 {
		margin: 0;
	}

	.contact-location.column {
		margin: 15px 0 0;
		padding: 0 10px !important;
	}

	.contact-form-wrapper {
		padding: 0 10px 0;
	}

	.contact-form {
		padding: 0 20px 2px;
		margin: 0;
	}

	#contact-form #contact-form-submit {
		font-size: 16px;
	}

	.contact-location .column {
		font-size: 16px;
		line-height: 26px;
		display: block;
		width: 100%;
	}

	.column .hours-day:nth-child(4n + 2) {
		background: #eee;
	}

	.column .hours-day:nth-child(4n + 3) {
		background: #fff;
	}

	.contact-location h4 {
		padding: 6px 20px;
		font-size: 12px;
	}

	.list-article-left {
		display: block;
		width: 100%;
	}

	.list-article-right {
		width: 100%;
		display: block;
		padding: 20px 0 0;
	}

	.list-article-right h3 {
		text-align: left;
	}

	.list-article-cta {
		font-size: 14px;
		padding: 12px 26px;
	}

	.list-article-posted-date {
		font-size: 12px;
	}

	button.button-primary {
		padding: 11px 25px 10px;
	}

	.alert-message {
		position: relative;
		top: 0;
	}

	.alert-message-inner {
		padding: 12px 20px;
	}

	#newsletter-form button.button-primary {
		padding: 9px 16px 8px;
		letter-spacing: 0.14em;
	}

	.footer-col.footer-col-6 {
		margin: 0 auto;
		text-align: center;
	}

	.footer-phone-wrapper {
		text-align: left;
		background: url(/img/frontend/icon-phone-white.png) 0px 10px no-repeat;
		background-size: 30px;
	}

	.footer-col.footer-col-1 {
		text-align: center;
	}

	.footer-col.footer-col-3 {
		text-align: center;
		width: 100%;
	}

	.footer-col.footer-col-4 {
		text-align: center;
	}

	.footer-col.footer-col-5 {
		position: relative;
		top: 0;
		left: 0;
		margin: 0 auto;
		text-align: center;
		width: 100%;
		padding: 20px 0 10px;
	}

	#footer-sharing {
		text-align: center;
	}

	#footer-copyright {
		text-align: center;
	}

	#footer a.footer-logo {
		padding: 0;
	}

	.column.two {
		width: 100%;
		padding: 0;
	}

	a.button.button-secondary,
	.button.button-secondary {
		font-size: 12px;
		padding: 6px 10px 5px;
		margin: 4px 0 0;
		line-height: 18px;
	}

	.related-page {
		width: 100%;
		margin: 0 0 4px;
	}

	.related-page h3 {
		font-size: 14px;
		padding: 10px 20px;
	}

	.related-page-cta {
		font-size: 14px;
		padding: 8px 18px;
		letter-spacing: 0.15em;
	}

	.related-page-bg {
		height: auto;
		max-height: 200px;
	}

	.page-content .related-page-thumb {
		max-width: none;
		width: 100%;
		height: auto;
	}

	#things-times-inner {
		max-width: none;
		padding: 30px 40px;
	}

	.page-content h4 {
		font-size: 14px;
	}

	#things-times:before {
		background: url(/img/pages/coho-644.jpg) center center no-repeat;
		background-size: auto 100%;
	}

	p,
	ul {
		font-size: 15px;
	}

	.related-page a {
		margin: 0;
	}

	.related-pages-wrapper {
		margin: 0 0 60px;
	}

	.id-req-left {
		width: 100%;
	}

	.id-req-right {
		display: none;
	}

	.duty-free-item-wrapper {
		columns: 1;
	}

	.duty-free-item div {
		font-size: 12px;
	}

	.list-article {
		width: 100%;
	}

	.list-article a {
		height: 500px;
		margin: 0 0 15px;
	}

	.list-article-cta {
		bottom: 30px;
		left: calc(50% - 95px);
	}

	.article-category-filter-wrapper {
		max-width: none;
		margin: 0 20px 20px;
	}

	#article-category-filter-selected {
		width: 100%;
	}

	#article-category-filter {
		position: relative;
		right: auto;
		top: auto;
		width: calc(100% - 40px);
		margin: 50px auto 0;
	}

	#article-category-filter-selected:before {
		position: absolute;
		top: -29px;
		right: auto;
		margin: 0 -15px;
		padding: 4px 10px;
		width: 100%;
		box-sizing: border-box;
	}

	.filter-item {
		font-size: 11px;
	}

	#article-category-filter-selected {
		font-size: 12px;
	}

	.accordion-title {
		line-height: 20px;
	}

	.card,
	.card.single-attraction-item {
		width: 100% !important;
	}

	.card.single-attraction-item .card-img {
		min-height: 0;
	}

	.attraction .page-inner {
		max-width: none;
		padding: 0 25px;
	}

	.attraction-featured-img,
	.hotel-featured-img,
	.rental-featured-img {
		width: 100%;
		height: auto;
	}

	.attraction-featured-img img,
	.hotel-featured-img img,
	.rental-featured-img img {
		margin: 0;
	}

	.attraction-left,
	.hotel-left,
	.rental-left {
		width: 100%;
		padding: 30px 0 0 0;
	}

	.attraction-right,
	.hotel-right,
	.rental-right {
		width: 100%;
	}

	h1.hotel-title,
	h1.rental-title {
		padding: 0;
	}

	.attraction-right,
	.hotel-right,
	.rental-right {
		width: 100%;
		padding: 30px 0 0;
	}

	.attraction-thumbs,
	.hotel-thumbs,
	.rental-thumbs {
		height: 45px;
	}

	.attraction-description,
	.attraction-description p,
	.hotel-description,
	.hotel-description p,
	.rental-description,
	.rental-description p {
		margin: 0 0 20px;
	}

	.attraction-item-wrapper > .attraction-tickets {
		display: block;
		margin: 20px 0 0 !important;
	}

	.attraction-right .attraction-tickets {
		display: none;
	}

	.ticket-input-box {
		width: 100px;
		display: block;
		margin: 0 auto 10px;
	}

	.ticket-group {
		text-align: center;
	}

	.ticket-select {
		font-size: 14px;
		padding: 4px 0 3px;
	}

	.ticket-group-info {
		width: 100%;
	}

	.ticket-label {
		width: 100%;
		text-align: center;
	}

	.ticket-price {
		display: block;
		text-align: center;
		width: 100%;
		padding: 5px 0 10px;
	}

	h1.attraction-title {
		font-size: 28px;
		line-height: 32px;
		margin: 0;
		padding: 0;
	}

	.attraction-location {
		font-size: 14px;
		line-height: 10px;
		margin: 0;
	}

	.attraction-description h3 {
		text-align: left;
	}

	.attraction-featured-img {
		width: 100%;
		height: auto;
	}

	.attraction-left {
		display: block;
		width: 100%;
		padding: 30px 0 0;
	}

	.attraction-thumbs {
		height: 75px;
	}

	.attraction-right {
		width: 100%;
		padding: 20px 0 0;
	}

	.attraction-featured-img img {
		margin: -20px 0;
	}

	.hotel-right .room-results {
		display: none;
	}

	.hotel-item-wrapper > .room-results {
		display: block;
	}

	.hbd-room-select {
		position: relative;
		bottom: auto;
		left: auto;
		width: calc(100% - 30px);
		margin: 0 auto 18px;
	}

	.hbd-room-price {
		position: relative !important;
		top: auto;
	}

	.hbd-room-price span {
		margin: 0 auto;
	}

	.page-content li.hbd-room-item:before {
		display: none;
	}

	.page-content .rooms-available {
		font-size: 0;
	}

	.hbd-room-item {
		display: block !important;
		width: 100%;
		margin: 0 0 15px;
		vertical-align: top;
	}

	.hbd-room-item:last-child {
		margin: 0;
	}

	.hbd-room-img {
		display: block;
		width: 100%;
	}

	.hbd-room-img img {
		margin: -50px 0;
	}

	.hbd-room-info {
		display: block;
		width: 100%;
		padding: 22px;
	}

	.hbd-room-right {
		position: relative;
		top: auto;
		left: auto;
		width: 100%;
		overflow: hidden;
	}

	.hbd-check-in-input,
	.hbd-check-out-input {
		display: block;
		padding: 0 0 6px;
	}

	.hbd-check-in-input input.datepicker,
	.hbd-check-out-input input.datepicker {
		width: 100%;
	}

	.hbd-submit-wrapper {
		display: block;
	}

	.hbd-submit-wrapper #searchButton {
		margin: 20px auto 0;
		display: block;
		width: 180px;
	}

	.hbd-rooms-input,
	.hbd-adults-input,
	.hbd-children-input {
		padding: 0 4px;
	}

	.hotel-booking-dates-inner {
		text-align: center;
	}

	.ticket-time-tabs label {
		position: relative;
		top: 0;
		left: 0;
	}

	.ticket-time-tabs {
		padding: 10px 20px 0;
		text-align: center;
	}

	#duty-free-vodka .three-two,
	#duty-free-vodka .three {
		display: block;
		width: 100%;
	}

	#vodka-img {
		margin-top: 0;
	}

	#duty-free-vodka h2 {
		text-align: center;
	}

	#coffee-shop-wrapper {
		columns: 1;
	}

	#black-ball-shop .content-left {
		display: block;
		width: 100%;
		margin: 0;
		padding: 40px 0;
	}

	#black-ball-shop .content-right {
		display: none;
	}

	#black-ball-shop .content-mobile {
		display: block;
		margin: 0px auto -80px;
		left: auto;
		position: relative;
		width: 100%;
		padding: 0;
		top: -40px;
	}

	.current-fares.commercial-fares .column.twelve-ten {
		width: 70%;
	}

	.pages-image-gallery .column.six {
		width: 50%;
	}

	.pages-image-gallery .column.six:nth-child(6n + 2),
	.pages-image-gallery .column.six:nth-child(6n + 4) {
		padding-right: 0;
	}

	.pages-image-gallery .column.six:nth-child(6n + 3),
	.pages-image-gallery .column.six:nth-child(6n + 5) {
		padding-left: 0;
	}

	a.image-gallery-item {
		margin: 0 0 10px;
		max-height: 125px;
	}

	#charter-transporation-inner {
		max-width: none;
		padding: 0 40px;
	}

	#charter-transporation-img-wrapper {
		position: relative;
		height: auto;
		margin: -40px 0 0;
		height: auto;
		max-height: 300px;
		overflow: hidden;
	}

	#charter-transportation-img {
		position: relative;
		left: 0;
		max-width: 100%;
		height: auto;
		margin: -20px 0;
	}

	#charter-transporation-inner .column.two:first-child {
		width: 100%;
		display: block;
	}

	#charter-transporation-inner .column.two:last-child {
		display: none;
	}

	#travel-trade-image-library {
		position: relative;
		padding: 140px 0 0;
	}

	#image-library-boat-img {
		margin: -30px 0 0;
	}

	#travel-trade-image-library .column.three-two {
		width: 100%;
		padding: 0;
	}

	#travel-trade-image-library .column.three {
		width: 100%;
		padding: 0;
		position: absolute;
		top: 0;
		left: 0;
		height: 150px;
		overflow: hidden;
	}

	#seattle-victoria-four-columns .column.three {
		width: 100%;
		padding: 0 0 40px;
	}

	#seattle-victoria-four-columns .icon {
		margin: 0 auto 20px;
		float: none;
	}

	#seattle-victoria-route .column.three {
		width: 100%;
		padding: 0 0 20px;
	}

	#schedule-fares-fee-disclaimer {
		margin: 0 0 40px;
	}

	#timeline-grid .column.four {
		width: 100%;
		padding-left: 0;
		padding-right: 0;
		font-size: 0;
	}

	#timeline-grid .column.four .timeline-img:before,
	#timeline-grid .column.four .timeline-img:after {
		display: none;
	}

	#timeline-grid img {
		border: 8px solid #fff;
	}

	.timeline-img {
		max-width: 120px;
	}

	.timeline-content {
		padding: 0 20px;
	}

	#flags-through-the-years .column.four {
		width: 50%;
		padding: 10px 20px;
	}

	#media-downloads .column.six {
		width: 100%;
		padding: 0;
		display: block;
		margin: 0 0 20px;
	}

	#media-video .column.three-two,
	#media-video .column.three {
		display: block;
		width: 100%;
		text-align: center;
	}

	#media-video {
		padding: 40px 0 110px;
	}

	#media-video iframe {
		height: 220px;
	}

	#media-video h3 {
		padding-left: 0;
	}

	a.media-download {
		display: inline-block;
		vertical-align: top;
		width: 100%;
	}

	#mi-beginning-content .column.three {
		width: 100%;
		padding: 0;
	}

	#mi-beginning-content .column.three-two {
		width: 100%;
		padding: 0;
	}

	#media-downloads {
		margin: 10px 10px 10px 0px;
	}

	.media-download span {
		font-size: 16px;
	}

	.ferry-schedule-accordion .column.four {
		margin-bottom: 0;
	}

	#history-rotator-outer {
		margin: 50px 0 0;
	}

	.itinerary-table .table-row .col:first-child {
		width: 100%;
		padding-top: 10px;
	}

	.itinerary-table .table-row .col:last-child {
		width: 100%;
		padding-bottom: 10px;
	}

	.itinerary-table .table-row .col {
		font-size: 16px;
		line-height: 22px;
	}

	#home-package-deals-swiper a,
	.swiper-slide > a {
		margin-right: 0px;
	}

	#header-phone span:nth-child(2) {
		display: none;
	}
}

@media only screen and (max-width: 370px) {
	#header-phone {
		display: none;
	}

	#header-search {
		margin: 0 -8px 0 0;
	}
}

@media only screen and (max-width: 320px) {
	#header-lower-reserve {
		font-size: 10px;
	}

	#home-articles h2 {
		padding: 0 0 20px;
	}

	#home-route img {
		margin: 0;
		width: 100%;
	}

	.home-article-content {
		height: 0;
	}

	.content-block h2 {
		font-size: 26px;
		line-height: 28px;
	}

	#footer .footer-col-1 a,
	#footer .footer-heading a {
		white-space: nowrap;
	}

	.footer-subheading {
		font-size: 13px;
	}

	#footer p {
		font-size: 13px;
		line-height: 22px;
	}

	#footer-lower-left {
		width: 120px;
	}

	.page_heading h1,
	.page-content h1 {
		font-size: 26px;
		line-height: 30px;
	}

	h2 {
		font-size: 17px;
		line-height: 20px;
	}

	.page-content h3,
	.page_heading h3 {
		font-size: 13px;
		line-height: 14px;
	}

	p,
	.column {
		font-size: 13px;
		margin: 0 0 8px 0;
		line-height: 24px;
	}

	#newsletter-form input[type="submit"] {
		display: block;
		margin: 10px auto 0;
		width: 100%;
	}

	#newsletter-form input[type="text"] {
		font-size: 15px;
		height: 40px;
		width: 100%;
	}

	#newsletter-form {
		display: block;
		padding: 0 20px;
	}

	#newsletter-form button.button-primary.red {
		margin: 15px 0 0;
		width: 100%;
		display: block;
	}

	.footer-col.footer-col-6 {
		margin: 0 auto;
		text-align: center;
	}

	.footer-phone-wrapper {
		text-align: left;
		background: url(/img/frontend/icon-phone-white.png) 0px 10px no-repeat;
		background-size: 30px;
	}

	.footer-col.footer-col-1 {
		text-align: center;
	}

	.footer-col.footer-col-3 {
		text-align: center;
		width: 100%;
	}

	.footer-col.footer-col-4 {
		text-align: center;
	}

	.footer-col.footer-col-5 {
		position: relative;
		top: 0;
		left: 0;
		margin: 0 auto;
		text-align: center;
		width: 100%;
		padding: 20px 0 10px;
	}

	#footer-sharing {
		text-align: center;
	}

	#footer-copyright {
		text-align: center;
	}

	#footer a.footer-logo {
		padding: 0;
	}

	.page-inner {
		padding: 0 10px;
	}

	.column-title {
		font-size: 14px;
		padding: 14px 0 12px;
	}

	#newsletter h3 {
		font-size: 20px;
	}

	#things-times-inner {
		max-width: none;
		padding: 10px;
	}

	.article-category-filter-wrapper {
		max-width: none;
		margin: 0 -10px 20px;
	}

	.attraction .page-inner {
		padding: 0 10px;
	}

	.attraction-right,
	.hotel-right,
	.rental-right {
		width: 100%;
		padding: 0;
	}

	.attraction-left,
	.hotel-left,
	.rental-left {
		width: 100%;
		padding: 10px 0 0 0;
	}

	#charter-transporation-inner {
		padding: 0 20px;
	}

	#flags-through-the-years {
		margin: 0;
	}

	.list-article-content {
		height: 120px;
	}

	#seattle-victoria-four-columns .icon,
	#accessible-services .icon {
		max-width: 50px;
		padding: 20px;
	}

	#accessible-services img {
		margin: 0 auto;
		max-width: 40px;
		padding: 10%;
	}
}

@media screen and (min-width: 600px) {
	#trip-planner.mobile {
		display: none;
	}
}

@media screen and (max-width: 600px) {
	#trip-planner.mobile {
		width: 100%;
	}

	#trip-planner.mobile .trip-planner-title.mobile {
		display: flex !important;
		flex-direction: row !important;
		width: 100%;
	}

	#trip-planner .tab-content.mobile {
		width: 100%;
	}

	#ferry-form-upper.mobile {
		display: flex;
		flex-direction: column;
		width: 100%;
		margin: 0 auto;
		justify-content: center;
		align-items: center;
	}

	#trip-planner-type.mobile {
		width: 80%;
	}

	.starting-point.mobile {
		width: 70%;
		margin: 20px auto;
	}

	.vehicle-types.mobile {
		width: 80%;
		margin: 0 auto;
	}

	#trip-planner .sub-label.mobile {
		font-size: 16px;
		margin: 0 0 10px;
	}
}

@media screen and (max-width: 479px) {
	#trip-planner-type.mobile {
		width: 100%;
	}

	#trip-planner-type.mobile label:first-child {
		margin: 0 0 10px;
	}

	#trip-planner .trip-planner-title.mobile span {
		font-size: 26px;
	}

	#trip-planner-type.mobile {
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
	}

	#trip-planner .trip-planner-title {
		padding: 15px 0 0;
		width: 100%;
	}

	#trip-planner form#ferry-form-mobile {
		margin: 0;
	}

	#trip-planner.mobile label {
		width: 80%;
	}

	.starting-point.mobile {
		width: 80%;
		margin: 20px auto;
	}

	.vehicle-types.mobile {
		width: 80%;
		margin: 0 auto;
	}

	#trip-planner .sub-label.mobile {
		font-size: 16px;
		margin: 0 0 10px;
	}
}

@media screen and (max-width: 479px) {
	#trip-planner-type.mobile {
		width: 100%;
	}

	#trip-planner-type.mobile label:first-child {
		margin: 0 0 10px;
	}

	#trip-planner .trip-planner-title.mobile span {
		font-size: 26px;
	}

	#trip-planner-type.mobile {
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
	}

	#trip-planner .trip-planner-title {
		padding: 15px 0 0;
		width: 100%;
	}

	#trip-planner form#ferry-form-mobile {
		margin: 0;
	}

	#trip-planner.mobile label {
		width: 80%;
	}

	.starting-point.mobile {
		width: 80%;
	}

	#searchButton.mobile {
		margin: 20px auto 0 !important;
		width: 95%;
	}
}
