@charset "utf-8";
/* CSS Document */

/* Table of Contents
-----------------------------------------------------------------------------
	1. Mobile
	2. Large Mobile
	3. iPad
	4. large desktop
	5. Other
*/

/* 1. Mobile responsive css 640px
------------------------------------------------------------------------------*/
@media (max-width:640px) {

	h1,
	.h1 {
		font-size: 28px;
		line-height: 32px;
	}

	h2,
	.h2 {
		font-size: 24px;
		line-height: 30px;
	}

	h3,
	.h3 {
		font-size: 20px;
		line-height: 25px;
	}

	h4,
	.h4 {
		font-size: 16px;
		line-height: 25px;
	}

	h5,
	.h5 {
		font-size: 14px;
		line-height: 23px;
	}

	h6,
	.h6 {
		font-size: 12px;
		line-height: 22px;
	}

	p {
		font-size: 16px;
		font-weight: 500;
		line-height: 25px;
		margin-bottom: 15px;
	}

	.container {
		padding: 0 20px;
		box-sizing: border-box;
	}

	.logo h1 {
		font-size: 32px;
		line-height: 38px;
	}

	.full-sec {
		display: none;
		margin-bottom: 25px;
		padding-top: 20px;
	}

	nav ul li a {
		font-size: 14px;
		line-height: 18px;
		padding: 6px 10px 5px;
		border-radius: 4px;
	}

	.navigation {
		margin-bottom: 15px;
		display: none;
	}

	#content-area {
		padding-top: 30px;
	}

	#content-area ul li {
		font-size: 16px;
		line-height: 24px;
		padding: 0 0 5px 0;
		padding-left: 15px;
	}

	#content-area ul li:before {
		left: 2px;
		top: 10px;
		width: 5px;
		height: 5px;
	}

	.welcome-sec {
		padding-top: 30px;
		padding-bottom: 20px;
	}

	.welcome-sec h2 {
		font-size: 19px;
		line-height: 28px;
		padding-left: 0;
		margin-right: 16px;
		margin: 0 auto;
		margin-bottom: 22px;
		max-width: 300px;
	}

	.welcom-info-sec {
		padding: 45px 0 25px 0;
	}

	.align-right {
		margin-bottom: 20px;
		margin-left: 0;
		float: right;
		max-width: 100%;
		width: 100%;
	}

	footer .footer-top {
		margin-bottom: 10px;
	}

	footer {
		padding-top: 20px;
		padding-bottom: 20px;
	}

	#content-area ul {
		margin: 20px 0px;
		padding: 0;
	}

	footer .footer-top ul {
		display: block;
		max-width: 300px;
	}

	footer .footer-top ul li {
		margin-bottom: 10px;
	}

	.align-left {
		width: 100%;
		max-width: 100%;
		margin: 0;
		margin-bottom: 30px;
	}

	.title-sec {
		margin-bottom: 25px;
	}

	.content-sec {
		padding-top: 10px;
		padding-bottom: 40px;
	}

	.content-sec h3 {
		margin-top: 30px;
	}

	.title-sec h1,
	.title-sec h2 {
		font-size: 22px;
		margin-bottom: 20px;
	}

	.content-sec h4 {
		margin-top: 30px;
		margin-bottom: 10px;
	}

	.form-area.mt-10 {
		margin-top: 50px;
		width: 100%;
	}

	.mb-toggled.mb-closed {
		display: inline-flex;
		text-align: right;
		border-radius: 4px;
		background: rgba(0, 0, 0, 0.35);
		cursor: pointer;
		line-height: 1.125em;
		margin: 5px 5px 6px;
		padding: 0.5em 0.7em;
		align-items: center;
	}

	.mobile-menu {
		text-align: right;
	}

	.mb-button span:first-child {
		margin-top: 0;
	}

	.mb-button span:last-child {
		margin-bottom: 0;
	}

	.mb-button {
		position: relative;
	}

	.text-menu {
		font-size: 18px;
		line-height: 21px;
		margin-right: 13px;
		color: #fff;
		text-transform: uppercase;
		font-weight: bold;
	}

	header.site-header {
		position: relative;
		width: 100%;
	}

	.mobile-menu {
		display: block;
	}

	.mobile-title {
		display: block;
		width: 100%;
		margin-bottom: 25px;
	}

	.mobile-title h2 {
		font-size: 28px;
		line-height: 30px;
		color: #1a2124;
		font-family: Playfair Display;
		text-align: center;
		margin-bottom: 0;
		font-weight: bold;
	}

	.mobile-logo img {
		width: 100%;
	}
}

/* 2. Large Mobile responsive css 640px
------------------------------------------------------------------------------*/
@media (min-width:641px) and (max-width:767px) {

	h1,
	.h1 {
		font-size: 28px;
		line-height: 32px;
	}

	h2,
	.h2 {
		font-size: 24px;
		line-height: 30px;
	}

	h3,
	.h3 {
		font-size: 20px;
		line-height: 25px;
	}

	h4,
	.h4 {
		font-size: 16px;
		line-height: 25px;
	}

	h5,
	.h5 {
		font-size: 14px;
		line-height: 23px;
	}

	h6,
	.h6 {
		font-size: 12px;
		line-height: 22px;
	}

	p {
		font-size: 16px;
		font-weight: 500;
		line-height: 25px;
		margin-bottom: 15px;
	}

	.container {
		padding: 0 2%;
		box-sizing: border-box;
	}

	.logo h1 {
		font-size: 32px;
		line-height: 38px;
	}

	.full-sec {
		display: none;
		margin-bottom: 25px;
		padding-top: 20px;
	}

	nav ul li a {
		font-size: 14px;
		line-height: 18px;
		padding: 6px 10px 5px;
		border-radius: 4px;
	}

	.navigation {
		margin-bottom: 15px;
		display: none;
	}

	#content-area {
		padding-top: 30px;
	}

	#content-area ul li {
		font-size: 16px;
		line-height: 24px;
		padding: 0 0 5px 0;
		padding-left: 15px;
	}

	#content-area ul li:before {
		left: 2px;
		top: 10px;
		width: 5px;
		height: 5px;
	}

	.welcome-sec {
		padding-top: 30px;
		padding-bottom: 20px;
	}

	.welcome-sec h2 {
		font-size: 23px;
		line-height: 35px;
		padding-left: 15px;
		margin-right: 16px;
		margin-bottom: 30px;
	}

	.welcom-info-sec {
		padding: 45px 0 25px 0;
	}

	.align-right {
		margin-bottom: 20px;
		margin-left: 20px;
		float: right;
		max-width: 210px;
	}

	footer .footer-top {
		margin-bottom: 15px;
	}

	footer {
		padding-top: 20px;
		padding-bottom: 20px;
	}

	.align-left {
		margin-bottom: 10px;
		margin-right: 20px;
		max-width: 200px;
	}

	.title-sec {
		margin-bottom: 25px;
	}

	.content-sec {
		padding-top: 40px;
		padding-bottom: 40px;
	}

	.content-sec h3 {
		margin-top: 30px;
	}

	.content-sec h4 {
		margin-top: 30px;
		margin-bottom: 10px;
	}

	.form-area.mt-10 {
		margin-top: 50px;
	}

	.mb-toggled.mb-closed {
		display: inline-flex;
		text-align: right;
		border-radius: 4px;
		background: rgba(0, 0, 0, 0.35);
		cursor: pointer;
		line-height: 1.125em;
		margin: 5px 5px 6px;
		padding: 0.5em 0.7em;
		align-items: center;
	}

	.mobile-menu {
		text-align: right;
	}

	.mb-button span:first-child {
		margin-top: 0;
	}

	.mb-button span:last-child {
		margin-bottom: 0;
	}

	.mb-button {
		position: relative;
	}

	.text-menu {
		font-size: 18px;
		line-height: 21px;
		margin-right: 13px;
		color: #fff;
		text-transform: uppercase;
		font-weight: bold;
	}

	header.site-header {
		position: relative;
		width: 100%;
	}

	.mobile-menu {
		display: block;
	}

	.mobile-title {
		display: block;
		width: 100%;
		margin-bottom: 25px;
	}

	.mobile-title h2 {
		font-size: 28px;
		line-height: 30px;
		color: #1a2124;
		font-family: Playfair Display;
		text-align: center;
		margin-bottom: 0;
		font-weight: bold;
	}

}

/* 3. iPad responsive css 768px to 1023px
------------------------------------------------------------------------------*/
@media (min-width:768px) and (max-width:1023px) {

	p {
		color: #5c5c5c;
		font-size: 18px;
		font-weight: 500;
		line-height: 30px;
		margin-bottom: 15px;
	}

	.container {
		padding: 0 2%;
		box-sizing: border-box;
	}

	.logo h1 {
		font-size: 32px;
		line-height: 38px;
	}

	.full-sec {
		margin-bottom: 25px;
		padding-top: 20px;
	}

	nav ul li a {
		font-size: 14px;
		line-height: 18px;
		padding: 6px 10px 5px;
		border-radius: 4px;
	}

	.navigation {
		margin-bottom: 15px;
	}

	#content-area {
		padding-top: 125px;
	}

	.welcome-sec {
		padding-top: 40px;
		padding-bottom: 25px;
	}

	.welcome-sec h2 {
		font-size: 30px;
		line-height: 36px;
		padding-left: 18px;
		margin-right: 23px;
		margin-bottom: 30px;
	}

	.welcom-info-sec {
		padding: 60px 0 50px 0;
	}

	.align-left {
		margin-bottom: 15px;
		margin-right: 30px;
		max-width: 230px;
	}

	.title-sec {
		margin-bottom: 45px;
	}

	.content-sec {
		padding-top: 40px;
		padding-bottom: 30px;
	}

	.align-right {
		margin-bottom: 20px;
		margin-left: 20px;
		float: right;
		max-width: 300px;
	}

	.title-sec {
		margin-bottom: 50px;
	}

	.form-area.mt-10 {
		margin-top: 50px;
	}

	.navigation ul li .sub-menu {
		top: 37px;
	}

	.about-img23 {
		text-align: center;
	}
}

/* 4. large desktop responsive css 1024px to 1199px
------------------------------------------------------------------------------*/
@media (min-width:1024px) and (max-width:1199px) {

	p {
		color: #5c5c5c;
		font-size: 18px;
		font-weight: 500;
		line-height: 30px;
		margin-bottom: 15px;
	}

	.container {
		padding: 0 2%;
		box-sizing: border-box;
	}

	.logo h1 {
		font-size: 40px;
		line-height: 50px;
	}

	.full-sec {
		margin-bottom: 30px;
	}

	nav ul li a {
		font-size: 14px;
		line-height: 18px;
		padding: 6px 10px 5px;
		border-radius: 4px;
	}

	.navigation {
		margin-bottom: 15px;
	}

	#content-area {
		padding-top: 150px;
	}

	.welcome-sec {
		padding-top: 40px;
		padding-bottom: 25px;
	}

	.welcome-sec h2 {
		font-size: 30px;
		line-height: 36px;
		padding-left: 18px;
		margin-right: 23px;
		margin-bottom: 30px;
	}

	.welcom-info-sec {
		padding: 60px 0 50px 0;
	}

	.content-sec {
		padding-top: 60px;
		padding-bottom: 60px;
	}

	.title-sec {
		margin-bottom: 50px;
	}

	.navigation ul li .sub-menu {
		top: 37px;
	}

}

/* 5. Other media-query
------------------------------------------------------------------------------*/



/* Targets screens larger than or equal to 480px (common mobile screen size) */
@media (max-width: 480px) {
	.row.pt-50 {
		padding-top: 37px !important;
	}

	.best-s-img img {
		width: 50%;
		padding: 10px;
	}

	.best-s-img {
		text-align: center;
	}
	.best-s-img.img-733 {
		width: 50%;
	}
	.san-c {
		flex-direction: column;
	  }
	  .los-i {
		flex-direction: column;
	  }
	  span.tour-text {

		font-size: 26px;
	}
	.helpp-link {
		margin: 9px;
	}

}

/* Targets devices between 320px and 480px wide (common mobile range) */
@media (min-width: 425px) and (max-width: 768px) {
	.san-fran {
		flex-direction: column;
	}
	p.san-p {
		padding: 33px 0px;
	}
	.row.pt-50 {
		padding-top: 119px;
	}
	.best-s-img img {
		width: 50%;
		padding: 10px;
	}
	.best-s-img {
		text-align: center;
	}
	.LS-Photography1 a img {
		width: 70%;
	}
	.best-s-img.img-733 {
		width: 50%;
	}
	.helpp-link {
		height: 100%;
		padding: 10px;
	}
}