.elementor-kit-6{--e-global-color-primary:#0F6972;--e-global-color-secondary:#0BA2B6;--e-global-color-text:#3F4A4C;--e-global-color-accent:#C9473B;--e-global-color-5bf448b:#fff;--e-global-color-d895142:#FFFFFFEB;--e-global-typography-primary-font-family:"Quicksand";--e-global-typography-primary-font-size:30px;--e-global-typography-primary-font-weight:700;--e-global-typography-secondary-font-family:"Quicksand";--e-global-typography-secondary-font-size:22px;--e-global-typography-secondary-font-weight:600;--e-global-typography-text-font-family:"Nunito Sans";--e-global-typography-text-font-size:17px;--e-global-typography-text-font-weight:400;--e-global-typography-text-line-height:1.65em;--e-global-typography-accent-font-family:"Nunito Sans";--e-global-typography-accent-font-weight:700;--e-global-typography-b79a617-font-family:"Nunito Sans";--e-global-typography-b79a617-font-size:16px;--e-global-typography-b79a617-font-weight:600;--e-global-typography-ed6135c-font-family:"Nunito Sans";--e-global-typography-ed6135c-font-size:21px;--e-global-typography-ed6135c-font-weight:400;background-color:#FAFAFA;color:#3F4A4C;}.elementor-kit-6 button,.elementor-kit-6 input[type="button"],.elementor-kit-6 input[type="submit"],.elementor-kit-6 .elementor-button{background-color:#C9473B;font-family:"Nunito Sans", Sans-serif;font-size:16px;font-weight:700;line-height:1.2em;text-shadow:0px 0px 0px rgba(0,0,0,0.3);color:#FFFFFF;box-shadow:0px 0px 0px 0px rgba(0,0,0,0.5);border-radius:10px 10px 10px 10px;}.elementor-kit-6 button:hover,.elementor-kit-6 button:focus,.elementor-kit-6 input[type="button"]:hover,.elementor-kit-6 input[type="button"]:focus,.elementor-kit-6 input[type="submit"]:hover,.elementor-kit-6 input[type="submit"]:focus,.elementor-kit-6 .elementor-button:hover,.elementor-kit-6 .elementor-button:focus{background-color:#B93F33;color:#FFFFFF;box-shadow:0px 0px 0px 0px rgba(0,0,0,0.5);}.elementor-kit-6 e-page-transition{background-color:#FFBC7D;}.elementor-kit-6 a{color:#08808F;}.elementor-kit-6 a:hover{color:#0F6972;}.elementor-kit-6 h1{color:#0F6972;}.elementor-kit-6 h2{color:#0F6972;font-family:"Quicksand", Sans-serif;font-size:20px;font-weight:500;line-height:20px;}.elementor-kit-6 h3{color:#000000;font-size:18px;font-weight:600;line-height:18px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){margin-block-end:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}:root { --color-primary:#0F6972; --color-primary-dark:#0A4C53; --color-secondary:#0BA2B6; --color-secondary-deep:#08808F; --color-accent:#E95D4F; --color-accent-strong:#C9473B; --color-accent-hover:#B93F33; --color-text:#3F4A4C; --color-text-muted:#5E6E72; --color-surface:#FFFFFF; --color-surface-soft:#F3F8F8; --color-surface-warm:#F8F4EF; --color-border:#DCE7E8; --color-on-dark:#FFFFFF; --color-on-dark-muted:#CFE7EA; --font-heading:Quicksand; --font-body:Nunito Sans; --text-h1:clamp(2.5rem, 1.75rem + 3vw, 4rem); --text-h2:clamp(2rem, 1.6rem + 1.6vw, 2.75rem); --text-h3:clamp(1.375rem, 1.2rem + 0.7vw, 1.75rem); --text-h4:1.25rem; --text-lead:clamp(1.1875rem, 1.1rem + 0.4vw, 1.375rem); --text-base:clamp(1.0625rem, 1rem + 0.25vw, 1.125rem); --text-sm:0.9375rem; --text-xs:0.8125rem; --space-2xs:4px; --space-xs:8px; --space-sm:16px; --space-md:24px; --space-lg:clamp(32px, 24px + 2vw, 48px); --space-xl:clamp(48px, 32px + 4vw, 80px); --space-section:clamp(64px, 40px + 6vw, 120px); --site-width:1160px; --reading-width:720px; --gutter:clamp(16px, 4vw, 32px); --radius-sm:8px; --radius-md:16px; --radius-lg:28px; --radius-pill:999px; }
/* Start custom CSS *//* ==========================================================
   Buteykotraining v4 – global layer (kit custom CSS)
   Tokens come from the v4 global variables (var(--...)).
   ========================================================== */

body {
	background-color: var(--color-surface, #ffffff);
	color: var(--color-text, #3F4A4C);
	font-family: var(--font-body, "Nunito Sans"), sans-serif;
	-webkit-font-smoothing: antialiased;
}
html { scroll-behavior: smooth; }
:focus-visible { outline: 3px solid var(--color-secondary, #0BA2B6); outline-offset: 3px; }

/* ---------- Header: sticky ---------- */
.elementor-location-header { position: sticky; top: 0; z-index: 99; }
.admin-bar .elementor-location-header { top: 32px; }
@media (max-width: 782px) { .admin-bar .elementor-location-header { top: 0; } }
.elementor-location-header .e-paragraph-base a,
.elementor-location-header p a { color: inherit; text-decoration: none; }
.elementor-location-header p a:hover { text-decoration: underline; text-underline-offset: 3px; }

/* ---------- Main menu (v3 nav-menu widget) ---------- */
body .elementor-location-header .elementor-nav-menu--main .elementor-item {
	font-family: var(--font-body), sans-serif;
	font-size: 16px;
	font-weight: 600;
	color: var(--color-primary-dark);
	padding: 10px 12px;
}
body .elementor-location-header .elementor-nav-menu--main .elementor-item:hover,
body .elementor-location-header .elementor-nav-menu--main .elementor-item.elementor-item-active { color: var(--color-primary); }
body .elementor-location-header .elementor-nav-menu--main .elementor-item::after { background-color: var(--color-accent) !important; height: 2px; }
body .elementor-location-header .elementor-nav-menu--main .sub-menu {
	border-radius: 12px;
	padding: 8px 0;
	box-shadow: 0 16px 40px rgba(10, 76, 83, 0.14);
	border: 1px solid var(--color-border);
	background: var(--color-surface);
	min-width: 260px;
}
body .elementor-location-header .elementor-nav-menu--main .sub-menu .elementor-sub-item {
	font-family: var(--font-body), sans-serif;
	font-size: 15px;
	color: var(--color-text);
	padding: 9px 20px;
	border-left: 0;
}
body .elementor-location-header .elementor-nav-menu--main .sub-menu .elementor-sub-item:hover { background: var(--color-surface-soft); color: var(--color-primary); }
body .elementor-location-header .elementor-menu-toggle { color: var(--color-primary); background: transparent; font-size: 26px; }
body .elementor-location-header .elementor-nav-menu--dropdown {
	background: var(--color-surface);
	border-top: 1px solid var(--color-border);
	box-shadow: 0 16px 40px rgba(10, 76, 83, 0.14);
}
body .elementor-location-header .elementor-nav-menu--dropdown .elementor-item,
body .elementor-location-header .elementor-nav-menu--dropdown .elementor-sub-item {
	font-family: var(--font-body), sans-serif;
	font-size: 16px;
	color: var(--color-primary-dark);
	padding: 12px 24px;
}
body .elementor-location-header .elementor-nav-menu--dropdown a:hover,
body .elementor-location-header .elementor-nav-menu--dropdown a.elementor-item-active { background: var(--color-surface-soft); color: var(--color-primary); }

/* ---------- Footer ---------- */
.elementor-location-footer a { color: var(--color-on-dark-muted); text-decoration: none; transition: color 0.15s ease; }
.elementor-location-footer a:hover { color: var(--color-on-dark); text-decoration: underline; text-underline-offset: 3px; }
.elementor-location-footer ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 10px; }

/* ---------- Breadcrumbs (Rank Math) ---------- */
.rank-math-breadcrumb p { margin: 0; font-size: var(--text-sm); color: var(--color-text-muted); }
.rank-math-breadcrumb a { color: var(--color-secondary-deep); text-decoration: none; }
.rank-math-breadcrumb a:hover { text-decoration: underline; }
.rank-math-breadcrumb .separator { margin: 0 6px; opacity: 0.6; }

/* ---------- Prose: long-form content rendered by theme-post-content ---------- */
.elementor-widget-theme-post-content {
	font-family: var(--font-body), sans-serif;
	font-size: var(--text-base);
	line-height: 1.7;
	color: var(--color-text);
}
.elementor-widget-theme-post-content > .elementor-widget-container > :first-child { margin-top: 0; }
.elementor-widget-theme-post-content p { margin: 0 0 1.1em; }
.elementor-widget-theme-post-content h2,
.elementor-widget-theme-post-content h3,
.elementor-widget-theme-post-content h4 {
	font-family: var(--font-heading), sans-serif;
	color: var(--color-primary);
	line-height: 1.2;
	margin: 1.6em 0 0.5em;
}
.elementor-widget-theme-post-content h2 { font-size: clamp(1.625rem, 1.4rem + 1vw, 2.125rem); font-weight: 700; }
.elementor-widget-theme-post-content h3 { font-size: var(--text-h4); font-weight: 600; color: var(--color-primary-dark); }
.elementor-widget-theme-post-content h4 { font-family: var(--font-body), sans-serif; font-size: 1.0625rem; font-weight: 800; color: var(--color-primary-dark); }
.elementor-widget-theme-post-content ul,
.elementor-widget-theme-post-content ol { margin: 0 0 1.2em; padding-left: 1.3em; }
.elementor-widget-theme-post-content li { margin-bottom: 0.45em; }
.elementor-widget-theme-post-content li::marker { color: var(--color-secondary); }
.elementor-widget-theme-post-content a { color: var(--color-secondary-deep); text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 3px; }
.elementor-widget-theme-post-content a:hover { color: var(--color-primary); }
.elementor-widget-theme-post-content img { max-width: 100%; height: auto; border-radius: var(--radius-md); }
.elementor-widget-theme-post-content figure { margin: 1.6em 0; }
.elementor-widget-theme-post-content figcaption { font-size: var(--text-sm); color: var(--color-text-muted); margin-top: 0.5em; }
.elementor-widget-theme-post-content blockquote {
	margin: 1.6em 0;
	padding: 0.4em 0 0.4em 1.25em;
	border-left: 4px solid var(--color-accent);
	font-size: var(--text-lead);
	font-style: normal;
	color: var(--color-primary-dark);
}
.elementor-widget-theme-post-content table { width: 100%; border-collapse: collapse; margin: 1.4em 0; font-size: var(--text-sm); }
.elementor-widget-theme-post-content th,
.elementor-widget-theme-post-content td { padding: 10px 12px; border-bottom: 1px solid var(--color-border); text-align: left; }
.elementor-widget-theme-post-content hr { border: 0; border-top: 1px solid var(--color-border); margin: 2em 0; }

/* ---------- WooCommerce / WP Courseware buttons → design tokens ---------- */
.woocommerce a.button, .woocommerce button.button, .woocommerce input.button,
.woocommerce #respond input#submit, .woocommerce a.button.alt, .woocommerce button.button.alt,
.wpcw_fe_navigation_box a, .fe_btn {
	font-family: var(--font-body), sans-serif;
	font-weight: 700;
	border-radius: var(--radius-pill);
	padding: 12px 24px;
	background-color: var(--color-primary);
	color: var(--color-on-dark);
	border: 0;
}
.woocommerce a.button:hover, .woocommerce button.button:hover, .woocommerce a.button.alt:hover, .woocommerce button.button.alt:hover {
	background-color: var(--color-primary-dark);
	color: var(--color-on-dark);
}
.woocommerce button.button.alt#place_order, .woocommerce .checkout-button { background-color: var(--color-accent-strong); }
.woocommerce button.button.alt#place_order:hover, .woocommerce .checkout-button:hover { background-color: var(--color-accent-hover); }
.woocommerce form .input-text, .woocommerce form select, .woocommerce-page form .input-text {
	border: 1px solid var(--color-border);
	border-radius: var(--radius-sm);
	padding: 12px 14px;
	font-family: var(--font-body), sans-serif;
}

/* Menu: tighter spacing between tablet breakpoint and 1180px */
@media (min-width: 1025px) and (max-width: 1180px) {
	body .elementor-location-header .elementor-nav-menu--main .elementor-item { padding: 10px 7px; font-size: 15px; }
}
/* Header CTA sits next to the burger on tablet/mobile */
@media (max-width: 1024px) {
	body .elementor-location-header .elementor-widget-nav-menu { order: 3; flex-grow: 0; width: auto; }
	body .elementor-location-header .elementor-widget-nav-menu + * { margin-left: auto; }
}

/* ---------- WP Courseware: course outline [wpcourse] ---------- */
#wpcw_fe_course.wpcw_fe_table {
	width: 100%;
	border-collapse: separate;
	border-spacing: 0;
	font-family: var(--font-body), sans-serif;
	font-size: var(--text-base);
	background: var(--color-surface);
	border: 1px solid var(--color-border);
	border-radius: var(--radius-md);
	overflow: hidden;
	margin: 0;
}
#wpcw_fe_course tr.wpcw_fe_module th {
	background: var(--color-surface-soft);
	color: var(--color-primary-dark);
	font-family: var(--font-heading), sans-serif;
	font-weight: 700;
	font-size: 1.0625rem;
	text-align: left;
	padding: 16px 20px;
	border: 0;
	border-top: 1px solid var(--color-border);
}
#wpcw_fe_course tr.wpcw_fe_module:first-child th { border-top: 0; }
#wpcw_fe_course th.wpcw_fe_module_title_header {
	width: 1%;
	white-space: nowrap;
	font-family: var(--font-body), sans-serif;
	font-size: var(--text-xs);
	font-weight: 800;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--color-secondary-deep);
}
#wpcw_fe_course tr.wpcw_fe_unit td {
	padding: 12px 20px;
	border: 0;
	border-top: 1px solid var(--color-border);
	color: var(--color-text);
	vertical-align: middle;
	background: var(--color-surface);
}
#wpcw_fe_course td.wpcw_fe_unit_title {
	width: 1%;
	white-space: nowrap;
	font-size: var(--text-sm);
	color: var(--color-text-muted);
}
#wpcw_fe_course tr.wpcw_fe_unit:hover td { background: #FAFCFC; }
#wpcw_fe_course a { color: var(--color-secondary-deep); font-weight: 600; text-decoration: none; }
#wpcw_fe_course a:hover { color: var(--color-primary); text-decoration: underline; text-underline-offset: 3px; }
#wpcw_fe_course td[class*="progress"], #wpcw_fe_course td.wpcw_fe_unit_progress { width: 1%; text-align: right; white-space: nowrap; }
.wpcw_powered_by { display: none; }
@media (max-width: 767px) {
	#wpcw_fe_course tr.wpcw_fe_module th, #wpcw_fe_course tr.wpcw_fe_unit td { padding: 10px 14px; }
}

/* ---------- WP Courseware: "next lesson" button + front-end buttons ---------- */
.elementor-widget-shortcode .elementor-shortcode > a,
.elementor-widget-shortcode a.button,
.elementor-widget-shortcode .wpcw_fe_next_unit a,
a.fe_btn, .fe_btn, .wpcw_fe_navigation_box a {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 14px 28px;
	border-radius: var(--radius-pill);
	background-color: var(--color-accent-strong);
	color: var(--color-on-dark) !important;
	font-family: var(--font-body), sans-serif;
	font-weight: 700;
	text-decoration: none;
	border: 0;
	box-shadow: 0 6px 18px rgba(201, 71, 59, 0.25);
	transition: background-color 0.15s ease, box-shadow 0.15s ease;
}
.elementor-widget-shortcode .elementor-shortcode > a:hover, .elementor-widget-shortcode a.button:hover, a.fe_btn:hover, .wpcw_fe_navigation_box a:hover {
	background-color: var(--color-accent-hover);
	box-shadow: 0 10px 24px rgba(201, 71, 59, 0.32);
}

/* WPCW progress column */
#wpcw_fe_course th.wpcw_fe_unit_progress_header { width: 1%; white-space: nowrap; text-align: right; font-family: var(--font-body), sans-serif; font-size: var(--text-xs); font-weight: 800; letter-spacing: 0.08em; text-transform: uppercase; color: var(--color-text-muted); }
#wpcw_fe_course td.wpcw_fe_unit_progress { width: 1%; text-align: right; }

/* Prose: image alignment (WordPress align classes, set by the v3 -> content converter) */
.elementor-widget-theme-post-content img.aligncenter { display: block; margin: 1.6em auto; }
.elementor-widget-theme-post-content img.alignleft { float: left; margin: 0.3em 1.5em 1em 0; max-width: 45%; }
.elementor-widget-theme-post-content img.alignright { float: right; margin: 0.3em 0 1em 1.5em; max-width: 45%; }
.elementor-widget-theme-post-content h2, .elementor-widget-theme-post-content h3 { clear: both; }
@media (max-width: 767px) {
	.elementor-widget-theme-post-content img.alignleft, .elementor-widget-theme-post-content img.alignright { float: none; display: block; margin: 1.2em auto; max-width: 100%; }
}

/* Footer: v4 paragraph links render as <p><a class="e-default-a"> and would get the global link colour */
body .elementor-location-footer a.e-default-a,
body .elementor-location-footer a.e-paragraph-link-base { color: var(--color-on-dark-muted); text-decoration: underline; text-underline-offset: 3px; }
body .elementor-location-footer a.e-default-a:hover,
body .elementor-location-footer a.e-paragraph-link-base:hover,
body .elementor-location-footer a.e-default-a:focus-visible { color: var(--color-on-dark); }

/* Header tablet/mobile: menu (burger) does not grow; CTA sits right, next to the burger */
@media (max-width: 1024px) {
	body .elementor-location-header .elementor-widget-nav-menu { flex-grow: 0 !important; width: auto !important; }
	body .elementor-location-header .elementor-widget-nav-menu + * { margin-left: auto !important; }
	body .elementor-location-header .elementor-widget-nav-menu { position: static !important; }
	body .elementor-location-header [data-id="23f894b8"] { position: static !important; }
	body .elementor-location-header [data-id="27111169"] { position: relative !important; }
	body .elementor-location-header .elementor-nav-menu--dropdown.elementor-nav-menu__container { position: absolute !important; top: 100% !important; left: 0 !important; right: 0 !important; width: auto !important; margin-top: 0 !important; z-index: 100; }
}

/* ---------- WP Courseware: unit progress / completion box ---------- */
.wpcw_fe_progress_box_wrap { margin: var(--space-lg) 0 var(--space-md); }
.wpcw_fe_progress_box {
	display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 16px;
	padding: 20px 24px !important;
	border: 1px solid var(--color-border) !important;
	border-radius: var(--radius-md) !important;
	background: var(--color-surface-soft) !important;
	color: var(--color-text) !important;
	font-family: var(--font-body), sans-serif;
	font-size: var(--text-base);
	box-shadow: none;
}
.wpcw_fe_progress_box_text { flex: 1 1 280px; font-weight: 600; color: var(--color-primary-dark); }
.wpcw_fe_progress_box_mark { flex: 0 0 auto; }
.wpcw_fe_progress_box_success, .wpcw_fe_progress_box_complete {
	background: #EAF6F0 !important;
	border-color: #9FD3B8 !important;
}
.wpcw_fe_progress_box_success .wpcw_fe_progress_box_text::before, .wpcw_fe_progress_box_complete .wpcw_fe_progress_box_text::before { content: "✓ "; color: var(--color-primary); font-weight: 800; }
.wpcw_fe_progress_box_error, .wpcw_fe_progress_box_warning { background: #FBEDEB !important; border-color: var(--color-accent) !important; }
.wpcw_fe_navigation_box { display: flex; justify-content: space-between; gap: 16px; margin: var(--space-md) 0; }
.wpcw_fe_navigation_box a.fe_btn_navigation, .wpcw_fe_navigation_box .wpcw_fe_navigation_prev a { background-color: var(--color-primary); box-shadow: none; }

/* ---------- WP Courseware: quiz box ---------- */
.wpcw_fe_quiz_box_wrap { margin: var(--space-lg) 0; }
.wpcw_fe_quiz_box {
	padding: 28px !important;
	border: 1px solid var(--color-border) !important;
	border-radius: var(--radius-md) !important;
	background: var(--color-surface) !important;
	box-shadow: 0 1px 2px rgba(10, 76, 83, 0.04), 0 8px 24px rgba(10, 76, 83, 0.06);
	font-family: var(--font-body), sans-serif !important;
	font-size: var(--text-base) !important;
	color: var(--color-text) !important;
}
.wpcw_fe_quiz_box * { font-family: var(--font-body), sans-serif; }
.wpcw_fe_quiz_title { font-family: var(--font-heading), sans-serif !important; font-size: var(--text-h4) !important; font-weight: 700; color: var(--color-primary) !important; margin-bottom: 8px; }
.wpcw_fe_paging_progress { font-size: var(--text-xs) !important; font-weight: 800; letter-spacing: 0.08em; text-transform: uppercase; color: var(--color-secondary-deep) !important; }
.wpcw_fe_quiz_q_title { font-size: 1.0625rem !important; font-weight: 700; color: var(--color-primary-dark) !important; margin: 16px 0 12px; }
.wpcw_fe_quiz_q_answers label, .wpcw_fe_quiz_box label {
	display: flex; align-items: center; gap: 10px;
	font-size: var(--text-base) !important; color: var(--color-text) !important;
	padding: 10px 14px; margin: 0 0 8px; border: 1px solid var(--color-border); border-radius: var(--radius-sm);
	background: var(--color-surface); cursor: pointer;
}
.wpcw_fe_quiz_q_answers label:hover { background: var(--color-surface-soft); border-color: var(--color-secondary); }
.wpcw_fe_quiz_q_answers input[type="radio"], .wpcw_fe_quiz_q_answers input[type="checkbox"] { accent-color: var(--color-primary); width: 18px; height: 18px; }
.wpcw_fe_quiz_submit input[type="submit"], .wpcw_fe_quiz_submit .fe_btn, .wpcw_fe_quiz_box input[type="submit"] {
	border-radius: var(--radius-pill) !important; padding: 14px 28px !important; border: 0 !important;
	background-color: var(--color-accent-strong) !important; color: var(--color-on-dark) !important;
	font-family: var(--font-body), sans-serif !important; font-weight: 700 !important; font-size: var(--text-base) !important; cursor: pointer;
}
.wpcw_fe_quiz_answer_later, .wpcw_fe_quiz_answer_later .fe_btn { background-color: transparent !important; color: var(--color-primary) !important; border: 2px solid var(--color-primary) !important; box-shadow: none !important; padding: 8px 18px !important; font-size: var(--text-sm) !important; }
.wpcw_progress { border-radius: var(--radius-pill); background: var(--color-surface-soft); overflow: hidden; }
.wpcw_progress_bar { background: var(--color-secondary) !important; }/* End custom CSS */