/* =====================================================================
   CENTAORA 2026 — header, navigation and brand polish
   Loaded last. Replaces the header/menu rules that used to live in
   Appearance → Customize → Additional CSS.
   Colours and sizes come from Appearance → Customize → Centaora 2026 →
   Header & Menu (printed as --c26-* variables).
   ===================================================================== */

:root{
	--c26-navy:#082452;
	--c26-deep-navy:#021735;
	--c26-teal:#10AFC2;
	--c26-ocean:#075D78;
	--c26-gold:#D9A53A;
	--c26-ivory:#FFF9ED;
	--c26-soft:#EEF4F7;
	--c26-ink:#13213A;
	--c26-muted:#627087;
	--c26-border:#D5DFE8;
	--c26-shadow-sm:0 1px 2px rgba(2,23,53,.08);
	--c26-shadow-md:0 8px 24px rgba(2,23,53,.12);
	--c26-shadow-lg:0 24px 60px rgba(2,23,53,.22);

	/* Customizer-driven (defaults mirror the live site) */
	--c26-header-bg:#000516;
	--c26-menu-text:#FFFFFF;
	--c26-menu-hover:#10AFC2;
	--c26-menu-active:#D9A53A;
	--c26-menu-size:18px;
	--c26-logo-w:235px;
	--c26-header-h:112px;
	--c26-header-h-mobile:76px;

	--c26-display:var(--ct-head-font,"Manrope",system-ui,sans-serif);
	--c26-menu-font:var(--ct-menu-font,var(--ct-body-font,"Manrope",system-ui,sans-serif));

	--c26-header-bottom:var(--c26-header-h);
	--c26-ease:cubic-bezier(.2,.8,.2,1);
}

/* ---------------------------------------------------------------------
   Header shell
   --------------------------------------------------------------------- */
html body .ct-site-header.c26-header{
	background:var(--c26-header-bg)!important;
	border-bottom:1px solid rgba(255,255,255,.07)!important;
	box-shadow:0 1px 0 rgba(255,255,255,.02)!important;
	/* backdrop-filter/transform on the header would trap the fixed drawer */
	backdrop-filter:none!important;
	-webkit-backdrop-filter:none!important;
	transform:none!important;
	transition:box-shadow .25s ease;
}
html body.ct-header-shadow .ct-site-header.c26-header.ct-scrolled{
	box-shadow:0 10px 30px rgba(0,5,22,.28)!important;
}
html body.ct-sticky-header .ct-site-header.c26-header{position:sticky!important;top:0!important;z-index:9990!important}
html body.admin-bar.ct-sticky-header .ct-site-header.c26-header{top:32px!important}
@media (max-width:782px){
	html body.admin-bar.ct-sticky-header .ct-site-header.c26-header{top:46px!important}
}
@media (max-width:600px){
	/* WP admin bar scrolls away on small phones */
	html body.admin-bar.ct-sticky-header .ct-site-header.c26-header{top:0!important}
}

html body .c26-header .c26-header-inner{
	display:grid!important;
	grid-template-columns:auto minmax(0,1fr) auto!important;
	align-items:center!important;
	gap:28px!important;
	height:auto!important;
	min-height:var(--c26-header-h)!important;
	padding-block:10px!important;
}

/* Logo */
html body .c26-header .ct-brand{
	display:flex!important;
	align-items:center!important;
	width:auto!important;
	max-width:var(--c26-logo-w)!important;
	height:auto!important;
	min-height:0!important;
	overflow:visible!important;
	flex-shrink:0!important;
	border-radius:6px;
}
html body .c26-header .ct-brand img,
html body .c26-header .ct-brand .ct-brand-logo,
html body .c26-header .ct-brand .custom-logo{
	display:block!important;
	width:auto!important;
	height:auto!important;
	max-width:var(--c26-logo-w)!important;
	max-height:calc(var(--c26-header-h) - 22px)!important;
	object-fit:contain!important;
	object-position:left center!important;
	margin:0!important;padding:0!important;
	position:static!important;transform:none!important;
	box-shadow:none!important;border-radius:0!important;
}
html body .c26-header .ct-brand-wordmark{
	color:#fff;font-family:var(--c26-display);font-size:24px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;
}

/* Header CTA (optional, Customizer) */
html body .c26-header .c26-header-cta{
	display:inline-flex!important;align-items:center;justify-content:center;
	min-height:46px;height:auto!important;padding:0 22px!important;
	border-radius:10px!important;
	background:var(--c26-gold)!important;border:1px solid var(--c26-gold)!important;
	color:var(--c26-deep-navy)!important;
	font-family:var(--c26-display);font-size:16px!important;font-weight:700!important;
	text-decoration:none!important;white-space:nowrap;
	transition:background .2s ease,color .2s ease,border-color .2s ease;
	transform:none!important;box-shadow:none!important;
}
html body .c26-header .c26-header-cta:hover{background:#fff!important;border-color:#fff!important;color:var(--c26-deep-navy)!important}
.c26-drawer-cta{display:none}

/* ---------------------------------------------------------------------
   Desktop navigation
   --------------------------------------------------------------------- */
html body .c26-header .c26-nav{
	position:relative!important;
	display:block!important;
	/* fill the middle grid column so long menus are measured (and tightened) instead of spilling over the logo */
	justify-self:stretch!important;
	align-self:center!important;
	min-width:0!important;
	top:auto!important;
	width:100%!important;
	max-height:none!important;
	overflow:visible!important;
	background:transparent!important;
	border:0!important;
	box-shadow:none!important;
	padding:0!important;
}
html body .c26-header .c26-nav .ct-menu{
	display:flex!important;
	flex-wrap:nowrap!important;
	align-items:center!important;
	justify-content:flex-end!important;
	gap:2px!important;
	margin:0!important;padding:0!important;
	list-style:none!important;
	white-space:nowrap!important;
}
html body .c26-header .c26-nav .ct-menu>li{
	position:relative!important;
	display:flex!important;
	align-items:center!important;
	margin:0!important;padding:0!important;
	border:0!important;
	float:none!important;
	list-style:none!important;
}
html body .c26-header .c26-nav .ct-menu>li>a{
	position:relative;
	display:flex!important;
	align-items:center!important;
	padding:12px 12px!important;
	border-radius:8px!important;
	background:transparent!important;
	color:var(--c26-menu-text)!important;
	font-family:var(--c26-menu-font)!important;
	font-size:var(--c26-menu-size)!important;
	font-weight:600!important;
	line-height:1.2!important;
	letter-spacing:-.005em!important;
	text-decoration:none!important;
	transform:none!important;
	transition:color .2s ease!important;
}
/* remove the old "⌄" text arrow — the chevron button replaces it */
html body .c26-header .ct-menu .menu-item-has-children>a:after{content:none!important;display:none!important}
html body .c26-header .c26-nav .ct-menu>li.menu-item-has-children>a{padding-right:2px!important}

/* elegant underline indicator */
html body .c26-header .c26-nav .ct-menu>li>a::before{
	content:"";
	position:absolute;
	left:12px;right:12px;bottom:6px;
	height:2px;border-radius:2px;
	background:var(--c26-menu-active);
	transform:scaleX(0);
	transform-origin:left center;
	transition:transform .28s var(--c26-ease);
	display:block!important;width:auto!important;
}
html body .c26-header .c26-nav .ct-menu>li.menu-item-has-children>a::before{right:2px}
html body .c26-header .c26-nav .ct-menu>li>a:hover,
html body .c26-header .c26-nav .ct-menu>li.c26-sub-open>a{color:var(--c26-menu-hover)!important;background:transparent!important}
html body .c26-header .c26-nav .ct-menu>li>a:hover::before,
html body .c26-header .c26-nav .ct-menu>li.c26-sub-open>a::before{transform:scaleX(1);background:var(--c26-menu-hover)}
html body .c26-header .c26-nav .ct-menu>li.current-menu-item>a,
html body .c26-header .c26-nav .ct-menu>li.current_page_item>a,
html body .c26-header .c26-nav .ct-menu>li.current-menu-ancestor>a,
html body .c26-header .c26-nav .ct-menu>li.current-menu-parent>a{color:var(--c26-menu-active)!important}
html body .c26-header .c26-nav .ct-menu>li.current-menu-item>a::before,
html body .c26-header .c26-nav .ct-menu>li.current_page_item>a::before,
html body .c26-header .c26-nav .ct-menu>li.current-menu-ancestor>a::before,
html body .c26-header .c26-nav .ct-menu>li.current-menu-parent>a::before{transform:scaleX(1);background:var(--c26-menu-active)}

/* old signal dot — keep as a small gold mark */
html body .c26-header .ct-menu-signal>a{color:var(--c26-menu-text)!important}

/* chevron toggle */
.c26-sub-toggle{
	display:inline-flex;align-items:center;justify-content:center;
	width:30px;height:40px;
	margin:0 4px 0 0;padding:0;
	border:0;border-radius:8px;
	background:transparent;
	color:var(--c26-menu-text);
	cursor:pointer;
	-webkit-tap-highlight-color:transparent;
}
.c26-sub-toggle svg{width:14px;height:14px;transition:transform .25s var(--c26-ease);opacity:.8}
.c26-sub-toggle:hover{color:var(--c26-menu-hover)}
li.c26-sub-open>.c26-sub-toggle svg{transform:rotate(180deg);opacity:1}
li.c26-sub-open>.c26-sub-toggle{color:var(--c26-menu-hover)}

/* dropdown panel */
html body .c26-header .c26-nav .ct-menu .sub-menu{
	position:absolute!important;
	top:100%!important;
	left:0!important;right:auto!important;
	z-index:10000!important;
	display:block!important;
	min-width:250px!important;width:max-content!important;max-width:340px!important;
	margin:8px 0 0!important;
	padding:10px!important;
	list-style:none!important;
	background:#fff!important;
	border:1px solid rgba(8,36,82,.08)!important;
	border-top:3px solid var(--c26-gold)!important;
	border-radius:12px!important;
	box-shadow:var(--c26-shadow-lg)!important;
	white-space:normal!important;
	opacity:0!important;
	visibility:hidden!important;
	transform:translateY(6px)!important;
	pointer-events:none!important;
	transition:opacity .18s ease,transform .22s var(--c26-ease),visibility 0s linear .22s!important;
}
/* invisible bridge so the pointer can cross the gap without the menu closing */
html body .c26-header .c26-nav .ct-menu .sub-menu::before{
	content:""!important;display:block!important;
	position:absolute!important;left:0;right:0;top:-14px;height:14px;
	background:transparent!important;
}
html body .c26-header .c26-nav .ct-menu>li.c26-flip>.sub-menu{left:auto!important;right:0!important}

html body .c26-header .c26-nav .ct-menu>li.c26-sub-open>.sub-menu,
html.no-js body .c26-header .c26-nav .ct-menu>li:hover>.sub-menu,
html.no-js body .c26-header .c26-nav .ct-menu>li:focus-within>.sub-menu{
	opacity:1!important;
	visibility:visible!important;
	transform:translateY(0)!important;
	pointer-events:auto!important;
	transition:opacity .18s ease,transform .22s var(--c26-ease),visibility 0s!important;
}
html body .c26-header .c26-nav .ct-menu .sub-menu li{
	display:block!important;margin:0!important;padding:0!important;border:0!important;list-style:none!important;
}
html body .c26-header .c26-nav .ct-menu .sub-menu a{
	display:block!important;
	padding:11px 14px!important;
	border-radius:8px!important;
	background:transparent!important;
	color:var(--c26-navy)!important;
	font-family:var(--c26-menu-font)!important;
	font-size:16px!important;
	font-weight:600!important;
	line-height:1.35!important;
	text-decoration:none!important;
	transition:background .15s ease,color .15s ease,padding .2s var(--c26-ease)!important;
}
html body .c26-header .c26-nav .ct-menu .sub-menu a:hover,
html body .c26-header .c26-nav .ct-menu .sub-menu a:focus-visible{
	background:var(--c26-soft)!important;
	color:var(--c26-ocean)!important;
	padding-left:18px!important;
}
html body .c26-header .c26-nav .ct-menu .sub-menu .current-menu-item>a{
	color:var(--c26-ocean)!important;
	box-shadow:inset 3px 0 0 var(--c26-gold)!important;
}

/* focus rings */
html body .c26-header a:focus-visible,
html body .c26-header button:focus-visible{
	outline:2px solid var(--c26-gold)!important;
	outline-offset:2px!important;
}
html body .c26-header .sub-menu a:focus-visible{outline-color:var(--c26-ocean)!important}

/* hamburger hidden on desktop */
html body .c26-header .c26-menu-toggle{display:none!important}
.c26-nav-backdrop{display:none}

/* ---------------------------------------------------------------------
   Large desktop / laptop fine-tuning
   --------------------------------------------------------------------- */
@media (max-width:1280px){
	html body .c26-header .c26-header-inner{gap:18px!important}
	html body .c26-header .c26-nav .ct-menu>li>a{padding:12px 9px!important;font-size:min(var(--c26-menu-size),17px)!important}
	html body .c26-header .c26-nav .ct-menu>li>a::before{left:9px;right:9px}
}

/* Desktop "fit" levels — set by JS when the menu would not fit in one row */
html[data-c26-fit] body .c26-header .c26-header-inner{gap:16px!important}
html[data-c26-fit] body .c26-header .c26-nav .ct-menu{gap:0!important}
html[data-c26-fit] body .c26-header .c26-nav .ct-menu>li>a{padding:12px 8px!important;font-size:min(var(--c26-menu-size),16px)!important}
html[data-c26-fit] body .c26-header .c26-nav .ct-menu>li>a::before{left:8px;right:8px}
html[data-c26-fit] body .c26-header .c26-nav .ct-menu>li.menu-item-has-children>a{padding-right:0!important}
html[data-c26-fit] .c26-sub-toggle{width:24px;margin-right:2px}
html[data-c26-fit] body .c26-header .ct-brand img,
html[data-c26-fit] body .c26-header .ct-brand .custom-logo,
html[data-c26-fit] body .c26-header .ct-brand .ct-brand-logo{max-width:min(var(--c26-logo-w),200px)!important}
html[data-c26-fit="2"] body .c26-header .c26-nav .ct-menu>li>a,
html[data-c26-fit="3"] body .c26-header .c26-nav .ct-menu>li>a{padding:10px 6px!important;font-size:15px!important;letter-spacing:-.01em!important}
html[data-c26-fit="2"] body .c26-header .ct-brand img,
html[data-c26-fit="2"] body .c26-header .ct-brand .custom-logo,
html[data-c26-fit="2"] body .c26-header .ct-brand .ct-brand-logo,
html[data-c26-fit="3"] body .c26-header .ct-brand img,
html[data-c26-fit="3"] body .c26-header .ct-brand .custom-logo,
html[data-c26-fit="3"] body .c26-header .ct-brand .ct-brand-logo{max-width:min(var(--c26-logo-w),170px)!important}
html[data-c26-fit="3"] body .c26-header .c26-nav .ct-menu{flex-wrap:wrap!important;row-gap:0!important}

/* ---------------------------------------------------------------------
   Drawer (phones, tablets, and any width where the menu does not fit)
   Activated by JS with html.c26-nav-mobile; the media query is a no-JS fallback.
   --------------------------------------------------------------------- */
html.c26-nav-mobile body .c26-header .c26-header-inner{
	grid-template-columns:minmax(0,1fr) auto!important;
	min-height:var(--c26-header-h-mobile)!important;
	gap:14px!important;
	padding-block:8px!important;
}
html.c26-nav-mobile body .c26-header .ct-brand img,
html.c26-nav-mobile body .c26-header .ct-brand .ct-brand-logo,
html.c26-nav-mobile body .c26-header .ct-brand .custom-logo{
	max-width:min(var(--c26-logo-w),190px)!important;
	max-height:calc(var(--c26-header-h-mobile) - 16px)!important;
}
html.c26-nav-mobile body .c26-header .c26-header-cta{display:none!important}

html.c26-nav-mobile body .c26-header .c26-menu-toggle{
	display:inline-flex!important;
	align-items:center;gap:10px;
	justify-self:end;
	min-height:44px;
	padding:8px 14px 8px 12px!important;
	border:1px solid rgba(255,255,255,.22)!important;
	border-radius:10px!important;
	background:transparent!important;
	color:#fff!important;
	font-family:var(--c26-display);
	font-size:16px;font-weight:600;letter-spacing:.02em;
	cursor:pointer;
	-webkit-tap-highlight-color:transparent;
}
html.c26-nav-mobile body .c26-header .c26-menu-toggle:hover{border-color:var(--c26-gold)!important}
html body .c26-header .c26-burger{position:relative!important;display:inline-block!important;width:22px!important;height:16px!important;margin:0!important;background:transparent!important}
html body .c26-header .c26-burger span{
	position:absolute;left:0;right:0;height:2px;border-radius:2px;background:#fff!important;
	margin:0!important;width:auto!important;display:block!important;
	transition:transform .3s var(--c26-ease),opacity .2s ease,top .3s var(--c26-ease);
}
.c26-burger span:nth-child(1){top:0}
.c26-burger span:nth-child(2){top:7px}
.c26-burger span:nth-child(3){top:14px}
html.c26-nav-open .c26-burger span:nth-child(1){top:7px;transform:rotate(45deg)}
html.c26-nav-open .c26-burger span:nth-child(2){opacity:0}
html.c26-nav-open .c26-burger span:nth-child(3){top:7px;transform:rotate(-45deg)}

/* the drawer panel */
html.c26-nav-mobile body .c26-header .c26-nav{
	position:fixed!important;
	top:var(--c26-header-bottom)!important;
	right:0!important;left:auto!important;bottom:0!important;
	width:min(440px,100%)!important;
	height:calc(100vh - var(--c26-header-bottom))!important;
	height:calc(100dvh - var(--c26-header-bottom))!important;
	max-height:none!important;
	display:block!important;
	/* the nav is a grid item of the header: stop grid alignment from shrinking/centring the fixed panel */
	justify-self:stretch!important;
	align-self:stretch!important;
	margin:0!important;
	padding:10px 20px calc(28px + env(safe-area-inset-bottom))!important;
	background:var(--c26-deep-navy)!important;
	border-left:1px solid rgba(255,255,255,.08)!important;
	border-top:1px solid rgba(255,255,255,.06)!important;
	box-shadow:-24px 0 60px rgba(0,0,0,.35)!important;
	overflow-y:auto!important;
	overflow-x:hidden!important;
	overscroll-behavior:contain;
	-webkit-overflow-scrolling:touch;
	z-index:9995!important;
	visibility:hidden;
	transform:translateX(102%)!important;
	transition:transform .32s var(--c26-ease),visibility 0s linear .32s!important;
}
html.c26-nav-mobile.c26-nav-open body .c26-header .c26-nav{
	visibility:visible;
	transform:translateX(0)!important;
	transition:transform .32s var(--c26-ease),visibility 0s!important;
}
html.c26-nav-mobile body .c26-nav-backdrop{
	display:block;
	position:fixed;left:0;right:0;bottom:0;
	top:var(--c26-header-bottom);
	z-index:9994;
	background:rgba(0,5,22,.55);
	opacity:0;
	transition:opacity .3s ease;
}
html.c26-nav-mobile.c26-nav-open body .c26-nav-backdrop{opacity:1}
html.c26-nav-mobile body .c26-nav-backdrop[hidden]{display:none}

/* stop the page scrolling behind the open drawer */
html.c26-nav-open,
html.c26-nav-open body{overflow:hidden!important;touch-action:none}
html.c26-nav-open .c26-nav{touch-action:pan-y}

html.c26-nav-mobile body .c26-header .c26-nav .ct-menu{
	display:block!important;
	white-space:normal!important;
}
html.c26-nav-mobile body .c26-header .c26-nav .ct-menu>li{
	display:grid!important;
	grid-template-columns:minmax(0,1fr) auto;
	align-items:center!important;
	border-bottom:1px solid rgba(255,255,255,.09)!important;
}
html.c26-nav-mobile body .c26-header .c26-nav .ct-menu>li>a{
	min-height:56px;
	padding:14px 4px!important;
	border-radius:0!important;
	font-size:19px!important;
	font-weight:600!important;
	color:#fff!important;
}
html.c26-nav-mobile body .c26-header .c26-nav .ct-menu>li>a::before{display:none!important}
html.c26-nav-mobile body .c26-header .c26-nav .ct-menu>li.current-menu-item>a,
html.c26-nav-mobile body .c26-header .c26-nav .ct-menu>li.current_page_item>a,
html.c26-nav-mobile body .c26-header .c26-nav .ct-menu>li.current-menu-ancestor>a{color:var(--c26-gold)!important}
html.c26-nav-mobile body .c26-header .c26-nav .ct-menu>li>a:hover{color:var(--c26-teal)!important}

html.c26-nav-mobile .c26-sub-toggle{
	width:48px;height:48px;margin:0;
	border:1px solid rgba(255,255,255,.14);
	border-radius:10px;
	color:#fff;
}
html.c26-nav-mobile li.c26-sub-open>.c26-sub-toggle{border-color:var(--c26-gold);color:var(--c26-gold)}
html.c26-nav-mobile .c26-sub-toggle svg{width:16px;height:16px}

/* accordion submenus */
html.c26-nav-mobile body .c26-header .c26-nav .ct-menu .sub-menu{
	grid-column:1 / -1;
	position:static!important;
	display:none!important;
	width:auto!important;min-width:0!important;max-width:none!important;
	margin:0 0 14px!important;
	padding:4px 0 4px 16px!important;
	background:transparent!important;
	border:0!important;
	border-left:2px solid var(--c26-gold)!important;
	border-radius:0!important;
	box-shadow:none!important;
	opacity:1!important;visibility:visible!important;transform:none!important;pointer-events:auto!important;
	transition:none!important;
}
html.c26-nav-mobile body .c26-header .c26-nav .ct-menu .sub-menu::before{display:none!important}
html.c26-nav-mobile body .c26-header .c26-nav .ct-menu li.c26-sub-open>.sub-menu{
	display:block!important;
	animation:c26-reveal .26s var(--c26-ease);
}
html.c26-nav-mobile body .c26-header .c26-nav .ct-menu .sub-menu a{
	padding:12px 10px!important;
	min-height:48px;
	display:flex!important;align-items:center;
	color:rgba(255,255,255,.86)!important;
	font-size:17px!important;
	font-weight:500!important;
	border-radius:8px!important;
}
html.c26-nav-mobile body .c26-header .c26-nav .ct-menu .sub-menu a:hover,
html.c26-nav-mobile body .c26-header .c26-nav .ct-menu .sub-menu a:focus-visible{
	background:rgba(255,255,255,.06)!important;color:var(--c26-teal)!important;padding-left:14px!important;
}
html.c26-nav-mobile body .c26-header .c26-nav .ct-menu .sub-menu .current-menu-item>a{color:var(--c26-gold)!important;box-shadow:none!important}

html.c26-nav-mobile body .c26-header .c26-drawer-cta{
	display:flex;align-items:center;justify-content:center;
	margin-top:24px;min-height:52px;
	border-radius:10px;
	background:var(--c26-gold);color:var(--c26-deep-navy)!important;
	font-family:var(--c26-display);font-size:17px;font-weight:700;text-decoration:none;
}

@keyframes c26-reveal{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}

/* no-JS fallback: plain stacked menu on small screens */
@media (max-width:900px){
	html.no-js body .c26-header .c26-header-inner{grid-template-columns:1fr!important}
	html.no-js body .c26-header .c26-nav .ct-menu{flex-wrap:wrap!important;justify-content:flex-start!important}
	html.no-js .c26-sub-toggle{display:none}
}

@media (max-width:560px){
	:root{--c26-header-h-mobile:68px}
	html.c26-nav-mobile body .c26-header .ct-brand img,
	html.c26-nav-mobile body .c26-header .ct-brand .ct-brand-logo,
	html.c26-nav-mobile body .c26-header .ct-brand .custom-logo{max-width:min(var(--c26-logo-w),160px)!important}
	html.c26-nav-mobile body .c26-header .c26-menu-toggle .c26-menu-toggle-label{display:none}
	html.c26-nav-mobile body .c26-header .c26-menu-toggle{padding:10px 11px!important}
	html.c26-nav-mobile body .c26-header .c26-nav{width:100%!important;border-left:0!important}
}

/* hide old header pieces that may linger from earlier versions */
html body .c26-header .ct-menu-toggle:not(.c26-menu-toggle){display:none!important}

/* ---------------------------------------------------------------------
   Global polish (design system)
   --------------------------------------------------------------------- */
html{scroll-padding-top:calc(var(--c26-header-h) + 16px)}
::selection{background:rgba(16,175,194,.22);color:inherit}

:where(.ct-entry-content, main) a:focus-visible,
:where(main) button:focus-visible,
:where(main) input:focus-visible,
:where(main) select:focus-visible,
:where(main) textarea:focus-visible,
.ct-site-footer a:focus-visible{
	outline:2px solid var(--c26-ocean);
	outline-offset:2px;
	border-radius:4px;
}

/* calmer, more consistent card and button motion */
@media (hover:hover){
	.ct-btn-motion-lift .ct-btn:hover,
	.ct-btn-motion-lift .centaora-button:hover,
	.ct-btn-motion-lift .signal-button:hover{transform:translateY(-2px)}
}

@media (prefers-reduced-motion:reduce){
	.c26-header *,.c26-nav,.c26-nav-backdrop{transition:none!important;animation:none!important}
}

/* print: header not needed */
@media print{.c26-header,.c26-nav-backdrop{display:none!important}}

/* neutralise the old hamburger-bar rule (".ct-menu-toggle span") on the label */
html body .c26-header .c26-menu-toggle .c26-menu-toggle-label{
	display:inline!important;width:auto!important;height:auto!important;margin:0!important;background:none!important;line-height:1!important;color:inherit!important;
}
@media (max-width:560px){
	html.c26-nav-mobile body .c26-header .c26-menu-toggle .c26-menu-toggle-label{display:none!important}
}

/* Footer: four columns when a fourth footer menu is assigned */
@media (min-width:761px){
	.ct-footer-links:has(> .ct-footer-column:nth-child(4)){grid-template-columns:repeat(4,minmax(0,1fr))!important}
}
@media (min-width:761px) and (max-width:1020px){
	.ct-footer-links:has(> .ct-footer-column:nth-child(4)){grid-template-columns:repeat(2,minmax(0,1fr))!important}
}

/* ---------------------------------------------------------------------
   Homepage section wrappers (Customizer) — no effect on layout
   --------------------------------------------------------------------- */
.c26-home-section{display:contents}

/* ---------------------------------------------------------------------
   No bullets or dash markers on headings and labels
   --------------------------------------------------------------------- */
.ct-section-kicker:before,.ct-eyebrow:before,
.cc-contact-eyebrow::before,.ca-r-eyebrow::before,.ca-sub-eyebrow::before,.ca-contact-eyebrow::before,.cb-eyebrow::before,
.signal-subscribe-focus-grid h3::before{content:none!important;display:none!important}
.ct-section-kicker,.ct-eyebrow{gap:0!important}
h1,h2,h3,h4,h5,h6{list-style:none}
:is(h1,h2,h3,h4,h5,h6)::marker{content:none}
li:has(> :is(h1,h2,h3,h4,h5,h6):first-child){list-style:none}
li:has(> :is(h1,h2,h3,h4,h5,h6):first-child)::marker{content:none}
.ct-sidebar ul,.ct-widget ul,.ct-site-footer ul,.centaora-sidebar ul,.ct-footer-widget-area ul{list-style:none;padding-left:0}

/* ---------------------------------------------------------------------
   Social icons
   --------------------------------------------------------------------- */
.c26-social{display:flex;flex-wrap:wrap;gap:10px;margin:26px 0 0;padding:0;list-style:none}
.c26-social li{margin:0;padding:0;list-style:none}
.c26-social a{
	display:inline-flex;align-items:center;justify-content:center;
	width:42px;height:42px;border-radius:10px;
	border:1px solid rgba(255,255,255,.16);
	color:#fff!important;background:transparent;
	transition:border-color .2s ease,color .2s ease,background .2s ease,transform .2s ease;
}
.c26-social a:hover{border-color:var(--c26-gold);color:var(--c26-gold)!important;background:rgba(255,255,255,.04)}
.c26-social svg{width:20px;height:20px}
.c26-social-inline a{color:var(--c26-navy)!important;border-color:var(--c26-border)}
.c26-social-inline a:hover{color:var(--c26-ocean)!important;border-color:var(--c26-ocean)}

/* ---------------------------------------------------------------------
   Announcement bar
   --------------------------------------------------------------------- */
.c26-announce{background:var(--c26-gold);color:var(--c26-deep-navy);position:relative;z-index:9991}
.c26-announce-inner{display:flex;align-items:center;justify-content:center;gap:12px;min-height:44px;padding:8px 0}
.c26-announce p{margin:0;font-size:16px;font-weight:600;line-height:1.4;text-align:center}
.c26-announce a{color:var(--c26-deep-navy)!important;text-decoration:underline;text-underline-offset:3px;margin-left:8px;white-space:nowrap}
.c26-announce-close{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border:0;border-radius:8px;background:transparent;color:var(--c26-deep-navy);cursor:pointer}
.c26-announce-close:hover{background:rgba(2,23,53,.1)}
.c26-announce-close svg{width:14px;height:14px}

/* ---------------------------------------------------------------------
   Reading progress on articles
   --------------------------------------------------------------------- */
.c26-progress{position:fixed;left:0;right:0;top:0;height:3px;z-index:10001;pointer-events:none}
.c26-progress span{display:block;height:100%;background:var(--c26-gold);transform:scaleX(0);transform-origin:left center}
body.admin-bar .c26-progress{top:32px}
@media (max-width:782px){body.admin-bar .c26-progress{top:46px}}
