/*======================================
Theme Name: divi-child
Theme URI: http://circlebc.com.au/
Description: Divi Child Theme
Version: 1.0
Author: CircleBC
Author URI: http://circlebc.com.au/
Template: Divi
======================================*/
:root {
	--wave-rock: #331111;
	--dc-rock: #3f1a16;
	--dc-coral: #874a51;
	--dc-seaweed: #4f5400;
	--dc-oyster: #5e7282;
	--dc-kelp: #a77617;
	--dc-pearl: #fbf9e0;
	--dc-coralline: #cc6f4e;
	--dc-title-blurb-ratio: 389 / 319;
	--dc-title-blurb-ratio-16x9: 16 / 9;
	--dc-title-blurb-ratio-9x16: 9 / 16;
	--dc-title-blurb-ratio-15x16: 15/16;
	/* Typekit family name is "filson-soft" */
	--dc-font-body: "filson-soft", Arial, Helvetica, Lucida, sans-serif;
	--dc-menu-highlight: #cc6e4e;
}
/** Disable Divi Scroll **/
html,
body {
	scroll-behavior: auto !important;
}
/* .dc-has-auto-opened-popup::before {
	content: '';
	background-color: var(--dc-rock);
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 1000000;
} */
/* Site-wide default: override Divi/Arial body text */
body,
h1, h2, h3, h4, h5, h6,
p, a, li, span,
input, textarea, select, button,
.et_pb_module,
.et_pb_button {
	font-family: var(--dc-font-body) !important;
}

.dc-underlined-header,
.dc-underlined-header h1,
.dc-underlined-header h2,
.dc-underlined-header h3,
.dc-underlined-header h4,
.dc-underlined-header h5,
.dc-underlined-header h6,
.dc-underlined-header p,
.dc-underlined-header span,
.dc-underlined-header a {
	text-underline-offset: 0.24em;
}

/* Filson Soft Light */
/* font-family: "filson-soft", sans-serif;
font-weight: 200;
font-style: normal;
Filson Soft Light Italic
font-family: "filson-soft", sans-serif;
font-weight: 200;
font-style: italic;
Filson Soft Regular
font-family: "filson-soft", sans-serif;
font-weight: 400;
font-style: normal;
Filson Soft Regular Italic
font-family: "filson-soft", sans-serif;
font-weight: 400;
font-style: italic;
Filson Soft Bold
font-family: "filson-soft", sans-serif;
font-weight: 700;
font-style: normal;
Filson Soft Bold Italic
font-family: "filson-soft", sans-serif;
font-weight: 700;
font-style: italic;
Filson Soft Black
font-family: "filson-soft", sans-serif;
font-weight: 800;
font-style: normal;
Filson Soft Black Italic
font-family: "filson-soft", sans-serif;
font-weight: 800;
font-style: italic; */

/* Wave divider – overlaps the bottom of the section above it */
.dc-wave-divider {
	--dc-divider-height: 291;
	--dc-divider-width: 1920;
	position: relative;
	z-index: 10;
	padding-top: 0 !important;
	padding-bottom: 0 !important;
	/* CSS fallback when JS has not run; matches full-width wave aspect ratio */
	margin-top: calc(-100% * var(--dc-divider-height) / var(--dc-divider-width));
}

.dc-wave-divider .et_pb_row,
.dc-wave-divider .et_pb_column {
	padding-top: 0 !important;
	padding-bottom: 0 !important;
}

.dc-wave-divider img {
	display: block;
	width: 100%;
	height: auto;
}

body.et-fb .dc-wave-divider,
body.et-bfb .dc-wave-divider {
	margin-top: 0 !important;
}

/** Cutaway Banner **/
.cbc-homepage-slide-logo {
    position: absolute;
    top: 7%;
    left: 0;
    right: 0;
}
.cbc-homepage-slide-logo.cbc-homepage-slide-logo-still {
    position: relative;
}

body.et-fb .cbc-homepage-slide-logo,
body.et-bfb .cbc-homepage-slide-logo {
	position: relative;
	top: auto;
	left: auto;
	right: auto;
}
.cbc-homepage-slide-logo img {
    /* max-width: 70%; */
    max-width: 170px;
}
.cbc-homepage-slide-logo.cbc-homepage-slide-logo-landscape img {
	/* max-width: 270px; */
	max-width: 275px;
}
.dc-custom-close-icon-wrapper a.da-close.evr-close {
    width: auto !important;
    margin: 34px 0px 20px 20px;
    font-size: 0 !important;
	background-color: transparent !important;
}
#et-boc .area-outer-wrap[data-da-type=flyin].full-height[data-da-size=auto] .da-close-wrap,
#et-boc .area-outer-wrap[data-da-type=popup].full-height[data-da-size=auto] .da-close-wrap {
	width: 90% !important;
}
/* Fade-in when Divi Areas shows a popup (reuses Divi fadeIn keyframes). */
#et-boc .area-outer-wrap[data-da-type=popup],
.area-outer-wrap[data-da-type=popup] {
	animation-name: fadeIn;
	-webkit-animation-duration: 400ms;
	animation-duration: 400ms;
	-webkit-animation-timing-function: linear;
	animation-timing-function: linear;
}
#et-boc .area-outer-wrap.dc-custom-close-icon-wrapper .da-close,
.area-outer-wrap.dc-custom-close-icon-wrapper .da-close {
	opacity: 1;
}
#et-boc .area-outer-wrap.dc-custom-close-icon-wrapper .da-close:hover,
.area-outer-wrap.dc-custom-close-icon-wrapper .da-close:hover {
	opacity: 0.7;
}
.dc-custom-close-icon-wrapper a.da-close.evr-close::after {
	content: '';
	background-image: url('/wp-content/uploads/2026/07/close-icon.png');
	background-repeat: no-repeat;
	background-position: center;
	display: inline-block;
	padding: 30px 25px;
	background-size: 47px 42px;
}
.dc-custom-close-icon-rock-wrapper a.da-close.evr-close::after {
	background-image: url('/wp-content/uploads/2026/07/close-icon-rock.png');
}
.dc-full-height .et_pb_slide {
	height: 100vh !important;
}
.the-cutaway-acknowledgement-wrapper {
    width: 100% !important;
    left: 0 !important;
	padding: 0 !important;
}
#et-boc .area-outer-wrap .dc-vertical-center-section-content,
.dc-vertical-center-section-content {
	display: table !important;
}
.dc-vertical-center-section-content .et_pb_row {
	display: table-cell !important;
	vertical-align: middle;
}
@media only screen and (max-width: 480px) {
	.cbc-homepage-slide-logo img {
		/* max-width: 70%; */
		width: 30vw;
	}
	.cbc-homepage-slide-logo.cbc-homepage-slide-logo-landscape img {
		/* max-width: 70%; */
		width: 60vw;
	}
}
.cbc-slide-arrow img {
    /* max-width: 7vw; */
    max-width: 2vw;
}
/* .highlighted-title-banner .et_pb_slides .et_pb_slide {
	max-height: calc(100vh - var(--dc-header-offset, 120px));
} */
.highlighted-title-banner .et_pb_slides .et_pb_slide .et_pb_slide_title {
	display: inline-block;
	padding: 15px 40px;
	border-radius: 15px;
}

.highlighted-title-banner .et_pb_slide:nth-child(3n + 1) .et_pb_slide_title {
	background-color: var(--dc-oyster);
}

.highlighted-title-banner .et_pb_slide:nth-child(3n + 2) .et_pb_slide_title {
	background-color: var(--dc-kelp);
}

.highlighted-title-banner .et_pb_slide:nth-child(3n + 3) .et_pb_slide_title {
	background-color: var(--dc-coral);
}
/** Cancel JS equal-height min-heights when enquiry columns stack (980px and below) **/
@media only screen and (max-width: 980px) {
	.dc-make-same-height-enquiry-wrapper .et_pb_module_header,
	.dc-make-same-height-enquiry-wrapper .et_pb_blurb_description {
		min-height: 0 !important;
	}
}
/** Title blurb – image as background, title anchored to bottom **/
.dc-title-blurb {
	display: flex;
	flex-direction: column;
	height: 100%;
}

.dc-title-blurb .et_pb_blurb_content {
	display: grid;
	grid-template: 1fr / 1fr;
	width: 100%;
	flex: 1;
	height: auto;
	min-height: 100%;
	aspect-ratio: var(--dc-title-blurb-ratio);
}

.dc-title-blurb .et_pb_main_blurb_image,
.dc-title-blurb .et_pb_blurb_container {
	grid-area: 1 / 1;
}

.dc-title-blurb .et_pb_main_blurb_image {
	position: relative;
	z-index: 0;
	width: 100%;
	height: 100%;
	min-height: 100%;
	margin: 0 !important;
	padding: 0 !important;
	overflow: hidden;
}

.dc-title-blurb .et_pb_main_blurb_image .et_pb_image_wrap {
	position: absolute;
	inset: 0;
}

.dc-title-blurb .et_pb_main_blurb_image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	display: block;
}

.dc-title-blurb .et_pb_blurb_container {
	position: relative;
	z-index: 1;
	align-self: end;
}
.dc-title-blurb .et_pb_module_header {
    padding-bottom: 0;
}

/** Title blurb 16:9 – same as .dc-title-blurb, wider image box **/
.dc-title-blurb.dc-title-blurb-16x9 {
	--dc-title-blurb-ratio: var(--dc-title-blurb-ratio-16x9);
}

/** Title blurb 9:16 – same as .dc-title-blurb, taller image box **/
.dc-title-blurb.dc-title-blurb-9x16 {
	--dc-title-blurb-ratio: var(--dc-title-blurb-ratio-9x16);
}

/** Title blurb 685×425 – same as .dc-title-blurb, 3-column image box **/
.dc-title-blurb.dc-title-blurb-15x16 {
	--dc-title-blurb-ratio: var(--dc-title-blurb-ratio-15x16);
}

/** Boxed title blurb – alternate panel colors (classes from blurb-alt-colors.js) **/
.dc-title-blurb-boxed .et_pb_blurb_container {
	color: #fff;
	background-color: var(--dc-blurb-panel-bg);
}

.dc-title-blurb-boxed.dc-blurb-alt-1 .et_pb_blurb_container {
	--dc-blurb-panel-bg: var(--dc-seaweed);
}

.dc-title-blurb-boxed.dc-blurb-alt-2 .et_pb_blurb_container {
	--dc-blurb-panel-bg: var(--dc-coral);
}

.dc-title-blurb-boxed.dc-blurb-alt-3 .et_pb_blurb_container {
	--dc-blurb-panel-bg: var(--dc-oyster);
}

.dc-title-blurb-boxed.dc-blurb-alt-4 .et_pb_blurb_container {
	--dc-blurb-panel-bg: var(--dc-kelp);
}

.dc-title-blurb-boxed.dc-blurb-alt-5 .et_pb_blurb_container {
	--dc-blurb-panel-bg: var(--dc-rock);
}

/* Optional: 75% panel opacity (text stays solid). Add class: dc-blurb-bg-75 */
.dc-title-blurb-boxed.dc-blurb-bg-75 .et_pb_blurb_container {
	background-color: color-mix(in srgb, var(--dc-blurb-panel-bg) 75%, transparent);
}

/** Heading **/
.et_pb_heading .et_pb_heading_container .et_pb_module_heading {
    padding-bottom: 0;
}

/** Three Columns Row **/
.et_pb_row.dc-3-columns-row .et_pb_column {
    margin-bottom: 50px;
}
@media only screen and (min-width: 768px) {
    .et_pb_row.dc-3-columns-row {
        display: flex;
        column-gap: 20px;
    }
    .et_pb_row.dc-3-columns-row:after {
        display: none;
    }
    .dc-3-columns-row .et_pb_column, .dc-3-columns-row.et_pb_row .et_pb_column {
        width: 33.3333%;
    }
    .dc-3-columns-row .et_pb_column, .dc-3-columns-row.et_pb_row .et_pb_column {
        margin-right: 0;
    }
}
.dc-title-blurb .et_pb_blurb_description {
	display: -webkit-box;
	/* -webkit-line-clamp: 6; */
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;     
	overflow: hidden;   
}
.dc-title-blurb .et_pb_module_header {
	margin-bottom: 5px;
}
@media only screen and (max-width: 1200px) {
	.dc-title-blurb .et_pb_blurb_description {
		-webkit-line-clamp: 4;
	}
}
@media only screen and (max-width: 980px) {
	.dc-title-blurb .et_pb_blurb_description {
		-webkit-line-clamp: 3;
	}
}
@media only screen and (max-width: 840px) {
	.dc-title-blurb .et_pb_blurb_description {
		-webkit-line-clamp: 2;
	}
}
@media only screen and (max-width: 767px) {
	.dc-title-blurb .et_pb_blurb_description {
		/* -webkit-line-clamp: 6; */
		-webkit-line-clamp: 2;
	}
}
@media only screen and (max-width: 380px) {
	.dc-title-blurb .et_pb_blurb_description {
		-webkit-line-clamp: 4;
	}
}

/** Four Columns Row **/
.et_pb_row.dc-4-columns-row .et_pb_column {
	margin-bottom: 50px;
}
@media only screen and (min-width: 768px) {
	.et_pb_row.dc-4-columns-row {
		display: flex;
		column-gap: 20px;
	}
	.et_pb_row.dc-4-columns-row:after {
		display: none;
	}
	/* Equal widths: flex basis 0 avoids Divi 1/4 + gap fighting content size */
	.dc-4-columns-row .et_pb_column,
	.dc-4-columns-row.et_pb_row .et_pb_column {
		float: none;
		width: auto;
		max-width: none;
		flex: 1 1 0;
		min-width: 0;
		margin-right: 0;
	}
}
@media only screen and (max-width: 580px) {
	.et_pb_module.et_pb_blurb.dc-title-blurb .et_pb_module_header {
		font-size: 24px;
	}
}
@media only screen and (max-width: 479px) {
	.et_pb_blurb.dc-title-blurb {
		margin-bottom: 50px !important;
	}
}


/** Header **/
.dc-fullmenu-btn {
	cursor: pointer;
}

/*
 * Sticky compact header. Do not transition `background`: the wave PNG cannot
 * interpolate to `none`, so the image drops out while background-color still
 * fades from transparent → #331111 and the page white flashes through.
 * Paint the solid colour instantly; only padding animates.
 *
 * Disabled: keep the wavy background-image when the header becomes sticky.
 */
 /* .page-id-3234 #main-header-wp > .et_pb_row.main-header {
    transition: padding 0.3s ease-in-out;
} */

#main-header-wp > .et_pb_row.main-header .et_pb_image_0_tb_header .et_pb_image_wrap img,
#main-header-wp > .et_pb_row.main-header .dc-360-btn img,
#main-header-wp > .et_pb_row.main-header .dc-fullmenu-btn.dc-fullmenu-btn-open img {
    transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

/*
 * Optional Theme Builder class on #main-header-wp.
 * At the top of the page the header stays in-flow (not fixed).
 * After leaving the top it is position:fixed; opacity 0 until scroll-up.
 */
body:not(.et-fb):not(.et-bfb) #main-header-wp.dc-scroll-up-sticky {
	transition: opacity 0.3s ease;
}
body:not(.et-fb):not(.et-bfb) #main-header-wp.dc-scroll-up-sticky.dc-scroll-up-sticky--fixed {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
}
body.admin-bar:not(.et-fb):not(.et-bfb) #main-header-wp.dc-scroll-up-sticky.dc-scroll-up-sticky--fixed {
	top: 32px;
}
@media screen and (max-width: 782px) {
	body.admin-bar:not(.et-fb):not(.et-bfb) #main-header-wp.dc-scroll-up-sticky.dc-scroll-up-sticky--fixed {
		top: 46px;
	}
}
body:not(.et-fb):not(.et-bfb) #main-header-wp.dc-scroll-up-sticky.dc-scroll-up-sticky--hidden {
	opacity: 0;
}
body:not(.et-fb):not(.et-bfb) #main-header-wp.dc-scroll-up-sticky.dc-scroll-up-sticky--hidden .et_pb_row,
body:not(.et-fb):not(.et-bfb) #main-header-wp.dc-scroll-up-sticky.dc-scroll-up-sticky--hidden .dc-fullmenu-btn {
	pointer-events: none;
}
.dc-scroll-up-sticky-placeholder {
	visibility: hidden;
	pointer-events: none;
}
#main-header-wp.dc-custom-sticky-header.et_pb_sticky.et_pb_sticky--top {
	background-color: var(--dc-rock, #3f1a16) !important;
	background-image: none !important;
}
#main-header-wp.dc-custom-sticky-header.et_pb_sticky.et_pb_sticky--top > .et_pb_row.main-header {
	/* padding-top: 30px !important;
	padding-bottom: 30px !important; */
	padding-top: 0px !important;
	padding-bottom: 0px !important;
	transition: padding 0.3s ease-in-out;
}
#main-header-wp.dc-custom-sticky-header.et_pb_sticky.et_pb_sticky--top > .et_pb_row.main-header .et_pb_image_0_tb_header .et_pb_image_wrap img,
#main-header-wp.dc-custom-sticky-header.et_pb_sticky.et_pb_sticky--top > .et_pb_row.main-header .dc-360-btn img,
#main-header-wp.dc-custom-sticky-header.et_pb_sticky.et_pb_sticky--top > .et_pb_row.main-header .dc-fullmenu-btn.dc-fullmenu-btn-open img,
#main-header-wp.dc-custom-sticky-header.et_pb_sticky.et_pb_sticky--top > .et_pb_row.main-header .dc-fullmenu-btn-close img {
	transform: scale(0.6);
	/* transform-origin: top center; */
	/* transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1); */
}
#main-header-wp.dc-custom-sticky-header.et_pb_sticky.et_pb_sticky--top > .et_pb_row.main-header .site-logo-col img,
#main-header-wp.dc-custom-sticky-header.et_pb_sticky.et_pb_sticky--top > .et_pb_row.main-header .dc-360-btn img,
#main-header-wp.dc-custom-sticky-header.et_pb_sticky.et_pb_sticky--top > .et_pb_row.main-header .dc-fullmenu-btn.dc-fullmenu-btn-open img,
#main-header-wp.dc-custom-sticky-header.et_pb_sticky.et_pb_sticky--top > .et_pb_row.main-header .dc-fullmenu-btn-close img {
	padding-top: 10px;
}
#main-header-wp::after {
	content: '';
	width: 100%;
	height: calc(var(--dc-header-height) - var(--dc-header-overlap-offset));
	background-color: var(--dc-rock, #3f1a16) !important;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 0;
	pointer-events: none;
}
/*
 * Divi's placeholder is a clone sitting in-flow while the real header is
 * position:fixed. opacity:0 punched a white hole (body background) in that
 * slot. Hide the clone's contents but keep the header colour filling the
 * reserved height until header-offset.js matches it to the compact bar.
 */
#main-header-wp.et_pb_sticky_placeholder {
	background-color: var(--dc-rock, #3f1a16) !important;
	background-image: none !important;
	overflow: hidden !important;
	pointer-events: none !important;
}
#main-header-wp.et_pb_sticky_placeholder * {
	visibility: hidden !important;
}

/* Taller wave slot on wide screens so the PNG does not leave a white strip. */
@media only screen and (min-width: 1921px) {
	#main-header-wp > .main-header {
		padding-top: 40px !important;
		padding-bottom: 65px !important;
	}
	body.logged-in:not(.et-fb):not(.et-bfb) .et_pb_section.dc-full-screen-menu {
		margin-top: calc(var(--dc-header-height) - 15px) !important;
	}
	body:not(.et-fb):not(.et-bfb) #main-header-wp.dc-custom-sticky-header.et_pb_sticky.et_pb_sticky--top ~ .et_pb_section.dc-full-screen-menu {
		margin-top: calc(var(--dc-header-height) + 30px) !important;
	}
}
@media only screen and (min-width: 2200px) {
	body.logged-in:not(.et-fb):not(.et-bfb) .et_pb_section.dc-full-screen-menu {
		margin-top: calc(var(--dc-header-height) - 17px) !important;
	}
}
@media only screen and (min-width: 2323px) {
	body.logged-in:not(.et-fb):not(.et-bfb) .et_pb_section.dc-full-screen-menu {
		margin-top: calc(var(--dc-header-height) - 32px) !important;
	}
}
@media only screen and (min-width: 3000px) {
	#main-header-wp > .main-header {
		padding-top: 40px !important;
		padding-bottom: 72px !important;
	}
	body:not(.et-fb):not(.et-bfb) .et_pb_section.dc-full-screen-menu {
		margin-top: calc(var(--dc-header-height) - var(--dc-header-overlap-offset) - 2px) !important;
	}	
	body.logged-in:not(.et-fb):not(.et-bfb) .et_pb_section.dc-full-screen-menu {
		margin-top: calc(var(--dc-header-height) - var(--dc-header-overlap-offset) + 27px) !important;
	}
}
@media only screen and (min-width: 3839px ) {
	#main-header-wp > .main-header {
		padding-top: 40px !important;
		padding-bottom: 81px !important;
	}
}

/*
 * Absolute header: push main content down by (header height − wave),
 * so only the wave overlaps. --dc-header-offset is set by header-offset.js.
 * Tune wave size with --dc-header-wave-overlap if needed (e.g. 80px).
 */
:root {
	--dc-header-offset: 0px;
	--dc-header-height: 0px;
	--dc-header-overlap-offset: 0px;
	/* --dc-header-wave-overlap: 80px; */
}

body:not(.et-fb):not(.et-bfb) .et_pb_section.dc-slide-left-menu {
	z-index: 100001;
	pointer-events: none;
}

body:not(.et-fb):not(.et-bfb) .et_pb_section.dc-slide-left-menu .et_pb_row,
body:not(.et-fb):not(.et-bfb) .et_pb_section.dc-slide-left-menu .dc-fullmenu-btn {
	pointer-events: auto;
}
/* body:not(.et-fb):not(.et-bfb) .et_pb_section.dc-slide-left-menu {
	-webkit-transition: background-image 1s ease-in-out;
	transition: background-image 1s ease-in-out;
}
body:not(.et-fb):not(.et-bfb) .et_pb_section.dc-slide-left-menu:has(+ .dc-full-screen-menu-active) {
	background-image: none !important;
} */

body:not(.et-fb):not(.et-bfb) #et-main-area {
	padding-top: var(--dc-header-offset);
}

/* Frontend only: fixed overlay — slides in from the right */
body:not(.et-fb):not(.et-bfb) .et_pb_section.dc-full-screen-menu {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	/* height: 100%; */
	height: calc((100% - var(--dc-header-height)) + var(--dc-header-overlap-offset));
	overflow-y: auto;
	box-sizing: border-box;
	/* Clear absolute header so menu links aren't covered */
	/* padding-top: var(--dc-header-height); */
	margin-top: calc(var(--dc-header-height) - var(--dc-header-overlap-offset));
	transform: translateX(100%);
	visibility: hidden;
	pointer-events: none;
	z-index: 100001;
	transition: transform 0.4s ease, visibility 0s linear 0.4s;
}
body:not(.et-fb):not(.et-bfb) #main-header-wp.dc-custom-sticky-header.et_pb_sticky.et_pb_sticky--top ~ .et_pb_section.dc-full-screen-menu {
	height: calc(100% - var(--dc-header-height));
	margin-top: var(--dc-header-height);
}
body:not(.et-fb):not(.et-bfb) #main-header-wp.dc-custom-sticky-header.et_pb_sticky.et_pb_sticky--top ~ .et_pb_section.dc-full-screen-menu > .dc-fullmenu-slide {
	margin-top: 0px !important;
}
body.logged-in:not(.et-fb):not(.et-bfb) .et_pb_section.dc-full-screen-menu {
	/* margin-top: calc(var(--dc-header-height) - 30px); */
	margin-top: calc(var(--dc-header-height) - 10px);
}
body.logged-in:not(.et-fb):not(.et-bfb) #main-header-wp.dc-custom-sticky-header.et_pb_sticky.et_pb_sticky--top ~ .et_pb_section.dc-full-screen-menu {
	margin-top: calc(var(--dc-header-height) + 30px);
}
@media only screen and (max-width: 980px) {
	.main-header .site-logo-col,
	.main-header .menu-icon-col {
		width: 50% !important;
		margin-right: 0px !important;
	}
	.main-header > .et_pb_column_1_tb_header {
		width: 0px !important;
	}
}
@media only screen and (max-width: 600px) {
	body:not(.et-fb):not(.et-bfb) .et_pb_section.dc-full-screen-menu {
		margin-top: calc(var(--dc-header-height) - var(--dc-header-overlap-offset) + 15px);
	}
	body.logged-in:not(.et-fb):not(.et-bfb) .et_pb_section.dc-full-screen-menu {
		/* margin-top: calc(var(--dc-header-height) - 30px); */
		margin-top: var(--dc-header-height);
	}
	body.logged-in:not(.et-fb):not(.et-bfb) #main-header-wp.dc-custom-sticky-header.et_pb_sticky.et_pb_sticky--top ~ .et_pb_section.dc-full-screen-menu {
		/* margin-top: calc(var(--dc-header-height) + 30px); */
		margin-top: var(--dc-header-height);
	}
}
@media only screen and (max-width: 600px) {
	#main-header-wp.mobile-solid-bg {
		background-image: none !important;
		background-color: var(--dc-rock) !important;
		padding-bottom: 0px !important;
		margin-bottom: 0px !important;
	}
	#main-header-wp.mobile-solid-bg > .main-header {
		padding-bottom: 20px !important;
	}
	body.logged-in:not(.et-fb):not(.et-bfb) .et_pb_section.dc-full-screen-menu.dc-new-mobile-offset {
		margin-top: calc(var(--dc-header-height) + 27px);

	}
	body:not(.et-fb):not(.et-bfb) .et_pb_section.dc-full-screen-menu.dc-new-mobile-offset {
		margin-top: var(--dc-header-height);
	}
	#main-header-wp.mobile-solid-bg .cutaway-logo img {
		max-height: 31.28px !important;
	}
	#main-header-wp .dc-360-btn img,
	#main-header-wp .dc-fullmenu-btn-open img,
	#main-header-wp .dc-fullmenu-btn-close img {
		max-height: 28px !important;
	}
}

body:not(.et-fb):not(.et-bfb) .et_pb_section.dc-full-screen-menu.dc-full-screen-menu-active {
	transform: translateX(0);
	visibility: visible;
	pointer-events: auto;
	transition: transform 0.4s ease, visibility 0s;
}

body:not(.et-fb):not(.et-bfb).dc-full-screen-menu-open {
	overflow: hidden;
}

.dc-fullmenu-slide .dc-fullmenu-slide-menu-list a {
	padding: 5px 40px 5px 15px;
	border-radius: 9px;
	border-radius: 1.5vh;
}
/* .dc-full-screen-menu .dc-fullmenu-slide.et_pb_row {
    padding-top: 2vh !important;
} */
.dc-fullmenu-slide .dc-fullmenu-slide-menu-list a:hover,
.dc-fullmenu-slide .dc-fullmenu-slide-menu-list a:active,
.dc-fullmenu-slide .dc-fullmenu-slide-menu-list .dc-menu-highlight a,
.dc-fullmenu-slide .dc-fullmenu-slide-menu-list li.current_page_item a {
	background-color: var(--dc-menu-highlight);
}
@media only screen and (max-width: 1450px) {
	.et_pb_section.dc-slide-left-menu {
		padding-bottom: 2vw !important;
	}
}

@media only screen and (min-width: 1200px) {
	.dc-fullmenu-slide .dc-fullmenu-slide-menu-list a {
		font-size: 6vh !important;
	}
}
@media only screen and (max-width: 980px) {
	.dc-fullmenu-slide .dc-fullmenu-slide-menu-list a {
		font-size: 8vw !important;
	}
}

/* footer */
#main-footer .footer-menu-col-1 {
	margin-right: 0px !important;
}
#main-footer .social-links-col {
	margin-right: 6% !important;
}
@media only screen and (max-width: 575px) {
	#main-footer .social-links-col {
		margin-right: 0px !important;
	}
}

/* Carousel Section */
.carousel-section .icc-slider {
	overflow-x: inherit !important;
	overflow-y: inherit !important;
}
.carousel-section .icc-slider .et_pb_slide_content {
    font-size: 16px;
}
.carousel-section .icc-slider .et_pb_slider_container_inner {
    height: 500px;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex !important;
    -webkit-box-align: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    align-items: center;
    -webkit-box-pack: center;
    -moz-box-pack: center;
    -ms-flex-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
}
.carousel-section .icc-slider .et_pb_container.clearfix {
    width: 100%;
    display: inline-block;
}
.carousel-section .icc-slider .et_pb_slide_image img {
    max-height: 500px !important;
}
.carousel-section .icc-slider.et_pb_slider .et_pb_slide_image,
.carousel-section .icc-slider.et_pb_slider .et_pb_slide_image img,
.carousel-section .icc-slider.et_pb_slider .et_pb_slide_description {
    animation-name: fadeIn;
    -webkit-animation-duration: 250ms;
    animation-duration: 250ms;
    -webkit-animation-delay: unset;
    animation-delay: unset;
    -webkit-animation-timing-function: linear;
    animation-timing-function: linear;
}
.carousel-section .icc-slider.et_pb_slider .et_pb_slide_description {
    text-shadow: none;
    width: 50%;
    height: 100%;
    padding: 60px 60px 60px 0px;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-box-align: start;
    -moz-box-align: start;
    -ms-flex-align: start;
    -webkit-align-items: flex-start;
    align-items: flex-start;
    -webkit-box-pack: center;
    -moz-box-pack: center;
    -ms-flex-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-flex-flow: column;
    -ms-flex-flow: column;
    flex-flow: column;
    float:left;
}
.carousel-section .icc-slider.et_pb_slider .et-pb-controllers {
    text-align: left;
    bottom: 25px !important;
    padding-left: 60px;
}
.carousel-section .icc-slider.et_pb_slider .et-pb-controllers .et-pb-active-control {
    background-color: #3f1a16;
}
.carousel-section .icc-slider.et_pb_slider .et_pb_slide_image {
    width: 50% !important;
    height: 100% !important;
    order: 2;
    margin-top: 0 !important;
    position: relative;
    top: 0;
    right: 0;
    margin-right: 0;
}
.carousel-section .icc-slider.et_pb_slider.slider-left-image .et_pb_slide_image {
    order: unset;
}
.carousel-section .icc-slider.et_pb_slider.slider-left-image .et-pb-controllers {
    padding-left: calc(50% + 65px);
}
.carousel-section .icc-slider.et_pb_slider .et_pb_slide {
    padding: 0;
}

.icc-slider .et_pb_slide_image img {
    height: 100%;
    object-fit: cover;
}
.icc-slider .et-pb-controllers a {
    height: 20px;
    width: 20px;
    border-radius: 100%;
}
.icc-slider .et-pb-controllers a {
    border: 1px solid #3f1a16;
}
.icc-slider .et-pb-slider-arrows a.et-pb-arrow-prev,
.icc-slider .et-pb-slider-arrows a.et-pb-arrow-next {
	font-size: 70px;
}
.icc-slider .et-pb-slider-arrows a.et-pb-arrow-prev {
	left: -40px !important;
}
.icc-slider .et-pb-slider-arrows a.et-pb-arrow-next {
	right: -40px !important;
}
/* .carousel-section .icc-slider.et_pb_slider .et_pb_button {
    line-height: normal !important;
} */
/* .carousel-section .icc-slider.et_pb_slider .et_pb_button:after {
    opacity: 1 !important;
    top: 6px;
} */
 @media only screen and (min-width: 1200px) {
	.icc-slider .et-pb-slider-arrows a.et-pb-arrow-prev {
		left: -110px !important;
	}
	.icc-slider .et-pb-slider-arrows a.et-pb-arrow-next {
		right: -110px !important;
	}
}
@media only screen and (max-width: 1199px) {
    .carousel-section .icc-slider.et_pb_slider .et_pb_slide_image {
        width: 100% !important;
        order: unset !important;
    }
    .carousel-section .icc-slider .et_pb_slide_image img {
        max-height: initial !important;
    }
    .carousel-section .icc-slider .et_pb_slide_description {
        width: 100% !important;
        height: auto !important;
        padding: 30px 40px 75px !important;
    }
    .carousel-section .et_pb_slider_container_inner {
        height: auto !important;
        -webkit-flex-flow: column;
        -ms-flex-flow: column;
        flex-flow: column;
    }
    .carousel-section .icc-slider .et-pb-controllers {
        left: 40px !important;
        padding-left: 0 !important;
    }
    .carousel-section .icc-slider .et_pb_container.clearfix {
        display: table;
        /** Modified 2025-10-29 ticket #34426 carousel resize makes page bounce in mobile **/
        height: auto !important;
    }
    .carousel-section .icc-slider .et_pb_slide_content {
        font-size: calc(12.85px + .42vw) !important;
    }
    .carousel-section .icc-slider.et_pb_slider .et_pb_slide_description .et_pb_slide_title {
        font-size: calc(14.45px + 2.34vw) !important;
    }
    .carousel-section .icc-slider.et_pb_slider .et_pb_button {
        font-size: calc(12.65px + .18vw);
    }
    /** Modified 2025-10-29 ticket #34426 carousel resize makes page bounce in mobile **/
    .icc-slider .et_pb_slide_image img {
        object-fit: contain;
    }
    .carousel-section .icc-slider .et_pb_slider_container_inner {
        display: table-cell !important;
    }
    .carousel-section .icc-slider.et_pb_slider .et_pb_slide_image {
        height: auto !important;
		display: block !important;
    }
}

@media only screen and (max-width: 980px) {
	.icc-slider .et-pb-slider-arrows a.et-pb-arrow-prev {
		left: -40px !important;
	}
	.icc-slider .et-pb-slider-arrows a.et-pb-arrow-next {
		right: -40px !important;
	}
}
@media only screen and (max-width: 575px) {
    .carousel-section .icc-slider.et_pb_slider .et-pb-controllers {
        left: 0 !important;
        text-align: center !important;
        bottom: 35px !important;
    }
}
/** DC Wave Shape Left **/
.dc-wave-shape-left {
  -webkit-mask-image: url('./assets/img/wave-right-no-aspect-ratio-lock.svg');
  mask-image: url('./assets/img/wave-right-no-aspect-ratio-lock.svg');

  -webkit-mask-size: 100% 100% !important;
  mask-size: 100% 100% !important;

  -webkit-mask-repeat: no-repeat !important;
  mask-repeat: no-repeat !important;
  min-height: 400px !important;
}
@media only screen and (max-width: 980px) {
	.dc-wave-shape-left {
		-webkit-mask-image: url('./assets/img/wave-bottom.svg');
		mask-image: url('./assets/img/wave-bottom.svg');
		mask-image: none;
		-webkit-mask-image: none;
	}
}

/** Image modules: square by default; landscape at 980px and below **/
@media only screen and (max-width: 980px) {
	.et_pb_image.dc-landscape-on-mobile .et_pb_image_wrap {
		display: block;
		width: 100%;
		aspect-ratio: 16 / 10;
		overflow: hidden;
	}

	.et_pb_image.dc-landscape-on-mobile .et_pb_image_wrap img {
		display: block;
		width: 100%;
		height: 100%;
		object-fit: cover;
		object-position: center;
	}
}

/**
 * Single 2-col row: text left / image right on desktop.
 * Add class: dc-image-first-mobile
 * Below 980px the image column stacks on top (no duplicate row needed).
 */
@media only screen and (max-width: 980px) {
	.et_pb_row.dc-image-first-mobile {
		display: flex;
		flex-direction: column;
	}

	.et_pb_row.dc-image-first-mobile:after {
		display: none;
	}

	.et_pb_row.dc-image-first-mobile > .et_pb_column {
		float: none;
		width: 100% !important;
		margin-right: 0 !important;
		margin-bottom: 0 !important;
	}

	.et_pb_row.dc-image-first-mobile > .et_pb_column:has(.et_pb_image) {
		order: -1;
		margin-bottom: 30px !important;
	}
}

/** Read more wrapper — frontend only (not Divi builder).
 *  Add dc-read-more-content-wrapper to the extra-content row.
 *  Add dc-read-more-btn to the Read More button module (row above).
 */
body:not(.et-fb):not(.et-bfb) .dc-read-more-content-wrapper:not(.dc-read-more-open) {
	display: none !important;
}

/** Small updates for user-experience **/
.icc-glyph a {
	position: relative;
}
.icc-glyph a::after {
    content: '';
    width: 100%;
    height: 100%;
    left: 0;
    right: 0;
    display: inline-block;
    position: absolute;
    top: 0;
    left: 0;
}

.et_pb_button_module_wrapper:has(.dc-btn.dc-btn-oyster.dc-btn-float) {
	width: max-content;
	float: left;
}

h2.icc-search-heading {
	font-size: 35px;
	font-weight: 700;
}
/* Back to Top */
#dc-back-to-top {
  position: fixed;
  bottom: 120px;
  right: 20px;
  cursor: pointer;
  z-index: 9999;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  background-color: var(--dc-rock);
  color: var(--dc-pearl);
  border: 2px solid var(--dc-rock);
  border-radius: 50%;
  box-shadow: 0 0 3px var(--dc-pearl), 0 4px 14px rgba(63, 26, 22, 0.25);
  text-decoration: none;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: color 0.2s ease, background-color 0.2s ease, opacity 0.3s ease, visibility 0.3s ease;
}
#dc-back-to-top.show {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}

#dc-back-to-top:hover {
  color: var(--dc-rock);
  background-color: var(--dc-pearl);
  box-shadow: 0 0 8px var(--dc-pearl), 0 6px 18px rgba(63, 26, 22, 0.35);
}

/* Icon layout and smooth rotation */
#dc-back-to-top .dc-chevron svg {
  display: block;
  transition: transform 0.3s ease;
}

#dc-back-to-top.is-top .dc-chevron svg {
  transform: rotate(180deg);
}


#main-header-wp .dc-360-btn .et_pb_image_wrap {
	position: relative;
}
#main-header-wp .dc-360-btn .et_pb_image_wrap img {
	position: relative;
	opacity: 0;
}
#main-header-wp .dc-360-btn .et_pb_image_wrap::after {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-image: url('https://cutawaybarangaroo.com.au//wp-content/themes/divi-child/assets/img/360-degree-icon.svg');
	background-size: contain;
	background-repeat: no-repeat;
}

@media only screen and (max-width: 575px) {
	.feedback-form iframe {
		height: 1200px !important;
	}
}