/* Sacrisoft CORE — Export CSS */

.live-paragraph { font-size: 1.13rem; max-width: 40em; margin-left:auto; margin-right:auto;}

/* Simple 3-size system for text blocks */
.live-heading.h-sm { font-size: 2.2rem; line-height: 1.15; }
.live-heading.h-md { font-size: 3.2rem; line-height: 1.12; }
.live-heading.h-lg { font-size: 4.2rem; line-height: 1.08; }

.live-subtitle.sub-sm { font-size: 1.1rem; font-weight: 500; }
.live-subtitle.sub-md { font-size: 1.35rem; font-weight: 500; }
.live-subtitle.sub-lg { font-size: 1.7rem; font-weight: 500; }

.live-paragraph.p-sm { font-size: 1.0rem; }
.live-paragraph.p-md { font-size: 1.13rem; }
.live-paragraph.p-lg { font-size: 1.30rem; }

@media (max-width: 640px) {
.live-heading.h-lg { font-size: 2.6rem; }
.live-heading.h-md { font-size: 2.0rem; }
.live-heading.h-sm { font-size: 1.6rem; }

.live-subtitle.sub-lg { font-size: 1.2rem; }
.live-subtitle.sub-md { font-size: 1.05rem; }
.live-subtitle.sub-sm { font-size: 0.95rem; }

.live-paragraph.p-lg { font-size: 1.05rem; }
.live-paragraph.p-md { font-size: 0.98rem; }
.live-paragraph.p-sm { font-size: 0.92rem; }
}

.live-paragraph.uk-text-large { font-size: 1.45rem; }
@media (max-width: 640px) {
.live-paragraph { font-size: 1rem;}
.live-paragraph.uk-text-large { font-size: 1.1rem;}
}
/* Make exported images/videos responsive */
img, video {
max-width: 100%;
height: auto;
display: block;
}

@media (max-width: 640px) {
.live-heading, .live-subtitle, .live-paragraph {
word-break: break-word;
white-space: normal;
}
}
.navbar-scroll { display:flex; flex-wrap:nowrap; gap:1rem; overflow-x:auto; white-space:nowrap; -webkit-overflow-scrolling:touch; padding:0.5rem 1rem; align-items:center; list-style:none; margin:0; }
.navbar-scroll a { flex:0 0 auto; text-decoration:none; color:inherit; }
.navbar-scroll a.uk-active { font-weight:bold; border-bottom:2px solid currentColor; }
  
.navbar-logo {
height: 40px !important;
width: auto !important;
max-height: 40px !important;
object-fit: contain;
flex-shrink: 0 !important;
flex-grow: 0 !important;
}

.navbar-scroll {
display: flex;
flex-wrap: nowrap;
overflow-x: auto;
-webkit-overflow-scrolling: touch;
white-space: nowrap;
gap: 1rem;
padding: 0.5rem 1rem;
}
.navbar-scroll li {
flex: 0 0 auto;
list-style: none;
}

.visually-hidden {
position: absolute !important;
width: 1px; height: 1px;
margin: -1px; padding: 0; border: 0;
overflow: hidden; clip: rect(0 0 0 0); clip-path: inset(50%);
white-space: nowrap;
}

:root {
--navbar-link-color: #000000;
}

.navbar-scroll::-webkit-scrollbar {
height: 6px;
}
.navbar-scroll::-webkit-scrollbar-thumb {
background: var(--navbar-link-color);
border-radius: 3px;
}
.navbar-scroll::-webkit-scrollbar-track {
background: var(--gray, #eee);
}


.navbar-scroll {
-ms-overflow-style: none;  /* IE & Edge */
scrollbar-width: none;     /* Firefox */
}
.navbar-scroll::-webkit-scrollbar {
display: none;             /* Chrome, Safari, Opera */
}

/* ========================================================================
Button 
========================================================================== */

/* Primary Button */
.uk-button-primary {
background-color: var(--dn-text, #000);
color: #fff;
}

/* Primary Button Hover */
.uk-button-primary:hover {
background-color: var(--dn-text, #000);
color: #fff;
}

/* Primary Button Active */
.uk-button-primary:active,
.uk-button-primary.uk-active {
background-color: var(--dn-text, #000);
color: #fff;
}

/* Secondary Button */
.uk-button-secondary {
background-color: var(--dn-text, #000);
color: #fff;
border: 1px solid transparent;
}

/* Secondary Button Hover */
.uk-button-secondary:hover {
background-color: #fff;
color: var(--dn-text, #000);
}

/* Secondary Button Active */
.uk-button-secondary:active,
.uk-button-secondary.uk-active {
background-color: var(--dn-text, #000);
color: #fff;
}

/* Contextual Secondary Button Overrides for UIkit Sections/Cards/Overlay */
.uk-light .uk-button-secondary,
.uk-section-primary:not(.uk-preserve-color) .uk-button-secondary,
.uk-section-secondary:not(.uk-preserve-color) .uk-button-secondary,
.uk-tile-primary:not(.uk-preserve-color) .uk-button-secondary,
.uk-tile-secondary:not(.uk-preserve-color) .uk-button-secondary,
.uk-card-primary.uk-card-body .uk-button-secondary,
.uk-card-primary > :not([class*='uk-card-media']) .uk-button-secondary,
.uk-card-secondary.uk-card-body .uk-button-secondary,
.uk-card-secondary > :not([class*='uk-card-media']) .uk-button-secondary,
.uk-overlay-primary .uk-button-secondary,
.uk-offcanvas-bar .uk-button-secondary {
background-color: var(--dn-text, #000);
color: #fff;
}

/* Shared paired content CTA layout */
.sc-content-button-pair{
  display:flex;
  align-items:center;
  justify-content:center;
  flex-wrap:wrap;
  gap:10px;
  margin-top:18px;
}
.sc-content-button-pair .sc-core-cta{
  margin-top:0 !important;
}

/* FAQ button builder + paired answer CTAs */
#faq-modal .faq-button-panel{
  padding:14px 16px;
  border-radius:16px;
  background:#fafafa;
  box-shadow:0 5px 18px rgba(0,0,0,.05);
}
#faq-modal .faq-button-panel-secondary{
  margin-top:12px !important;
}
.faq-answer-buttons{
  display:flex;
  align-items:center;
  justify-content:flex-start;
  flex-wrap:wrap;
  gap:10px;
  max-width:40em;
}
.faq-answer-buttons .sc-core-cta{
  margin-top:0 !important;
}
.faq-answer-buttons > .sc-lightbox-link,
.faq-answer-buttons > .sc-core-cta{
  display:inline-flex !important;
  visibility:visible !important;
  opacity:1 !important;
}
.faq-answer-buttons .sc-core-cta{
  position:relative;
  z-index:1;
}

@media(max-width:640px){
  .faq-answer-buttons{
    align-items:stretch;
  }
}

/* Sacrisoft CORE CTA — single global button system */
.sc-core-cta{
  --sc-btn-bg:transparent;
  --sc-btn-text:#ffffff;
  --sc-btn-border:#ffffff;

  appearance:none;
  -webkit-appearance:none;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  box-sizing:border-box;

  min-height:52px;
  padding:0 30px;
  margin-top:18px;

  border:1px solid var(--sc-btn-border);
  border-radius:25px;

  background:var(--sc-btn-bg);
  color:var(--sc-btn-text) !important;

  font:inherit;
  font-size:16px;
  font-weight:500;
  line-height:1.2;
  text-align:center;
  text-decoration:none !important;
  text-transform:none;
  letter-spacing:normal;

  cursor:pointer;
  transition:
    background .18s ease,
    color .18s ease,
    border-color .18s ease,
    opacity .18s ease,
    filter .18s ease,
    transform .18s ease;
}

/* Default: white outline */
.sc-core-cta-default{
  --sc-btn-bg:transparent;
  --sc-btn-text:#ffffff;
  --sc-btn-border:#ffffff;
}
.sc-core-cta-default:hover{
  --sc-btn-bg:#ffffff;
  --sc-btn-text:#000000;
}

/* Light: white background / black text */
.sc-core-cta-light{
  --sc-btn-bg:#ffffff;
  --sc-btn-text:#000000;
  --sc-btn-border:#ffffff;
}
.sc-core-cta-light:hover{
  --sc-btn-bg:#f2f2f2;
  --sc-btn-border:#f2f2f2;
}

/* Dark: black background / white text */
.sc-core-cta-dark{
  --sc-btn-bg:#000000;
  --sc-btn-text:#ffffff;
  --sc-btn-border:#000000;
}
.sc-core-cta-dark:hover{
  --sc-btn-bg:#222222;
  --sc-btn-border:#222222;
}

/* Text: intentionally larger and readable */
.sc-core-cta-text{
  min-height:auto;
  padding:4px 0;
  border:0;
  border-radius:0;
  background:transparent;
  color:#ffffff !important;
  font-size:1.35rem;
  line-height:1.35;
  text-decoration:underline !important;
  text-underline-offset:.18em;
}
.sc-core-cta-text:hover{
  opacity:.75;
}

/* Custom: CSS variables are written inline by makeButtonHtml() */
.sc-core-cta-custom{
  --sc-btn-bg:#FFA500;
  --sc-btn-text:#ffffff;
  --sc-btn-border:#FFA500;
}
.sc-core-cta-custom:hover{
  filter:brightness(.92);
}

/* Content button groups */
.sc-content-button-pair,
.faq-answer-buttons{
  display:flex;
  align-items:center;
  justify-content:center;
  flex-wrap:wrap;
  gap:10px;
  margin-top:18px;
}

.faq-answer-buttons{
  justify-content:flex-start;
}

.sc-content-button-pair .sc-core-cta,
.faq-answer-buttons .sc-core-cta{
  margin-top:0;
}

/* Lightbox wrappers should behave like the button itself. */
.sc-content-button-pair > .sc-lightbox-link,
.faq-answer-buttons > .sc-lightbox-link{
  display:inline-flex;
}

/* Mobile: stack only when needed, with space before button 2. */
@media(max-width:640px){
  .sc-content-button-pair,
  .faq-answer-buttons{
    flex-direction:column;
    align-items:stretch;
  }

  .sc-content-button-pair > *,
  .faq-answer-buttons > *{
    width:100%;
  }

  .sc-content-button-pair > *:nth-child(2),
  .faq-answer-buttons > *:nth-child(2){
    margin-top:12px;
  }

  .sc-content-button-pair .sc-core-cta,
  .faq-answer-buttons .sc-core-cta{
    width:100%;
  }
}

/* Default: UIkit-like white outline */
.sc-core-cta.sc-core-cta-default{
  background:transparent !important;
  color:#ffffff !important;
  border:1px solid #ffffff !important;
}
.sc-core-cta.sc-core-cta-default:hover{
  background:#ffffff !important;
  color:#000000 !important;
}

/* Light: white background / black text */
.sc-core-cta.sc-core-cta-light{
  background:#ffffff !important;
  color:#000000 !important;
  border:1px solid #ffffff !important;
}
.sc-core-cta.sc-core-cta-light:hover{
  background:#f2f2f2 !important;
  color:#000000 !important;
}

/* Dark: black background / white text */
.sc-core-cta.sc-core-cta-dark{
  background:#000000 !important;
  color:#ffffff !important;
  border:1px solid #000000 !important;
}
.sc-core-cta.sc-core-cta-dark:hover{
  background:#222222 !important;
  color:#ffffff !important;
}

/* Text: larger white text, no box */
.sc-core-cta.sc-core-cta-text{
  background:transparent !important;
  color:#ffffff !important;
  border:0 !important;
  padding-left:0 !important;
  padding-right:0 !important;
  font-size:1.35rem !important;
  line-height:1.35 !important;
  text-decoration:underline;
  text-underline-offset:.18em;
}
.sc-core-cta.sc-core-cta-text:hover{
  color:#ffffff !important;
  opacity:.78;
}

/* Custom: orange / white by default */
.sc-core-cta.sc-core-cta-custom{
  background:#FFA500 !important;
  color:#ffffff !important;
  border:1px solid #FFA500 !important;
}
.sc-core-cta.sc-core-cta-custom:hover{
  filter:brightness(.92);
}

/* Paired CTA responsive behavior */
.sc-content-button-pair,
.faq-answer-buttons{
  display:flex;
  align-items:center;
  justify-content:center;
  flex-wrap:wrap;
  gap:10px;
}
.faq-answer-buttons{
  justify-content:flex-start;
}
.sc-content-button-pair .sc-core-cta,
.faq-answer-buttons .sc-core-cta{
  margin-top:0 !important;
}

@media(max-width:640px){
  .sc-content-button-pair,
  .faq-answer-buttons{
    display:flex;
    flex-direction:column;
    align-items:stretch;
  }
  .sc-content-button-pair > * ,
  .faq-answer-buttons > *{
    width:100%;
  }
  .sc-content-button-pair > *:nth-child(2),
  .faq-answer-buttons > *:nth-child(2){
    margin-top:12px !important;
  }
  .sc-content-button-pair .sc-core-cta,
  .faq-answer-buttons .sc-core-cta{
    width:100%;
    text-align:center;
  }
}

/* ========================================================================
Links
========================================================================== */

.uk-link {
text-decoration: underline;
cursor: pointer;
}

.uk-link:hover,
.uk-link-toggle:hover .uk-link {
text-decoration: none;
}

/* ========================================================================
Lightbox
========================================================================== */

.uk-lightbox-button {
box-sizing: border-box;
width: 50px;
height: 50px;
background: rgba(0, 0, 0, 0.3);
color: rgba(255, 255, 255, 0.7);
border-radius: 100%;
/* 1 */
display: inline-flex;
justify-content: center;
align-items: center;
}

.uk-lightbox-iframe {
width: 90%;
height: 90%;
border: 0px solid black;
border-radius: 0; /* Default: no rounding for Chrome, Brave, etc. */
}

/* Lightbox media: keep video/iframe players inside 90% of viewport so controls remain visible */
.uk-lightbox-items iframe,
.uk-lightbox-items video {
  max-width: 90vw !important;
  max-height: 90vh !important;
}
.uk-lightbox-items iframe {
  width: 90vw !important;
  height: 90vh !important;
}

/* Safari-only override */
@supports (-webkit-hyphens: none) and (not (-moz-appearance: none)) {
.uk-lightbox-iframe {
border-radius: 25px;
}
}

.uk-lightbox-toolbar {
padding: 5px 5px;
background: transparent;
color: rgba(255, 255, 255, 0.7);
}
.uk-lightbox-toolbar > * {
color: rgba(255, 255, 255, 0.7);
}

.uk-lightbox-toolbar-icon {
box-sizing: border-box;
width: 50px;
height: 50px;
background: #000;
color: #fff;
border-radius: 100%;
/* 1 */
display: inline-flex;
justify-content: center;
align-items: center;
}

/* ===== keep only the close button always visible (preserve exact look) ===== */

/* wide selector to match common UIkit close button variants */
.uk-lightbox .uk-lightbox-button.uk-close,
.uk-lightbox .uk-lightbox-button.uk-close svg,
.uk-lightbox .uk-close,
.uk-lightbox [data-uk-close],
.uk-lightbox [data-uk-close] > * {
/* DO NOT change visual properties (width/height/background/color/border-radius/flex)
— we only override visibility/stacking/interaction and remove hide transforms. */
position: fixed !important;        /* remove from hidden parent so it stays visible */
top: 5px !important;               /* align with toolbar padding — preserves placement */
right: 5px !important;             /* align with toolbar padding */
z-index: 999999 !important;        /* above overlays */
display: inline-flex !important;   /* keep your inline-flex layout */
opacity: 0.7 !important;             /* force fully visible */
visibility: visible !important;    /* force visible */
pointer-events: auto !important;   /* clickable even if parent is disabled */
transform: none !important;        /* cancel hide transforms */
transition: none !important;       /* prevent fade-out transitions */
animation: none !important;        /* stop any hiding animations */
}

/* If UIkit sets helper classes, undo them for close only */
.uk-lightbox .uk-lightbox-button.uk-close.uk-hidden,
.uk-lightbox .uk-lightbox-button.uk-close.uk-invisible,
.uk-lightbox .uk-close.uk-hidden,
.uk-lightbox .uk-close.uk-invisible,
.uk-lightbox [data-uk-close].uk-hidden,
.uk-lightbox [data-uk-close].uk-invisible {
display: inline-flex !important;
opacity: 0.7 !important;
visibility: visible !important;
pointer-events: auto !important;
}

/* keep SVG/icon inside intact (do not change color/size) */
.uk-lightbox .uk-lightbox-button.uk-close svg,
.uk-lightbox .uk-close svg {
position: static !important;
width: auto !important;
height: auto !important;
}

/* mobile tweak to avoid overlap while preserving look (keeps same size) */
@media (max-width: 480px) {
.uk-lightbox .uk-lightbox-button.uk-close,
.uk-lightbox .uk-close,
.uk-lightbox [data-uk-close] {
top: 8px !important;
right: 8px !important;
}
}

.uk-lightbox,
.uk-lightbox.uk-open,
.uk-lightbox .uk-lightbox-items {
  z-index: 9999 !important; /* or even higher */
}

/* ========================================================================
Slider
========================================================================== */

.uk-slidenav {
padding: 5px 10px;
color: rgba(102, 102, 102, 0.5);
transition: color 0.1s ease-in-out;
width: 50px;
height: 50px;
background: rgba(0, 0, 0, 0.3);
color: rgba(255, 255, 255, 0.7);
border-radius: 100%;
display: inline-flex;
justify-content: center;
align-items: center;

}

/* ========================================================================
Additional CSS:
========================================================================== */

html {
-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

button:focus,
button:active {
-moz-outline: 0 !important;
-ms-outline:0 !important;
-o-outline: 0 !important;
-webkit-outline: 0 !important;
}

.uk-border-rounded {
border-radius: 25px;
}

/* ============================
Dynamic Navbar & Mobile Menu
=========================== */

/* ---------- Mobile + Tablet: up to 1024px ---------- */
@media (max-width: 1024px) {

  /* --- Navbar container --- */
  #dynamic-navbar-container,
  nav.uk-navbar-container {
    display: flex;
    align-items: center;
    justify-content: flex-start; /* keep logo on left */
    width: 100%;
    min-height: 60px;
    background-color: var(--navbar-bg-color, #fff);
    position: relative;
    z-index: 1;
  }

  /* --- Navbar UL --- */
  #dynamic-navbar-container ul.navbar-scroll,
  nav.uk-navbar-container ul.navbar-scroll {
    display: flex;
    align-items: center;
    margin: 0;
    padding: 0;
  }

  /* --- Hide all text links, keep layout --- */
  #dynamic-navbar-container ul.navbar-scroll a:not(:has(img)),
  nav.uk-navbar-container ul.navbar-scroll a:not(:has(img)) {
    visibility: hidden;       /* hides but keeps space */
    pointer-events: none;     /* prevents clicks */
    height: 0;                /* optional: collapse vertical space */
    margin: 0;
    padding: 0;
  }

  /* --- Logo link visible --- */
  #dynamic-navbar-container ul.navbar-scroll a:has(img),
  nav.uk-navbar-container ul.navbar-scroll a:has(img) {
    visibility: visible;
    pointer-events: auto;
  }

  /* --- Logo image styling --- */
  #dynamic-navbar-container ul.navbar-scroll a:has(img) img,
  nav.uk-navbar-container ul.navbar-scroll a:has(img) img {
    display: block;
    max-height: 40px;
    width: auto;
  }

/* --- Logo image spacing --- */
#dynamic-navbar-container ul.navbar-scroll a:has(img) img,
nav.uk-navbar-container ul.navbar-scroll a:has(img) img {
    display: block;
    max-height: 40px;
    width: auto;
    margin-left: 10px; /* move logo 10px from left without breaking flex alignment */
}

  /* --- Mobile Menu Toggle (Hamburger) --- */
  #mobile-menu-toggle {
    display: flex;
    position: fixed;
    top: 12.5px;
    right: 10px;
    width: 40px;
    height: 40px;
    cursor: pointer;
    align-items: center;
    justify-content: center;
    z-index: 9999;
    isolation: isolate;
    background: transparent;
  }

  #mobile-menu-toggle .bar {
    width: 30px;
    height: 2px;
    background-color: var(--navbar-link-color, #000);
    position: absolute;
    border-radius: 1px;
    transition: all 0.4s ease;
    z-index: 2;
  }

  #mobile-menu-toggle .bar1 { top: 12px; }
  #mobile-menu-toggle .bar2 { top: 22px; }

  #mobile-menu-toggle.open .bar1 {
    top: 50%;
    transform: translateY(-50%) rotate(45deg);
  }

  #mobile-menu-toggle.open .bar2 {
    top: 50%;
    transform: translateY(-50%) rotate(-45deg);
  }

  /* --- Mobile Menu Panel --- */
  #mobile-menu {
    display: none;
    position: fixed;
    top: 60px;
    left: 0;
    width: 100%;
    background-color: var(--navbar-bg-color, #fff);
    color: var(--navbar-text-color, #000);
    padding: 1rem 0;
    flex-direction: column;
    align-items: center;
    text-align: center;
    z-index: 9998;
  }

  #mobile-menu.show {
    display: flex !important;
  }

  #mobile-menu a {
    display: block;
    width: 100%;
    box-sizing:border-box;
    margin: 0.5rem 0;
    padding: 0.5rem 1.25rem;
    text-align: center;
    white-space: normal;
    word-break: break-word;
    overflow-wrap: break-word;
    color: var(--navbar-text-color, #000);
    text-decoration: none;
    background: transparent;
  }

  /* Hide logo in mobile menu (optional) */
  #mobile-menu .navbar-logo { display: none; }
}

/* ---------- Large screens: 1025px and above ---------- */
@media (min-width: 1025px) {
  #mobile-menu-toggle { display: none !important; }
  #mobile-menu { display: none; }

  /* Navbar container */
  #dynamic-navbar-container,
  nav.uk-navbar-container {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    width: 100%;
    min-height: 60px;
    background-color: var(--navbar-bg-color, #fff);
    position: relative;
    z-index: 1;
  }

  /* Navbar links visible */
  #dynamic-navbar-container ul.navbar-scroll a,
  nav.uk-navbar-container ul.navbar-scroll a {
    display: inline-block !important;
    visibility: visible !important;
    height: auto !important;
    margin: initial;
    padding: initial;
    text-decoration: none;
  }
}

#dynamic-navbar-container .navbar-scroll a:has(img) {
  text-decoration: none !important;
  border-bottom: none !important;
}

/* Prevent underline/bottom-border on logo link in preview/export too */
nav.uk-navbar-container .navbar-scroll a:has(img),
.navbar-scroll a:has(img){
  text-decoration: none !important;
  border-bottom: none !important; /* overrides .uk-active underline */
}

/* Hard-kill the bar divider line */
#editor-dropnavbar.dn-bar,
.dn-bar{
  border: 0 !important;
  border-bottom: 0 !important;
  box-shadow: none !important;
  outline: none !important;
}

.accordion-icon {
  transition: transform 0.2s ease;
}

/* When accordion item is open */
.uk-open .accordion-icon {
  transform: rotate(45deg);
}



.sc-auto-panel{display:flex!important;flex-direction:column;box-sizing:border-box;min-height:100vh!important}.sc-auto-panel>.sc-panel-content{width:100%;flex:0 0 auto;margin-top:auto!important;margin-bottom:auto!important}.sc-grid-shell{box-sizing:border-box;min-height:100vh;padding:145px 24px 72px!important;display:flex!important;flex-direction:column;justify-content:center}.sc-grid-shell>*{width:100%;flex:0 0 auto}.sc-gallery-panel{box-sizing:border-box;padding:145px 24px 72px!important}@media(max-width:640px){.sc-auto-panel{min-height:100svh!important}.sc-grid-shell{min-height:100svh;padding:112px 16px 54px!important}.sc-gallery-panel{padding:112px 16px 54px!important}}


/* Site Header / Hero */
.sc-site-header{
  position:relative;
  min-height:var(--sc-header-height,60vh);
  height:var(--sc-header-height,60vh);
  overflow:hidden;
  display:grid;
  place-items:center;
  background:var(--sc-header-bg,#000);
  color:var(--sc-header-text,#fff);
  isolation:isolate;
}
.sc-site-header-media{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  z-index:-3;
}
.sc-site-header-image{
  background-position:center;
  background-size:cover;
  background-repeat:no-repeat;
}
.sc-site-header-overlay{
  position:absolute;
  inset:0;
  background:var(--sc-header-overlay,#000);
  opacity:var(--sc-header-overlay-opacity,.35);
  z-index:-2;
}
.sc-site-header-content{
  width:min(1100px,calc(100% - 40px));
  margin:auto;
  text-align:center;
  color:var(--sc-header-text,#fff);
  z-index:1;
}
.sc-site-header-content h1{
  margin:0 0 14px;
  color:inherit;
  font-size:clamp(2.5rem,7vw,7rem);
  line-height:.98;
}
.sc-site-header-content p{
  margin:0 auto 24px;
  max-width:760px;
  color:inherit;
  font-size:clamp(1rem,2vw,1.5rem);
}
.sc-header-cta{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:46px;
  padding:0 24px;
  border-radius:999px;
  text-decoration:none;
  background:var(--sc-header-btn-bg,#fff) !important;
  color:var(--sc-header-btn-text,#000) !important;
}

.sc-header-scroll{
  position:absolute;
  left:50%;
  bottom:24px;
  transform:translateX(-50%);
  display:grid;
  place-items:center;
  width:46px;
  height:46px;
  padding:0;
  border:0;
  border-radius:50%;
  background:transparent;
  color:var(--sc-header-text,#fff);
  cursor:pointer;
  z-index:2;
  transition:transform .2s ease,opacity .2s ease;
}
.sc-header-scroll:hover{
  transform:translateX(-50%) translateY(3px);
  opacity:.72;
}

.sc-header-parallax .sc-site-header-image{
  background-attachment:fixed;
}
.sc-header-kenburns .sc-site-header-image{
  animation:scHeaderKenBurns 18s ease-in-out infinite alternate;
  transform-origin:center;
}
@keyframes scHeaderKenBurns{
  from{transform:scale(1.02) translate3d(0,0,0);}
  to{transform:scale(1.14) translate3d(-1.5%,1%,0);}
}
@media(max-width:768px){
  
.sc-header-scroll{
  position:absolute;
  left:50%;
  bottom:24px;
  transform:translateX(-50%);
  display:grid;
  place-items:center;
  width:46px;
  height:46px;
  padding:0;
  border:0;
  border-radius:50%;
  background:transparent;
  color:var(--sc-header-text,#fff);
  cursor:pointer;
  z-index:2;
  transition:transform .2s ease,opacity .2s ease;
}
.sc-header-scroll:hover{
  transform:translateX(-50%) translateY(3px);
  opacity:.72;
}

.sc-header-parallax .sc-site-header-image{background-attachment:scroll;}
  .sc-site-header-content{width:min(100% - 28px,900px);}
}



/* v10.10.13 — make UIkit outside modal closes genuinely visible.
   CORE previously scrolled/clipped the dialog itself; UIkit expects the modal
   overlay to scroll while dialog overflow remains visible. */
.uk-modal{
  overflow-y:auto !important;
  padding-top:56px !important;
}
.uk-modal-dialog{
  overflow:visible !important;
  max-height:none !important;
  transform:none !important;
  will-change:auto !important;
}
.uk-modal-dialog > .uk-modal-close-outside{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  position:absolute !important;
  top:-44px !important;
  right:0 !important;
  width:36px !important;
  height:36px !important;
  margin:0 !important;
  padding:8px !important;
  transform:none !important;
  z-index:2147482000 !important;
  color:#fff !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  opacity:.9 !important;
  cursor:pointer !important;
}
.uk-modal-dialog > .uk-modal-close-outside:hover{
  color:#fff !important;
  opacity:1 !important;
}
.uk-modal-dialog > .uk-modal-close-outside svg{
  width:18px !important;
  height:18px !important;
}
@media(max-width:640px){
  .uk-modal{padding-top:50px !important;}
  .uk-modal-dialog > .uk-modal-close-outside{top:-40px !important;}
}



/* v10.10.14 — force every UIkit outside modal close to remain visibly outside. */
.uk-modal{
  overflow-y:auto !important;
  padding-top:58px !important;
}
.uk-modal-dialog{
  position:relative !important;
  overflow:visible !important;
}
.uk-modal-dialog > .uk-modal-close-outside{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  position:absolute !important;
  top:-46px !important;
  right:0 !important;
  left:auto !important;
  width:38px !important;
  height:38px !important;
  margin:0 !important;
  padding:9px !important;
  z-index:2147483646 !important;
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:auto !important;
  transform:none !important;
  background:rgba(0,0,0,.78) !important;
  color:#fff !important;
  border:0 !important;
  border-radius:50% !important;
  box-shadow:0 3px 14px rgba(0,0,0,.28) !important;
  cursor:pointer !important;
}
.uk-modal-dialog > .uk-modal-close-outside svg{
  display:block !important;
  width:18px !important;
  height:18px !important;
  color:#fff !important;
}
.uk-modal-dialog > .uk-modal-close-outside svg line,
.uk-modal-dialog > .uk-modal-close-outside svg path{
  stroke:currentColor !important;
}
.uk-modal-dialog > .uk-modal-close-outside:hover{
  background:#000 !important;
  color:#fff !important;
}
@media(max-width:640px){
  .uk-modal{padding-top:52px !important;}
  .uk-modal-dialog > .uk-modal-close-outside{
    top:-42px !important;
    right:4px !important;
    width:34px !important;
    height:34px !important;
    padding:8px !important;
  }
}



.sc-form-section{
  position:relative;
  box-sizing:border-box;
}
.sc-form-section *,
.sc-form-section *::before,
.sc-form-section *::after{
  box-sizing:border-box;
}

.sc-generated-form{
  --sc-form-field-bg:#ffffff;
  --sc-form-field-text:#000000;
  --sc-form-accent:#FFA500;
  width:100%;
}

.sc-generated-form .sc-form-row{
  margin:0 0 16px;
}

.sc-generated-form .sc-form-control-row > label{
  display:block;
  margin:0 0 6px;
  color:inherit;
}

.sc-generated-form .uk-input,
.sc-generated-form .uk-textarea,
.sc-generated-form .uk-select{
  width:100%;
  background:var(--sc-form-field-bg)!important;
  color:var(--sc-form-field-text)!important;
  border:1px solid color-mix(in srgb,var(--sc-form-field-text) 24%,transparent)!important;
  border-radius:10px!important;
  box-shadow:none!important;
}

.sc-generated-form .uk-input::placeholder,
.sc-generated-form .uk-textarea::placeholder{
  color:color-mix(in srgb,var(--sc-form-field-text) 54%,transparent)!important;
}

.sc-generated-form .uk-checkbox,
.sc-generated-form .uk-radio{
  border-color:var(--sc-form-accent)!important;
}
.sc-generated-form .uk-checkbox:checked,
.sc-generated-form .uk-radio:checked{
  background-color:var(--sc-form-accent)!important;
  border-color:var(--sc-form-accent)!important;
}
.sc-generated-form a{
  color:var(--sc-form-accent)!important;
}
.sc-generated-form a:hover{
  color:var(--sc-form-accent)!important;
  opacity:.75;
}

/* STACKED — labels above controls */
.sc-generated-form.sc-form-style-stacked .sc-form-control-row{
  display:block!important;
}

/* MINIMAL — same layout, intentionally reduced to underline fields */
.sc-generated-form.sc-form-style-minimal .sc-form-control-row{
  display:block!important;
}
.sc-generated-form.sc-form-style-minimal .uk-input,
.sc-generated-form.sc-form-style-minimal .uk-textarea,
.sc-generated-form.sc-form-style-minimal .uk-select{
  border-radius:0!important;
  border:0!important;
  border-bottom:2px solid var(--sc-form-field-text)!important;
  background:transparent!important;
  padding-left:0!important;
  padding-right:0!important;
}

/* TWO COLUMNS — fields flow in two columns, collapse to one on mobile */
.sc-generated-form.sc-form-style-horizontal fieldset{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  column-gap:18px!important;
  row-gap:0!important;
}
.sc-generated-form.sc-form-style-horizontal .sc-form-control-row{
  display:block!important;
  min-width:0!important;
}
.sc-generated-form.sc-form-style-horizontal .sc-form-control-row > label{
  display:block!important;
  margin:0 0 6px!important;
}
/* Structural / choice / submit rows span the full form width. */
.sc-generated-form.sc-form-style-horizontal .sc-form-row:not(.sc-form-control-row),
.sc-generated-form.sc-form-style-horizontal .sc-form-submit-wrap{
  grid-column:1/-1!important;
}

.sc-generated-form .sc-form-submit-wrap{
  margin-top:24px;
}

/* EXACT global CORE CTA classes; no Form-specific look. */
.sc-generated-form .sc-core-cta{
  appearance:none!important;
  -webkit-appearance:none!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  box-sizing:border-box!important;

  min-height:52px!important;
  padding:0 46px!important;
  margin-top:18px!important;

  border-radius:25px!important;

  font:inherit!important;
  font-size:16px!important;
  font-weight:500!important;
  line-height:1.2!important;
  text-align:center!important;
  text-decoration:none!important;
  text-transform:none!important;
  letter-spacing:normal!important;

  cursor:pointer!important;
  transition:
    background .18s ease,
    color .18s ease,
    border-color .18s ease,
    opacity .18s ease,
    filter .18s ease,
    transform .18s ease!important;
}

/* Exact five global CORE Form button states */
.sc-generated-form .sc-core-cta-default{
  background:transparent!important;
  color:#ffffff!important;
  border:1px solid #ffffff!important;
}
.sc-generated-form .sc-core-cta-default:hover{
  background:#ffffff!important;
  color:#000000!important;
  border-color:#ffffff!important;
}

/* Publication parity: preserve the outline button exactly outside the editor too. */
.sc-form-section .sc-generated-form .sc-core-cta-default{
  background:transparent!important;
  color:#ffffff!important;
  border:1px solid #ffffff!important;
  box-shadow:none!important;
}

.sc-generated-form .sc-core-cta-light{
  background:#ffffff!important;
  color:#000000!important;
  border:0!important;
}
.sc-generated-form .sc-core-cta-light:hover{
  background:#000000!important;
  color:#ffffff!important;
}

.sc-generated-form .sc-core-cta-dark{
  background:#000000!important;
  color:#ffffff!important;
  border:0!important;
}
.sc-generated-form .sc-core-cta-dark:hover{
  background:#ffffff!important;
  color:#000000!important;
}

.sc-generated-form .sc-core-cta-text{
  position:relative!important;
  display:inline-flex!important;
  min-height:auto!important;
  padding:5px 1px!important;
  margin-top:18px!important;
  background:transparent!important;
  color:#ffffff!important;
  border:0!important;
  border-radius:0!important;
  font-size:1.35rem!important;
  line-height:1.35!important;
  text-decoration:none!important;
}
.sc-generated-form .sc-core-cta-text::after{
  content:"";
  position:absolute;
  left:0;
  right:100%;
  bottom:0;
  height:1px;
  background:currentColor;
  transition:right .25s ease-out;
}
.sc-generated-form .sc-core-cta-text:hover::after{
  right:0;
}
.sc-generated-form .sc-core-cta-text:hover{
  color:#ffffff!important;
  opacity:1!important;
}

.sc-generated-form .sc-core-cta.sc-core-cta-custom,
.sc-generated-form .sc-core-cta-custom{
  background:var(--sc-btn-bg,#FFA500)!important;
  color:var(--sc-btn-text,#ffffff)!important;
  border-color:var(--sc-btn-bg,#FFA500)!important;
}
.sc-generated-form .sc-core-cta.sc-core-cta-custom:hover,
.sc-generated-form .sc-core-cta-custom:hover{
  background:var(--sc-btn-text,#ffffff)!important;
  color:var(--sc-btn-bg,#FFA500)!important;
  border-color:var(--sc-btn-text,#ffffff)!important;
  filter:none!important;
}

/* Preview / Export: keep the same visible Custom-button outline seen in Live Editor.
   .core-editor exists only in the builder, so this does not alter the editor canvas. */
body:not(.core-editor) .sc-form-section .sc-generated-form .sc-core-cta-custom{
  background:var(--sc-btn-bg,#FFA500)!important;
  color:var(--sc-btn-text,#fff)!important;
  border:0!important;
  outline:none!important;
}

body:not(.core-editor) .sc-form-section .sc-generated-form .sc-core-cta-custom:hover{
  background:var(--sc-btn-text,#fff)!important;
  color:var(--sc-btn-bg,#FFA500)!important;
  border:1px solid var(--sc-btn-bg,#FFA500)!important;
  outline:none!important;
  filter:none!important;
}

/* Form Builder mirrors the SAME three layout modes without changing editor tools. */
#form-modal #form-fields-list.sc-form-style-stacked .sc-form-field-options,
#form-modal #form-fields-list.sc-form-style-minimal .sc-form-field-options{
  grid-template-columns:1fr 1fr!important;
}
#form-modal #form-fields-list.sc-form-style-minimal .sc-form-field-card{
  border-radius:0!important;
  border-width:0 0 2px!important;
  border-style:solid!important;
  border-color:#ddd!important;
}
#form-modal #form-fields-list.sc-form-style-horizontal .sc-form-field-options{
  grid-template-columns:minmax(150px,.34fr) minmax(0,1fr)!important;
  align-items:center!important;
}



/* Button parity across Live Editor / Preview / Export */
.sc-generated-form .sc-core-cta{
  min-height:52px!important;
  height:auto!important;
  padding:0 46px!important;
  margin-top:18px!important;
  font-size:16px!important;
  font-weight:500!important;
  line-height:1.2!important;
  border-radius:25px!important;
  box-sizing:border-box!important;
}
.sc-generated-form .sc-core-cta-text{
  min-height:auto!important;
  padding:5px 1px!important;
  border-radius:0!important;
  font-size:1.35rem!important;
}
.sc-generated-form .sc-core-cta-custom:hover{
  background:var(--sc-btn-text,#ffffff)!important;
  color:var(--sc-btn-bg,#FFA500)!important;
  border:1px solid var(--sc-btn-bg,#FFA500)!important;
  filter:none!important;
}


/* Styled File input — same five CORE button styles */
.sc-generated-form .sc-file-control{
  display:flex;
  align-items:center;
  gap:10px;
  min-width:0;
}
.sc-generated-form .sc-file-native{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  opacity:0!important;
  pointer-events:none!important;
}
.sc-generated-form .sc-file-button{
  margin:0!important;
  min-height:42px!important;
  padding:0 22px!important;
  flex:0 0 auto;
}
.sc-generated-form .sc-file-name{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:var(--sc-form-field-text);
  opacity:.72;
  font-size:.92em;
}

/* Accent is the universal Form focus color */
.sc-generated-form .uk-input:focus,
.sc-generated-form .uk-textarea:focus,
.sc-generated-form .uk-select:focus{
  border-color:var(--sc-form-accent)!important;
  outline:0!important;
  box-shadow:0 0 0 1px var(--sc-form-accent)!important;
}

.sc-generated-form.sc-form-style-minimal .uk-input:focus,
.sc-generated-form.sc-form-style-minimal .uk-textarea:focus,
.sc-generated-form.sc-form-style-minimal .uk-select:focus{
  border-color:var(--sc-form-accent)!important;
  border-bottom-color:var(--sc-form-accent)!important;
  box-shadow:none!important;
}

.sc-generated-form .uk-checkbox:focus,
.sc-generated-form .uk-radio:focus{
  border-color:var(--sc-form-accent)!important;
  box-shadow:0 0 0 2px color-mix(in srgb,var(--sc-form-accent) 28%,transparent)!important;
  outline:0!important;
}

.sc-generated-form a:focus,
.sc-generated-form button:focus-visible{
  outline:2px solid var(--sc-form-accent)!important;
  outline-offset:3px!important;
}

@media(max-width:640px){
  .sc-generated-form.sc-form-style-horizontal fieldset{
    grid-template-columns:1fr!important;
  }
  #form-modal #form-fields-list.sc-form-style-horizontal .sc-form-field-options{
    grid-template-columns:1fr!important;
  }
}

/* ============================================================
   FORM LABEL POLICY — shared by Editor / Preview / Export
   ============================================================ */

/* Stacked: normal labels are always visible. */
.sc-generated-form.sc-form-style-stacked .sc-form-control-row > label{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  height:auto!important;
  max-height:none!important;
  overflow:visible!important;
  margin:0 0 6px!important;
  color:inherit!important;
}

/* Minimal + Two Columns: no normal labels. These selectors are intentionally
   as specific as the older horizontal label rule so they override it. */
.sc-generated-form.sc-form-style-minimal .sc-form-control-row > label,
.sc-generated-form.sc-form-style-horizontal .sc-form-control-row > label{
  display:none!important;
}

/* Controls without a reliable native placeholder keep a visible label. */
.sc-generated-form.sc-form-style-minimal .sc-form-row-type-date > label,
.sc-generated-form.sc-form-style-minimal .sc-form-row-type-file > label,
.sc-generated-form.sc-form-style-minimal .sc-form-row-type-select > label,
.sc-generated-form.sc-form-style-horizontal .sc-form-row-type-date > label,
.sc-generated-form.sc-form-style-horizontal .sc-form-row-type-file > label,
.sc-generated-form.sc-form-style-horizontal .sc-form-row-type-select > label{
  display:block!important;
  margin:0 0 6px!important;
}

/* Mobile: keep context visible for controls whose placeholder can disappear
   or is unreliable on touch/mobile browsers. */
@media(max-width:640px){
  .sc-generated-form .sc-form-row-type-date > label,
  .sc-generated-form .sc-form-row-type-file > label,
  .sc-generated-form .sc-form-row-type-select > label,
  .sc-generated-form .sc-form-row-type-number > label,
  .sc-generated-form .sc-form-row-type-url > label{
    display:block!important;
    visibility:visible!important;
    opacity:.68!important;
    height:auto!important;
    max-height:none!important;
    overflow:visible!important;
    margin:0 0 5px!important;
    color:inherit!important;
    font-size:12px!important;
    font-weight:600!important;
    line-height:1.25!important;
  }

  /* Stacked is intentionally fully labelled, also on mobile. */
  .sc-generated-form.sc-form-style-stacked .sc-form-control-row > label{
    opacity:1!important;
    font-size:14px!important;
    font-weight:600!important;
  }
}


/* ============================================================
   TWO COLUMNS — deterministic shared placement
   Same CSS is used by Live Editor / Preview / Export.
   ============================================================ */
.sc-generated-form.sc-form-style-horizontal fieldset{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
  column-gap:24px!important;
  row-gap:0!important;
  align-items:stretch!important;
}

/* Every ordinary control belongs to the left column by default. */
.sc-generated-form.sc-form-style-horizontal .sc-form-control-row{
  grid-column:1!important;
  grid-row:auto!important;
  width:100%!important;
  min-width:0!important;
}

/* Message/Textarea owns the right column independently of field count/order. */
.sc-generated-form.sc-form-style-horizontal .sc-form-row-type-textarea{
  grid-column:2!important;
  grid-row:1 / span 99!important;
  display:flex!important;
  flex-direction:column!important;
  align-self:stretch!important;
  min-width:0!important;
}

.sc-generated-form.sc-form-style-horizontal .sc-form-row-type-textarea > div{
  display:flex!important;
  flex:1 1 auto!important;
  width:100%!important;
  min-height:0!important;
}

.sc-generated-form.sc-form-style-horizontal .sc-form-row-type-textarea .uk-textarea{
  width:100%!important;
  height:100%!important;
  min-height:100%!important;
  flex:1 1 auto!important;
  resize:vertical!important;
}

/* Non-control structural rows and Submit span the complete form. */
.sc-generated-form.sc-form-style-horizontal .sc-form-row:not(.sc-form-control-row),
.sc-generated-form.sc-form-style-horizontal .sc-form-submit-wrap{
  grid-column:1 / -1!important;
  grid-row:auto!important;
}

/* Mobile returns to normal document order. */
@media(max-width:640px){
  .sc-generated-form.sc-form-style-horizontal fieldset{
    grid-template-columns:1fr!important;
  }

  .sc-generated-form.sc-form-style-horizontal .sc-form-control-row,
  .sc-generated-form.sc-form-style-horizontal .sc-form-row-type-textarea,
  .sc-generated-form.sc-form-style-horizontal .sc-form-row:not(.sc-form-control-row),
  .sc-generated-form.sc-form-style-horizontal .sc-form-submit-wrap{
    grid-column:1!important;
    grid-row:auto!important;
  }

  .sc-generated-form.sc-form-style-horizontal .sc-form-row-type-textarea .uk-textarea{
    min-height:180px!important;
    height:auto!important;
  }
}



/* Rendered carousels */
.sc-carousel-panel-section{
  min-height:40vh!important;
  height:40vh!important;
  max-height:40vh!important;
  overflow:hidden!important;
}
.sc-carousel-panel-section > .sc-carousel-panel{
  min-height:0!important;
  height:100%!important;
  margin-top:0!important;
  margin-bottom:0!important;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.sc-carousel-panel-section .sc-carousel-section,
.sc-carousel-panel-section .sc-carousel-shell{
  min-height:0!important;
  height:100%!important;
  box-sizing:border-box;
}
.sc-carousel-panel-section .sc-carousel-shell{
  padding:24px 0!important;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.sc-carousel-panel-section .sc-carousel-award-item{
  min-height:0!important;
  height:30vh!important;
}
.sc-carousel-panel-section .sc-carousel-event-image,
.sc-carousel-panel-section .sc-carousel-award-image{
  max-height:30vh!important;
  width:auto;
  object-fit:contain;
}
@media(max-width:640px){
  .sc-carousel-panel-section{
    min-height:50vh!important;
    height:50vh!important;
    max-height:50vh!important;
  }
  .sc-carousel-panel-section .sc-carousel-award-item{
    height:40vh!important;
  }
  .sc-carousel-panel-section .sc-carousel-event-image,
  .sc-carousel-panel-section .sc-carousel-award-image{
    max-height:40vh!important;
  }
}

.sc-carousel-section{position:relative;overflow:hidden;}

/* Showcase No Gap must opt out of CORE's normal fixed Carousel panel height.
   Otherwise tall portrait images are clipped at the top/bottom even when the
   image itself uses height:auto. */
.sc-carousel-panel-section:has(.sc-carousel-showcase-nogap){
  min-height:0!important;
  height:auto!important;
  max-height:none!important;
  overflow:visible!important;
}
.sc-carousel-panel-section:has(.sc-carousel-showcase-nogap) > .sc-carousel-panel{
  min-height:0!important;
  height:auto!important;
  max-height:none!important;
  overflow:visible!important;
  justify-content:flex-start!important;
}
.sc-carousel-panel-section:has(.sc-carousel-showcase-nogap) .sc-carousel-section,
.sc-carousel-panel-section:has(.sc-carousel-showcase-nogap) .sc-carousel-shell{
  min-height:0!important;
  height:auto!important;
  max-height:none!important;
  overflow:visible!important;
}
.sc-carousel-section.sc-carousel-showcase-nogap{
  min-height:0!important;
  height:auto!important;
  max-height:none!important;
  overflow:visible!important;
}
.sc-carousel-section.sc-carousel-showcase-nogap .sc-carousel-shell{
  min-height:0!important;
  height:auto!important;
  max-height:none!important;
  overflow:visible!important;
}
.sc-carousel-section.sc-carousel-showcase-nogap [uk-slider],
.sc-carousel-section.sc-carousel-showcase-nogap .uk-slider-container,
.sc-carousel-section.sc-carousel-showcase-nogap .uk-slider-items{
  overflow:visible!important;
}

.sc-carousel-section .sc-carousel-shell{padding:48px 0;}
.sc-carousel-section .sc-carousel-title{text-align:center;margin:0 0 8px;}
.sc-carousel-section .sc-carousel-description{text-align:center;margin:0 0 30px;}
.sc-carousel-section .uk-slider-items{cursor:grab;}
.sc-carousel-award-item{position:relative;min-height:360px;display:flex;align-items:center;justify-content:center;}
.sc-carousel-award-item img{max-width:100%;height:auto;display:block;margin:auto;}
.sc-carousel-award-copy{
  position:absolute;inset:0;display:flex;align-items:center;justify-content:center;text-align:center;pointer-events:none;padding:18%;
}

/* Event overlay normally lets clicks pass through to the image/image-link.
   Re-enable pointer events only on the CTA so Image Link and Button URL can coexist. */
.sc-carousel-award-copy .sc-carousel-cta,
.sc-carousel-award-copy .sc-carousel-cta .sc-core-cta{
  pointer-events:auto!important;
  position:relative;
  z-index:3;
}

.sc-carousel-award-copy .sc-award-kicker{font-size:.85rem;text-transform:uppercase;}
.sc-carousel-award-copy .sc-award-main{font-size:1.25rem;font-weight:700;text-transform:uppercase;line-height:1.05;margin:.35em 0;}
.sc-carousel-award-copy .sc-award-meta{font-size:.9rem;font-weight:300;text-transform:uppercase;}
.sc-carousel-logo-item{display:flex!important;flex-direction:column;align-items:center;justify-content:center;padding:24px;min-height:230px;text-align:center;}
.sc-carousel-logo-item img{max-width:220px;max-height:140px;width:auto;height:auto;object-fit:contain;display:block;}
.sc-carousel-testimonial-item{padding:24px;text-align:center;}
.sc-carousel-testimonial-avatar{
  width:120px!important;
  height:120px!important;
  aspect-ratio:1 / 1;
  object-fit:cover!important;
  object-position:center;
  border-radius:50%!important;
  display:block;
  margin:0 auto 16px;
}
.sc-carousel-stars{font-size:22px;letter-spacing:3px;line-height:1;color:#f5b301;margin:0 0 12px;}
.sc-carousel-testimonial-name{font-weight:700;margin-bottom:8px;}
.sc-carousel-testimonial-description{max-width:520px;margin:0 auto;}
.sc-carousel-cta{margin-top:16px;}
.sc-carousel-cta .sc-core-cta-custom{
  background:var(--sc-btn-bg,#FFA500)!important;
  color:var(--sc-btn-text,#ffffff)!important;
  border:0!important;
  filter:none!important;
}
.sc-carousel-cta .sc-core-cta-custom:hover{
  background:var(--sc-btn-text,#ffffff)!important;
  color:var(--sc-btn-bg,#FFA500)!important;
  border:0!important;
  filter:none!important;
}
.sc-carousel-award-copy .sc-core-cta-custom{
  background:var(--sc-btn-bg,#FFA500)!important;
  color:var(--sc-btn-text,#ffffff)!important;
  border:0!important;
  filter:none!important;
}
.sc-carousel-award-copy .sc-core-cta-custom:hover{
  background:var(--sc-btn-text,#ffffff)!important;
  color:var(--sc-btn-bg,#FFA500)!important;
  border:0!important;
  filter:none!important;
}

@media(max-width:900px){
  #carousel-modal .sc-carousel-top{grid-template-columns:1fr 1fr;}
  #carousel-modal .sc-carousel-fields{grid-template-columns:1fr 1fr;}
}
@media(max-width:640px){
  /* Carousel Builder — deliberate mobile layout */
  #carousel-modal .uk-modal-dialog{
    box-sizing:border-box!important;
    width:auto!important;
    max-width:none!important;
    margin:6px!important;
    padding:20px 16px 24px!important;
  }

  #carousel-modal .uk-modal-title{
    font-size:2rem;
    line-height:1.05;
    margin-bottom:24px;
  }

  /* Type + Title, then Description full width, then the two colors */
  #carousel-modal .sc-carousel-top{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:18px 16px;
    align-items:end;
  }
  #carousel-modal .sc-carousel-top > div:nth-child(3){
    grid-column:1 / -1;
  }
  #carousel-modal .sc-carousel-color{
    justify-items:start;
    align-items:end;
  }

  /* Keep settings in a stable 2-column grid instead of wrapping flex */
  #carousel-modal .sc-carousel-options{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:18px 16px;
    align-items:end;
    margin-top:26px!important;
  }
  #carousel-modal .sc-carousel-options .switch-label{
    min-width:0;
    margin:0!important;
    gap:10px;
    font-size:15px;
  }
  #carousel-modal #carousel-single-image-wrap{
    grid-column:1 / -1;
  }
  #carousel-modal .sc-carousel-interval,
  #carousel-modal #carousel-button-style-wrap{
    width:100%;
  }
  #carousel-modal .sc-carousel-button-color{
    justify-items:start;
  }
  #carousel-modal .sc-carousel-add{
    grid-column:1 / -1;
    width:100%;
    margin:4px 0 0!important;
    min-height:52px;
  }

  /* Item cards */
  #carousel-modal .sc-carousel-card{
    padding:14px;
    border-radius:18px;
  }
  #carousel-modal .sc-carousel-card-head{
    grid-template-columns:auto 64px minmax(0,1fr) auto;
    gap:8px;
  }
  #carousel-modal .sc-carousel-thumb{
    width:64px;
    height:52px;
  }
  #carousel-modal .sc-carousel-fields,
  #carousel-modal .sc-carousel-fields.cols-2,
  #carousel-modal .sc-carousel-media-row,
  #carousel-modal .sc-carousel-link-row,
  #carousel-modal .sc-carousel-cta-row,
  #carousel-modal .sc-carousel-link-controls,
  #carousel-modal .sc-carousel-testimonial-controls{
    grid-template-columns:1fr;
  }
  #carousel-modal #carousel-items{
    max-height:none;
    overflow:visible;
  }
}

/* Carousel file input follows the same native CORE file-input styling */
#carousel-modal .sc-c-file{
  width:100%;
  min-width:0;
  background:transparent;
  color:#111;
  font:inherit;
}
#carousel-modal .sc-carousel-thumb{
  display:flex!important;align-items:center!important;justify-content:center!important;overflow:hidden;
}
#carousel-modal img.sc-carousel-thumb{display:block!important;}
#carousel-modal .sc-carousel-thumb > [uk-icon],
#carousel-modal .sc-carousel-thumb > svg{margin:auto!important;display:block!important;}
#carousel-modal[data-carousel-type="logos"] #carousel-single-image-wrap,
#carousel-modal[data-carousel-type="testimonials"] #carousel-single-image-wrap{display:none!important;}

/* Carousel testimonial icon chooser */
#carousel-modal .sc-carousel-icon-panel{
  margin-top:8px;
  padding:12px;
  border:1px solid rgba(0,0,0,.08);
  border-radius:14px;
  background:#fff;
}
#carousel-modal .sc-carousel-icon-grid{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(42px,1fr));
  gap:7px;
  max-height:190px;
  overflow-y:auto;
  scrollbar-width:none;
}
#carousel-modal .sc-carousel-icon-grid::-webkit-scrollbar{display:none;}
#carousel-modal .sc-carousel-icon-choice{
  min-width:0;
  padding:7px!important;
}
#carousel-modal .sc-carousel-icon-choice.is-selected{
  background:#111!important;
  color:#fff!important;
}
.sc-carousel-stars{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  margin:0 0 12px;
  color:currentColor;
}
.sc-carousel-stars .uk-icon{
  width:22px;
  height:22px;
}

#carousel-modal .sc-carousel-link-controls{
  display:grid;
  grid-template-columns:minmax(150px,1fr) minmax(140px,.8fr) minmax(150px,1fr) auto auto;
  gap:8px;
  align-items:center;
  margin-top:10px;
}
#carousel-modal .sc-carousel-testimonial-controls{
  display:grid;
  grid-template-columns:minmax(150px,1fr) minmax(150px,.8fr) 110px auto;
  gap:8px;
  align-items:center;
  margin-top:10px;
}
.sc-carousel-stars.is-outline .uk-icon svg *{
  fill:none!important;
  stroke:currentColor!important;
}
.sc-carousel-stars.is-filled .uk-icon svg *{
  fill:currentColor!important;
  stroke:currentColor!important;
}
@media(max-width:900px){
  #carousel-modal .sc-carousel-link-controls{
    grid-template-columns:1fr 1fr 1fr;
  }
  #carousel-modal .sc-carousel-testimonial-controls{
    grid-template-columns:1fr 1fr;
  }
}
@media(max-width:640px){
  #carousel-modal .sc-carousel-link-controls,
  #carousel-modal .sc-carousel-testimonial-controls{
    grid-template-columns:1fr;
  }
}

/* FORM — global button + structured controls */
.sc-generated-form .sc-core-cta-custom:hover{
  background:var(--sc-btn-text,#fff)!important;
  border-color:var(--sc-btn-bg,#FFA500)!important;
  color:var(--sc-btn-bg,#FFA500)!important;
  filter:none!important;
}

/* Site Settings — Recovery must always remain visible */
#settings-modal #recovery-settings-section{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  height:auto!important;
  overflow:visible!important;
}
#settings-modal #recovery-settings-section[hidden],
#settings-modal #recovery-settings-section.uk-hidden{
  display:block!important;
}
#settings-modal #recovery-settings-open:disabled{
  opacity:.42!important;
  cursor:not-allowed!important;
  pointer-events:none!important;
}


/* Recovery is permanently part of Site Settings */
#settings-modal #settings-form #recovery-settings-section{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  position:relative!important;
  height:auto!important;
  max-height:none!important;
  overflow:visible!important;
}
#settings-modal #settings-form #recovery-settings-section[hidden],
#settings-modal #settings-form #recovery-settings-section.uk-hidden{
  display:block!important;
}
#settings-modal #recovery-settings-open:disabled{
  opacity:.42!important;
  cursor:not-allowed!important;
  pointer-events:none!important;
}

/* FORM — required Submit block */
/* Use the actual global Custom button behavior: swap background/text on hover */
.sc-generated-form .sc-core-cta.sc-core-cta-custom:hover{
  background:var(--sc-btn-text,#fff)!important;
  color:var(--sc-btn-bg,#FFA500)!important;
  border-color:var(--sc-btn-bg,#FFA500)!important;
  filter:none!important;
}


/* Carousel is a page band, not a second slideshow */
.sc-carousel-section{
  min-height:50vh!important;
  height:auto!important;
  display:flex!important;
  flex-direction:column;
  justify-content:center;
}
.sc-carousel-section .sc-carousel-shell{
  width:100%;
  min-height:50vh!important;
  height:auto!important;
  display:flex!important;
  flex-direction:column;
  justify-content:center;
}
.sc-carousel-section .sc-carousel-event-image,
.sc-carousel-section .sc-carousel-award-image{
  max-height:44vh!important;
  width:auto;
  object-fit:contain;
}

@media(max-width:640px){
  .sc-carousel-section,
  .sc-carousel-section .sc-carousel-shell{
    min-height:50vh!important;
  }
}

/* ============================================================
   FORM COLOR GROUPS — compact / no clipping
   ============================================================ */
/* Keep non-color settings compact in same row and allow natural wrap */
@media(max-width:900px){
  }

/* FORM color groups — subtle grouping only */

/* ============================================================
   FORM + CAROUSEL — CANONICAL UIKIT SORTABLE
   Same interaction language as the other CORE builders:
   drag the real card, show one orange destination placeholder.
   ============================================================ */

/* Handles only initiate sorting. */
#form-modal .sc-form-field-drag,
#carousel-modal .sc-carousel-handle{
  cursor:grab!important;
  user-select:none!important;
  -webkit-user-select:none!important;
}
#form-modal .sc-form-field-drag:active,
#carousel-modal .sc-carousel-handle:active{
  cursor:grabbing!important;
}

/* UIkit moves the active drag clone to <body>.
   Do not override position/transform/size: UIkit owns those. */
.uk-sortable-drag:has(.sc-form-field-drag),
.uk-drag:has(.sc-form-field-drag),
.uk-sortable-drag:has(.sc-carousel-handle),
.uk-drag:has(.sc-carousel-handle){
  background:#fff!important;
  background-color:#fff!important;
  opacity:.96!important;
  border-radius:14px!important;
  box-shadow:0 14px 36px rgba(0,0,0,.18)!important;
  overflow:hidden!important;
  cursor:grabbing!important;
}

/* The card inside the clone stays visually identical to the builder card. */
.uk-sortable-drag:has(.sc-form-field-drag) .sc-form-field-card,
.uk-drag:has(.sc-form-field-drag) .sc-form-field-card,
.uk-sortable-drag:has(.sc-carousel-handle) .sc-carousel-card,
.uk-drag:has(.sc-carousel-handle) .sc-carousel-card{
  margin:0!important;
  box-shadow:none!important;
}

/* One destination marker, matching Gallery/Grid visual language. */
#form-fields-list > .uk-sortable-placeholder,
#carousel-items > .uk-sortable-placeholder{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  background:rgba(255,165,0,.06)!important;
  border:0!important;
  outline:2px dashed orange!important;
  outline-offset:-2px!important;
  border-radius:14px!important;
  box-shadow:none!important;
}

/* Destination shows shape only, never a duplicated field/card. */
#form-fields-list > .uk-sortable-placeholder > *,
#carousel-items > .uk-sortable-placeholder > *{
  visibility:hidden!important;
}

/* Dragging a new field from the Form palette uses the same orange cue. */
#form-modal .sc-form-palette-drop-target{
  outline:2px dashed orange!important;
  outline-offset:-2px!important;
  border-radius:14px!important;
  background:rgba(255,165,0,.04)!important;
}

/* Tutorial close now uses UIkit's own X */
#scTutorialClose{
  flex:0 0 auto;
  width:34px;
  height:34px;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#111!important;
  background:#f3f3f3!important;
  border-radius:50%;
  cursor:pointer;
}
#scTutorialClose:hover{
  background:#e9e9e9!important;
  color:#000!important;
}
#scTutorialClose svg{
  width:18px!important;
  height:18px!important;
}


/* ============================================================
   GLOBAL MODAL CLOSE — OFFICIAL UIKIT X, TOP RIGHT
   ============================================================ */
.uk-modal-dialog{
  position:relative!important;
}

/* Keep UIkit's own uk-close appearance; only improve placement/size. */
.uk-modal-dialog > .uk-modal-close-default,
.uk-modal-dialog > .uk-modal-close-full{
  position:sticky!important;
  top:12px!important;
  float:right!important;
  z-index:2147481000!important;

  width:36px!important;
  height:36px!important;
  margin:8px 8px -44px 12px!important;
  padding:8px!important;

  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  color:inherit!important;
  cursor:pointer!important;
}

.uk-modal-dialog > .uk-modal-close-default svg,
.uk-modal-dialog > .uk-modal-close-full svg{
  width:18px!important;
  height:18px!important;
}

/* UIkit-style hover: simply strengthen the X. */
.uk-modal-dialog > .uk-modal-close-default:hover,
.uk-modal-dialog > .uk-modal-close-full:hover{
  color:#000!important;
  opacity:1!important;
}

/* Tutorial uses the same official UIkit X treatment. */
#scTutorialClose{
  width:36px!important;
  height:36px!important;
  padding:8px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  color:#111!important;
}
#scTutorialClose svg{
  width:18px!important;
  height:18px!important;
}

/* v10.7.4 — UIkit close: tight top-right white rounded button */
.uk-modal-dialog > .uk-modal-close-default,
.uk-modal-dialog > .uk-modal-close-full{
  top:6px!important;
  right:6px!important;
  margin:0!important;
  width:38px!important;
  height:38px!important;
  padding:9px!important;
  background:rgba(255,255,255,.96)!important;
  border-radius:10px!important;
  box-shadow:0 2px 10px rgba(0,0,0,.10)!important;
  color:#111!important;
}
.uk-modal-dialog > .uk-modal-close-default:hover,
.uk-modal-dialog > .uk-modal-close-full:hover{
  background:#fff!important;
  color:#000!important;
}
#scTutorialClose{
  width:38px!important;
  height:38px!important;
  padding:9px!important;
  background:#fff!important;
  border-radius:10px!important;
  box-shadow:0 2px 10px rgba(0,0,0,.10)!important;
  color:#111!important;
}



.sc-footer-logo-wrap{
  display:flex!important;
  justify-content:center!important;
  align-items:center!important;
  width:100%!important;
  margin:24px auto 12px!important;
  text-align:center!important;
}
.sc-footer-logo-wrap img{
  display:block!important;
  width:auto!important;
  height:auto!important;
  max-width:min(220px,70vw)!important;
  max-height:74px!important;
  object-fit:contain!important;
  margin:0 auto!important;
  opacity:1!important;
  visibility:visible!important;
}

/* Footer text-link grid — same design as Live Editor */
.sc-footer-links-grid{
  width:auto;
  max-width:min(1200px,calc(100% - 32px));
  margin:22px auto 12px;
  display:flex;
  justify-content:center;
  align-items:flex-start;
  flex-wrap:wrap;
  gap:22px 48px;
  text-align:left;
}
.sc-footer-link-column{
  flex:0 0 auto;
  width:auto;
  min-width:180px;
  max-width:280px;
  padding:0!important;
  margin:0!important;
  text-align:var(--sc-footer-menu-align,left);
}
.sc-footer-link-column-title{
  margin:0 0 9px;
  color:inherit;
  font-size:1rem;
  font-weight:700;
  line-height:1.25;
  text-align:inherit;
}
.sc-footer-link-list{
  display:flex;
  flex-direction:column;
  gap:6px;
}
.sc-footer-link-list a{
  color:inherit;
  text-decoration:none;
  overflow-wrap:anywhere;
  text-align:inherit;
}
.sc-footer-link-list a:hover{text-decoration:underline;}

@media(max-width:640px){
  footer .sc-footer-links-grid,
  .sc-footer-links-grid{
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    width:auto!important;
    max-width:calc(100% - 28px)!important;
    margin:18px auto 12px!important;
    gap:20px!important;
  }
  footer .sc-footer-link-column,
  .sc-footer-link-column{
    display:block!important;
    flex:none!important;
    width:auto!important;
    min-width:180px!important;
    max-width:320px!important;
    padding:0!important;
    margin:0 auto!important;
    text-align:var(--sc-footer-menu-align,left)!important;
  }
  .sc-footer-link-column-title{
    margin-bottom:7px;
    font-size:.95rem;
  }
  .sc-footer-link-list{
    width:100%!important;
    gap:5px;
    font-size:.94rem;
    text-align:var(--sc-footer-menu-align,left)!important;
    align-items:stretch!important;
  }
  .sc-footer-link-list a{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    overflow-wrap:anywhere!important;
    word-break:break-word!important;
  }
}



/* Sacrisoft CORE CTA — canonical public button system.
   Mirrors the Live Editor final CTA rules for ALL primary/secondary buttons. */
.sc-core-cta{
  appearance:none!important;
  -webkit-appearance:none!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  box-sizing:border-box!important;
  min-height:52px!important;
  height:auto!important;
  padding:0 46px!important;
  margin-top:18px!important;
  border-radius:25px!important;
  font:inherit!important;
  font-size:16px!important;
  font-weight:500!important;
  line-height:1.2!important;
  text-align:center!important;
  text-decoration:none!important;
  text-transform:none!important;
  letter-spacing:normal!important;
  cursor:pointer!important;
  box-shadow:none!important;
  transition:background .18s ease,color .18s ease,border-color .18s ease,opacity .18s ease,filter .18s ease,transform .18s ease!important;
}

.sc-core-cta.sc-core-cta-default,
.sc-core-cta-default{
  background:transparent!important;
  color:#fff!important;
  border:1px solid #fff!important;
}
.sc-core-cta.sc-core-cta-default:hover,
.sc-core-cta-default:hover{
  background:#fff!important;
  color:#000!important;
  border-color:#fff!important;
}

.sc-core-cta.sc-core-cta-light,
.sc-core-cta-light{
  background:#fff!important;
  color:#000!important;
  border:0!important;
}
.sc-core-cta.sc-core-cta-light:hover,
.sc-core-cta-light:hover{
  background:#000!important;
  color:#fff!important;
}

.sc-core-cta.sc-core-cta-dark,
.sc-core-cta-dark{
  background:#000!important;
  color:#fff!important;
  border:0!important;
}
.sc-core-cta.sc-core-cta-dark:hover,
.sc-core-cta-dark:hover{
  background:#fff!important;
  color:#000!important;
}

.sc-core-cta.sc-core-cta-custom,
.sc-core-cta-custom{
  background:var(--sc-btn-bg,#FFA500)!important;
  color:var(--sc-btn-text,#fff)!important;
  border:0!important;
  filter:none!important;
}
.sc-core-cta.sc-core-cta-custom:hover,
.sc-core-cta-custom:hover{
  background:var(--sc-btn-text,#fff)!important;
  color:var(--sc-btn-bg,#FFA500)!important;
  border:0!important;
  filter:none!important;
}

.sc-core-cta.sc-core-cta-text,
.sc-core-cta-text{
  position:relative!important;
  display:inline-flex!important;
  min-height:auto!important;
  height:auto!important;
  padding:5px 1px!important;
  background:transparent!important;
  color:#fff!important;
  border:0!important;
  border-radius:0!important;
  font-size:1.35rem!important;
  line-height:1.35!important;
  text-decoration:none!important;
}
.sc-core-cta.sc-core-cta-text::after,
.sc-core-cta-text::after{
  content:"";
  position:absolute;
  left:0;
  right:100%;
  bottom:0;
  height:1px;
  background:currentColor;
  transition:right .25s ease-out;
}
.sc-core-cta.sc-core-cta-text:hover::after,
.sc-core-cta-text:hover::after{
  right:0;
}
.sc-core-cta.sc-core-cta-text:hover,
.sc-core-cta-text:hover{
  color:#fff!important;
  opacity:1!important;
}

/* Both buttons use the same exact CTA system. */
.sc-content-button-pair,
.faq-answer-buttons{
  display:flex;
  align-items:center;
  justify-content:center;
  flex-wrap:wrap;
  gap:10px;
  margin-top:18px;
}
.faq-answer-buttons{justify-content:flex-start;}
.sc-content-button-pair .sc-core-cta,
.faq-answer-buttons .sc-core-cta{
  margin-top:0!important;
}
.sc-content-button-pair > .sc-lightbox-link,
.faq-answer-buttons > .sc-lightbox-link{
  display:inline-flex;
}

@media(max-width:640px){
  .sc-core-cta{
    padding-left:32px!important;
    padding-right:32px!important;
  }
  .sc-content-button-pair,
  .faq-answer-buttons{
    flex-direction:column;
    align-items:stretch;
  }
  .sc-content-button-pair > *,
  .faq-answer-buttons > *{
    width:100%;
  }
  .sc-content-button-pair > *:nth-child(2),
  .faq-answer-buttons > *:nth-child(2){
    margin-top:12px!important;
  }
  .sc-content-button-pair .sc-core-cta,
  .faq-answer-buttons .sc-core-cta{
    width:100%!important;
    text-align:center!important;
  }
}



                .core-editor #page,
                .core-editor #page h1, .core-editor #page h2, .core-editor #page h3,
                .core-editor #page h4, .core-editor #page h5, .core-editor #page h6,
                .core-editor #page .live-heading,
                .core-editor #page .live-subtitle,
                .core-editor #page .live-paragraph,
                .core-editor #page a.uk-button,
                .core-editor #editor-footer,
                .core-editor #editor-footer h1, .core-editor #editor-footer h2, .core-editor #editor-footer h3,
                .core-editor #editor-footer h4, .core-editor #editor-footer h5, .core-editor #editor-footer h6,
                .core-editor #editor-footer .live-heading,
                .core-editor #editor-footer .live-subtitle,
                .core-editor #editor-footer .live-paragraph,
                .core-editor #editor-footer a.uk-button,
                body:not(.core-editor),
                body:not(.core-editor) h1, body:not(.core-editor) h2, body:not(.core-editor) h3,
                body:not(.core-editor) h4, body:not(.core-editor) h5, body:not(.core-editor) h6,
                body:not(.core-editor) .live-heading,
                body:not(.core-editor) .live-subtitle,
                body:not(.core-editor) .live-paragraph,
                body:not(.core-editor) a.uk-button {
                    font-family: 'Futura', sans-serif !important;
                }
            