@import url(https://fonts.googleapis.com/css?family=PT+Sans+Narrow:400,700);

@media (max-width: 900px) {
	
	#supersized-loader {
		background-image: none !important;
		display:none !important;
		
	}
	
	#DashboardIconsBlockWrapper {
			 		margin-top: 15px;
					grid-template-columns: 100% !important;
	}
	
						.DashBoardLarge {
						 display:none !important;
						 background-color: aqua;
					}
					
					.DashBoardSmall {
								display:block !important;
					}
	
}


	.DashBoardLarge {
		 display:block
	}
	
	.DashBoardSmall {
				display:none;
	}


.red { color: #8B0000 }
.BackgroundRed
{
	color:white;
	background-color:#8B0000 !important;
}

.BackgroundRed td, .BackgroundRed th
{
	color:white;
	background-color:#8B0000 !important;
}

.FLexMax {
			width:100%;
	}
#SpotUsage {
			display:flex;
			justify-content: center;
		align-items: center;
		flex-direction: column;
		flex-wrap:wrap;
	}
#SpotUsage Table {
			margin:auto;
	}	

#SpotUsage td {
			font-size:22px;
	}





.dashboardIcons{
			min-height:120px;
	
}
	
	.DE2Spots  {
			border-spacing: 10px !important;
	}
	

	.DE2SpotTable  {
			border-spacing: 10px !important;
			background-image: url('/images/BoatMapDE2.png?v=3');
			background-repeat: no-repeat;
			background-position: center;
			background-size:675px;				
	}
	
	
	.DE2Spots-td {
				height:30px;
				width:30px;							
				margin:0px;
				text-align: center;
				color:white;
	}
	
		.DE3Spots  {
			border-spacing: 10px !important;
	}
	

	.DE3SpotTable  {
			border-spacing: 10px !important;
			background-image: url('/images/BoatMapDE36Hour.png');
			background-repeat: no-repeat;
			background-position: center;
			background-size:650px;				
	}
	
	
	.DE3Spots-td {
				height:30px;
				width:30px;							
				margin:0px;
				text-align: center;
				color:white;
	}
	
	.SpotKey
	{
				min-height:25px !important;
				min-width:25px !important;
		
	}
	.spotsOpen
	{
					background-color: blue !important;
					cursor: pointer;
					z-index: 9999;
		
	}
	
	.spotsTaken
	{
					background-color: Red !important;
		
	}
	
		.spotsHold
	{
					background-color: Yellow !important;
					color:black;
		
	}
	
	.spotsSelected
	{
					background-color: Green !important;
					cursor: pointer;
	}
	





buttonold {
			background: #0078ae url(https://ajax.googleapis.com/ajax/libs/jqueryui/1.10.4/themes/start/images/ui-bg_glass_45_0078ae_1x400.png) 50% 50% repeat-x !important;
			padding:5px 7px 5px 7px !important;						
			color:white;
			font-family: 'PT Sans Narrow' !important;
			border-radius: 10px !important;
}

button {
						background: #32beff  !important;
			padding:5px 7px 5px 7px !important;						
			color:white;
			font-family: 'PT Sans Narrow' !important;
			border-radius: 10px !important;
}

button :hover {
			color:#e20000 !important;
}


.ReportsNone {
				color:#e10f0f;
				padding-left:200px;
				
}

.Money {
		text-align: right !important;
		min-width:100px;
}

.FormLabel {
	 display:block;
	 font-weight: 900;
}

.PricingTable {
	max-width:900px; 
	background-color: #66ccff;
	margin:0px auto 0px auto; 
	
}
.PricingTableBookOnline {
		margin:auto !important;
		text-align:center;
	
}
.PricingTableLabel {
		max-width:200px !important;
		
		text-align: right !important;
		padding:10px;
}

.PricingTableMoney {
	text-align: right !important;
	max-width:70px;
	width:70px;
	padding:10px;
	
}

.registration .optional {
	display:none;

}

.OnlineAlert {
		color:white;
		background-color:#2c8700;
		font-weight: 900;
}

.PrePayAlert {
		background-color:#0b04dd;
		color:white;
		font-weight: 900;
		
}

.Tablenoboarders {
	border:0px;
}

.Tablenoboarders td {
	border:0px !important;
	
}
.BookOnline {
			color:  #ba0000;
			cursor: pointer;
			font-weight:900;
			font-size:25px;
			max-width:100px;
			margin:auto;
}

.BurstWrapper {
				display:flex;
				flex-direction: : row;
				flex-wrap: nowrap;
		
}

.StarBurst a{
	font-size:2rem !important;
	line-height: 1.15 !important;
	transform: translateY(-6px);
	}

.StartBurstHour
{
	font-size:1.6rem !important;
	line-height: 1.5rem !important;
}
.StarBurst {
		  text-align: center;
		  color:  #ba0000;
			background-image: url('/images/OrangeStarBurst.png');
			background-repeat: no-repeat;
			background-position: center;
			background-size: 225px 225px;
			cursor: pointer;
			font-weight:900;
			font-size:2rem ;
			max-width:225px;
			min-width:225px !important;
			min-height:225px !important;
			width: 225px;
			height: 225px;
			padding: 0;
			margin:auto !important;
			display: flex;
			align-items: center;
			justify-content: center;
			box-sizing: border-box;
}

.updates h1 {
		font-size: 22pt; 
		text-align: center;
		color: #993300 !important;
}

.updates h2 {
		font-size: 20pt; 
		text-align: center;
		color: #993300 !important;
}

.updates h3 {
		font-size: 18pt; 
		text-align: center;
		color: #993300 !important;
}

.updates {
	font-size: 17pt; 
	color: #993300 !important;
}

.updates li {
	font-size: 17pt; 
	color: #993300 !important;
}

.art-footer .FooterMenu
{
		margin: 0 auto 0 auto !important;
		width:100%;
}


.art-footer ul li 
{
		text-align: center;
		display:inline; 
		padding: 0 15px;
		margin: 10px !important; 
		list-style: none;
		 	
	} 


.popover {
		color: red !important;
		font-family: 'PT Sans Narrow' !important;	
		font-size:10px;
		padding-left:20px !important;
}

.profile-edit .popover {
			display:none !important;
	
}

span
{
			font-family: 'PT Sans Narrow' !important;	
}


.SmallTable th {
			font-size:10px;
	   
}

.button {
			background-color: blue !important;
			color:white;
			padding:8px;
			border-radius: 5px;
			cursor:pointer;
			font-size:10px;
}

.strikeout { 
text-decoration: line-through;
color:red;
}

.visform input, .visform select, .visform textarea{
	background-color: #c4dcf8 !important;
	border-color: black;
}
input.art-button, button.art-button {
	background-color: blue !important;
}


input.art-button.hover{
	background-color: green !important;
}
.Under6Warning {
		color:red;
		font-weight: 900;	
}


.HideEmpty {
		display:NONE;			
	
}


#tabs {
					min-width: 600px;
					height:450px;
	
	 
}



#Accounting {
			overflow-y: scroll;
			height:360px;
	
}


#Phone,#PhoneEdit,#PhoneSearch {
  -moz-appearance:textfield;
	-webkit-appearance: none;
    margin: 0;
}

#PhoneResults {
	display:none;
	position:absolute;
	z-index:9999999;
	background-color:  #ace6ff;
	border: 1px solid #0452fb;	
	cursor: pointer;
	opacity: 1;
	padding:11px;
	margin-left:15px;
	border-radius: 10px;
}

#PhoneResults .item:hover
{
			background-color: #fffaa2;
}

#SearchTable {
		width:90%;
}

#SearchTableBody tr:hover
{
			background-color: #fffaa2;
}



#HiddenAdminMenu {
		padding-left:20px;
		color:white;
}

.CreditCardTotals li
{
		display:table-row;
		width:250px;
		
	
}

.CreditCardTotals label
{
		display:table-cell;
	  min-width:125px;
}

.CreditCardTotals input
{
		display:table-cell;		
		width:75px;
		margin:6px;
		
	
}

input, select, textarea {
			text-shadow: none !important;
	
}


.customTwoEahhealsheadder{
	position: absolute;
	margin-top: 10px;
}


.Fishcooked{
	width: 100%;
	background-image: url("/images/CookingFishTop-400px.png");
    background-position: right 20px top -2px;
	background-repeat: no-repeat;
	margin-right: -2px;
	
}
.BlurbBoxIcon {
	padding-left: 35%;
	position: absolute;
	bottom: 0;
  }
 /* 		.NuticalButtBT {
	  		margin-top: auto;
	  		height: 100%;
    bottom: 0;
    position: absolute;
    right: 0;
         }
         
         */

.AdvancePrices
{
			margin-left:10px;
	
}

.customSideLOGO {
    background: rgba(0, 26, 79, 0.38) none repeat scroll 0 0;
    border-radius: 20px;
    box-shadow: 8px 8px 8px rgba(0, 26, 79, 0.38);
    font-weight: bold;
    text-shadow: 5px 5px 4px rgba(0, 0, 0, 0.94);
    padding: 10px;
  }

.customAddressSide {
    background: rgba(0, 26, 79, 0.38) none repeat scroll 0 0;
    border-radius: 20px;
    box-shadow: 8px 8px 8px rgba(0, 26, 79, 0.38);
    font-weight: bold;
    text-shadow: 5px 5px 4px rgba(0, 0, 0, 0.94);
    padding: 10px;
  }
  
  .clearfixSiteNavagation{
    background: rgba(0, 26, 79, 0.38) none repeat scroll 0 0;
    border-radius: 20px;
    box-shadow: 8px 8px 8px rgba(0, 26, 79, 0.38);
    font-weight: bold;
    text-shadow: 5px 5px 4px rgba(0, 0, 0, 0.94);
    padding: 10px;
  }

  
#layerslider_1 {
				
				margin-bottom:35px !important;
				
}
.customgrouper_caught-BT{
bottom: 0;
position: fixed;
width: 10%;
}

.Hightlight {
			background-color: yellow !important;
	
}


#PricingDiv *{
	font-family: 'PT Sans Narrow' !important;
	
}


#PricingDiv2  {
	float:right;
	width:300px;
	height:300px;
	background-color:#d9e8ff;
	
}

.inputs {		
		
		
		
}

.FillerColumn
{
				border:0px !important;
				background-color: none !important;
				padding:0px;
	
	
}
	

.DashboardIcons li
 {
	 		list-style: none;
	 		float:left;
	 
	 
 }

.DashboardIcons span
{
				text-align: center;
				vertical-align: middle;
	
}
.TableCssSmall {
		border-collapse:collapse;
		margin:3px;
		}


.TableCssSmall td {
		border:solid black 1px ;
		font-size:12px;
		padding:2px;

}

.TableCssSmall th {
		border:solid black 1px;
		font-size:12px;
		padding:2px;
}



.TableCss {
		border-collapse:collapse;
		margin:10px;
		}


.TableCss td {
		border:solid black 1px ;
		font-size:16px;
		padding:8px;

}

.TableCss th {
		border:solid black 1px;
		font-size:18px;
		padding:7px;
}

.error {
		background-color: Red;
}

.errorClass {
					color:red;
										
	
}

.errorBackGroundClass {
					background-color: red;
										
	
}

.PopUpDiv {
	z-index: 999999 !important;
	
}

.DatabasePlaceHolder {
		cursor: pointer;
	
	
}


.ui-datepicker-trigger
{
		position: absolute;
		
	
}

.CustomUl li {
		list-style-type: circle;
		list-style:circle;
		padding-left:10px;
	
}

buttonchangthis{
    background-color: #dbd3e6 !important;
  
}

.SmallButton {
	 background-color: #dbd3e6;
	 border-radius:7px;
  -moz-border-radius: 7px;
  -webkit-border-radius: 7px;
  border: 2px solid  rgba(103, 170, 246, 0.3);
  padding: 2px;
	font-size:13px !important;
	cursor: pointer;
}
.SmallButton:hover {opacity: 0.6; }

.clickbutton {
			cursor: pointer;
			padding:5px;
			
}

#WaitDiv {
			display:none;
			position: fixed;
			height:100%;
			width:100%;
			text-align:center;
			vertical-align: middle;		
			z-index:9999;

}

#WaitImage {
			position: absolute;
			top:40%;
			height:75px;
		
}


.cursor {
	cursor: pointer;
	
	
}



ul.menuflat li
{
display: inline;
padding: 10px;
}

/*---crew box---**/

.Crew-box1{
	float: left;
	width: 45%;
	padding-left: 5px;
	padding-right: 5px;
}
.Crew-box2{
	float: left;
	width: 45%;
	padding-left: 5px;
	padding-right: 5px;
}

.art-postcontent ul,
.art-post ul,
.art-textblock ul {
	list-style: none;
	padding-left: 0;
}
.art-postcontent ul > li,
.art-post ul > li,
.art-textblock ul > li {
	position: relative;
	list-style: none;
	padding-left: 1.75rem;
}
.art-postcontent ul > li::before, .art-post ul > li::before, .art-textblock ul > li::before {
	content: "" !important;
	position: absolute;
	left: 0;
	top: 0.45em;
	width: 15px;
	height: 15px;
	background: url("/Modules/css/images/AnchorBullet-15.png") center / contain no-repeat !important;
}

.customADACERP{
margin-left: -13px;
margin-right: -22px;

}
.customGrayPlanes{
margin-left: -33px;
margin-right: -22px;
}
.customFooterGray{
margin-left: -53px;
margin-right: -10px;
}
.customFooterBar{
margin-top: -16px;
}
.customImageRotator{
margin-right: -22px;
}



ul.menuflat li
{
display: inline;
font-size: 19px;
padding: 10px;
}
.art-nostyleMembersMenu a:link{
color:white;
 }
 .art-nostyleMembersMenu a:active{
color:white;
 }
 .art-nostyleMembersMenu a:visited{
color:white;
 }
 .art-nostyleMembersMenu a:hover{
color:#d5c7e1;
 }
 
.art-nostyleMembersMenu{
background-color: #7d4baa;
height: 100%;
text-align: center;
padding-top: 8px;
padding-bottom: 12px;
margin-bottom: -23px;
 }
 
 
 
 
 .HeaderStyle {
		font-weight:900;
	
}



.colorRows tr:nth-child(even) {background: #dce0e8 !important}
.colorRows tr:nth-child(odd) {background: #b8d2fc !important}

.colorDivRows .DashboardIconsBlock:nth-child(1) {background: #dce0e8 !important}
.colorDivRows .DashboardIconsBlock:nth-child(4) {background: #dce0e8 !important}
.colorDivRows .DashboardIconsBlock:nth-child(5) {background: #dce0e8 !important}
.colorDivRows .DashboardIconsBlock:nth-child(8) {background: #dce0e8 !important}
.colorDivRows .DashboardIconsBlock:nth-child(9) {background: #dce0e8 !important}
.colorDivRows .DashboardIconsBlock:nth-child(12) {background: #dce0e8 !important}
.colorDivRows .DashboardIconsBlock:nth-child(15) {background: #dce0e8 !important}



.colorDivRows .DashboardIconsBlock:nth-child(2) {background: #b8d2fc !important}
.colorDivRows .DashboardIconsBlock:nth-child(3) {background: #b8d2fc !important}
.colorDivRows .DashboardIconsBlock:nth-child(6) {background: #b8d2fc !important}
.colorDivRows .DashboardIconsBlock:nth-child(7) {background: #b8d2fc !important}
.colorDivRows .DashboardIconsBlock:nth-child(10) {background: #b8d2fc !important}
.colorDivRows .DashboardIconsBlock:nth-child(11) {background: #b8d2fc !important}
.colorDivRows .DashboardIconsBlock:nth-child(14) {background: #b8d2fc !important}

#BoatTitle {
		font-size:18px;
		margin:3px,3px,3px,3px;
		}

#Date {
		font-size:15px;	
		margin:3px,3px,3px,3px;
}

#TOB {
			font-size:18px;
			margin:3px,3px,3px,3px;
	
}
.warnings {
	font-size:13px;
}

/*
				New form layout with Grid and flex
	
*/
/*
				Check-in layout (portal + legacy)
*/
.CheckInWrapper
{
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
	padding: 0.15rem 0.25rem 0.4rem;
}

.CheckInToolbar
{
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 0.5rem 1rem;
	flex-wrap: nowrap;
	width: 100%;
}

.CheckInLeft
{
	flex: 1 1 auto;
	min-width: 0;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 0.35rem;
	text-align: left;
}

.CheckInHeader
{
	width: 100%;
	min-height: 0;
	padding: 0;
	text-align: left;
	border: 0;
}

.CheckInHeader h3
{
	margin: 0;
	color: #254D6A;
	font-family: 'PT Sans Narrow', sans-serif;
	font-weight: 700;
	font-size: 1.35rem;
	line-height: 1.15;
}

.CheckInLegend
{
	flex: 0 0 auto;
	max-width: none;
	margin-left: auto;
	align-self: flex-start;
	border: 1px solid rgba(37, 77, 106, 0.35);
	border-radius: 8px;
	padding: 0.35rem 0.6rem 0.45rem;
	background: #f4f8fb;
	box-sizing: border-box;
}

.CheckInLegendTitle
{
	font-weight: 900;
	font-size: 0.85rem;
	margin: 0 0 0.3rem;
	color: #254D6A;
	text-align: left;
	font-family: 'PT Sans Narrow', sans-serif;
}

.CheckInLegend ul
{
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 0.3rem;
}

.CheckInLegend li
{
	padding: 0;
	width: auto;
	font-size: 0.8rem;
	list-style: none;
}

.CheckInLegendSwatch
{
	display: inline-block;
	min-width: 9rem;
	padding: 0.18rem 0.5rem;
	border-radius: 4px;
	text-align: center;
	box-sizing: border-box;
}

.CheckInSort
{
	flex: 0 0 auto;
	width: 100%;
	min-width: 0;
	padding: 0;
	text-align: center;
	border: 0;
}

.CheckInSortWrapper
{
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	gap: 0.25rem 0.7rem;
	width: 100%;
}

.CheckInFilter
{
	display: inline-flex;
	align-items: center;
	gap: 0.28rem;
	padding: 0.1rem 0.2rem;
	font-size: 0.92rem;
	white-space: nowrap;
	cursor: pointer;
}

.CheckInFilter input
{
	margin: 0;
}

.CheckInSearchTable
{
	width: 100%;
	max-width: 100%;
	overflow-x: auto;
	padding: 0;
	border: 0;
	text-align: center;
	box-sizing: border-box;
}

.CheckInSearchTable table
{
	width: 100%;
	margin: 0 auto;
}

.CheckInSearchTable th
{
	background: #254D6A;
	color: #fff;
	font-weight: 700;
	padding: 0.4rem 0.35rem;
	vertical-align: middle;
}

.CheckInSearchTable td
{
	padding: 0.3rem 0.35rem;
	vertical-align: middle;
}

/* Keep alternating row colors (colorRows) — do not override .OnlineAlert / .PrePayAlert */


.CustomForm .Wraplabel
							{
									display:block;
									margin:0 0 3px 0;
									
									font-weight:900;
							}

.CustomForm li {
		margin-bottom:7px;
}

.CustomForm span {
		padding:15px;
}

 .DisableSpinner { 
	 -moz-appearance: textfield !important;
  appearance: textfield !important;
  -webkit-appearance: none !important; 
  margin: 0; 
}

.AdvanceSaleWrapper 
{
				display:grid;
				grid-template-columns: 300px minmax(560px, 720px);
				grid-auto-rows: max-content;
				grid-gap: 0;
				width:1040px;
				height:auto;
				min-height: 0;
}

.AdvanceSaleWrapper  ul {
		margin:5px 5px 5px 15px;
	}

.AdvanceSaleLeft 
{
				grid-column: 1 / 2;
				grid-row: 1 / 2;
				width:280px;
				border: solid 1px rgba(0, 0, 0, 0.56);
				padding:4px 10px 8px 10px;
				margin-top: 0;
				border-collapse: collapse;
				box-sizing: border-box;
				overflow-wrap: break-word;
}

.AdvanceSaleLeft h3 {
				display: none;
}

.AdvanceSaleCol1Row2
{
				grid-column: 1 / 2;
				grid-row: 2 / 3;
				width:280px;
				border: solid 1px rgba(0, 0, 0, 0.56);
				padding:10px;
				border-collapse: collapse;
				box-sizing: border-box;
}

.AdvanceSaleRight 
{
				grid-column: 2 / 3;
				grid-row: 1 / 3;
				width:700px;
				max-width: 100%;
				border: solid 1px rgba(0, 0, 0, 0.56);
				padding:10px;
				border-collapse: collapse;
				box-sizing: border-box;
				overflow-x: auto;
}
.AdvanceSaleBottomRow
{
					grid-column:span 2;
					grid-row: 3/3;
					border-right: solid 1px rgba(0, 0, 0, 0.56);
					border-left: solid 1px rgba(0, 0, 0, 0.56);
					border-bottom: solid 1px rgba(0, 0, 0, 0.56);
					border-collapse: collapse;
					width:1040px;
					
}

/*
			End of New form Layout
	
	
*/

		.customerEditForm label {
		  font-family: 'PT Sans Narrow';
			margin: 0 1%;
			padding: 0;
			border: 0;
			float: left;
			display: table;
			width: 2%;
			font-weight:900;
			font-size:13px;
		}

		.customerEditForm span.wrapper {
			margin: 0;
			padding: 0;
			display: table-cell;
			width: 1%; /* firefox */
		}


		/*
		---------------------------
		width
		--------------------------- */

		.customerEditForm label.w100 {
			width: 98%;
			display: block;
		}
		
		.customerEditForm label.w80 {
			width: 80%;
			display: block;
		}
		
		.customerEditForm label.w75 {
			width: 73%;
			display: block;
		}
		
			.customerEditForm label.w60 {
			width: 58%;
			display: block;
		}
		
		.customerEditForm label.w50 {
			width: 48%;
			display: block;
		}
		
		.customerEditForm label.w30 {
			width: 28%;
			display: block;
		}
		
		.customerEditForm label.w25 {
			width: 23%;
			display: block;
		}

		.customerEditForm label.w15 {
			width: 13%;
			display: block;
		}

.customerEditForm label.px200 {
			width: 150px;
			overflow-x: none;
			display: block;
		}
		
		.customerEditForm label.px175 {
			width: 150px;
			overflow-x: none;
			display: block;
		}
		.customerEditForm label.px150 {
			width: 150px;
			overflow-x: none;
			display: block;
		}

			.customerEditForm label.px125 {
			width: 125px;
			overflow-x: none;
			display: block;
		}

			.customerEditForm label.px100 {
			width: 100px;
			overflow-x: none;
			display: block;
		}
		
		.customerEditForm label.px75 {
			width: 150px;
			overflow-x: none;
			display: block;
		}



		/*
		---------------------------
		position
		--------------------------- */
		.customerEditForm label.p15 {
			margin-left: 16%;
		}

		.customerEditForm label.p25 {
			margin-left: 26%;
		}
		
		.customerEditForm label.p30 {
			margin-left: 32%;
		}
		
		.customerEditForm label.p50 {
			margin-left: 51%;
		}
		.customerEditForm label.p75 {
			margin-left: 76%;
		}
		.customerEditForm label.p80 {
			margin-left: 80%;
		}

		/*
		---------------------------
		errors
		--------------------------- */

		.customerEditForm label.error input.field,
		.customerEditForm label.error select.field,
		.customerEditForm label.error textarea.field {
			border-color: #dd1100;
		}

		.customerEditForm label.error span.title {
			color: #dd1100;
		}


		/*
		---------------------------
		title and examples 
		--------------------------- */

		.customerEditForm label span.title {
			font-style: italic;	
			font-size:16px;
			
		
		}
		.customerEditForm label span.example {
			color: #999;
			font-style: italic;	
		}


		.customerEditForm .boxFormat
		{
				width: 100%;
				display: block;
				border: 1px solid #d0d6da;
				border-left: 3px solid #809db5;
				background: #e9edf0;
				padding: 4px;
				font-family: 'PT Sans Narrow'; font-size: 1em;
				box-sizing: border-box;
				-moz-box-sizing: border-box; /* gecko */
				-webkit-box-sizing: border-box; /* khtml/webkit */
				-ms-box-sizing: border-box; /* IE */
	}


		/*
		---------------------------
		input/select fields 
		--------------------------- */
		
		
		.customerEditForm label input.field,
		.customerEditForm label select.field,
		.customerEditForm label textarea.field {
			
			display: block;
			border: 1px solid #d0d6da;
			border-left: 3px solid #809db5;
			background: #e9edf0;
			padding: 4px;
			font-family: 'PT Sans Narrow'; font-size: 1em;
			box-sizing: border-box;
			-moz-box-sizing: border-box; /* gecko */
			-webkit-box-sizing: border-box; /* khtml/webkit */
			-ms-box-sizing: border-box; /* IE */
			
		}

		.customerEditForm label select.field {
			padding: 4px 1px 1px 1px; /* have to try out */
		}

		.customerEditForm label input.field:focus,
		.customerEditForm label select.field:focus,
		.customerEditForm label textarea.field:focus {
			border: 1px solid #d0d6da;
			border-left: 3px solid #57ab44;
			background: #e0eadd;
		}

		/* Pflichtfelder
			mandatory fields */
		.customerEditForm label.mandatory input.field,
		.customerEditForm label.mandatory select.field,
		.customerEditForm label.mandatory textarea.field {
			border: 1px solid #809db5;
			border-left: 8px solid #809db5;
		}

		/* Kalenderfelder
			calendar fields */
		.customerEditForm label.calendar input.field {
			padding-right: 25px;
		}


		/*
		---------------------------
		checkboxes and radios
		--------------------------- */

		.customerEditForm input.select {
			display: block;
			float: left;
			margin: 0;
		}


		/*
		---------------------------
		submit button
		--------------------------- */

		.customerEditForm input.submit {
			width: 100%;
			background: #809db5;
			color: #fff;
			padding: 2px 0;
			font-size: 1em;
		}

		.customerEditForm input.submit:hover,
		.customerEditForm input.submit:focus {
			background: #57ab44;
			/* cursor: pointer;  sorry, can't use that one in front of Opera */
		}


		/*
		---------------------------
		calender icon
		--------------------------- */
		
		.customerEditForm a.calendar {
			float: right;
			position: relative; top: 3px; left: -20px;
			z-index: 1000;
		}
		.customerEditForm a.calendar img {
			border: 0;
			position: absolute; top: 0; left: 0;
			z-index: 1001;
		}

		
		/*
		---------------------------
		additional styles for
		input/select fields
		--------------------------- */

		.customerEditForm label.inputselect span.title {
			margin: 0 0 2px 0;
			display: table; /* act as inline-block */
		}

		.customerEditForm label span.title:hover,
		.customerEditForm label span.title:focus {
			color: #57ab44;
			cursor: pointer;
		}

		.customerEditForm label br {
			margin: 0 0 2px 0;
		}


		/*
		---------------------------
		additional styles for
		checkboxes and radios
		--------------------------- */

		.customerEditForm label.wauto {
			width: auto;
			margin-right: 15px;
		}
		.customerEditForm label.radiocheck {
			margin-bottom: 10px;
		}
		.customerEditForm label.radiocheck span.wrapper {
			padding-right: 0;
		}
		.customerEditForm label.wauto span.wrapper {
			display: inline;
		}
		.customerEditForm label.radiocheck span.title {
			display: block;
			margin: 0 0 0 20px;
			padding: 0;
		}

/*
		---------------------------
		clearing elements
		--------------------------- */

		.clear {
			clear: both;
			display: block;
			padding: 0 0 10px 0;
		}

		.clearMin {
			clear: both;
			display: block;
			padding: 0 0 1px 0;
		}
		
		
		.ic-event-register {
		font-size: x-large;
		}
		
		.customDeagle2{
			position: absolute;
			top: 75px;
			left: 5px;
			z-index: 0;
			
		}
		.customDoubleEagleTextHeadder{
			position: absolute;
			text-shadow:4px 2px 2px rgba(0, 0, 0, 0.6);
			color:rgba(243, 245, 255, 0.72);
					/* Safari */
					-webkit-transform: rotate(-2.25deg);
					
					/* Firefox */
					-moz-transform: rotate(-2.25deg);
					
					/* IE */
					-ms-transform: rotate(-2.25deg);
					
					/* Opera */
					-o-transform: rotate(-2.25deg);
					
					/* Internet Explorer */
					filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=0);
			top: -100px;
			 width: 68%;
            margin: auto;
			left: 5px;
			z-index: 2;
			
		}
		.customDriftwoodSign{
			position: absolute;
			top: -115px;
			 width: 68%;
            margin: auto;
			left: 5px;
			z-index: 1;
			
		}
		.customDriftwoodSignTEXT {
			display: none;
		}

    	.customDeagleIII{
			position: absolute;
			width: 100%;
			top: 85px;
			z-index: 0;
			
		}
		/*  SECTIONS  */
.section {
	clear: both;
	padding: 0px;
	margin: 0px;
}

/*  COLUMN SETUP  */
.col {
	display: block;
	float:left;
	margin: 1% 0 1% 1.6%;
}
.col:first-child { margin-left: 0; }



/*  GROUPING  */
.group:before,
.group:after { content:""; display:table; }
.group:after { clear:both;}
.group { zoom:1; /* For IE 6/7 */ }

/*  GRID OF THREE  */
.span_3_of_3 { width: 100%; }
.span_2_of_3 { width: 65.13%; }
.span_1_of_3 { 
	width: 31.26%; 
    min-height: 260px;
    max-height: 260px;
	padding-top: 8px;
	padding-left: 2px;
	padding-right: 2px;
	padding-top: 5px;
	border-radius: 15px;
	border: 1px solid #6074af;
	background-color: white;
	box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.82);
}

.frontPageBurbcol{
			position: relative;
}

/* Keep homepage blurb boxes at live-site scale (16px), even when template body is larger */
#frontPageBurb,
#frontPageBurb .frontPageBurbcol,
#frontPageBurb .span_1_of_3 {
	font-size: 16px;
	line-height: 1.35;
}

#frontPageBurb .frontPageBurbcol p {
	font-size: 16px;
	line-height: 1.35;
}


	
		/* @media only screen and (min-width:1496px)
{
.customDeagle2 { position: absolute; top: 95px; width: 27%}	*/
		
	
@media only screen and (min-width:996px)
{
		.art-sidebar1 {margin-top:200px !important; display: table-column;}
	    .BlurbBoxIcon {padding-left: 35%; position: absolute; bottom: 0;}
	
}	
	
	
	/*  GO FULL WIDTH BELOW 990 PIXELS */
@media only screen and (max-width: 995px) {
	.customDriftwoodSignTEXT { position: absolute;top: -110px; display: block; margin-left: auto; margin-right: auto; width: 90%;}
	.customDriftwoodSign{display: none;}
	.customDoubleEagleTextHeadder{display: none;}
	.customSidebareSpacer{display: none;}
    .BlurbBoxIcon {padding-left: 40%; position: absolute; bottom: 0;}

}


/*  GO FULL WIDTH BELOW 480 PIXELS */
@media only screen and (max-width: 480px) {
	.col {  margin: 1% 0 1% 0%; }
	.span_3_of_3, .span_2_of_3, .span_1_of_3 { width: 100%; }
	.customDoubleEagleTextHeadder { display: none;}
	.customDeagle2 { display: none;}
	.customTwoEahhealsheadder { display: none;}
	.customDriftwoodSignTEXT { position: absolute;top: -110px; display: block;}
	.customDriftwoodSign{display: none;}
	.customDoubleEagleTextHeadder{display: none;}
	.Crew-box1{float: none; width: auto;}
	.Crew-box2{float: none; width: auto;}	
	.BlurbBoxIcon {padding-left: 40%; position: absolute; bottom: 0;}



}

@media only screen and (max-width: 1300px) {
	
		.customgrouper_caught-BT{display: none;}
	}


.default-responsive .art-header * {
    display: none;
    position: relative;
    text-align: center;
    transform: none !important;
}


.art-post {
    background: #ffffff none repeat scroll 0 0;
    border-radius: 10px;
    box-shadow: 4px 4px 2px 1px rgba(0, 0, 0, 0.45);
    padding: 3px;
}


.widget {
  -webkit-box-shadow: 4px 4px 2px 1px rgba(0, 0, 0, 0.425);
  -moz-box-shadow: 4px 4px 2px 1px rgba(0, 0, 0, 0.425);
  box-shadow: 4px 4px 2px 1px rgba(0, 0, 0, 0.425);
}

/* === Book / Reserve Daily layout (portal) === */
.BookingWrapper
{
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
	padding: 0.15rem 0.25rem 0.4rem;
}

.BookingToolbar
{
	display: flex;
	align-items: flex-start;
	justify-content: flex-start;
	gap: 0.5rem 1rem;
	flex-wrap: nowrap;
	width: 100%;
}

.BookingLeft
{
	flex: 1 1 auto;
	min-width: 0;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 0.35rem;
	text-align: left;
}

.BookingHeader
{
	width: 100%;
	padding: 0;
	text-align: left;
}

.BookingHeader h3
{
	margin: 0;
	color: #254D6A;
	font-family: 'PT Sans Narrow', sans-serif;
	font-weight: 700;
	font-size: 1.35rem;
	line-height: 1.15;
}

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

.BookingSearchFields
{
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: center;
	align-items: flex-end;
	gap: 0.45rem 0.85rem;
	width: 100%;
}

.BookingField
{
	display: inline-flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 0.15rem;
	margin: 0;
	font-size: 0.95rem;
}

.BookingField .title
{
	font-weight: 700;
	color: #254D6A;
	font-family: 'PT Sans Narrow', sans-serif;
	font-size: 0.9rem;
}

.BookingField select,
.BookingField input.field
{
	min-width: 8.5rem;
	padding: 0.25rem 0.4rem;
	border: 1px solid rgba(37, 77, 106, 0.4);
	border-radius: 4px;
	font-size: 0.95rem;
}

.BookingSearchBtn
{
	padding: 0.35rem 0.85rem;
	border: 1px solid #254D6A;
	border-radius: 4px;
	background: #254D6A;
	color: #fff;
	font-weight: 700;
	cursor: pointer;
	font-family: 'PT Sans Narrow', sans-serif;
}

.BookingSearchBtn:hover
{
	background: #1c3d54;
}

.BookingWeekendFilter
{
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	min-height: 1.9rem;
	margin: 0;
	padding: 0.1rem 0.15rem;
	font-size: 0.95rem;
	font-weight: 700;
	color: #254D6A;
	font-family: 'PT Sans Narrow', sans-serif;
	white-space: nowrap;
	cursor: pointer;
	user-select: none;
}

.BookingWeekendFilter input
{
	margin: 0;
	cursor: pointer;
}



.BookingField--radio .BookingRadioGroup
{
	display: inline-flex;
	align-items: center;
	gap: 0.75rem;
	min-height: 1.9rem;
	font-size: 0.95rem;
	color: #254D6A;
}

.BookingField--radio .BookingRadioGroup label
{
	display: inline-flex;
	align-items: center;
	gap: 0.25rem;
	font-weight: 600;
	cursor: pointer;
}

.ui-dialog.CharterListDialog #SalesReportDetail,
.ui-dialog.PortalListDialog #SalesReportDetail
{
	flex: 1 1 auto;
	min-height: 0;
	overflow: auto;
	-webkit-overflow-scrolling: touch;
}

.BookingModifyNote
{
	margin-top: 0.35rem;
	color: #254D6A;
	font-size: 0.95rem;
	font-weight: 700;
	text-align: left;
}

.BookingOnlineOutstanding
{
	flex: 0 1 auto;
	max-height: 28%;
	overflow: auto;
	margin-top: 0.5rem;
	width: 100%;
}

.ui-dialog.CharterListDialog .BookingOnlineOutstanding,
.ui-dialog.PortalListDialog .BookingOnlineOutstanding
{
	flex: 0 1 auto;
	max-height: 28%;
	overflow: auto;
}




.CharterUnavailableWrap
{
	width: 100%;
	text-align: center;
	margin: 0.75rem 0 0.25rem;
}

.CharterUnavailableWrap .CharterUnavailableTable,
.CharterUnavailableTable
{
	width: auto;
	max-width: 100%;
	margin-left: auto;
	margin-right: auto;
}

.BookingSearchResults,
.BookingSearchTable
{
	width: 100%;
	max-width: 100%;
	overflow-x: auto;
	box-sizing: border-box;
	text-align: center;
}

.BookingSearchTable #SearchTable,
.BookingWrapper #SearchTable
{
	width: auto;
	max-width: 100%;
	margin: 0 auto;
	table-layout: auto;
}

.BookingSearchTable th,
.BookingWrapper #SearchTable th
{
	background: #254D6A;
	color: #fff;
	font-weight: 700;
	padding: 0.45rem 0.75rem;
	vertical-align: middle;
	border-color: #1c3d54;
	white-space: nowrap;
}

.BookingSearchTable td,
.BookingWrapper #SearchTable td
{
	padding: 0.35rem 0.75rem;
	vertical-align: middle;
	white-space: nowrap;
}

.BookingDaySeparator td
{
	border: 0 !important;
	background-color: #5479f5 !important;
	padding: 0 !important;
	height: 4px;
}

.BookingDaySeparator--admin td
{
	padding: 5px !important;
	height: auto;
}

.BookingDayLabel
{
	color: #fff;
	font-weight: 900;
}


.BookingFormRow
{
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	align-items: flex-end;
	gap: 0.55rem 1rem;
	width: 100%;
	margin: 0.25rem 0 0.4rem;
	clear: both;
}

.BookingFormRow--childgroup
{
	display: inline-flex;
	flex-direction: row;
	flex-wrap: wrap;
	align-items: flex-end;
	gap: 0.55rem 1rem;
}

.BookingInlineField
{
	display: inline-flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 0.15rem;
	margin: 0 !important;
	float: none !important;
	width: auto !important;
	font-weight: 900;
	font-size: 13px;
}

.BookingInlineField .title
{
	font-style: italic;
	font-size: 16px;
	font-family: 'PT Sans Narrow', sans-serif;
	line-height: 1.1;
	white-space: nowrap;
}

.BookingFormRow--tickets .BookingInlineField .field
{
	width: 3.25rem;
	min-width: 3.25rem;
	display: block;
}

.BookingFormRow--names
{
	flex-wrap: nowrap;
	width: max-content;
	max-width: 100%;
}

.BookingFormRow--names .BookingInlineField .field
{
	width: 9.5rem;
	min-width: 9.5rem;
	display: block;
}

.BookingFormRow .BookingInlineField input.field
{
	border: 1px solid #d0d6da;
	border-left: 3px solid #809db5;
	background: #fff;
	padding: 4px;
	font-family: 'PT Sans Narrow', sans-serif;
	font-size: 1em;
	box-sizing: border-box;
}

.BookingFormRow .BookingInlineField input.field:focus
{
	border: 1px solid #d0d6da;
	border-left: 3px solid #57ab44;
	background: #fff;
}


/* Center select-trip customer/pricing block in booking wrapper */
.BookingWrapper.customerEditForm,
#customerEditForm.BookingWrapper
{
	align-items: center;
}

.BookingWrapper.customerEditForm > .BookingToolbar,
.BookingWrapper.customerEditForm > .BookingSearchResults,
#customerEditForm.BookingWrapper > .BookingToolbar,
#customerEditForm.BookingWrapper > .BookingSearchResults
{
	align-self: stretch;
	width: 100%;
}


.BookingAdditionTable
{
	display: none;
	grid-template-columns: minmax(24.5rem, max-content) auto;
	grid-template-areas: "customer pricing";
	align-items: start;
	justify-content: center;
	column-gap: 1rem;
	row-gap: 0.75rem;
	width: max-content;
	max-width: 100%;
	margin: 0.75rem auto 0;
	padding: 0;
	border: 0;
	background: transparent;
	box-sizing: border-box;
	align-self: center;
}

.BookingWrapper > .BookingAdditionTable,
#customerEditForm > .BookingAdditionTable,
.BookingSearchResults > .BookingAdditionTable
{
	margin-left: auto;
	margin-right: auto;
	align-self: center;
}

.BookingAdditionLeft
{
	grid-area: customer;
	width: 24.5rem;
	max-width: 100%;
	min-width: 0;
}

.BookingAdditionRight
{
	grid-area: pricing;
	width: auto;
	min-width: 14rem;
	max-width: 100%;
}

/* Left customer panel */
.BookingAdditionLeft #BookingAdditionInfo,
#BookingAdditionInfo
{
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
	background: #e8eef3;
	border: 1px solid rgba(37, 77, 106, 0.25);
	border-radius: 6px;
	padding: 0.75rem 0.9rem 1rem;
	text-align: left;
}

.BookingAdditionLeft .BookingFormRow,
#BookingAdditionInfo .BookingFormRow
{
	width: 100%;
	margin-left: 0;
	margin-right: 0;
	padding-left: 0;
	padding-right: 0;
	justify-content: flex-start;
	box-sizing: border-box;
}

.BookingAdditionLeft .BookingFormRow--names,
#BookingAdditionInfo .BookingFormRow--names
{
	flex-wrap: nowrap;
	width: 100%;
	gap: 0.75rem;
	box-sizing: border-box;
}

.BookingAdditionLeft .BookingFormRow--names .BookingInlineField,
#BookingAdditionInfo .BookingFormRow--names .BookingInlineField
{
	flex: 1 1 0;
	float: none !important;
	display: flex !important;
	flex-direction: column;
	align-items: stretch;
	width: auto !important;
	margin: 0 !important;
	padding: 0 !important;
}

.BookingAdditionLeft .BookingFormRow--names .BookingInlineField .field,
#BookingAdditionInfo .BookingFormRow--names .BookingInlineField .field
{
	width: 100% !important;
	min-width: 0 !important;
	background: #fff !important;
}

.BookingAdditionLeft .BookingFormRow--tickets,
#BookingAdditionInfo .BookingFormRow--tickets
{
	width: 100%;
	justify-content: flex-start;
}

.BookingAdditionLeft label.w50,
.BookingAdditionLeft label.w30,
.BookingAdditionLeft label.inputselect,
#BookingAdditionInfo label.w50,
#BookingAdditionInfo label.w30,
#BookingAdditionInfo label.inputselect
{
	float: none !important;
	display: block !important;
	width: 100% !important;
	max-width: 100%;
	margin: 0 0 0.35rem 0 !important;
	padding: 0 !important;
	box-sizing: border-box;
}

.BookingAdditionLeft label span.wrapper,
#BookingAdditionInfo label span.wrapper
{
	display: block;
	width: 100%;
	margin: 0;
	padding: 0;
}

.BookingAdditionLeft select,
.BookingAdditionLeft input.field,
.BookingAdditionLeft #Email,
.BookingAdditionLeft #Phone,
.BookingAdditionLeft #ReqularCustomers,
.BookingAdditionLeft textarea.field,
#BookingAdditionInfo select,
#BookingAdditionInfo input.field,
#BookingAdditionInfo #Email,
#BookingAdditionInfo #Phone,
#BookingAdditionInfo #ReqularCustomers
{
	width: 100% !important;
	max-width: 100%;
	box-sizing: border-box;
	background: #fff !important;
}

.BookingAdditionLeft select:focus,
.BookingAdditionLeft input.field:focus,
.BookingAdditionLeft #Email:focus,
.BookingAdditionLeft #Phone:focus,
.BookingAdditionLeft #ReqularCustomers:focus,
#BookingAdditionInfo select:focus,
#BookingAdditionInfo input.field:focus,
#BookingAdditionInfo #Email:focus,
#BookingAdditionInfo #Phone:focus,
#BookingAdditionInfo #ReqularCustomers:focus
{
	background: #fff !important;
}


.BookingRecordDisabled
{
	color: #c62828;
	font-weight: 700;
	font-size: 0.8rem;
	line-height: 1.35;
	margin: 0 0 0.4rem;
}

.BookingRecordDisabled button
{
	font-size: 0.75rem;
	padding: 0.1rem 0.45rem;
	margin-left: 0.25rem;
	line-height: 1.2;
	cursor: pointer;
}

#BookingAdditionInfo .BookingPhoneField #Phone,
.BookingAdditionLeft #Phone,
#BookingAdditionInfo #Phone
{
	width: 9.5rem !important;
	max-width: 9.5rem !important;
}

.BookingAdditionLeft #GuestFlag,
#BookingAdditionInfo #GuestFlag
{
	width: auto !important;
	background: transparent !important;
}

.BookingAdditionRight #PricingDiv,
#PricingDiv
{
	width: auto;
	min-width: 14rem;
	text-align: left;
}

.BookingAdditionRight #PricingDiv > table,
#PricingDiv > table.TableCss
{
	width: auto;
	border-collapse: collapse;
	margin: 0;
}

.BookingAdditionRight #PricingDiv table th,
.BookingAdditionRight #PricingDiv table td,
#PricingDiv table.TableCss th,
#PricingDiv table.TableCss td
{
	border: 1px solid #254D6A !important;
	padding: 0.4rem 0.65rem !important;
	background-clip: padding-box;
}

.BookingAdditionRight #PricingDiv table th,
#PricingDiv table.TableCss th
{
	background: #254D6A !important;
	color: #fff !important;
	font-weight: 700;
}

@media (max-width: 700px)
{
	.BookingAdditionTable
	{
		grid-template-columns: 1fr;
		grid-template-areas:
			"customer"
			"pricing";
		width: 100%;
		max-width: 100%;
	}

	.BookingAdditionLeft,
	.BookingAdditionRight
	{
		width: 100%;
		min-width: 0;
	}

	.BookingAdditionLeft #BookingAdditionInfo,
	#BookingAdditionInfo,
	.BookingFormRow--names
	{
		width: 100%;
		max-width: 100%;
	}

	.BookingFormRow--names
	{
		flex-wrap: wrap;
	}
}





/* Current Charters list date column */
.BookingWrapper .CharterListDateCell,
.BookingSearchResults .CharterListDateCell
{
	text-align: left !important;
	white-space: nowrap;
	vertical-align: middle;
}

.CharterListDate
{
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	line-height: 1.2;
}

.CharterListDate__day
{
	font-weight: 700;
	color: #254D6A;
}

.CharterListDate__ymd
{
	font-size: 0.95em;
}

/* Full-screen lock while Charter Details is open (blocks list + page) */
.CharterStackLock,
body.charter-details-open .ui-widget-overlay
{
	position: fixed !important;
	inset: 0 !important;
	width: 100vw !important;
	height: 100vh !important;
	background: rgba(10, 22, 34, 0.45) !important;
	z-index: 1000001 !important;
	cursor: default;
}

.ui-dialog.PopUpLocked
{
	pointer-events: none !important;
}

.ui-dialog.PopUpLocked::after
{
	content: "";
	position: absolute;
	inset: 0;
	background: rgba(15, 35, 50, 0.35);
	pointer-events: auto;
	z-index: 2147483646;
	border-radius: inherit;
}


/* Parking Tab unused in Charter Info for now — remove display:none to restore */
.CharterParkingTabRow
{
	display: none !important;
}

/* === Current Charters detail dialog === */
.ui-dialog.CharterDetailsDialog
{
	/* Width set in JS (~93% of parent); avoid width:auto (breaks jQuery UI centering) */
	max-width: calc(100vw - 1.5rem) !important;
	max-height: calc(100vh - 1.5rem) !important;
	z-index: 1000002 !important;
}

/* Book Charter: after Select Charter, detail fills parent dialog area */
.ui-dialog.CharterListDialog .BookingAdditionTable:not([hidden]),
.ui-dialog.CharterListDialog #BookingAdditionTable:not([hidden])
{
	display: grid !important;
	width: 100% !important;
	max-width: 100% !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
	align-self: stretch;
	justify-content: stretch;
	grid-template-columns: minmax(18rem, 1.15fr) minmax(14rem, 1fr);
	column-gap: 1.25rem;
	box-sizing: border-box;
}

.ui-dialog.CharterListDialog .BookingAdditionLeft,
.ui-dialog.CharterListDialog .BookingAdditionRight
{
	width: auto !important;
	max-width: 100% !important;
	min-width: 0;
}

.ui-dialog.CharterListDialog .BookingAdditionLeft #CharterAdditionInfo,
.ui-dialog.CharterListDialog #CharterAdditionInfo,
.ui-dialog.CharterListDialog .BookingAdditionRight #PricingDiv
{
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
}

.ui-dialog.CharterListDialog .BookingSearchResults:has(.BookingAdditionTable:not([hidden])),
.ui-dialog.CharterListDialog .BookingSearchResults:has(#BookingAdditionTable:not([hidden]))
{
	display: flex;
	flex-direction: column;
	min-height: 0;
}

.ui-dialog.CharterListDialog .BookingSearchResults:has(.BookingAdditionTable:not([hidden])) > .BookingSearchTable,
.ui-dialog.CharterListDialog .BookingSearchResults:has(#BookingAdditionTable:not([hidden])) > .BookingSearchTable
{
	flex: 0 0 auto;
}

.ui-dialog.CharterListDialog .BookingSearchResults:has(.BookingAdditionTable:not([hidden])) > .BookingAdditionTable,
.ui-dialog.CharterListDialog .BookingSearchResults:has(#BookingAdditionTable:not([hidden])) > #BookingAdditionTable
{
	flex: 1 1 auto;
	min-height: 0;
}


.ui-dialog.CharterConfirmDialog
{
	z-index: 1000003 !important;
}

.ui-dialog.CharterDetailsDialog .ui-dialog-content
{
	overflow-x: hidden !important;
	overflow-y: auto !important;
	box-sizing: border-box;
}

.CharterDetailsWrap
{
	max-width: 100%;
	box-sizing: border-box;
	padding: 0.15rem 0.25rem 0.5rem;
}

.CharterDetailsGrid
{
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1.35fr) minmax(0, 1fr);
	gap: 0.6rem 0.85rem;
	align-items: start;
	width: 100%;
}

.CharterDetailsCol
{
	min-width: 0;
	text-align: left;
	font-size: 0.95rem;
}

.CharterDetailsCol h3
{
	margin: 0 0 0.4rem;
	font-size: 1.05rem;
	color: #254D6A;
}

.CharterDetailsCol--payments table
{
	width: auto;
	max-width: 100%;
}

.CharterDetailsComments
{
	margin-top: 0.75rem;
	padding: 0.5rem 0.65rem;
	border: 1px solid rgba(37, 77, 106, 0.3);
	border-radius: 6px;
	background: #eef4f8;
	max-width: 100%;
}

#NotesBlock
{
	margin-top: 0.75rem;
	min-height: 4rem;
}

.CharterDetailsWrap #NotesBlock textarea#Note
{
	width: 100% !important;
	max-width: 100%;
	min-height: 70px;
	box-sizing: border-box;
}

.CharterDetailsWrap #NotesBlock table.TableCss
{
	width: 100%;
	table-layout: fixed;
}

.CharterDetailsWrap #NotesBlock table.TableCss th:first-child,
.CharterDetailsWrap #NotesBlock table.TableCss td:first-child
{
	width: 7.5rem;
	white-space: nowrap;
}

.CharterDetailsWrap #NotesBlock table.TableCss th:last-child,
.CharterDetailsWrap #NotesBlock table.TableCss td:last-child
{
	width: auto;
	word-break: break-word;
}

@media (max-width: 1050px)
{
	.CharterDetailsGrid
	{
		grid-template-columns: 1fr;
	}
}


/* === Book Charter (reuse Booking layout) === */
.BookingSearchBtn--secondary
{
	background: #fff;
	color: #254D6A;
}

.BookingSearchBtn--secondary:hover
{
	background: #e8eef3;
	color: #1c3d54;
}

.BookingAdditionLeft #CharterAdditionInfo,
#CharterAdditionInfo
{
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
	background: #e8eef3;
	border: 1px solid rgba(37, 77, 106, 0.25);
	border-radius: 6px;
	padding: 0.75rem 0.9rem 1rem;
	text-align: left;
}

.CharterCustomizeTitle,
.CharterPricingTitle
{
	margin: 0 0 0.35rem;
	color: #254D6A;
	font-family: 'PT Sans Narrow', sans-serif;
	font-weight: 700;
	font-size: 1.15rem;
	text-align: left;
}

.CharterPricingTitle
{
	text-align: center;
}

.CharterCustomizeHint
{
	margin: 0 0 0.65rem;
	font-size: 0.9rem;
	line-height: 1.35;
	color: #334;
}

.BookingFormRow--chartertimes
{
	align-items: flex-end;
	gap: 0.75rem 1.25rem;
}

.BookingFormRow--chartertimes .BookingInlineField span.wrapper
{
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 0.15rem;
}

.BookingFormRow--chartertimes .BookingInlineField select
{
	min-width: 5.5rem;
	padding: 0.25rem 0.4rem;
	border: 1px solid rgba(37, 77, 106, 0.4);
	border-radius: 4px;
	background: #fff;
}

/* All portal dialogs stay within the viewport */

.ui-dialog.PortalScrollDialog
{
	max-height: calc(100vh - 1.5rem) !important;
}

.ui-dialog.PortalScrollDialog .ui-dialog-content
{
	overflow-x: hidden !important;
	overflow-y: auto !important;
	box-sizing: border-box;
}

.ui-dialog.PopUpDiv
{
	max-width: calc(100vw - 1.5rem) !important;
	max-height: calc(100vh - 1.5rem) !important;
	box-sizing: border-box;
}

.ui-dialog.PopUpDiv .ui-dialog-content
{
	max-width: 100%;
	max-height: 100%;
	overflow-x: auto;
	overflow-y: auto;
	box-sizing: border-box;
}

.ui-dialog.PopUpDiv .BookingWrapper
{
	max-width: 100%;
	overflow-x: hidden;
}

/* Book / Current Charters list: keep toolbar fixed, scroll results inside dialog */
.ui-dialog.CharterListDialog,
.ui-dialog.PortalListDialog
{
	max-height: calc(100vh - 1.5rem) !important;
}

.ui-dialog.CharterListDialog .ui-dialog-content,
.ui-dialog.PortalListDialog .ui-dialog-content
{
	overflow: hidden !important;
	display: flex !important;
	flex-direction: column !important;
	box-sizing: border-box;
}

.ui-dialog.CharterListDialog .BookingWrapper,
.ui-dialog.PortalListDialog .BookingWrapper
{
	flex: 1 1 auto;
	min-height: 0;
	height: 100%;
	max-height: 100%;
	display: flex;
	flex-direction: column;
	overflow: hidden;
}

.ui-dialog.CharterListDialog .BookingToolbar,
.ui-dialog.PortalListDialog .BookingToolbar
{
	flex: 0 0 auto;
}

.ui-dialog.CharterListDialog .BookingSearchResults,
.ui-dialog.PortalListDialog .BookingSearchResults,
.ui-dialog.PortalListDialog #SearchResults
{
	flex: 1 1 auto;
	min-height: 0;
	overflow: auto;
	-webkit-overflow-scrolling: touch;
}

.ui-dialog.PortalListDialog #customerEditForm
{
	flex: 1 1 auto;
	min-height: 0;
	height: 100%;
	max-height: 100%;
	display: flex;
	flex-direction: column;
	overflow: hidden;
	box-sizing: border-box;
}

.ui-dialog.PortalListDialog #OnlineOutstanding
{
	flex: 0 1 auto;
	max-height: 30%;
	overflow: auto;
}



/* Keep .colorRows alternating blues/greys on booking search results */



/* Booking discount / promo layout */
#BookingAdditionInfo .BookingDiscountBlock,
#BookingOnlineAdditionInfo .BookingDiscountBlock,
.BookingAdditionLeft .BookingDiscountBlock
{
	margin-top: 0.35rem;
	clear: both;
}

#BookingAdditionInfo .BookingDiscountHeading,
.BookingAdditionLeft .BookingDiscountHeading
{
	font-family: "PT Sans Narrow", sans-serif !important;
	font-size: 1rem;
	font-weight: 700;
	padding: 0.35rem 0;
	margin: 0.25rem 0 0.35rem;
	color: #4297d7;
}

#BookingAdditionInfo .BookingMilitaryRow,
.BookingAdditionLeft .BookingMilitaryRow
{
	padding: 0;
	margin: 0 0 0.35rem;
}

#BookingAdditionInfo label.BookingMilitaryField,
#BookingAdditionInfo label.BookingPromoField,
.BookingAdditionLeft label.BookingMilitaryField,
.BookingAdditionLeft label.BookingPromoField
{
	width: auto !important;
	max-width: 100%;
	margin: 0 !important;
}

#BookingAdditionInfo label.BookingPromoField span.wrapper,
.BookingAdditionLeft label.BookingPromoField span.wrapper
{
	display: flex !important;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.35rem 0.5rem;
	width: auto !important;
}

#BookingAdditionInfo label.BookingPromoField span.title,
.BookingAdditionLeft label.BookingPromoField span.title
{
	flex: 0 0 auto;
	white-space: nowrap;
}

#BookingAdditionInfo input.BookingTicketSizedInput,
#BookingAdditionInfo #SelectedMilitary,
.BookingAdditionLeft input.BookingTicketSizedInput,
.BookingAdditionLeft #SelectedMilitary
{
	width: 3.25rem !important;
	max-width: 3.25rem !important;
	min-width: 3.25rem !important;
	margin: 0 !important;
	padding: 0.15rem 0.25rem !important;
	background: #fff !important;
}

#BookingAdditionInfo input.BookingNarrowInput,
#BookingAdditionInfo #PromoCode,
.BookingAdditionLeft input.BookingNarrowInput,
.BookingAdditionLeft #PromoCode
{
	width: 4.5rem !important;
	max-width: 4.5rem !important;
	min-width: 0 !important;
	margin: 0 !important;
	padding: 0.2rem 0.35rem !important;
	background: #fff !important;
}

#BookingAdditionInfo #OnlineDECoupon,
#BookingAdditionInfo .OnlineDECoupon,
.BookingAdditionLeft #OnlineDECoupon
{
	padding: 0.15rem 0 0.25rem !important;
	margin: 0;
}

#BookingAdditionInfo .CouponTable,
.BookingAdditionLeft .CouponTable
{
	width: auto !important;
	border: 0 !important;
	border-collapse: collapse;
	margin: 0;
}

#BookingAdditionInfo .CouponRow td,
.BookingAdditionLeft .CouponRow td
{
	padding: 0.1rem 0 !important;
	border: 0 !important;
	font-size: 0.82rem;
	line-height: 1.25;
	font-family: "PT Sans Narrow", sans-serif;
	font-weight: 600;
}

#BookingAdditionInfo .CouponCheckLabel,
.BookingAdditionLeft .CouponCheckLabel
{
	display: inline-flex !important;
	align-items: center;
	gap: 0.35rem;
	width: auto !important;
	margin: 0 !important;
	font-size: 0.82rem;
	font-weight: 600;
	cursor: pointer;
	white-space: nowrap;
}

#BookingAdditionInfo .CouponCheckLabel input[type="checkbox"],
#BookingAdditionInfo input.CouponsCheckout,
.BookingAdditionLeft .CouponCheckLabel input[type="checkbox"],
.BookingAdditionLeft input.CouponsCheckout
{
	width: auto !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
	background: transparent !important;
	flex: 0 0 auto;
}

#BookingAdditionInfo .PromoCodeRowInner,
.BookingAdditionLeft .PromoCodeRowInner
{
	margin-top: 0.35rem;
}

#BookingAdditionInfo .PromoCodeCheckBtn,
.BookingAdditionLeft .PromoCodeCheckBtn
{
	font-size: 0.75rem;
	padding: 0.15rem 0.45rem;
	line-height: 1.2;
	cursor: pointer;
}

#BookingAdditionInfo #PromoCodeResults,
.BookingAdditionLeft #PromoCodeResults
{
	font-size: 0.8rem;
	min-height: 1rem;
	margin-top: 0.15rem;
}


#BookingAdditionInfo label.BookingMilitaryField span.wrapper,
.BookingAdditionLeft label.BookingMilitaryField span.wrapper
{
	display: flex !important;
	flex-wrap: nowrap;
	align-items: center;
	gap: 0.5rem;
	width: auto !important;
}

#BookingAdditionInfo label.BookingMilitaryField span.title,
.BookingAdditionLeft label.BookingMilitaryField span.title
{
	flex: 0 0 auto;
	white-space: nowrap;
}


/* Online book dialog uses #BookingOnlineAdditionInfo (not #BookingAdditionInfo) */
#BookingOnlineAdditionInfo .BookingDiscountBlock,
#BookingOnlineAdditionInfo .BookingDiscountHeading,
#BookingOnlineAdditionInfo .BookingMilitaryRow,
#BookingOnlineAdditionInfo label.BookingMilitaryField,
#BookingOnlineAdditionInfo label.BookingPromoField,
#BookingOnlineAdditionInfo input.BookingTicketSizedInput,
#BookingOnlineAdditionInfo #SelectedMilitary,
#BookingOnlineAdditionInfo input.BookingNarrowInput,
#BookingOnlineAdditionInfo #PromoCode,
#BookingOnlineAdditionInfo #OnlineDECoupon,
#BookingOnlineAdditionInfo .OnlineDECoupon,
#BookingOnlineAdditionInfo .CouponTable,
#BookingOnlineAdditionInfo .CouponRow td,
#BookingOnlineAdditionInfo .CouponCheckLabel,
#BookingOnlineAdditionInfo .CouponCheckLabel input[type="checkbox"],
#BookingOnlineAdditionInfo input.CouponsCheckout,
#BookingOnlineAdditionInfo .PromoCodeRowInner,
#BookingOnlineAdditionInfo .PromoCodeCheckBtn,
#BookingOnlineAdditionInfo #PromoCodeResults,
#BookingOnlineAdditionInfo label.BookingMilitaryField span.wrapper,
#BookingOnlineAdditionInfo label.BookingMilitaryField span.title,
#BookingOnlineAdditionInfo label.BookingPromoField span.wrapper,
#BookingOnlineAdditionInfo label.BookingPromoField span.title
{
	/* inherit paired rules via duplicated properties below */
}

#BookingOnlineAdditionInfo .BookingDiscountBlock {
	margin-top: 0.35rem;
	clear: both;
}
#BookingOnlineAdditionInfo .BookingDiscountHeading {
	font-family: "PT Sans Narrow", sans-serif !important;
	font-size: 1rem;
	font-weight: 700;
	padding: 0.35rem 0;
	margin: 0.25rem 0 0.35rem;
	color: #4297d7;
}
#BookingOnlineAdditionInfo label.BookingMilitaryField,
#BookingOnlineAdditionInfo label.BookingPromoField {
	width: auto !important;
	max-width: 100%;
	margin: 0 !important;
	float: none !important;
	display: block !important;
}
#BookingOnlineAdditionInfo label.BookingMilitaryField span.wrapper,
#BookingOnlineAdditionInfo label.BookingPromoField span.wrapper {
	display: flex !important;
	flex-direction: row !important;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.35rem 0.5rem;
	width: auto !important;
}
#BookingOnlineAdditionInfo input.BookingTicketSizedInput,
#BookingOnlineAdditionInfo #SelectedMilitary {
	width: 3.25rem !important;
	max-width: 3.25rem !important;
	min-width: 3.25rem !important;
	margin: 0 !important;
	padding: 0.15rem 0.25rem !important;
	background: #fff !important;
}
#BookingOnlineAdditionInfo input.BookingNarrowInput,
#BookingOnlineAdditionInfo #PromoCode {
	width: 4.5rem !important;
	max-width: 4.5rem !important;
	background: #fff !important;
}
#BookingOnlineAdditionInfo #OnlineDECoupon,
#BookingOnlineAdditionInfo .OnlineDECoupon {
	padding: 0.15rem 0 0.25rem !important;
	margin: 0;
}
#BookingOnlineAdditionInfo .CouponTable {
	width: auto !important;
	border: 0 !important;
	margin: 0;
}
#BookingOnlineAdditionInfo .CouponRow td {
	padding: 0.1rem 0 !important;
	border: 0 !important;
	font-size: 0.82rem;
}

/* Checkbox to the left of coupon text */
#BookingAdditionInfo .CouponCheckLabel,
#BookingOnlineAdditionInfo .CouponCheckLabel,
.BookingAdditionLeft .CouponCheckLabel
{
	display: inline-flex !important;
	flex-direction: row !important;
	align-items: center !important;
	justify-content: flex-start !important;
	gap: 0.4rem;
	width: auto !important;
	direction: ltr !important;
}

#BookingAdditionInfo .CouponCheckLabel input[type="checkbox"],
#BookingOnlineAdditionInfo .CouponCheckLabel input[type="checkbox"],
.BookingAdditionLeft .CouponCheckLabel input[type="checkbox"],
#BookingAdditionInfo input.CouponsCheckout,
#BookingOnlineAdditionInfo input.CouponsCheckout,
.BookingAdditionLeft input.CouponsCheckout
{
	order: 0 !important;
	float: none !important;
	display: inline-block !important;
	position: static !important;
	width: 1rem !important;
	height: 1rem !important;
	max-width: 1rem !important;
	margin: 0 !important;
	padding: 0 !important;
	background: transparent !important;
	flex: 0 0 auto !important;
}

#BookingAdditionInfo .CouponCheckText,
#BookingOnlineAdditionInfo .CouponCheckText,
.BookingAdditionLeft .CouponCheckText
{
	order: 1 !important;
	display: inline !important;
	float: none !important;
}

/* Book / Reserve Daily — empty search results */
.BookingNoTrips td.BookingNoTripsMsg,
td.BookingNoTripsMsg {
	text-align: center;
	padding: 1.35rem 1rem;
	font-size: 1.05rem;
	font-weight: 600;
	color: #334155;
	background: #f8fafc;
}

/* Check-in — empty results */
.CheckInNoResults td.CheckInNoResultsMsg,
td.CheckInNoResultsMsg {
	text-align: center;
	padding: 1.35rem 1rem;
	font-size: 1.05rem;
	font-weight: 600;
	color: #334155;
	background: #f8fafc;
}

/* Booking "more info" after trip select: SearchResults is replaced, so scroll the wrapper */
.ui-dialog.PortalListDialog #customerEditForm.BookingDetailView,
.ui-dialog.PortalListDialog .BookingWrapper.BookingDetailView,
.ui-dialog.PopUpDiv #customerEditForm.BookingDetailView,
.ui-dialog.PopUpDiv .BookingWrapper.BookingDetailView,
.ui-dialog.PortalListDialog #customerEditForm:has(> #BookingAdditionTable),
.ui-dialog.PortalListDialog .BookingWrapper:has(> #BookingAdditionTable),
.ui-dialog.PopUpDiv #customerEditForm:has(> #BookingAdditionTable),
.ui-dialog.PopUpDiv .BookingWrapper:has(> #BookingAdditionTable)
{
	overflow-x: hidden !important;
	overflow-y: auto !important;
	-webkit-overflow-scrolling: touch;
}

.ui-dialog.PortalListDialog .BookingWrapper.BookingDetailView > .BookingSearchTable,
.ui-dialog.PortalListDialog .BookingWrapper.BookingDetailView > .BookingAdditionTable,
.ui-dialog.PopUpDiv .BookingWrapper.BookingDetailView > .BookingSearchTable,
.ui-dialog.PopUpDiv .BookingWrapper.BookingDetailView > .BookingAdditionTable,
.ui-dialog.PortalListDialog .BookingWrapper:has(> #BookingAdditionTable) > .BookingSearchTable,
.ui-dialog.PortalListDialog .BookingWrapper:has(> #BookingAdditionTable) > .BookingAdditionTable
{
	flex: 0 0 auto;
}
