/* 
Theme Name:		 HCANZA Skills
Description:	 A child theme of dustin.com.au.
Author:			 dustin.com.au
Author URI:		 https://dustin.com.au/
Template:		 dustin-neue
Version:		 1.0.0
Text Domain:	 skills
*/


/* Site-wide default body font fallback so anything not explicitly styled by Brizy/WC doesn't fall through to browser default ("Times") */
html,
body {
	font-family: "Open Sans", sans-serif;
}


/* Notice above login form on My Account (from other-device session) */
.skills-login-notice {
	background-color: #e8f3fa;
	border-left: 4px solid #1A7FBA;
	padding: 16px 20px;
	margin: 0 0 24px;
	border-radius: 4px;
}
.skills-login-notice p {
	margin: 0;
}


/* WooCommerce */

/* Scoped to actual WC-rendered output (.woocommerce wrapper + WC block wrappers) so non-WC headings on WC pages are not affected */
.woocommerce h2,
[class*="wp-block-woocommerce-"] h2 {
	font-size: 180%!important;
}

.woocommerce h3,
[class*="wp-block-woocommerce-"] h3 {
	font-size: 135%!important;
	font-weight: bold!important;
}

.woocommerce-page .wp-element-button {
	border: 2px solid #1A7FBA;
	transition: all .2s;
}

.woocommerce-page .wp-element-button:hover {
	background-color: #1A7FBA;
	transition: all .2s;
}

.woocommerce-page button .wc-block-components-button__text {
	font-weight: bold!important;
	color: #1A7FBA!important;
	transition: all .2s;
}

.woocommerce-page .wp-element-button:hover .wc-block-components-button__text {
	color: #fff!important;
}

.woocommerce-page .wc-block-cart-item__wrap .wc-block-components-product-name {
	font-size: 125%!important;
	font-weight: bold;
}

.woocommerce-page .wc-block-components-product-metadata__description p {
	font-size: 90%!important;
}

.woocommerce-page .wc-block-components-product-details__renews {
	font-style: italic;
	font-size: 90%!important;
}


/* My Account */

.woocommerce-MyAccount-navigation {
    padding: 20px;
    box-sizing: border-box;
}

.woocommerce-MyAccount-navigation ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

.woocommerce-MyAccount-navigation ul li {
    border-bottom: 1px solid #e2e2e2;
}

.woocommerce-MyAccount-navigation ul li:first-child {
    border-top: 1px solid #e2e2e2;
}

.woocommerce-MyAccount-navigation ul li a {
    display: block;
    padding: 10px 14px;
    color: #1A7FBA;
    text-decoration: none;
    font-size: 15px;
    transition: background-color 0.15s, color 0.15s;
}

.woocommerce-MyAccount-navigation ul li a:hover {
    background-color: #e8f1f8;
    color: #1A7FBA;
    text-decoration: none;
}

.woocommerce-MyAccount-navigation ul li.is-active > a {
    background-color: rgba(26, 127, 186, 0.1);
    border-left: 3px solid #1A7FBA;
    color: #1A7FBA;
    font-weight: 600;
    padding-left: 11px;
}

.mp-notice {
    display: block;
    padding: 12px 16px;
    margin-bottom: 24px;
    border-left: 4px solid;
    border-radius: 0 4px 4px 0;
    font-size: 15px;
    line-height: 1.5;
}

.mp-notice--info {
    background-color: #e8f5fa;
    border-color: #0091b6;
    color: #005f78;
}

.mp-notice--success {
    background-color: #e8f9f1;
    border-color: #09d87e;
    color: #076b3e;
}

.mp-notice--warning {
    background-color: #fff8e1;
    border-color: #ffba00;
    color: #7a5800;
}

.mp-notice--error {
    background-color: #fde8eb;
    border-color: #ef4059;
    color: #8b1a28;
}

.woocommerce-MyAccount-content h2 {
    font-size: 20px !important;
    font-weight: 600 !important;
    margin-bottom: 12px;
}

.woocommerce-MyAccount-content > h3 {
    font-size: 18px !important;
    font-weight: 600 !important;
    margin-top: 0;
    margin-bottom: 8px;
}

.woocommerce-MyAccount-content .woocommerce-Address-title h2,
.woocommerce-MyAccount-content .woocommerce-column__title {
    font-size: 17px !important;
    font-weight: 600 !important;
    margin-bottom: 8px;
}

.woocommerce-Address-title .edit {
    font-size: 13px;
    font-weight: 400;
    color: #7e7e7e;
    margin-left: 10px;
    text-decoration: none;
}

.woocommerce-Address-title .edit:hover {
    color: #1A7FBA;
    text-decoration: underline;
}

.woocommerce-MyAccount-content .woocommerce-Address {
    background-color: #f5f5f5;
    border: 1px solid #e2e2e2;
    border-radius: 6px;
    padding: 20px 24px;
}


/* WooCommerce cart/notice messages — floating toast */

ul.woocommerce-message,
ul.woocommerce-info,
ul.woocommerce-error,
.woocommerce-message,
.woocommerce-info,
.woocommerce-error {
	list-style: none !important;
	position: fixed !important;
	top: 90px !important;
	left: 50% !important;
	transform: translateX(-50%) !important;
	width: calc(100% - 40px) !important;
	max-width: 900px !important;
	margin: 0 !important;
	padding: 14px 20px !important;
	border: 1px solid #c8e6d0 !important;
	border-left: 4px solid #09d87e !important;
	border-radius: 6px !important;
	background-color: #e8f9f1 !important;
	color: #076b3e !important;
	font-family: "Open Sans", sans-serif !important;
	font-size: 15px !important;
	line-height: 1.5 !important;
	display: flex !important;
	align-items: center !important;
	gap: 12px !important;
	box-shadow: 0 6px 20px rgba(0,0,0,.12) !important;
	z-index: 9999 !important;
}

ul.woocommerce-message li,
ul.woocommerce-info li,
ul.woocommerce-error li {
	list-style: none !important;
	margin: 0 !important;
	padding: 0 !important;
	display: flex !important;
	align-items: center !important;
	width: 100% !important;
	gap: 12px !important;
	font-family: "Open Sans", sans-serif !important;
}

ul.woocommerce-info,
.woocommerce-info {
	background-color: #e8f5fa !important;
	border-color: #b8dbe9 !important;
	border-left-color: #0091b6 !important;
	color: #005f78 !important;
}

ul.woocommerce-error,
.woocommerce-error {
	background-color: #fde8eb !important;
	border-color: #f4c4cb !important;
	border-left-color: #ef4059 !important;
	color: #8b1a28 !important;
}

ul.woocommerce-message::before,
ul.woocommerce-info::before,
ul.woocommerce-error::before,
.woocommerce-message::before,
.woocommerce-info::before,
.woocommerce-error::before {
	position: static !important;
	margin: 0 4px 0 0 !important;
	font-size: 18px !important;
	top: auto !important;
	left: auto !important;
}

ul.woocommerce-message .button,
ul.woocommerce-info .button,
.woocommerce-message .button,
.woocommerce-info .button {
	margin-left: auto !important;
	background: #1A7FBA !important;
	color: #fff !important;
	border: 2px solid #1A7FBA !important;
	padding: 8px 18px !important;
	border-radius: 4px !important;
	text-transform: none !important;
	font-weight: 600 !important;
	font-family: "Open Sans", sans-serif !important;
	box-shadow: none !important;
	transition: all .2s !important;
	text-decoration: none !important;
}

ul.woocommerce-message .button:hover,
ul.woocommerce-info .button:hover,
.woocommerce-message .button:hover,
.woocommerce-info .button:hover {
	background: #fff !important;
	color: #1A7FBA !important;
}


/* LearnDash: font + polish (primary colour handled in LD admin) */

.learndash-wrapper,
.ld-course-list-items {
	font-family: "Open Sans", sans-serif;
}

.learndash-wrapper :not([class*="ld-icon"]):not([class*="status-icon"]):not(.ld-status):not([class^="ld-icon-"]):not(i):not(svg):not(svg *),
.ld-course-list-items :not([class*="ld-icon"]):not([class*="status-icon"]):not(.ld-status):not([class^="ld-icon-"]):not(i):not(svg):not(svg *) {
	font-family: "Open Sans", sans-serif;
}

.learndash-wrapper h1,
.learndash-wrapper h2,
.learndash-wrapper h3,
.learndash-wrapper h4,
.learndash-wrapper .ld-course-navigation-heading {
	font-family: "Open Sans", sans-serif !important;
	font-weight: 700 !important;
}

.learndash-wrapper .ld-button:not(.ld-button-transparent) {
	border-radius: 4px !important;
	font-weight: 600 !important;
	transition: all .2s;
}

.learndash-wrapper .ld-lesson-item,
.learndash-wrapper .ld-topic-list-item,
.learndash-wrapper .ld-course-list-items .ld-course-list-item {
	border-radius: 4px;
}


/* LearnDash progress bar */

.learndash-wrapper .ld-progress {
	padding: 0 !important;
	margin: 24px 0 !important;
}

.learndash-wrapper .ld-progress .ld-progress-bar {
	height: 10px !important;
	border-radius: 5px !important;
	background: #e5e5e5 !important;
	overflow: hidden;
}

.learndash-wrapper .ld-progress .ld-progress-bar-percentage {
	background: #1A7FBA !important;
	border-radius: 5px !important;
	transition: width .3s ease;
}

.learndash-wrapper .ld-progress .ld-progress-percentage {
	font-weight: 700 !important;
	color: #1A7FBA !important;
	font-size: 14px !important;
}

.learndash-wrapper .ld-progress .ld-progress-steps {
	font-size: 12px !important;
	color: #7e7e7e !important;
}

/* LearnDash navigation buttons (Back to Program, Mark Complete, Prev/Next) */

.learndash-wrapper .ld-content-actions {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 12px;
	padding: 16px 0 !important;
}

.learndash-wrapper .ld-course-step-back,
.learndash-wrapper .ld-content-action a {
	display: inline-block;
	background: #1A7FBA !important;
	color: #fff !important;
	padding: 10px 20px !important;
	border-radius: 4px !important;
	font-weight: 600 !important;
	text-decoration: none !important;
	border: 2px solid #1A7FBA !important;
	transition: all .2s;
}

.learndash-wrapper .ld-course-step-back:hover,
.learndash-wrapper .ld-content-action a:hover {
	background: #fff !important;
	color: #1A7FBA !important;
}

.learndash-wrapper .ld-content-action.ld-empty {
	display: none;
}

/* Lesson/topic list rows (Program Content) */

.learndash-wrapper .ld-table-list-item,
.learndash-wrapper .ld-lesson-item {
	transition: background-color .15s, transform .15s;
}

.learndash-wrapper .ld-table-list-item:hover,
.learndash-wrapper .ld-lesson-item:hover {
	background-color: #f5f9fc !important;
	transform: translateX(2px);
}

.learndash-wrapper .ld-table-list-item a,
.learndash-wrapper .ld-lesson-item-preview-heading {
	font-weight: 600 !important;
}


/* LearnDash course list cards (group/shop grid output) */

article.sfwd-courses.thumbnail {
	display: block;
	background: #fff !important;
	border: 1px solid #e6e6e6 !important;
	border-radius: 8px !important;
	overflow: hidden;
	box-shadow: 0 2px 8px rgba(0,0,0,.04);
	padding: 0 !important;
	margin: 0 !important;
	transition: transform .2s, box-shadow .2s;
	position: relative;
	max-width: 360px;
}

article.sfwd-courses.thumbnail:hover {
	transform: translateY(-3px);
	box-shadow: 0 6px 20px rgba(0,0,0,.1);
}

article.sfwd-courses.thumbnail img.wp-post-image {
	width: 100% !important;
	height: auto;
	display: block;
	margin: 0 !important;
}

article.sfwd-courses.thumbnail .ribbon {
	position: absolute;
	top: 12px;
	left: 12px;
	background: #1A7FBA;
	color: #fff;
	padding: 4px 12px;
	border-radius: 4px;
	font-size: 12px;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: .5px;
	z-index: 2;
}

article.sfwd-courses.thumbnail .ribbon.completed {
	background: #09d87e;
}

article.sfwd-courses.thumbnail > h3,
article.sfwd-courses.thumbnail .entry-title,
article.sfwd-courses.thumbnail h2 {
	padding: 16px 20px 8px !important;
	margin: 0 !important;
	font-size: 18px !important;
	font-weight: 700 !important;
}

article.sfwd-courses.thumbnail a:not(.button):not([aria-hidden]) {
	display: inline-block;
	margin: 0 20px 20px !important;
	padding: 10px 20px !important;
	background: #1A7FBA !important;
	color: #fff !important;
	border: 2px solid #1A7FBA !important;
	border-radius: 4px !important;
	text-decoration: none !important;
	font-weight: 600 !important;
	transition: all .2s;
}

article.sfwd-courses.thumbnail a:not(.button):not([aria-hidden]):hover {
	background: #fff !important;
	color: #1A7FBA !important;
}

/* Site-wide: cap heavy font weights at semi-bold (600) */
strong, b,
h1, h2, h3, h4, h5, h6,
.brz h1, .brz h2, .brz h3, .brz h4, .brz h5, .brz h6,
.brz-wp-title-content,
[style*="font-weight:700"], [style*="font-weight: 700"],
[style*="font-weight:800"], [style*="font-weight: 800"],
[style*="font-weight:900"], [style*="font-weight: 900"],
[style*="font-weight:bold"], [style*="font-weight: bold"] {
	font-weight: 600 !important;
}

/* LearnDash navigation buttons: padding for descenders + restore bottom border.
   Class names duplicated to beat LD core's 5-class :not() chain that strips border-bottom. */
.learndash-wrapper.learndash-wrapper.learndash-wrapper.learndash-wrapper a.ld-course-step-back.ld-course-step-back,
.learndash-wrapper.learndash-wrapper.learndash-wrapper.learndash-wrapper .ld-content-action.ld-content-action a,
.learndash-wrapper.learndash-wrapper.learndash-wrapper.learndash-wrapper a.ld-button.ld-button {
	padding-top: 12px !important;
	padding-bottom: 12px !important;
	line-height: 1.4 !important;
	border-top:    2px solid #1A7FBA !important;
	border-right:  2px solid #1A7FBA !important;
	border-bottom-style: solid !important;
	border-bottom-color: #1A7FBA !important;
	border-bottom-width: 2px !important;
	border-left:   2px solid #1A7FBA !important;
}

/* LearnDash: stop using LearnDash's heading sizes; align with site typography (Brizy default scale) */
.learndash-wrapper h1,
.learndash-wrapper .ld-section-heading h1 {
	font-size: 48px !important;
	font-weight: 600 !important;
	line-height: 1.2 !important;
	font-family: inherit !important;
}
.learndash-wrapper h2,
.learndash-wrapper .ld-section-heading h2 {
	font-size: 32px !important;
	font-weight: 600 !important;
	line-height: 1.25 !important;
	font-family: inherit !important;
}
.learndash-wrapper h3,
.learndash-wrapper .ld-section-heading h3 {
	font-size: 24px !important;
	font-weight: 600 !important;
	line-height: 1.3 !important;
	font-family: inherit !important;
}
.learndash-wrapper h4 {
	font-size: 20px !important;
	font-weight: 600 !important;
	line-height: 1.35 !important;
	font-family: inherit !important;
}
.learndash-wrapper h5 {
	font-size: 18px !important;
	font-weight: 600 !important;
	font-family: inherit !important;
}
.learndash-wrapper h6 {
	font-size: 16px !important;
	font-weight: 600 !important;
	font-family: inherit !important;
}

/* WhatsApp links: prepend the WhatsApp speech-bubble glyph (text links only, not image links) */
a[href*="wa.me"]:not(:has(img)):not(:has(picture)):not(:has(svg))::before,
a[href*="whatsapp.com"]:not(:has(img)):not(:has(picture)):not(:has(svg))::before,
a[href^="whatsapp:"]:not(:has(img)):not(:has(picture)):not(:has(svg))::before {
	content: "";
	display: inline-block;
	width: 1em;
	height: 1em;
	margin-right: 0.4em;
	vertical-align: -0.15em;
	background-color: currentColor;
	-webkit-mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M19.05 4.91A10 10 0 0 0 12.04 2C6.58 2 2.13 6.45 2.13 11.91c0 1.75.46 3.45 1.32 4.95L2 22l5.25-1.38a9.9 9.9 0 0 0 4.79 1.22h.01c5.46 0 9.91-4.45 9.91-9.91 0-2.65-1.03-5.14-2.91-7.02zM12.04 20.15h-.01a8.2 8.2 0 0 1-4.19-1.15l-.3-.18-3.12.82.83-3.04-.2-.31a8.21 8.21 0 0 1-1.26-4.38c0-4.54 3.7-8.24 8.25-8.24 2.2 0 4.27.86 5.83 2.42a8.18 8.18 0 0 1 2.41 5.83c0 4.54-3.7 8.23-8.24 8.23zm4.52-6.16c-.25-.13-1.47-.72-1.69-.81-.23-.08-.39-.13-.56.13-.16.25-.64.81-.79.97-.14.16-.29.18-.54.06-.25-.12-1.05-.39-2-1.23-.74-.66-1.24-1.48-1.38-1.73-.14-.25-.02-.39.11-.51.11-.11.25-.29.37-.43.13-.14.16-.25.25-.41.08-.16.04-.31-.02-.43-.06-.13-.56-1.34-.76-1.84-.2-.49-.41-.42-.56-.42h-.48c-.16 0-.43.06-.66.31-.23.25-.86.85-.86 2.07s.88 2.4 1.01 2.57c.13.16 1.74 2.66 4.21 3.73.59.25 1.05.4 1.41.52.59.19 1.13.16 1.55.1.47-.07 1.47-.6 1.67-1.18.21-.58.21-1.08.15-1.18-.06-.1-.23-.16-.48-.29z'/></svg>") no-repeat center / contain;
	        mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M19.05 4.91A10 10 0 0 0 12.04 2C6.58 2 2.13 6.45 2.13 11.91c0 1.75.46 3.45 1.32 4.95L2 22l5.25-1.38a9.9 9.9 0 0 0 4.79 1.22h.01c5.46 0 9.91-4.45 9.91-9.91 0-2.65-1.03-5.14-2.91-7.02zM12.04 20.15h-.01a8.2 8.2 0 0 1-4.19-1.15l-.3-.18-3.12.82.83-3.04-.2-.31a8.21 8.21 0 0 1-1.26-4.38c0-4.54 3.7-8.24 8.25-8.24 2.2 0 4.27.86 5.83 2.42a8.18 8.18 0 0 1 2.41 5.83c0 4.54-3.7 8.23-8.24 8.23zm4.52-6.16c-.25-.13-1.47-.72-1.69-.81-.23-.08-.39-.13-.56.13-.16.25-.64.81-.79.97-.14.16-.29.18-.54.06-.25-.12-1.05-.39-2-1.23-.74-.66-1.24-1.48-1.38-1.73-.14-.25-.02-.39.11-.51.11-.11.25-.29.37-.43.13-.14.16-.25.25-.41.08-.16.04-.31-.02-.43-.06-.13-.56-1.34-.76-1.84-.2-.49-.41-.42-.56-.42h-.48c-.16 0-.43.06-.66.31-.23.25-.86.85-.86 2.07s.88 2.4 1.01 2.57c.13.16 1.74 2.66 4.21 3.73.59.25 1.05.4 1.41.52.59.19 1.13.16 1.55.1.47-.07 1.47-.6 1.67-1.18.21-.58.21-1.08.15-1.18-.06-.1-.23-.16-.48-.29z'/></svg>") no-repeat center / contain;
}

/* ICS calendar links: prepend a calendar icon (text links only) */
a[href$=".ics"]:not(:has(img)):not(:has(picture)):not(:has(svg))::before,
a[href$=".ICS"]:not(:has(img)):not(:has(picture)):not(:has(svg))::before {
	content: "";
	display: inline-block;
	width: 1em;
	height: 1em;
	margin-right: 0.4em;
	vertical-align: -0.15em;
	background-color: currentColor;
	-webkit-mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M7 2v2H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2h-2V2h-2v2H9V2H7zm-2 6h14v12H5V8zm2 2v2h2v-2H7zm4 0v2h2v-2h-2zm4 0v2h2v-2h-2zm-8 4v2h2v-2H7zm4 0v2h2v-2h-2zm4 0v2h2v-2h-2z'/></svg>") no-repeat center / contain;
	        mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M7 2v2H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2h-2V2h-2v2H9V2H7zm-2 6h14v12H5V8zm2 2v2h2v-2H7zm4 0v2h2v-2h-2zm4 0v2h2v-2h-2zm-8 4v2h2v-2H7zm4 0v2h2v-2h-2zm4 0v2h2v-2h-2z'/></svg>") no-repeat center / contain;
}

/* PDF links: prepend a brand-coloured PDF icon (text links only, not image links) */
a[href$=".pdf"]:not(:has(img)):not(:has(picture)):not(:has(svg))::before,
a[href$=".PDF"]:not(:has(img)):not(:has(picture)):not(:has(svg))::before {
	content: "";
	display: inline-block;
	width: 1em;
	height: 1em;
	margin-right: 0.4em;
	vertical-align: -0.15em;
	background-color: currentColor;
	-webkit-mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M6 2a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8l-6-6H6zm7 1.5L18.5 9H14a1 1 0 0 1-1-1V3.5zM7.5 13h2.25c.97 0 1.75.78 1.75 1.75s-.78 1.75-1.75 1.75H8.5V18h-1v-5zm1 1v1.5h1.25a.75.75 0 0 0 0-1.5H8.5zm4.25-1H14a2 2 0 0 1 2 2v1a2 2 0 0 1-2 2h-1.25v-5zm1 1v3H14a1 1 0 0 0 1-1v-1a1 1 0 0 0-1-1h-.25zm3.75-1H19v1h-1.5v1H19v1h-1.5v2h-1v-5z'/></svg>") no-repeat center / contain;
	        mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M6 2a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8l-6-6H6zm7 1.5L18.5 9H14a1 1 0 0 1-1-1V3.5zM7.5 13h2.25c.97 0 1.75.78 1.75 1.75s-.78 1.75-1.75 1.75H8.5V18h-1v-5zm1 1v1.5h1.25a.75.75 0 0 0 0-1.5H8.5zm4.25-1H14a2 2 0 0 1 2 2v1a2 2 0 0 1-2 2h-1.25v-5zm1 1v3H14a1 1 0 0 0 1-1v-1a1 1 0 0 0-1-1h-.25zm3.75-1H19v1h-1.5v1H19v1h-1.5v2h-1v-5z'/></svg>") no-repeat center / contain;
}

/* Course/Program pages: centre Vimeo/YouTube/embedded videos by default */
body.single-sfwd-courses .brz-wp-post-content p:has(> iframe),
body.single-sfwd-courses .brz-wp-post-content figure.wp-block-embed,
body.single-sfwd-lessons .brz-wp-post-content p:has(> iframe),
body.single-sfwd-lessons .brz-wp-post-content figure.wp-block-embed,
body.single-sfwd-topic .brz-wp-post-content p:has(> iframe),
body.single-sfwd-topic .brz-wp-post-content figure.wp-block-embed {
	text-align: center !important;
}
body.single-sfwd-courses .brz-wp-post-content iframe,
body.single-sfwd-lessons .brz-wp-post-content iframe,
body.single-sfwd-topic .brz-wp-post-content iframe {
	display: inline-block;
	margin-left: auto !important;
	margin-right: auto !important;
}

/* Responsive video embeds: cap to container width and preserve 16:9 aspect ratio */
.brz-wp-post-content iframe[src*="vimeo"],
.brz-wp-post-content iframe[src*="youtube"],
.brz-wp-post-content iframe[src*="youtu.be"] {
	max-width: 100% !important;
	height: auto !important;
	aspect-ratio: 16 / 9;
}
/* Responsive wrapper for any p containing a video iframe — switches to block-flow so width:100% works on smaller screens */
.brz-wp-post-content p:has(> iframe[src*="vimeo"]),
.brz-wp-post-content p:has(> iframe[src*="youtube"]),
.brz-wp-post-content p:has(> iframe[src*="youtu.be"]) {
	max-width: 100%;
}
@media (max-width: 768px) {
	.brz-wp-post-content iframe[src*="vimeo"],
	.brz-wp-post-content iframe[src*="youtube"],
	.brz-wp-post-content iframe[src*="youtu.be"] {
		width: 100% !important;
	}
}

/* My Account (logged-out): hide redundant "Login" h2 above the login form */
body.woocommerce-account:not(.logged-in) .woocommerce > h2 {
	display: none !important;
}

/* WC Blocks checkout: Place Order button — branded by default, hover invert, greyed when form incomplete.
   Specificity bumped with .woocommerce-page prefix to override the global rule on line 33. */
.woocommerce-page .wc-block-components-checkout-place-order-button {
	background: #1A7FBA !important;
	border: 2px solid #1A7FBA !important;
	transition: background .2s, color .2s, border-color .2s;
	cursor: pointer;
}
.woocommerce-page .wc-block-components-checkout-place-order-button,
.woocommerce-page .wc-block-components-checkout-place-order-button .wc-block-components-button__text,
.woocommerce-page .wc-block-components-checkout-place-order-button * {
	color: #fff !important;
}
.woocommerce-page .wc-block-components-checkout-place-order-button:hover:not(.is-form-incomplete):not([disabled]):not([aria-disabled="true"]),
.woocommerce-page .wc-block-components-checkout-place-order-button:focus:not(.is-form-incomplete):not([disabled]):not([aria-disabled="true"]) {
	background: #fff !important;
	border-color: #1A7FBA !important;
}
.woocommerce-page .wc-block-components-checkout-place-order-button:hover:not(.is-form-incomplete):not([disabled]):not([aria-disabled="true"]),
.woocommerce-page .wc-block-components-checkout-place-order-button:hover:not(.is-form-incomplete):not([disabled]):not([aria-disabled="true"]) *,
.woocommerce-page .wc-block-components-checkout-place-order-button:focus:not(.is-form-incomplete):not([disabled]):not([aria-disabled="true"]),
.woocommerce-page .wc-block-components-checkout-place-order-button:focus:not(.is-form-incomplete):not([disabled]):not([aria-disabled="true"]) * {
	color: #1A7FBA !important;
}
.woocommerce-page .wc-block-components-checkout-place-order-button.is-form-incomplete,
.woocommerce-page .wc-block-components-checkout-place-order-button[disabled],
.woocommerce-page .wc-block-components-checkout-place-order-button[aria-disabled="true"] {
	background: #efefef !important;
	border-color: #cccccc !important;
	cursor: not-allowed !important;
}
.woocommerce-page .wc-block-components-checkout-place-order-button.is-form-incomplete,
.woocommerce-page .wc-block-components-checkout-place-order-button.is-form-incomplete *,
.woocommerce-page .wc-block-components-checkout-place-order-button[disabled],
.woocommerce-page .wc-block-components-checkout-place-order-button[disabled] *,
.woocommerce-page .wc-block-components-checkout-place-order-button[aria-disabled="true"],
.woocommerce-page .wc-block-components-checkout-place-order-button[aria-disabled="true"] * {
	color: #777 !important;
}

/* WC Blocks checkout: ~1px gap between floating label and value text (text inputs only) */
.wc-block-components-text-input input {
	padding-top: 23px !important;
	padding-bottom: 8px !important;
}
/* Country/Region select: no gap between label and value */
.wc-blocks-components-select select {
	padding-top: 18px !important;
	padding-bottom: 6px !important;
}
.wc-block-components-text-input.is-active label,
.wc-block-components-text-input label[data-shrunk="true"],
.wc-blocks-components-select label {
	top: 0 !important;
	transform: matrix(0.82, 0, 0, 0.82, 0, 0) !important;
	transform-origin: top left !important;
}

/* WC Blocks checkout: contact fieldset overflows because fieldset default min-width: min-content; force it to respect parent column width */
.wp-block-woocommerce-checkout-contact-information-block,
.wc-block-checkout__contact-fields {
	min-width: 0 !important;
	max-width: 100% !important;
	box-sizing: border-box;
}
.wc-block-checkout__contact-fields .wc-block-components-text-input,
.wc-block-checkout__contact-fields .skills-email-note,
.wc-block-checkout__contact-fields .skills-email-status {
	min-width: 0;
	max-width: 100%;
	box-sizing: border-box;
	white-space: normal !important;
	word-wrap: break-word;
	overflow-wrap: anywhere;
}

/* Checkout notes at 80% of surrounding text size; children inherit so strong/links match */
.skills-email-note,
.skills-email-status {
	font-size: 80% !important;
	line-height: 1.4 !important;
}
.skills-email-note *,
.skills-email-status * {
	font-size: inherit !important;
	line-height: inherit !important;
	white-space: normal !important;
}
body .skills-email-note a,
body .skills-email-note a:link,
body .skills-email-note a:visited,
body .skills-email-status a,
body .skills-email-status a:link,
body .skills-email-status a:visited {
	text-decoration-line: underline !important;
	text-decoration-style: solid !important;
	text-decoration-color: currentColor !important;
}

/* LearnDash: padding around program row internals so the progress bar isn't flush */
.learndash-wrapper .ld-item-list-item-expanded,
.ld-item-list-item-expanded {
	padding-left: 20px !important;
	padding-right: 20px !important;
}

/* LearnDash: remove grey background from the progress widget wrapper */
.learndash-wrapper .ld-progress,
.ld-progress {
	background: transparent !important;
}

/* LearnDash: white text/icon on the Expand/Collapse All button (it has a #1A7FBA bg) */
.ld-expand-button,
.ld-expand-button .ld-text,
.ld-expand-button .ld-icon {
	color: #fff !important;
	fill: #fff !important;
}

/* WooCommerce: size "inc. GST." suffix and "/ year" at 80% of price, on shared baseline */
.woocommerce p.price .woocommerce-price-suffix,
p.price .woocommerce-price-suffix,
.woocommerce p.price .subscription-details,
p.price .subscription-details {
	font-size: 0.6em;
	vertical-align: baseline;
	padding-left: 6px;
}

/* WooCommerce My Account → Orders: space between action buttons (Pay / View / Cancel) */
.woocommerce-orders-table__cell-order-actions .woocommerce-button + .woocommerce-button,
.woocommerce-orders-table__cell-order-actions .button + .button {
	margin-left: 8px;
}
@media (max-width: 480px) {
	.woocommerce-orders-table__cell-order-actions .woocommerce-button,
	.woocommerce-orders-table__cell-order-actions .button {
		margin-bottom: 6px;
	}
	.woocommerce-orders-table__cell-order-actions .woocommerce-button + .woocommerce-button,
	.woocommerce-orders-table__cell-order-actions .button + .button {
		margin-left: 0;
	}
}


/* LearnDash 5.x: make the Mark Complete button visible.
   LD renders it as a <button class="learndash_mark_complete_button ... ld--ignore-inline-css">,
   not an <a>, so the ".ld-content-action a" rules above never reach it. The ld30 legacy
   stylesheet sets its text to #fff and gives it a background only on :hover, relying on the
   "modern" skin stylesheet (which is not loaded here) for the resting background. The result
   was white text on the white page: an invisible button. Modules 2-6 have no quiz, so this
   button is the only way to complete them. */
.learndash-wrapper .ld-content-action .learndash_mark_complete_button,
.learndash-wrapper .learndash_mark_complete_button {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	gap: 8px;
	width: auto !important;
	max-width: none !important;
	background: #1A7FBA !important;
	color: #fff !important;
	padding: 10px 20px !important;
	border: 2px solid #1A7FBA !important;
	border-radius: 4px !important;
	font-weight: 600 !important;
	font-size: 16px !important;
	line-height: 1.2 !important;
	cursor: pointer;
	transition: all .2s;
}

.learndash-wrapper .ld-content-action .learndash_mark_complete_button:hover,
.learndash-wrapper .learndash_mark_complete_button:hover {
	background: #fff !important;
	color: #1A7FBA !important;
}

.learndash-wrapper .learndash_mark_complete_button .ld-svgicon,
.learndash-wrapper .learndash_mark_complete_button svg {
	width: 18px;
	height: 18px;
	flex: 0 0 18px;
}


/* LearnDash: "what do I do next?" panel on a module the member cannot yet complete.
   Rendered by skills_ld_next_action_panel() in functions.php, above the nav buttons. */
.skills-next-action {
	font-family: "Open Sans", sans-serif;
	background: #f0f6fa;
	border-left: 4px solid #1A7FBA;
	border-radius: 4px;
	padding: 20px 24px;
	margin: 24px 0 8px;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
}

.skills-next-action--locked {
	background: #f6f7f8;
	border-left-color: #7e7e7e;
}

.skills-next-action__text {
	margin: 0 !important;
	flex: 1 1 260px;
	font-size: 16px;
	line-height: 1.5;
	color: #3d3d3d;
}

.skills-next-action__text strong {
	font-weight: 700;
	color: #1a1a1a;
}

.skills-next-action__button {
	display: inline-block;
	flex: 0 0 auto;
	background: #1A7FBA;
	color: #fff !important;
	padding: 10px 20px;
	border: 2px solid #1A7FBA;
	border-radius: 4px;
	font-weight: 600;
	font-size: 16px;
	text-decoration: none !important;
	transition: all .2s;
}

.skills-next-action__button:hover,
.skills-next-action__button:focus {
	background: #fff;
	color: #1A7FBA !important;
}

.skills-next-action--locked .skills-next-action__button {
	background: #5a5a5a;
	border-color: #5a5a5a;
}

.skills-next-action--locked .skills-next-action__button:hover,
.skills-next-action--locked .skills-next-action__button:focus {
	background: #fff;
	color: #5a5a5a !important;
}

@media (max-width: 600px) {
	.skills-next-action {
		flex-direction: column;
		align-items: flex-start;
	}
	.skills-next-action__button {
		width: 100%;
		text-align: center;
	}
}


/* LearnDash quiz controls.
   LD ships every quiz button as 12px BLACK text on the site's primary colour with a 20px pill
   radius, so "Start Quiz", "Next" and "Finish Quiz" read as a different design language to the
   module navigation buttons sitting right beside them. Bring them into line. */
/* "Continue" on the results screen is deliberately left alone: it is #5BC0EB, the LearnDash
   secondary colour, which is color3 in the Brizy brand palette. That is a brand colour doing a
   brand job, not an inconsistency. */
.learndash-wrapper input.wpProQuiz_button,
.learndash-wrapper input.wpProQuiz_button2 {
	background: #1A7FBA !important;
	color: #fff !important;
	border: 2px solid #1A7FBA !important;
	border-radius: 4px !important;
	font-family: "Open Sans", sans-serif !important;
	font-size: 15px !important;
	font-weight: 600 !important;
	line-height: 1.2 !important;
	padding: 10px 20px !important;
	text-transform: none !important;
	text-decoration: none !important;
	text-shadow: none !important;
	box-shadow: none !important;
	cursor: pointer;
	transition: all .2s;
}

.learndash-wrapper input.wpProQuiz_button:hover,
.learndash-wrapper input.wpProQuiz_button2:hover {
	background: #fff !important;
	color: #1A7FBA !important;
}

/* Restart / View Questions are secondary actions, so give them the outline treatment rather than
   LearnDash's dark grey, which matches nothing else on the site. */
.learndash-wrapper input.wpProQuiz_button_restartQuiz,
.learndash-wrapper input.wpProQuiz_button_reShowQuestion {
	background: #fff !important;
	color: #1A7FBA !important;
}

.learndash-wrapper input.wpProQuiz_button_restartQuiz:hover,
.learndash-wrapper input.wpProQuiz_button_reShowQuestion:hover {
	background: #1A7FBA !important;
	color: #fff !important;
}

/* LD's icon font draws a decorative tick after the Mark Complete form. With the button styled it
   lands on top of the button's right edge, so the label reads "Mark Complete" with a stray tick. */
.learndash-wrapper .sfwd-mark-complete::after {
	display: none !important;
}


/* One size across the module navigation row. LearnDash ships the "Previous / Back" anchors at 12px
   while the Mark Complete button sits at 16px, so the three buttons read as two different styles
   sitting side by side. */
.learndash-wrapper .ld-content-action a,
.learndash-wrapper .ld-course-step-back,
.learndash-wrapper .ld-content-action .learndash_mark_complete_button,
.learndash-wrapper .learndash_mark_complete_button {
	font-size: 15px !important;
}


/* Button shape across the LearnDash and quiz UI.
   15px is the radius measured on the site's own Brizy buttons ("Enrol Now", "Our Programs",
   "How Skills Programs Work"), so LearnDash reads in the same design language as the Brizy pages.
   Kept as one block at the end of the file so the button shape can be changed in a single place;
   the 4px radii earlier in this stylesheet belong to WooCommerce and are deliberately untouched. */
.learndash-wrapper .ld-content-action a,
.learndash-wrapper .ld-course-step-back,
.learndash-wrapper .ld-button:not(.ld-button-transparent),
.learndash-wrapper .ld-content-action .learndash_mark_complete_button,
.learndash-wrapper .learndash_mark_complete_button,
.learndash-wrapper input.wpProQuiz_button,
.learndash-wrapper input.wpProQuiz_button2,
.learndash-wrapper a#quiz_continue_link,
.skills-next-action__button {
	border-radius: 15px !important;
}


/* Hover states.
   LearnDash's own hover is
     .learndash-wrapper .ld-button:hover:not([disabled]):not(.ld-button-transparent):not(.ld--ignore-inline-css)
   which is specificity (0,6,0) and sets `background-color` with !important. The theme's earlier
   hover rules sit at (0,3,1), so they won the text colour but LOST the background: hovering
   "Previous Quiz", "Back to Program" or "Start Quiz" gave blue text on the unchanged blue
   background, i.e. an invisible label. Repeating the wrapper class lifts these clear of it. */

/* Primary buttons: invert to white with blue text, matching the WooCommerce buttons above. */
.learndash-wrapper.learndash-wrapper.learndash-wrapper.learndash-wrapper.learndash-wrapper .ld-content-action a:hover,
.learndash-wrapper.learndash-wrapper.learndash-wrapper.learndash-wrapper.learndash-wrapper .ld-content-action a:focus,
.learndash-wrapper.learndash-wrapper.learndash-wrapper.learndash-wrapper.learndash-wrapper .ld-course-step-back:hover,
.learndash-wrapper.learndash-wrapper.learndash-wrapper.learndash-wrapper.learndash-wrapper .ld-course-step-back:focus,
.learndash-wrapper.learndash-wrapper.learndash-wrapper.learndash-wrapper.learndash-wrapper .learndash_mark_complete_button:hover,
.learndash-wrapper.learndash-wrapper.learndash-wrapper.learndash-wrapper.learndash-wrapper .learndash_mark_complete_button:focus,
.learndash-wrapper.learndash-wrapper.learndash-wrapper.learndash-wrapper.learndash-wrapper input.wpProQuiz_button:hover,
.learndash-wrapper.learndash-wrapper.learndash-wrapper.learndash-wrapper.learndash-wrapper input.wpProQuiz_button:focus,
.learndash-wrapper.learndash-wrapper.learndash-wrapper.learndash-wrapper.learndash-wrapper input.wpProQuiz_button2:hover,
.learndash-wrapper.learndash-wrapper.learndash-wrapper.learndash-wrapper.learndash-wrapper input.wpProQuiz_button2:focus {
	background: #fff !important;
	background-color: #fff !important;
	color: #1A7FBA !important;
	border-color: #1A7FBA !important;
}

/* Secondary quiz actions start white, so they invert the other way. */
.learndash-wrapper.learndash-wrapper.learndash-wrapper.learndash-wrapper.learndash-wrapper input.wpProQuiz_button_restartQuiz:hover,
.learndash-wrapper.learndash-wrapper.learndash-wrapper.learndash-wrapper.learndash-wrapper input.wpProQuiz_button_restartQuiz:focus,
.learndash-wrapper.learndash-wrapper.learndash-wrapper.learndash-wrapper.learndash-wrapper input.wpProQuiz_button_reShowQuestion:hover,
.learndash-wrapper.learndash-wrapper.learndash-wrapper.learndash-wrapper.learndash-wrapper input.wpProQuiz_button_reShowQuestion:focus {
	background: #1A7FBA !important;
	background-color: #1A7FBA !important;
	color: #fff !important;
	border-color: #1A7FBA !important;
}

/* "Continue" keeps the LearnDash secondary brand colour, so it darkens rather than inverting. */
.learndash-wrapper.learndash-wrapper.learndash-wrapper.learndash-wrapper a#quiz_continue_link:hover,
.learndash-wrapper.learndash-wrapper.learndash-wrapper.learndash-wrapper a#quiz_continue_link:focus {
	background-color: #3aa9d6 !important;
	color: #fff !important;
}
