.ceg-animate{transition-delay:var(--ceg-delay,0s);}
.ceg-fade-fast{opacity:0;transition:opacity .3s ease;}
.ceg-fade-slow{opacity:0;transition:opacity .8s ease;}
.ceg-fade-x-slow{opacity:0;transition:opacity 1.4s ease;}
.ceg-fadeIn{opacity:0;transition:opacity .9s ease;}
.ceg-fadeInDown{opacity:0;transform:translateY(-12px);transition:opacity .9s ease,transform .9s ease;}
.ceg-fadeInDownBig{opacity:0;transform:translateY(-32px);transition:opacity 1s ease,transform 1s ease;}
.ceg-fadeInLeft{opacity:0;transform:translateX(-14px);transition:opacity .9s ease,transform .9s ease;}
.ceg-fadeInLeftBig{opacity:0;transform:translateX(-34px);transition:opacity 1s ease,transform 1s ease;}
.ceg-fadeInRight{opacity:0;transform:translateX(14px);transition:opacity .9s ease,transform .9s ease;}
.ceg-fadeInRightBig{opacity:0;transform:translateX(34px);transition:opacity 1s ease,transform 1s ease;}
.ceg-fadeInUp{opacity:0;transform:translateY(12px);transition:opacity .9s ease,transform .9s ease;}
.ceg-fadeInUpBig{opacity:0;transform:translateY(32px);transition:opacity 1s ease,transform 1s ease;}
.ceg-fadeInTopLeft{opacity:0;transform:translate(-16px,-16px);transition:opacity 1s ease,transform 1s ease;}
.ceg-fadeInTopRight{opacity:0;transform:translate(16px,-16px);transition:opacity 1s ease,transform 1s ease;}
.ceg-fadeInBottomLeft{opacity:0;transform:translate(-16px,16px);transition:opacity 1s ease,transform 1s ease;}
.ceg-fadeInBottomRight{opacity:0;transform:translate(16px,16px);transition:opacity 1s ease,transform 1s ease;}
.ceg-slide-up{opacity:0;transform:translateY(16px);transition:opacity .55s ease,transform .55s ease;}
.ceg-slide-up-slow{opacity:0;transform:translateY(20px);transition:opacity .95s ease,transform .95s ease;}
.ceg-slide-down{opacity:0;transform:translateY(-16px);transition:opacity .55s ease,transform .55s ease;}
.ceg-slide-down-slow{opacity:0;transform:translateY(-20px);transition:opacity .95s ease,transform .95s ease;}
.ceg-slide-left{opacity:0;transform:translateX(20px);transition:opacity .5s ease,transform .5s ease;}
.ceg-slide-left-slow{opacity:0;transform:translateX(26px);transition:opacity .9s ease,transform .9s ease;}
.ceg-slide-right{opacity:0;transform:translateX(-20px);transition:opacity .5s ease,transform .5s ease;}
.ceg-slide-right-slow{opacity:0;transform:translateX(-26px);transition:opacity .9s ease,transform .9s ease;}
.ceg-zoom-in-fast{opacity:0;transform:scale(.92);transition:opacity .35s ease,transform .35s ease;}
.ceg-zoom-in-slow{opacity:0;transform:scale(.9);transition:opacity .7s ease,transform .7s ease;}
.ceg-zoom-in-x-slow{opacity:0;transform:scale(.88);transition:opacity 1.2s ease,transform 1.2s ease;}
.ceg-zoomIn{opacity:0;transform:scale(.9);transition:opacity .9s ease,transform .9s ease;}
.ceg-zoomInDown{opacity:0;transform:scale(.9) translateY(-20px);transition:opacity 1s ease,transform 1s ease;}
.ceg-zoomInLeft{opacity:0;transform:scale(.9) translateX(-20px);transition:opacity 1s ease,transform 1s ease;}
.ceg-zoomInRight{opacity:0;transform:scale(.9) translateX(20px);transition:opacity 1s ease,transform 1s ease;}
.ceg-zoomInUp{opacity:0;transform:scale(.9) translateY(20px);transition:opacity 1s ease,transform 1s ease;}
.ceg-zoom-out{opacity:0;transform:scale(1.08);transition:opacity .55s ease,transform .55s ease;}
.ceg-zoom-out-slow{opacity:0;transform:scale(1.12);transition:opacity .95s ease,transform .95s ease;}
.ceg-drop-in{opacity:0;transform:translateY(-18px) scale(.98);transition:opacity .55s cubic-bezier(.21,1.02,.73,1),transform .55s cubic-bezier(.21,1.02,.73,1);}
.ceg-drop-in-slow{opacity:0;transform:translateY(-22px) scale(.97);transition:opacity 1s cubic-bezier(.21,1.02,.73,1),transform 1s cubic-bezier(.21,1.02,.73,1);}
.ceg-animate-active{opacity:1;transform:none;}

.dark .ceg-has-dark-bg{background-color:var(--ceg-dark-bg) !important;background-image:none !important;}
.dark .ceg-has-dark-gradient{background-image:var(--ceg-dark-gradient) !important;background-color:transparent !important;}
.dark .ceg-has-dark-text, .dark .ceg-has-dark-text *{color:var(--ceg-dark-text) !important;}

.ceg-list-num-circle{list-style:none;padding-left:1.75em;counter-reset:ceg-counter;}
.ceg-list-num-circle > li{position:relative;padding-left:1.75em;}
.ceg-list-num-circle > li::before{content:counter(ceg-counter);counter-increment:ceg-counter;position:absolute;left:0;top:0.1em;width:1.4em;height:1.4em;border-radius:999px;background:#111;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.8em;line-height:1;}

.ceg-list-num-rect{list-style:none;padding-left:2.1em;counter-reset:ceg-counter;}
.ceg-list-num-rect > li{position:relative;padding-left:2.1em;}
.ceg-list-num-rect > li::before{content:counter(ceg-counter);counter-increment:ceg-counter;position:absolute;left:0;top:0;width:2em;height:100%;border-radius:.35em;background:#111;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.8em;line-height:1;}

.ceg-list-bullet-arrow,.ceg-list-bullet-chevron{list-style:none;padding-left:1.5em;}
.ceg-list-bullet-arrow > li,.ceg-list-bullet-chevron > li{position:relative;padding-left:1.1em;}
.ceg-list-bullet-arrow > li::before,.ceg-list-bullet-chevron > li::before{position:absolute;left:0;top:0.15em;font-weight:700;color:currentColor;}
.ceg-list-bullet-arrow > li::before{content:"➜";}
.ceg-list-bullet-chevron > li::before{content:"›";}

/* Custom styles for hero text color based on background */
body.cass-hero-is-dark .site-header .brand,
body.cass-hero-is-dark .site-header a,
body.cass-hero-is-dark .cass-hero-content,
body.cass-hero-is-dark .cass-hero-content .cass-hero-block,
.cass-hero-wrap.cass-hero-dark .cass-hero-content,
.cass-hero-wrap.cass-hero-dark .cass-hero-content .cass-hero-block {
    color: #f9fafb !important;
}

body.cass-hero-is-light .site-header .brand,
body.cass-hero-is-light .site-header a,
body.cass-hero-is-light .cass-hero-content,
body.cass-hero-is-light .cass-hero-content .cass-hero-block,
.cass-hero-wrap.cass-hero-light .cass-hero-content,
.cass-hero-wrap.cass-hero-light .cass-hero-content .cass-hero-block {
    color: #1a202c !important;
}

/* Hero title follows hero-local tone */
.cass-hero-title,
.page-title {
    color: inherit;
}
.cass-hero-wrap.cass-hero-dark .cass-hero-title,
body.cass-hero-is-dark .cass-hero-title,
.cass-hero-wrap.cass-hero-dark .page-title,
body.cass-hero-is-dark .page-title {
    color: #f9fafb !important;
}
.cass-hero-wrap.cass-hero-light .cass-hero-title,
body.cass-hero-is-light .cass-hero-title,
.cass-hero-wrap.cass-hero-light .page-title,
body.cass-hero-is-light .page-title {
    color: #1a202c !important;
}

/* Hide default entry title when hero title is shown */
body.cass-hero-hide-title .entry-title {
    display: none;
}

/* Hero container fallback background per mode */
.cass-hero-wrap {
	background-color: #f7fafc;
}
.cass-hero-wrap.cass-hero-dark,
body.cass-hero-is-dark .cass-hero-wrap {
	background-color: #0b1220;
}
.cass-hero-wrap.cass-hero-light,
body.cass-hero-is-light .cass-hero-wrap {
	background-color: #f7fafc;
}

/* Ensure hero content fills hero height to allow vertical alignment */
.cass-hero-content {
	min-height: var(--cass-hero-h, 100%);
	height: 100%;
	display: flex;
	flex-direction: column;
	align-items: stretch;
}

.cass-hero-content .cass-hero-block {
	height: 100%;
	min-height: 100%;
	align-self: stretch;
	background-color: transparent;
	flex: 1 1 auto;
}
