.elementor-kit-25{--e-global-color-primary:#0D1015;--e-global-color-secondary:#C4300C;--e-global-color-text:#505866;--e-global-color-accent:#C6F135;--e-global-color-kapaper:#EDEFF2;--e-global-color-kawhite:#FFFFFF;--e-global-color-kasurface2:#E2E6EB;--e-global-color-kaline:#C8CDD4;--e-global-color-kasuccess:#1B7A4B;--e-global-color-kawarning:#9A5B00;--e-global-color-kaerror:#C4232B;--e-global-color-kafocus:#2450FF;--e-global-color-kacoral:#FF5F3D;--e-global-color-kalime2:#D2FF4D;--e-global-color-kadark:#0A0C10;--e-global-color-kadark2:#14171D;--e-global-color-kagrey:#9BA3B0;--e-global-color-kasoft:#C4C9D1;--e-global-color-kaoff:#F1F2F4;--e-global-color-kaedge:#2B3039;--e-global-color-kaedge2:#5A6270;--e-global-typography-primary-font-family:"Instrument Serif";--e-global-typography-primary-font-size:144px;--e-global-typography-primary-font-weight:400;--e-global-typography-primary-line-height:0.92em;--e-global-typography-primary-letter-spacing:-0.02em;--e-global-typography-secondary-font-family:"Outfit";--e-global-typography-secondary-font-size:17px;--e-global-typography-secondary-font-weight:400;--e-global-typography-secondary-line-height:1.65em;--e-global-typography-secondary-letter-spacing:0em;--e-global-typography-text-font-family:"Outfit";--e-global-typography-text-font-size:22px;--e-global-typography-text-font-weight:400;--e-global-typography-text-line-height:1.5em;--e-global-typography-text-letter-spacing:0em;--e-global-typography-accent-font-family:"DM Mono";--e-global-typography-accent-font-size:12px;--e-global-typography-accent-font-weight:500;--e-global-typography-accent-text-transform:uppercase;--e-global-typography-accent-line-height:1.2em;--e-global-typography-accent-letter-spacing:0.14em;--e-global-typography-kah1-font-family:"Instrument Serif";--e-global-typography-kah1-font-size:96px;--e-global-typography-kah1-font-weight:400;--e-global-typography-kah1-line-height:0.95em;--e-global-typography-kah1-letter-spacing:-0.015em;--e-global-typography-kah2-font-family:"Instrument Serif";--e-global-typography-kah2-font-size:64px;--e-global-typography-kah2-font-weight:400;--e-global-typography-kah2-line-height:1em;--e-global-typography-kah2-letter-spacing:-0.01em;--e-global-typography-kah3-font-family:"Instrument Serif";--e-global-typography-kah3-font-size:44px;--e-global-typography-kah3-font-weight:400;--e-global-typography-kah3-line-height:1.05em;--e-global-typography-kah3-letter-spacing:-0.005em;--e-global-typography-kah4-font-family:"Instrument Serif";--e-global-typography-kah4-font-size:30px;--e-global-typography-kah4-font-weight:400;--e-global-typography-kah4-line-height:1.15em;--e-global-typography-kah4-letter-spacing:0em;--e-global-typography-kah5-font-family:"Outfit";--e-global-typography-kah5-font-size:22px;--e-global-typography-kah5-font-weight:600;--e-global-typography-kah5-line-height:1.3em;--e-global-typography-kah5-letter-spacing:-0.005em;--e-global-typography-kah6-font-family:"Outfit";--e-global-typography-kah6-font-size:18px;--e-global-typography-kah6-font-weight:600;--e-global-typography-kah6-line-height:1.35em;--e-global-typography-kah6-letter-spacing:0em;--e-global-typography-kasmall-font-family:"Outfit";--e-global-typography-kasmall-font-size:14px;--e-global-typography-kasmall-font-weight:400;--e-global-typography-kasmall-line-height:1.5em;--e-global-typography-kasmall-letter-spacing:0em;--e-global-typography-kabutton-font-family:"Outfit";--e-global-typography-kabutton-font-size:15px;--e-global-typography-kabutton-font-weight:600;--e-global-typography-kabutton-line-height:1em;--e-global-typography-kabutton-letter-spacing:0.01em;--e-global-typography-kaquote-font-family:"Instrument Serif";--e-global-typography-kaquote-font-size:40px;--e-global-typography-kaquote-font-weight:400;--e-global-typography-kaquote-font-style:italic;--e-global-typography-kaquote-line-height:1.15em;--e-global-typography-kaquote-letter-spacing:-0.005em;background-color:#EDEFF2;color:#0D1015;font-family:"Outfit", Sans-serif;font-size:17px;line-height:1.5em;}.elementor-kit-25 e-page-transition{background-color:#FFBC7D;}.elementor-kit-25 a{color:#C4300C;}.elementor-kit-25 a:hover{color:#0D1015;}.elementor-kit-25 img{border-radius:0px 0px 0px 0px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1280px;}.e-con{--container-max-width:1280px;}.elementor-widget:not(:last-child){--kit-widget-spacing:0px;}.elementor-element{--widgets-spacing:0px 0px;--widgets-spacing-row:0px;--widgets-spacing-column:0px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-kit-25{--e-global-typography-primary-font-size:112px;--e-global-typography-secondary-font-size:17px;--e-global-typography-text-font-size:20px;--e-global-typography-accent-font-size:12px;--e-global-typography-kah1-font-size:72px;--e-global-typography-kah2-font-size:52px;--e-global-typography-kah3-font-size:38px;--e-global-typography-kah4-font-size:28px;--e-global-typography-kah5-font-size:20px;--e-global-typography-kah6-font-size:17px;--e-global-typography-kasmall-font-size:14px;--e-global-typography-kabutton-font-size:15px;--e-global-typography-kaquote-font-size:34px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-25{--e-global-typography-primary-font-size:64px;--e-global-typography-secondary-font-size:16px;--e-global-typography-text-font-size:19px;--e-global-typography-accent-font-size:11px;--e-global-typography-kah1-font-size:48px;--e-global-typography-kah2-font-size:38px;--e-global-typography-kah3-font-size:30px;--e-global-typography-kah4-font-size:24px;--e-global-typography-kah5-font-size:19px;--e-global-typography-kah6-font-size:16px;--e-global-typography-kasmall-font-size:13px;--e-global-typography-kabutton-font-size:15px;--e-global-typography-kaquote-font-size:26px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS *//* ===================================================================
   Kingdom Ambassadors — site styles for Elementor
   Lives in Site Settings › Custom CSS. Every rule is scoped to a
   "ka-" class, so nothing here touches Church Manager or other plugins.
   =================================================================== */

:root {
	--ka-ink: #0D1015;
	--ka-dark: #0A0C10;
	--ka-verm: #C4300C;
	--ka-coral: #FF5F3D;
	--ka-lime: #C6F135;
	--ka-lime-2: #D2FF4D;
	--ka-paper: #EDEFF2;
	--ka-ease: cubic-bezier(.2, .7, .2, 1);
}
body { -webkit-font-smoothing: antialiased; }
html { scroll-behavior: smooth; }

/* Words inside headings: <em> = italic, .ka-accent = coloured, .ka-outline = outline letters */
.ka-serif em, .ka-serif i { font-style: italic; }
.ka-accent { color: var(--ka-verm); }
.ka-on-dark .ka-accent, .ka-accent--coral { color: var(--ka-coral); }
.ka-outline { color: transparent; -webkit-text-stroke: 1.5px var(--ka-stroke, #0D1015); }
.ka-on-dark .ka-outline { --ka-stroke: #F1F2F4; }
.ka-outline-ink { color: transparent !important; -webkit-text-stroke: 1.5px var(--ka-ink); }
.ka-outline-light { color: transparent !important; -webkit-text-stroke: 1.5px #F1F2F4; }
.ka-serif .elementor-heading-title { font-synthesis: none; }

/* Small mono labels with a rule: "SEASON 03 ——— 2026 · ACCRA" */
.ka-eyebrow .elementor-heading-title { display: flex; align-items: center; flex-wrap: wrap; gap: 8px 16px; }
.ka-rule { display: inline-block; width: clamp(40px, 8vw, 120px); height: 1px; background: currentColor; }
.ka-rule--short { width: 32px; }
.ka-dot { display: inline-block; width: 8px; height: 8px; border-radius: 50%; background: var(--ka-verm); }
.ka-dot--ink { background: var(--ka-ink); }

/* Pill buttons: the arrow slides a little on hover */
.ka-btn .elementor-button { transition: gap 200ms var(--ka-ease), background-color 200ms, color 200ms, border-color 200ms; }
.ka-btn .elementor-button-content-wrapper { gap: 10px; transition: gap 200ms var(--ka-ease); }
.ka-btn .elementor-button:hover .elementor-button-content-wrapper { gap: 16px; }
.ka-btn .elementor-button-icon svg { width: 1em; height: 1em; }

/* Underlined text links ("All events →") */
.ka-textlink .elementor-heading-title a { display: inline-flex; align-items: center; gap: 8px; border-bottom: 1px solid currentColor; padding-bottom: 3px; transition: color 200ms, border-color 200ms; }
.ka-textlink .elementor-heading-title a:hover { color: var(--ka-verm); }
.ka-on-dark .ka-textlink .elementor-heading-title a:hover { color: var(--ka-lime-2); }

/* Instagram "Follow along" link */
.ka-textlink-list .elementor-icon-list-item a { border-bottom: 1px solid var(--ka-ink); padding-bottom: 3px; }

/* Duotone photos: grey photo × colour, lifted by the ink */
.ka-duo { isolation: isolate; overflow: hidden; }
.ka-duo::after { content: ""; position: absolute; inset: 0; background: var(--ka-ink); mix-blend-mode: lighten; pointer-events: none; z-index: 1; }
.ka-duo .elementor-widget-image { position: absolute !important; inset: 0; width: 100% !important; height: 100%; margin: 0 !important; }
.ka-duo .elementor-widget-image .elementor-widget-container, .ka-duo .elementor-widget-image a { height: 100%; display: block; }
.ka-duo .elementor-widget-image img { width: 100% !important; height: 100% !important; max-width: none; object-fit: cover; filter: grayscale(1) contrast(1.1); mix-blend-mode: multiply; }
.ka-square { aspect-ratio: 1; }

/* Grain on dark sections */
.ka-grain { isolation: isolate; }
.ka-grain::before { content: ""; position: absolute; inset: 0; opacity: .16; mix-blend-mode: overlay; pointer-events: none; z-index: 0; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E"); }
.ka-grain > .e-con-inner, .ka-grain > .elementor-element { position: relative; z-index: 1; }

/* ---------------- Header ---------------- */
.elementor-location-header { position: sticky; top: 0; z-index: 50; }
.admin-bar .elementor-location-header { top: 32px; }
@media (max-width: 782px) { .admin-bar .elementor-location-header { top: 0; } }
.ka-header-bar { backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px); }
.ka-nav .elementor-icon-list-item a { padding: 6px 0; border-bottom: 2px solid transparent; transition: border-color 200ms; }
.ka-nav .elementor-icon-list-item a:hover, .ka-nav .elementor-icon-list-item a[aria-current="page"] { border-bottom-color: var(--ka-verm); }
.ka-nav .elementor-icon-list-icon { display: none; }
.ka-skip { position: absolute; left: 16px; top: -80px; z-index: 200; background: var(--ka-ink); color: #fff; padding: 12px 18px; border-radius: 999px; font-weight: 600; text-decoration: none; }
.ka-skip:focus { top: 16px; color: #fff; outline: 2px solid #2450FF; outline-offset: 2px; }

/* Full-screen phone menu: hidden until "Menu" is tapped. While you edit the header
   template it sits open in the page so you can change the links. */
.ka-menu:not(.is-open) { display: none !important; }
.elementor-edit-area-active .ka-menu { display: flex !important; }
.ka-menu.is-open { position: fixed !important; inset: 0; z-index: 100; overflow-y: auto; display: flex !important; flex-wrap: nowrap !important; }
body.ka-menu-open { overflow: hidden; }
.ka-menu-links .elementor-icon-list-item a { display: flex; align-items: baseline; gap: 16px; padding: 12px 0 !important; border-bottom: 1px solid #2B3039; transition: color 200ms; }
.ka-menu-links .elementor-icon-list-items { border-top: 1px solid #2B3039; }
.ka-menu-links .elementor-icon-list-text::before { content: counter(ka-menu, decimal-leading-zero); counter-increment: ka-menu; font-family: 'DM Mono', monospace; font-size: 11px; letter-spacing: .14em; color: #9BA3B0; width: 24px; display: inline-block; margin-right: 16px; vertical-align: .9em; font-style: normal; }
.ka-menu-links .elementor-icon-list-items { counter-reset: ka-menu; }
.ka-menu-links .elementor-icon-list-icon { display: none; }
.ka-menu-links a[aria-current="page"] .elementor-icon-list-text { color: var(--ka-coral); }

/* Phone: "Plan a visit | Give" pill after scrolling */
.ka-pill { transform: translateY(140%); transition: transform 300ms var(--ka-ease); }
.ka-pill.is-on { transform: none; }
.elementor-edit-area-active .ka-pill { transform: none; }
.ka-pill .elementor-heading-title a { display: flex; align-items: center; justify-content: center; gap: 10px; height: 56px; }
.ka-pill-dot .elementor-heading-title a::before { content: ""; width: 8px; height: 8px; border-radius: 50%; background: var(--ka-lime-2); }
body.ka-menu-open .ka-pill { transform: translateY(140%); }

/* ---------------- Home ---------------- */
.ka-hero-title { position: relative; z-index: 2; }
@media (min-width: 1025px) { .ka-hero-title .elementor-heading-title { margin-right: calc(-1 * clamp(0px, 6vw, 120px)); } }
.ka-badge .elementor-heading-title a, .ka-badge .elementor-heading-title { display: flex; align-items: center; justify-content: center; text-align: center; width: 100%; height: 100%; border-radius: 50%; }
.ka-badge { aspect-ratio: 1; transition: transform 200ms var(--ka-ease); }
.ka-badge > .elementor-widget-container { height: 100%; }
.ka-badge:hover { transform: rotate(-2deg) scale(1.05) !important; }

/* Marquee (the text scrolls; the script copies it so the loop is seamless) */
.ka-marquee { overflow: hidden; }
.ka-marquee .elementor-heading-title { display: flex; align-items: center; width: max-content; white-space: nowrap; }
.ka-marquee.is-ready .elementor-heading-title { animation: ka-marquee var(--ka-marquee-speed, 40s) linear infinite; }
.ka-marquee-item { padding: 0 clamp(14px, 2vw, 26px); }
.ka-marquee-item:nth-child(4n+3) { font-style: italic; }
.ka-marquee-star { padding: 0 clamp(14px, 2vw, 26px); font-family: 'Outfit', sans-serif; font-size: .5em; color: var(--ka-lime-2); font-style: normal; }
@keyframes ka-marquee { from { transform: translateX(0); } to { transform: translateX(-50%); } }

/* Sticker ("NEXT UP") */
.ka-sticker .elementor-heading-title { display: inline-block; border-radius: 999px; padding: 8px 12px; }

/* Service card: two times with a divider */
.ka-split > .e-con + .e-con { border-left: 1px solid #2B3039; }

/* Team rows */
.ka-team-row { transition: padding 200ms var(--ka-ease), background-color 200ms; }
.ka-team-row:hover { padding-left: 16px !important; background-color: #FFFFFF; }

/* Photo strip: swipe sideways */
.ka-strip { overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; }
.ka-strip::-webkit-scrollbar { display: none; }
.ka-strip > .elementor-element, .ka-strip > .e-con-inner > .elementor-element { flex: 0 0 clamp(180px, 22vw, 300px) !important; width: clamp(180px, 22vw, 300px) !important; scroll-snap-align: start; }
.ka-strip .elementor-widget-image img { width: 100%; aspect-ratio: 1; object-fit: cover; display: block; }

/* Cards that lift on hover */
.ka-lift { transition: transform 200ms var(--ka-ease); }

/* ---------------- Footer ---------------- */
.ka-footer-form .elementor-field-group .elementor-field { min-height: 56px; }
.ka-footer-form .elementor-button { min-height: 56px; }
.ka-footer-form .elementor-field-group:not(.elementor-field-type-submit) { flex: 1 1 220px; }
.ka-footer-form .elementor-field-type-submit { flex: 0 0 auto; width: auto !important; }
.ka-footer-form .elementor-form-fields-wrapper { flex-wrap: wrap; }
.ka-footer-links .elementor-icon-list-icon { display: none; }
.ka-social .elementor-social-icon { transition: background-color 200ms, color 200ms, border-color 200ms; }
.ka-social .elementor-social-icon:hover { background-color: var(--ka-lime-2) !important; border-color: var(--ka-lime-2) !important; }
.ka-social .elementor-social-icon:hover svg { fill: var(--ka-dark) !important; }
.ka-social .elementor-social-icon:hover i { color: var(--ka-dark) !important; }
.ka-wordmark .elementor-heading-title { color: transparent !important; -webkit-text-stroke: 1px #3A404B; white-space: nowrap; overflow: hidden; }

/* Reveal on scroll (set by the script; off for people who prefer less motion) */
.ka-reveal-init { opacity: 0; transform: translateY(24px); transition: opacity 500ms var(--ka-ease), transform 500ms var(--ka-ease); }
.ka-reveal-init.is-in { opacity: 1; transform: none; }
@media (max-width: 767px) { .ka-reveal-init { transform: translateY(12px); transition-duration: 300ms; } }
@media (prefers-reduced-motion: reduce) {
	.ka-marquee.is-ready .elementor-heading-title { animation: none; }
	.ka-reveal-init { opacity: 1; transform: none; }
	.ka-btn .elementor-button, .ka-team-row, .ka-badge, .ka-pill { transition: none; }
}
body.elementor-editor-active .ka-reveal-init { opacity: 1; transform: none; }

/* Keyboard focus */
.ka-btn .elementor-button:focus-visible, .ka-nav a:focus-visible, .ka-team-row:focus-visible, .ka-badge a:focus-visible { outline: 2px solid #2450FF; outline-offset: 3px; }

/* Phone pill position (kept out of the way while editing) */
.ka-pill { position: fixed !important; left: 16px; right: 16px; bottom: 16px; z-index: 60; width: auto !important; max-width: none !important; }
.elementor-edit-area-active .ka-pill { position: relative !important; left: auto; right: auto; bottom: auto; margin-top: 16px; }
.ka-pill .ka-pill-give { border-left: 1px solid #2B3039; }

/* ===================================================================
   Inner pages
   =================================================================== */

/* Chips ("Sundays 12 & 4PM") */
.ka-chip .elementor-heading-title a { display: inline-flex; align-items: center; gap: 8px; background: #fff; border: 1px solid #C8CDD4; border-radius: 999px; padding: 12px 18px; transition: border-color 200ms; }
.ka-chip .elementor-heading-title a:hover { border-color: var(--ka-verm); color: inherit; }
.ka-chip-sub { font-family: 'DM Mono', monospace; font-size: 12px; font-weight: 400; color: #505866; letter-spacing: .06em; }
.ka-chip--on .elementor-heading-title a { background: var(--ka-ink); border-color: var(--ka-ink); color: #fff !important; }

/* Rule that fills the rest of the row: "ALL SERIES ——————" */
.ka-rule--fill { flex: 1; width: auto; min-width: 40px; background: #C8CDD4; }
.ka-on-dark .ka-rule--fill { background: #2B3039; }

/* Inline sticker inside a big heading ("WE NEED YOU") */
.ka-inline-sticker { display: inline-block; vertical-align: top; margin-left: 16px; transform: rotate(10deg) translateY(10px); background: var(--ka-lime); color: var(--ka-ink); border: 1.5px solid var(--ka-ink); font-family: 'DM Mono', monospace; font-style: normal; font-weight: 500; font-size: 12px; letter-spacing: .12em; padding: 8px 12px; border-radius: 999px; line-height: 1.2; -webkit-text-stroke: 0; }

/* Photo shapes */
.ka-duo--dark::after { background: var(--ka-dark); }
.ka-r-3-2 { aspect-ratio: 3 / 2; }
.ka-r-4-3 { aspect-ratio: 4 / 3; }
.ka-r-4-5 { aspect-ratio: 4 / 5; }
.ka-r-2-1 { aspect-ratio: 2 / 1; }
.ka-r-16-10 { aspect-ratio: 16 / 10; }
.ka-r-1-1 { aspect-ratio: 1; }
@media (max-width: 767px) { .ka-r-2-1 { aspect-ratio: 4 / 3; } }

/* Round icon badge on photos and next to text */
.ka-icon-dot .elementor-icon { display: flex !important; align-items: center; justify-content: center; }

/* Lines with icons */
.ka-lines .elementor-icon-list-icon { flex: none; }
.ka-lines .elementor-icon-list-icon svg { flex: none; width: var(--e-icon-list-icon-size, 18px) !important; }
.ka-lines .elementor-icon-list-item { align-items: flex-start !important; }
.ka-lines--rule { border-top: 1px solid #C8CDD4; padding-top: 16px; }

/* Definition rows on cards (Merchant … [000000]) */
.ka-dl dl { display: grid; grid-template-columns: auto 1fr; gap: 6px 16px; margin: 0; border-top: 1px solid #C8CDD4; padding-top: 14px; }
.ka-dl dt { color: #505866; }
.ka-dl dd { margin: 0; }
.ka-dl code, .ka-mono-inline { font-family: 'DM Mono', monospace; font-size: .95em; background: none; padding: 0; }

/* Timeline rows ("0:10  Worship, about 30 minutes") */
.ka-timeline p { display: flex; gap: 12px; margin: 0 0 10px; }
.ka-timeline p:last-child { margin-bottom: 0; }
.ka-timeline strong { flex: none; width: 52px; font-family: 'DM Mono', monospace; font-weight: 400; font-size: 12px; color: var(--ka-verm); margin-top: 3px; }

/* Cards that lift on hover */
.ka-card { transition: transform 200ms var(--ka-ease), border-color 200ms, box-shadow 200ms; }
.ka-card:hover { transform: translateY(-4px); border-color: var(--ka-verm) !important; box-shadow: 0 20px 40px -20px rgba(13,16,21,.35); }

/* FAQ (Toggle widget) */
.ka-faq { border-top: 1px solid var(--ka-ink); }
.ka-faq .elementor-toggle-item { border-bottom: 1px solid #C8CDD4; }
.ka-faq .elementor-tab-title { display: flex; align-items: center; justify-content: space-between; gap: 20px; border: 0 !important; }
.ka-faq .elementor-tab-title a { order: 1; }
.ka-faq .elementor-toggle-icon { order: 2; flex: none; width: 36px !important; height: 36px; border-radius: 50%; border: 1.5px solid var(--ka-ink); display: inline-flex !important; align-items: center; justify-content: center; font-size: 14px; transition: background-color 200ms; }
.ka-faq .elementor-tab-title.elementor-active .elementor-toggle-icon { background: var(--ka-ink); }
.ka-faq .elementor-toggle-icon svg { width: 14px; height: 14px; }
.ka-faq .elementor-tab-content { border: 0 !important; max-width: 60ch; }

/* Video with rounded corners */
.ka-video .elementor-wrapper, .ka-video .elementor-custom-embed-image-overlay { border-radius: 24px; overflow: hidden; }
.ka-video .elementor-custom-embed-play i, .ka-video .elementor-custom-embed-play svg { background: #fff; border-radius: 50%; padding: 26px; box-sizing: content-box; }

/* Google map with the card's rounded corner */
.ka-map iframe { display: block; }

/* Church Manager sections placed in the design: let them fill their column */
.ka-plugin .cm { max-width: none; margin: 0; }
.ka-plugin--center .cm { max-width: 760px; margin: 0 auto; }
@media (min-width: 1025px) {
	.ka-events .cm-events-wrap:has(> .cm-panel) { display: grid; grid-template-columns: minmax(0, 1.5fr) minmax(320px, 1fr); gap: 24px; align-items: start; }
	.ka-events .cm-events-wrap > .cm-panel { position: sticky; top: 110px; }
}
/* While a single sermon is open, hide the parts meant for the list */
body.cm-view-single .ka-list-only { display: none !important; }

/* Stories (Posts widget) */
.ka-posts .elementor-post { display: flex; flex-direction: column; gap: 16px; background: none !important; }
.ka-posts .elementor-post__thumbnail__link { margin: 0 !important; }
.ka-posts .elementor-post__thumbnail { border-radius: 24px; overflow: hidden; border: 1.5px solid transparent; transition: transform 200ms var(--ka-ease), border-color 200ms; }
.ka-posts .elementor-post:hover .elementor-post__thumbnail { transform: translateY(-4px); border-color: var(--ka-verm); }
.ka-posts .elementor-post__text { padding: 0 !important; display: flex; flex-direction: column; gap: 12px; }
.ka-posts .elementor-post__title, .ka-posts .elementor-post__title a { font-family: 'Instrument Serif', serif; font-weight: 400; font-size: 32px; line-height: 1.02; color: var(--ka-ink); margin: 0; }
.ka-posts .elementor-post__meta-data { order: -1; font-family: 'DM Mono', monospace; font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: #505866; margin: 0; }
.ka-posts .elementor-post__excerpt p { font-size: 16px; line-height: 1.6; color: #505866; margin: 0; }
.ka-posts .elementor-pagination { display: flex; justify-content: center; gap: 8px; margin-top: 56px; font-family: 'DM Mono', monospace; font-size: 14px; }
.ka-posts .elementor-pagination .page-numbers { width: 44px; height: 44px; border-radius: 50%; border: 1px solid #C8CDD4; display: inline-flex; align-items: center; justify-content: center; color: var(--ka-ink); margin: 0 !important; }
.ka-posts .elementor-pagination .page-numbers.current { background: var(--ka-ink); border-color: var(--ka-ink); color: #fff; }
.ka-post-feature .elementor-post { display: flex; flex-direction: row; flex-wrap: wrap; background: #fff !important; border: 1px solid #C8CDD4; border-radius: 32px; overflow: hidden; transition: border-color 200ms, box-shadow 200ms; }
.ka-post-feature .elementor-post:hover { border-color: var(--ka-verm); box-shadow: 0 24px 48px -24px rgba(13,16,21,.35); }
.ka-post-feature .elementor-post__thumbnail__link { flex: 1.2 1 400px; width: auto !important; margin: 0 !important; }
.ka-post-feature .elementor-post__thumbnail { height: 100%; min-height: 340px; border-radius: 0; padding-bottom: 0 !important; }
.ka-post-feature .elementor-post__thumbnail img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.ka-post-feature .elementor-post__text { flex: 1 1 360px; padding: clamp(28px, 4vw, 56px) !important; display: flex; flex-direction: column; justify-content: flex-end; gap: 18px; }
.ka-post-feature .elementor-post__title, .ka-post-feature .elementor-post__title a { font-family: 'Instrument Serif', serif; font-weight: 400; font-size: clamp(40px, 4.5vw, 64px); line-height: .95; color: var(--ka-ink); }
.ka-post-feature .elementor-post__meta-data { order: -1; font-family: 'DM Mono', monospace; font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: #505866; }
.ka-post-feature .elementor-post__excerpt p { font-size: 17px; line-height: 1.6; color: #505866; margin: 0; }
.ka-post-feature .elementor-post__read-more { font-weight: 600; color: var(--ka-ink) !important; }

/* Story (single post) */
.ka-story-body { font-size: clamp(18px, 1.5vw, 20px); line-height: 1.75; }
.ka-story-body p { margin: 0 0 22px; }
.ka-story-body > .elementor-widget-container > p:first-of-type::first-letter, .ka-story-body p:first-of-type::first-letter { float: left; font-family: 'Instrument Serif', serif; font-size: 88px; line-height: .8; margin: 8px 12px 0 0; color: var(--ka-verm); }
.ka-story-body blockquote { margin: 20px 0 42px; padding: 28px 0; border-top: 1px solid var(--ka-ink); border-bottom: 1px solid var(--ka-ink); font-family: 'Instrument Serif', serif; font-style: italic; font-size: clamp(30px, 3.4vw, 42px); line-height: 1.12; }
.ka-story-body blockquote p { margin: 0; }
.ka-story-body h2, .ka-story-body h3 { font-family: 'Instrument Serif', serif; font-weight: 400; font-size: clamp(32px, 3vw, 40px); line-height: 1.05; margin: 38px 0 22px; }
.ka-story-body img { border-radius: 24px; }
.ka-post-info .elementor-icon-list-item { font-family: 'DM Mono', monospace; font-size: 11px; letter-spacing: .14em; text-transform: uppercase; }
.ka-post-info .elementor-post-info__item--type-author { font-family: 'Outfit', sans-serif; font-size: 15px; font-weight: 600; letter-spacing: 0; text-transform: none; }
.ka-post-info .elementor-avatar { width: 44px; height: 44px; border-radius: 50%; }
.ka-post-nav .post-navigation__prev { display: none; }
.ka-post-nav .elementor-post-navigation__link__next { justify-content: space-between; }
.ka-post-nav .post-navigation__next--label { font-family: 'DM Mono', monospace; font-size: 12px; letter-spacing: .14em; text-transform: uppercase; color: #505866; }
.ka-post-nav .post-navigation__next--title { font-family: 'Instrument Serif', serif; font-size: clamp(36px, 4.5vw, 60px); line-height: 1; color: var(--ka-ink); }

/* Marquee colour sets */
.ka-marquee--lime .ka-marquee-star { color: var(--ka-verm); }
.ka-marquee--vermilion .ka-marquee-star { color: var(--ka-ink); }
.ka-marquee--tilt { transform: rotate(-1.5deg) scale(1.02); }

/* Big 404 */
.ka-404 .elementor-heading-title { letter-spacing: -.05em; }/* End custom CSS */