/*
Theme Name: Rusty Mango Responsive 2018
Theme URL: http:www.rustymangodesign.com.au
Description: Based on HTML5Reset Blank Theme
Author: Greg Provians
Version: 3.0
*/

.chromeframe {position: absolute; top: 0;}

/* Font Information - Must load /fonts into base directory of site
-------------------------------------------------------------------------------*/

@font-face {
	font-family: 'Muli';
	font-weight: 400;
	font-style: normal;
	src:url(fonts/Muli-regular/Muli-regular.ttf) format('truetype');
	src:url(fonts/Muli-regular/Muli-regular.woff2) format('woff');
	src:url(fonts/Muli-regular/Muli-regular.svg) format('svg');
	src:url(fonts/Muli-regular/Muli-regular.eot) format('embedded-opentype');
	src:local('Muli');
}

@font-face {
	font-family: 'Droid Sans';
	font-weight: 400;
	font-style: normal;
	src:url(fonts/Droid-Sans-regular/Droid-Sans-regular.ttf) format('truetype');
	src:url(fonts/Droid-Sans-regular/Droid-Sans-regular.woff2) format('woff');
	src:url(fonts/Droid-Sans-regular/Droid-Sans-regular.svg) format('svg');
	src: url(fonts/Droid-Sans-regular/Droid-Sans-regular.eot) format('embedded-opentype');
	src:local('Droid Sans');
	src:local('Droid-Sans-regular');
}

@font-face {
	font-family: 'Nunito';
	font-weight: 400;
	font-style: normal;
	src:url(fonts/Nunito-regular/Nunito-regular.ttf) format('truetype');
	src:url(fonts/Nunito-regular/Nunito-regular.woff2) format('woff');
	src:url(fonts/Nunito-regular/Nunito-regular.svg) format('svg');
	src:url(fonts/Nunito-regular/Nunito-regular.eot) format('embedded-opentype');
	src:local('Nunito')
}

@font-face {
	font-family: 'Nunito';
	font-weight: 700;
	font-style: normal;
	src:url(fonts/Nunito-700/Nunito-700.ttf) format('truetype');
	src:url(fonts/Nunito-700/Nunito-700.woff2) format('woff');
	src:url(fonts/Nunito-700/Nunito-700.svg) format('svg');
	src:url(fonts/Nunito-700/Nunito-700.eot) format('embedded-opentype');
	src:local('Nunito-700');
}

@font-face {
	font-family: 'Open Sans';
	font-weight: normal;
	font-style: normal;
	src:url(fonts/Open/OpenSans-Regular.ttf) format('truetype');
	src:local('Open Sans');
}

@font-face {
	font-family: 'Open Sans SemiBold';
	font-weight: 700;
	font-style: normal;
	src: url(fonts/Open/OpenSans-SemiBold.ttf)  format('truetype');
	src: local('Open Sans SemiBold');
}

@font-face {
	font-family: OpenSans-Bold;
	font-weight: bold;
	font-style: normal;
	src: url("fonts/OPEN/OpenSans-Bold.ttf");
}

@font-face {
	font-family: Raleway-Regular;
	font-weight: normal;
	font-style: normal;
	src: url("fonts/RALEWAY/Raleway-Regular.ttf");
}

@font-face {
	font-family: 'Raleway Bold';
	font-weight: normal;
	font-style: normal;
	src: url(fonts/RALEWAY/Raleway-Bold.ttf);
	src: url(fonts/RALEWAY/raleway-bold.woff);
}


/* General CSS for Entire Site
-------------------------------------------------------------------------------*/

body {font: 13px;}

body, select, input, textarea {
	font-family: Raleway-Regular, "Open Sans", Arial, "sans-serif";
	font-size: 20px;
	line-height: 1.2em;
	color: #444444;}

body {
	background-color: #FFFFFF;
	background-image: url("../../../../template_images/header_bg.jpg");
	background-size: 100% 300px;
	background-repeat: no-repeat;
}

::-moz-selection{
	background: #fcd700; color: #fff; text-shadow: none;
}

::selection {
	background: #fcd700; color: #fff; text-shadow: none;
}

a:link {
	-webkit-tap-highlight-color: #fcd700;
}

a:link, a:visited {
	color: #0D527B;
	text-decoration: none;
}

a:hover {
	text-decoration: underline;
}

ins {
	background-color: #fcd700; color: #000; text-decoration: none;
}

mark {
	background-color: #fcd700; color: #000; font-style: italic; font-weight: bold;
}

input:-moz-placeholder {
	color:#a9a9a9;
}

textarea:-moz-placeholder {
	color:#a9a9a9;
}

img {
	max-width:100%;
	height: auto;
}



/* HEADER - Mobile
-------------------------------------------------------------------------------*/

#headmobile {
	width:100%;
	height: auto;
	margin-top: 42px;
}

#tablet_head_content {
		width: 100%;
		height: 141px;  /* Switch to Auto */
		background-image: url(../../../../template_images/header_transparent_strip.png);
		background-repeat: repeat-x;
		z-index: 99999;
	}

		#tablet_head_content_centred {
			width: 282px;
			margin: 0 auto;
			height: 141px;
		}

		#tablet_head_content_centred img{
			margin-top: 18px;
		}

#mobile_social_contacts {
	width: 100%;
	height: 60px;
	text-align: center;
	vertical-align: middle;
	line-height: 60px; 
	margin-bottom: 20px;
}

#mobile_social_contacts img{
	margin: 20px 10px;
}

/* HEADER - Desktop
-------------------------------------------------------------------------------*/

#topbar {
	width: 100%;
	height: 53px;
	line-height: 53px;
	color: #FFF;
	background-color: #0E537C;
}

	#topbar_contents {
		width: 100%;
		height: 53px;
		max-width: 1200px;
		margin: 0 auto;
		position: relative;
	}

		#leftside_contacts {
			width: 45%;
			max-width: 550px;
			text-align: left;
			height: 53px;
			color: #FFF;
			position: absolute;
			float: left;
			top: 0px;
			left: 30px;
		}

		#leftside_contacts img {
			margin: 14px 15px 0 0;
		}

		#rightside_contacts {
			width: 45%;
			height: 53px;
			line-height: 53px;
			vertical-align: middle;
			max-width: 550px;
			text-align: right;
			color: #FFF;
			position: absolute;
			float: right;
			top: 0px;
			right: 30px;
			display: inline-block;
		}

#head {
	width: 100%;
	height: auto; /* Switch to Auto */
	z-index:99;
	position: relative;
}

#slideshow {
	width: 100%;
	height: auto;
	background-color: #333;
	position: relative;
	z-index: 0;
	float: left;
	left:0;
	top:0;
}

#waves {
	width: 100%;
	height: 179px;
	position: relative;
	float: left;
	z-index: 999;
	background-image: url(../../../../template_images/waves.png);
	background-size: 100% 179px;
	margin-top: -90px;
}

#header_secondary {
	width: 100%;
	height: auto;
	max-width: 1500px;
	margin: 20px auto 0;
}

	#waves_secondary {
		width: 100%;
		height: 20px;
		position: relative;
		float: left;
		z-index: 99999;
		margin-top: 0px;
	}

	#head_content {
		width: 100%;
		height: 141px;  /* Switch to Auto */
		background-image: url(../../../../template_images/header_transparent_strip.png);
		background-repeat: repeat-x;
		position: relative;
		z-index: 99999;
	}

		#head_content_centred {
			width: 100%;
			max-width: 1200px;
			margin: 0 auto;
			height: 141px;
			position: relative;
		}

		#head_logo {
			width: 282px;
			height: auto;
			position: absolute;
			float: left;
			left: 5px;
			top: 14px;
		}
		
		#head_menu {
			position:absolute;
			float: right;
			height: 40px;
			width: 100%;
			max-width: 830px;
			right: 30px;
			bottom: 26px;
			text-align:right;
		}

		#tablet_menu {
			width: 100%;
			height:auto;
			background-color: #CC3300;
			padding: 10px 30px;
			display: block;
		}

/* CONTENT / BODY
-------------------------------------------------------------------------------*/

#wrapper {
	max-width: 1400px;
	margin: 0 auto; /* ← THIS is the key */
	height: auto;
	background-color: #FFF;
	padding-bottom: 40px;
}

	#main {
		width: 100%;
		height: auto;
		position: relative;
	}

		#content {
			box-sizing: border-box;
			padding: 100px 30px;
			width: 100%;
			max-width: 1400px;
			margin: 0 auto;
		}

/* SIDEBAR (if required)
-------------------------------------------------------------------------------*/
		
		#sidebar {
			box-sizing: border-box;
			padding: 020px;
			float:right;
			margin-right: 20px;
			width: 33%;
			max-width: 275px;
			background-color: #EEEEEE;
		}
		
		#sidebar-responsive { display: none; }


/* FOOTER - Mobile
-------------------------------------------------------------------------------*/

#footermob {
	width: 100% !important;
	height:46px;
	background-color: #CC3300;
	color: #000;
}

#footmob {
	max-width: 1080px; 
	width:100%;
	margin:0px auto;
	text-align: center;
	padding-top: 10px;
	font-family:"Droid Sans", Arial, sans-serif !important;
	color: #FFFFFF !important;
	font-size: 13px !important;
	line-height:22px !important;
}

/* FOOTER - Desktop
-------------------------------------------------------------------------------*/

#footer {
	width: 100% !important;
	height: auto;
	background-color: #1179BB;
	color: #FFF;
	display: block;
	overflow: hidden;
}

#foot {
	max-width: 1200px; 
	width:100%;
	height: auto;
	display: block;
	overflow: hidden;
	margin:0px auto;
	text-align: center;
	padding: 40px 30px;
	font-family: "Raleway", Arial, "sans-serif";
	color: #FFF !important;
	font-size: 18px !important;
	line-height:32px !important;
}

#foot a:link, #foot a:visited{
	color: #FFFFFF;
	text-decoration: none;
}

#foot a:hover {
	color: #FFFF00 !important;
	text-decoration:underline;
}

#foot h5 {
	margin-bottom: 25px;
}

#foot_box {
	float:left;
	width: 33%;
	max-width: 360px;
	text-align:left;
	margin-right: 30px;
}

#foot_box p {
	margin-bottom: 25px;
}

#foot_box img {
	margin: 14px 15px 0 0;
}

#foot_box .big_text {
	font-size: 36px;
}

#foot_middle {
	float:left;
	width: 33%;
	max-width: 360px;
	text-align:left;
	margin-right: 30px;
}

#foot_middle td {
	padding: 0;
}

#foot_middle table {
	margin: 31px 0;
	font-family: inherit;
}

#foot_right {
	float:right;
	width:33%;
	max-width: 360px;
	text-align:left;
}

#foot_left p {
	margin: 0px;
	line-height:24px;
}

#footer_text {
	width: 100%;
	height: auto;
	min-height: 60px;
	background-color: #0368CC;
	display: block;
	overflow: hidden;
	font-size: 16px;
}

#footer_text a:link, #footer_text a:visited{
	color: #FFFFFF;
	text-decoration: none;
}

#footer_text a:hover {
	color: #FFFF00 !important;
	text-decoration:underline;
}

#footer_text_content {
	width: 100%;
	max-width: 1140px;
	height: auto;
	margin: 0 auto;
	color: #fff;
	text-align: center;
	vertical-align: middle;
	line-height: 60px; 
}

#footer_text_left {
	width: 64%;
	height: auto;
	float: left;
	color: #fff;
	text-align: left;
	vertical-align: middle;
	line-height: 60px; 
}

#footer_text_right {
	width: 34%;
	height: auto;
	float: right;
	color: #fff;
	text-align: right;
	vertical-align: middle;
	line-height: 60px; 
}

/* LOGIN STYLES
-------------------------------------------------------------------------------*/

login {
    margin-top: 6%;
}

/* FONT STYLES
-------------------------------------------------------------------------------*/

#content p {
	font-size: .9em;
	line-height: 1.4em;
	margin: 0 0 24px;
	margin: 0 0 1.714285714rem;
}

h1 {
	font-family: OpenSans-Bold, Arial, "sans-serif"!important;
	font-weight: normal;
	font-size:32px;
	line-height: 42px;
	color: #0D527B;
	padding: 0px;
	margin-bottom: 20px;
	text-align: left;
	width: 100%;
}

.home h1,
.front-page h1 {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
}

h2 {
	font-family: OpenSans-Bold, Arial, "sans-serif"!important;
	font-weight: normal;
	font-size:28px;
	line-height: 36px;
	color: #0D527B;
	padding: 0px;
	margin-bottom: 20px;
	text-align: left;
	width: 100%;
}

h3 {
	color: #0E537C;
	font-family: OpenSans-Bold, Arial, "sans-serif"!important;
	font-size: 1.2em;
	margin-bottom: 20px;
	width: 100%;
	text-align: left;
}

h4 {
	color: #0E537C;
	font-family: "Raleway Medium", Arial, sans-serif !important;
	font-size:22px;
	line-height: 32px;
	margin-bottom:10px;
	width: 100%;
	text-align: left;
}

h5 {
	color: #FFF;
	font-family: "Raleway Medium", Arial, sans-serif !important;
	font-size:22px;
	line-height: 32px;
	font-weight: normal;
	margin-bottom:10px;
	border-bottom: 1px solid #FFFFFF;
	padding: 0 0 5px 0;
	
}

/* = NEW STYLES - Format Dropdown Menu
----------------------------------------------------------------------------- */

.subtitles {
	font-family: "Open Sans", Arial, "sans-serif"!important;
	font-weight: normal;
	font-size:22px;
	line-height: 32px;
	color: #0D527B;
	padding: 0px;
	margin-bottom: 10px;
	width: 100%;
}

.intropara {
	font-size: 24px;
	line-height: 34px;
}

/* TEXT ELEMENTS - Tables and Lists
-------------------------------------------------------------------------------*/

ul,
ol {
	margin: 0 0 24px;
	margin: 0 0 1.714285714rem;
	line-height: 1.714285714;
	padding: 0;
}

ul {
	list-style: disc outside;
}

ol {
	list-style: decimal outside;
}

ul ul,
ol ol,
ul ol,
ol ul {
	margin-bottom: 0;
}

li {
	font-size: .9em;
	margin: 0 0 0 24px;
	margin: 0 0 0 1.714285714rem;
}

li li {
	font-size: 1em;
}

li ol {
	margin: 10px 0 10px 0;
}

table td {
    
}

td, th {
    font-family: inherit;
    font-size: 17px;
	padding: 5px;
}

/* IMAGE OVERLAY
-------------------------------------------------------------------------------*/

div.image-swirl {
    margin:0 auto 5px;
    width:100%;
    background:#EEE;
    border-image:initial;
    position:relative;
    z-index:0
}

div.image-swirl img {
    border:0;
    display:block;
    width:100%;
	height: auto;
}

div.image-swirl:before {
    content:"";
    display:block;
    position:absolute;
    width:100%;
    height:57px;
    bottom:0px;
    right:0px;
    z-index:1;
    background:url(https://reefsidemarine.com.au/template_images/image_footer.png);
	background-size: 100% 57px;
}

/* TEXT ELEMENTS - Alignment
-------------------------------------------------------------------------------*/

.alignleft {
	display: inline;
	float: left;
	margin: 12px 24px 12px 0;
	margin: 0.857142857rem 1.714285714rem 0.857142857rem 0;
}

.alignright {
	display: inline;
	float: right;
	margin: 12px 0 12px 24px;
	margin: 0.857142857rem 0 0.857142857rem 1.714285714rem;
}

.aligncenter {
	clear: both;
	display: block;
	margin: 0 auto;
}

/* MENU - Styles
-------------------------------------------------------------------------------*/

	#cssmenu,
	#cssmenu ul,
	#cssmenu li,
	#cssmenu a {
		border: none;
		margin: 0;
		padding: 0;
		line-height: 1;
		-webkit-box-sizing: content-box;
		-moz-box-sizing: content-box;
		box-sizing: content-box;
	}

	#cssmenu {
		height: 40px;
		display: block;
		padding: 0;
		margin: 0;
		width: auto;
		border-color: #080808;
	}

/*--- MENU - List Styles ---*/

	#cssmenu,
	#cssmenu > ul > li > ul > li a:hover {

	}

#cssmenu > ul {
    display: flex;
    align-items: stretch; /* Default */
    justify-content: space-between;
    width: 100%;
    margin: 0;
    padding: 0;
}

#cssmenu > ul > li {
	position: relative;
	display: block;
    flex: 0 1 auto; /* Default */
    list-style-type: none;
}

	#cssmenu,
	#cssmenu > ul > li > ul > li a:hover {
	}

	#cssmenu > ul {
		list-style: inside none;
		padding: 0;
		margin: 0;
		float: right;
	}
	#cssmenu > ul > li {
		list-style: inside none;
		padding: 0;
		margin: 0;
		float: left;
		display: block;
		position: relative;
	}

/*--- Individual Button Styles Go Here ---*/

	#cssmenu > ul > li > a {
		outline: none;
		display: block;
		position: relative;
		padding: 12px 10px;
		text-align: center;
		text-decoration: none;
		font-weight: normal !important;
		font-size: 16px;
		font-family: 'Raleway Bold', Arial, sans-serif;
		text-transform: uppercase;
		color: #000000;
	}

	#cssmenu li:first-child a {
		border-left: 0 none;
	}

/*--- Individual Button HOVER Styles Go Here ---*/

	#cssmenu > ul > li > a:hover {
		color: #0E537C;
		border-bottom: 2px solid #0E537C;
	}

	#cssmenu > ul > li > a:after {
		content: '';
		position: absolute;
		top: -1px;
		bottom: -1px;
		right: -10px;
		z-index: 99; 
	}

	#cssmenu ul li.has-sub:hover > a:after {
		top: 0;
		bottom: 0;
	}

/*--- Sub Menu Dropdown Arrow ---*/

	#cssmenu > ul > li.has-sub {
		padding-right: 10px;  /*--- Extra room for arrow ---*/
	}

	#cssmenu > ul > li.has-sub > a:before {
		content: '';
		position: absolute;
		top: 18px;
		right: -2px;
		border: 5px solid transparent;
		border-top: 5px solid #000;
	}

	#cssmenu > ul > li.has-sub:hover > a:before {
		content: '';
		position: absolute;
		top: 18px;
		right: -2px;
		border: 5px solid transparent;
		border-top: 5px solid #000;
	}

/*--- Main Button with Drop Down Menus Under ---*/

	#cssmenu ul li.has-sub:hover > a {
		color: #0E537C;
		border-bottom: 2px solid #0E537C;
		top: 0px;
		z-index: 999;
	}

	#cssmenu ul li.has-sub:hover > ul,
	#cssmenu ul li.has-sub:hover > div {
		display: block;
	}

	#cssmenu > ul > li.has-sub:hover {
		color: #0E537C;
		border-bottom: 2px solid #0E537C;
	}

/*--- Drop Down Sub Menu Position & Width ---*/

	#cssmenu ul li > ul,
	#cssmenu ul li > div {
		display: none;
		position: absolute;
		top: 40px;
		left: 0px;
		padding: 0;
		background: #006DD9; /*--- Background colour of whole dropdown menu ---*/
		z-index: 999;
		border-top: 2px solid #0E537C;
	}

	#cssmenu ul li > ul {
		min-width: 200px;

	}

	#cssmenu li ul li a { 
		width: auto; white-space: nowrap;
	}

	#cssmenu ul li > ul li {
		list-style: inside none;
		padding: 0;
		margin: 0;
		position: relative;
	}

/*--- Drop Down Menu Items Styling ---*/

	#cssmenu ul li > ul li a {
		outline: none;
		display:block;
		position: relative;
		margin: 0;
		padding: 12px 20px;
		font-weight: bold;
		font-size: 16px;
		font-family: Muli, "Century Gothic", Arial, sans-serif;
		color: #ffffff;
		text-decoration: none;
		text-align: left;
	}

/*--- Drop Down Menu Items HOVER effect ---*/

	#cssmenu ul ul a:hover {
		color: #ffffff;
		background-color: #333; /*--- Hover colour of dropdown menu items ---*/
	}

	#cssmenu > ul > li.has-sub > a:hover:before {
		border-top: 5px solid #0E537C;
	}

/* FULL WIDTH FRONT PAGE PANEL
-------------------------------------------------------------------------------*/

#fullwidth_color {
	width: 100%;
	height: auto;
	display: block;
	overflow: hidden;
	background-image: url(../../../../template_images/bowen_bg.jpg);
	background-size: 100% 100%;
	margin: 50px 0;
}

#fullwidth_white {
	width: 100%;
	height: auto;
	display: block;
	overflow: hidden;
	background-color: #FFFFFF;
	margin: 50px 0;
}

#fullwidth_content {
	width: 100%;
	max-width: 1140px;
	height: auto;
	margin: 40px auto;
}

#fullwidth_content p {
	line-height: 1.714285714;
	margin: 0 0 24px;
	margin: 0 0 1.714285714rem;
}

/******************************* CONTACT FORM 7 STYLES *******************************/

.wpcf7-form {
  width: 100%;
  margin-bottom: 21px;
  padding: 0;
  border: none;
  border-radius: 10px;
  -webkit-border-radius: 10px;
}

.email_terms {
  font-size: 13px !important;
  color: #444 !important;
}

#two-column {
  width: 100%;
}

#two-column::after {
  content: "";
  display: table;
  clear: both;
}

#two-column #left,
#two-column #right {
  width: 48%;
}

#two-column #left { float: left; }
#two-column #right { float: right; }

#two-column p {
  margin: 0 !important;
}

#two-column #left p {
  line-height: 25px !important;
}

/* Form fields (typed text) */
#two-column input[type="text"],
#two-column input[type="email"],
#two-column textarea,
#two-column select {
  width: 100%;
  margin-bottom: 15px;
  padding: 10px 15px;
  border: 1px solid #525252;
  border-radius: 5px;
  font-size: 0.9em;
  font-family: 'Poppins-Regular', sans-serif;
  color: #525252; /* typed text */
  box-sizing: border-box;
}

#two-column select {
  padding: 10px 15px 10px 10px;
}

/* Placeholder text */
#two-column input::placeholder,
#two-column textarea::placeholder {
  color: #666;
  font-family: 'Poppins-Regular', sans-serif;
  opacity: 1;
}

/* Chrome / Safari */
#two-column input::-webkit-input-placeholder,
#two-column textarea::-webkit-input-placeholder {
  color: #666;
  font-family: 'Poppins-Regular', sans-serif;
}

/* Firefox */
#two-column input::-moz-placeholder,
#two-column textarea::-moz-placeholder {
  color: #999;
  font-family: 'Poppins-Regular', sans-serif;
  opacity: 1;
}

/* IE / Edge */
#two-column input:-ms-input-placeholder,
#two-column textarea:-ms-input-placeholder {
  color: #999;
  font-family: 'Poppins-Regular', sans-serif;
}

/* Select placeholder (first option) */
#two-column select option[value=""] {
  color: #999;
}

#two-column select:valid,
#two-column select option {
  color: #525252;
}

/* Submit button */
#two-column input[type="submit"] {
  float: right;
  margin: -5px 0 0;
  padding: 13px 15px 10px;
  background-color: #1179BB;
  border: 1px solid #1179BB;
  border-radius: 5px;
  color: #fff;
  text-transform: uppercase;
	width: 100%;
	font-size: 1em;
}

#two-column input[type="submit"]:hover {
  background: #0368CC;
	border-color: #0368CC;
}

/* Focus */
#two-column input:focus,
#two-column textarea:focus,
#two-column select:focus {
  background: #f1f1f1;
}

/* Validation */
#content .wpcf7-not-valid-tip {
  margin-top: -15px;
  margin-bottom: 10px;
  font-size: 0.8em;
  text-align: right;
}

#content .wpcf7 form.invalid .wpcf7-response-output {
  border-color: #ff0000;
}

#content .wpcf7 form .wpcf7-response-output {
  margin: 40px 0 10px;
  padding: 0.5em 1em;
  border: 2px solid #008c00;
  font-size: 0.8em;
}

.captcha-image {
  border: 1px solid #525252;
border-radius: 5px;
	width: 100%;
	margin-top: -7px;
	margin-bottom: 9px;
}

.ecp-button {
    transform: rotate(270deg) !important;
    position: fixed;
    z-index: 999999;
    display: block;
	width: 221px;
	height: 74px;
    min-width: none !important;
    max-width: none !important;
    text-align: center;
    cursor: pointer;
	background: url(../../../../template_images_2018/popup_contact.png) !important;
}

.cf7ic_instructions {
    font-size: .9em;
}

.ecp-button a {
    text-transform: uppercase !important;
    display: block;
    padding: 27px 0 0 30px !important;
	text-align: left !important;
	font-family: Roboto, "Roboto Black", Arial, "sans-serif";
	font-size: 22px;
}

.ecp-button.right {
    right: -75px !important;
}

.ecp-content h3 {
    background-color: #F50088 !important;
	margin-bottom: 15px !important;
}

.ecp-content input[type="text"]{
	border:1px solid #CCC;
	padding: 5px;
	width: 100%;
	margin-top: 20px;
}

.ecp-content textarea {
    position: relative;
    padding: 5px;
    border:1px solid #DDD;
	width: 100%;
	margin-top: 20px;
}


.ecp-content input[type="submit"]{
	padding:6px 15px;
	background:#f1f1f1;
	color:#666;
	border: 1px solid #DDD;
	width: 100%;
	text-align: center;
	margin:20px 0px 0px 0px;
}

.ecp-content input[type="text"]:focus, .ecp-content textarea:focus, .ecp-content input[type="email"]:focus{
	background: #F1F1F1;
}

.ecp-content input[type="submit"]:hover{
	background:#fff;
	color:#222;
	border: 1px solid #DDD;
}



/* MOBILE RESPONSIVENESS - MOBILES <800
-------------------------------------------------------------------------------*/

@media (max-width: 799px) {
    
	#headmobile {
		display: none;
	}
	
	#head_content {
		display: none;
	}
	
	#head_menu {
		display: none;
	}
	
	#waves {
		width: 100%;
		height: 60px;
		position: relative;
		float: left;
		z-index: 99999;
		background-image: url(../../../../template_images/waves.png);
		background-size: 100% 60px;
		margin-top: -30px;
	}
	
#leftside_contacts {
    display: none;
}

#rightside_contacts {
 	right: 24px;
}	
	
#rightside_contacts img {
 	margin: 5px 0 5px 0;
}
	
	#sidebar {
		float: none !important;
		width: 90% !important;
		max-width: none !important;
		margin: 40px auto !important;
    }
	
	#content {
		float: none !important;
	}
	
	#tablet_menu {
		display: none;
	}
	
	#footermob {
		display: block !important;
	}

	#footer {
		display:none;
	}
	
	#fourboxes {
		display: none !important;
	}
	
	#contactdetails {
		float: none !important;
  		max-width: none !important;
  		width: 100% !important;
		padding: 0 !important;
	}

	#contactform {
		border-left: none !important;
		float: none !important;
  		max-width: none !important;
  		width: 100% !important;
		padding: 0 !important;
		margin-bottom: 60px !important;
	}
	
	#mapwrap {
		float: none !important;
		margin:20px 0 !important;
	}
	
	#tabletmobile {
		display: none;
	}
	

	#fullwidth_content {
		width: 100%;
		max-width: none;
		height: auto;
		margin: 40px 0px;
		padding: 0 30px;
	}
	
	.columns-3 .column {
    	width: 100% !important;
	}
	
	.columns-2 .column {
    	width: 100% !important;
	}
	
	#content .one_third {
		width: 100% !important;
		margin-right: 0 !important;
	}
	
	#content .one_third.last_column {
		width: 100% !important;
		margin-right: 0 !important;
	}

	#content .two_third {
		width: 100% !important;
		margin-right: 0 !important;
	}
	
	#content .two_third.last_column {
		width: 100% !important;
		margin-right: 0 !important;
	}
	
	#footer_text_left {
		width: 90%;
		max-width: none;
		float: none;
		text-align: center;
		vertical-align: middle;
		line-height: 28px;
		margin: 20px auto;
	}
	
	#footer_text_right {
		width: 90%;
		max-width: none;
		float: none;
		text-align: center;
		vertical-align: middle;
		line-height: 28px;
		margin: 20px auto;
	}
	
	#footer_text {
    	width: 100%;
    	height: auto;
		display: block;
		overflow: hidden;
	}
	
	
	a.splite_sideEnquiry.on_mobile {
		display: none !important;
	}
	
.gapout .kt-row-column-wrap {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: var(--global-row-gutter-md, 0) var(--global-row-gutter-md, 0) !important;
    grid-auto-rows: minmax(min-content, max-content);
    z-index: 1;
    position: relative;
}
	
#two-column #left, #two-column #right {
    width: 100%;
	float: none;
}
	
#two-column input[type="submit"] {
    margin: 5px 0 0;
}
	
}

/* MOBILE RESPONSIVENESS - TABLETS >801 & <1199
-------------------------------------------------------------------------------*/

@media screen and (min-width: 800px) and (max-width: 1199px) { 
	
	#mobile_social_contacts {
		display: none;
	}
	
	#headmobile {
		display: none;
	}
	
	#head_content {
		display: none;
	}
	
	#head_menu {
		display: none;
	}

	#leftside_contacts {
    	left: 70px;
}
	
	#waves {
	width: 100%;
	height: 90px;
	position: relative;
	float: left;
	z-index: 99999;
	background-image: url(../../../../template_images/waves.png);
	background-size: 100% 90px;
	margin-top: -45px;
}
	
	#fullwidth_content {
		width: 100%;
		max-width: none;
		height: auto;
		margin: 40px 0px;
		padding: 0 30px;
	}
	
	.columns-3 .column {
    	width: 100% !important;
	}
	
	#foot_box {
		float:left;
		width: 45%;
		max-width: 550px;
		text-align:left;
		margin-right: 30px;
	}

	#foot_middle {
		float:right;
		width:45%;
		max-width: 550px;
		text-align:left;
	}

	#foot_right {
		display: none;
	}
	
	#footer_text_left {
		width: 100%;
		max-width: none;
		text-align: center;
		margin: 0;
		padding-top: 10px;
		line-height: 40px;
	}

	#footer_text_right {
		width: 100%;
		max-width: none;
		text-align: center;
		margin: 0;
		line-height: 40px;
		padding-bottom: 10px;
	}
	
	
	a.splite_sideEnquiry.on_mobile {
		display: none !important;
	}

}

/* MOBILE RESPONSIVENESS - DESKTOPS >1199
-------------------------------------------------------------------------------*/

@media (min-width: 1200px) {
	
	
	#headmobile {
		display: none;
	}
	
	#shiftnav-toggle-main {
		display: none !important;
	}
	
	#tablet_menu {
		display: none;
	}
	
	#tablet_head_content {
		display: none;
	}
	
	#tabletmobile {
		display: none;
	}
	
	#mobile_social_contacts {
		display: none;
	}
	
	.toggle-menu,
	.mobile-menu,
	.mobile-menu-toggle {
		display: none !important;
	}

}

/* GUTENBERG
-------------------------------------------------------------------------------*/

/* GUTENBERG
-------------------------------------------------------------------------------*/


.entry-content .alignwide {
margin-left : calc( -100vw / 2 + 100% / 2 );
margin-right : calc( -100vw / 2 + 100% / 2 );
max-width : 100vw;
}

.entry-content .alignfull {
margin-left : calc( -100vw / 2 + 100% / 2 );
margin-right : calc( -100vw / 2 + 100% / 2 );
max-width : 100vw;
}

.alignfull {
    width: 100vw;
    margin-left: calc(50% - 50vw);
}

.alignwide {
    width: calc(100% + 20vw);
    position: relative;
    left: -10vw;
}

.wp-block-image.alignfull, .wp-block-image.alignwide {
    max-width: none;
}

.wp-block-image .image_corners {
	width: 100%;
	height: auto;
}

#content .image_corners img {
	border-radius: 25px !important;
}

#content .docu_download {
	height: 60px;
	width: auto;
	border: 1px solid #999;
	border-radius: 10px;
	line-height: 60px;
	font-size: 18px;
	font-family: inherit;
	margin: 20px;
	padding: 0 20px 0 85px;
	background-image: url(../../../../template_images/document_download.jpg);
	background-repeat: no-repeat;
}

/* IMAGE OVERLAY
-------------------------------------------------------------------------------*/

#content .image-swirl {
    margin:0 auto 5px;
    width:100%;
    background:#EEE;
    border-image:initial;
    position:relative;
    z-index:0
}

#content .image-swirl img {
    border:0;
    display:block;
    width:100%;
	height: auto;
}

#content .image-swirl:before {
    content:"";
    display:block;
    position:absolute;
    width:100%;
    height:57px;
    bottom:0px;
    right:0px;
    z-index:1;
    background:url(https://reefsidemarine.com.au/template_images/image_footer.png);
	background-size: 100% 57px;
}

#content .white_heading {
	color: #fff;
}

.embed-issuu  {
  position: relative;  
  max-width: 100%;
  height: 0;
  overflow: hidden;
  padding-bottom: 75%;
}

.embed-issuu .issuuembed {
  position: absolute;
  left: 0;
  top: 0;
  width: 100% !important;
  height: 100% !important;
}

#content .wp-block-gallery.is-cropped .blocks-gallery-item {
	border: 1px solid #eee;
	padding: 20px;
}

/* FILE BLOCK CSS
-------------------------------------------------------------------------------*/

#content .wp-block-file {
    margin: 1em 0;
	width: 100%;
	padding: 10px 20px 10px 50px;
	border-top: 1px solid #ddd;
	border-bottom: 1px solid #ddd;
	background-image: url("../../../../template_images/pdf_bg.png");
	background-repeat: no-repeat;
	background-position: left 15px bottom 10px; 
	line-height: 20px;
	vertical-align: middle;
}

#content .wp-block-file a {
    font-size: 14px;
	text-transform: uppercase;
}

#content .wp-block-file a:link, #content .wp-block-file a:visited {
	text-decoration: none;
	color: #444;
}

#content .wp-block-file a:hover {
	text-decoration: none;
	color: #444;
}

#content .wp-block-file .wp-block-file__button {
    background-color: transparent;
    border-radius: 0;
    color: #999 !important;
    font-size: 13px;
	float: right;
	text-transform: none;
	display: block;
	padding: 2px 0 0 0;
	margin: 0;
}

hr {
    margin: 2em 0;
}

.grecaptcha-badge { 
    visibility: hidden !important;
}

/* ----------------------------------------------------
   MOBILE MENU – PELICAN BOWLS
   Parent link = navigates
   Arrow button = toggles submenu
-----------------------------------------------------*/

/* Hide the mobile menu checkbox */
.mobile-menu-toggle {
  display: none;
}

/* Mobile hamburger toggle button */
.toggle-menu {
  display: block;
  cursor: pointer;
  z-index: 999999; /* Ensure toggle button appears above content */
  position: absolute;
  top: 0px;
  left: 0px;
  color: #fff;
  padding: 2px 24px;
  font-size: 1.4em;
}

/* Mobile menu container */
.mobile-menu {
  display: none;
  position: absolute;
  top: 70px; /* Adjust as needed */
  left: 20px; /* Adjust as needed */
  background-color: #fff;
  padding: 0 15px 0;
  z-index: 999999; /* Ensure it appears above content */
  animation-duration: 0.3s;
  animation-fill-mode: both;
  width: 80%;
  max-width: 260px;
  font-size: 0.8em;
  -webkit-box-shadow: 0px 0px 7px 0px rgba(0, 0, 0, 0.75);
  -moz-box-shadow: 0px 0px 7px 0px rgba(0, 0, 0, 0.75);
  box-shadow: 0px 0px 7px 0px rgba(0, 0, 0, 0.75);
  border: 2px solid #005ea6;
}

/* Slide animations */
@keyframes slideIn {
  from {
    transform: translateX(-100%);
  }
  to {
    transform: translateX(0);
  }
}

@keyframes slideOut {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-100%);
  }
}

/* Show the menu when the checkbox is checked */
.mobile-menu-toggle:checked + .toggle-menu + .mobile-menu {
  display: block;
  animation-name: slideIn;
}

/* Hide animation when unchecked (visual only) */
.mobile-menu-toggle:not(:checked) + .toggle-menu + .mobile-menu {
  animation-name: slideOut;
}

/* Basic list styling */
.mobile-menu ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

.mobile-menu li {
  margin: 0;
  color: #444;
  font-family: Poppins-Regular, Helvetica, Arial, sans-serif;
  padding: 10px 10px 8px 15px;
  border-bottom: 1px solid #ddd;
}

.mobile-menu li:first-child {
  padding-top: 20px;
}

.mobile-menu li:last-child {
  padding-bottom: 18px;
  border-bottom: 0;
}

/* Top-level links */
.mobile-menu li > a {
  text-decoration: none;
  color: #444;
  display: block;
  padding-right: 30px; /* room for arrow button on parents */
}

.mobile-menu li > a > span {
  display: inline-block;
}

.mobile-menu li > a:hover {
  color: #016bb5;
  font-weight: bold;
}

/* ----------------------------------------------------
   SUBMENUS (YOUR MARKUP: <li class="menu-item-has-children has-sub"><a><span></span></a><ul>…</ul></li>)
-----------------------------------------------------*/

/* Ensure parent items can position the arrow button */
.mobile-menu li.menu-item-has-children,
.mobile-menu li.has-sub {
  position: relative;
}

/* IMPORTANT: override theme/walker default – keep submenus hidden by default */
.mobile-menu li.menu-item-has-children > ul,
.mobile-menu li.has-sub > ul {
  display: none !important; /* closed by default */
  padding-left: 15px;
  margin-top: 5px;
}

/* When JS toggles this class, show the submenu */
.mobile-menu li.menu-item-has-children > ul.submenu-open,
.mobile-menu li.has-sub > ul.submenu-open {
  display: block !important;
}

/* Submenu items */
.mobile-menu li.menu-item-has-children > ul li,
.mobile-menu li.has-sub > ul li {
  border-bottom: 0;
  font-size: 0.9em;
  padding: 6px 10px 6px 10px;
}

/* ----------------------------------------------------
   ARROW BUTTON FOR SUBMENUS
-----------------------------------------------------*/

/* We are NOT using ::after on the <a> anymore */
.mobile-menu li.menu-item-has-children > a::after,
.mobile-menu li.has-sub > a::after {
  content: none;
}

/* Arrow button inserted by JS */
.mobile-menu .submenu-toggle {
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
  width: 24px;
  height: 24px;
  border: none;
  background: transparent;
  cursor: pointer;
  padding: 0;
}

/* Arrow icon */
.mobile-menu .submenu-toggle::before {
  content: "\2304"; /* ▼ */
  font-size: 0.8em;
  color: #444;
}

/* ----------------------------------------------------
   CLOSE BUTTON (X)
-----------------------------------------------------*/
.close-menu {
  position: absolute;
  top: 5px;
  right: 20px;
  cursor: pointer;
  font-size: 24px;
  color: #016bb5;
}