.elementor-kit-14{--e-global-color-primary:#234D6C;--e-global-color-secondary:#9DD6E3;--e-global-color-text:#0C1A24;--e-global-color-accent:#FBA213;--e-global-color-55ab898:#C4E6EE;--e-global-color-e53bd47:#9DD6E3;--e-global-color-cf6948f:#2F668F;--e-global-color-072c245:#234D6C;--e-global-color-5ce8cd2:#193349;--e-global-color-213d94f:#F2F0E9;--e-global-color-70cb6b8:#DEDACC;--e-global-color-89110fe:#FBA213;--e-global-color-9bc4dc6:#3F2905;--e-global-color-3134ca4:#ECD3D2;--e-global-color-ce674cc:#A0211C;--e-global-color-a4c24ab:#440A06;--e-global-color-e8f5470:#D1E5D8;--e-global-color-615d205:#187F3B;--e-global-color-e7ae5cd:#174710;--e-global-color-3e96f17:#F9F9F9;--e-global-color-4dd1a12:#BCBCBC;--e-global-color-fe55491:#0C1A24;--e-global-color-7bffc1e:#FFFFFF;--e-global-color-c993d38:#FFFFFF00;--e-global-color-8cffaf8:#EB9711;--e-global-typography-primary-font-family:"Roboto";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Roboto Slab";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Roboto";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Roboto";--e-global-typography-accent-font-weight:500;--e-global-typography-00c2a61-font-family:"Obo Super";--e-global-typography-00c2a61-font-size:var(--font-7);--e-global-typography-00c2a61-line-height:1.1em;--e-global-typography-00c2a61-letter-spacing:-0.02em;--e-global-typography-1c879ee-font-family:"Obo Super";--e-global-typography-1c879ee-font-size:var(--font-6);--e-global-typography-1c879ee-line-height:1.1em;--e-global-typography-1c879ee-letter-spacing:-0.02em;--e-global-typography-6da27ee-font-family:"Obo Super";--e-global-typography-6da27ee-font-size:var(--font-5);--e-global-typography-6da27ee-line-height:1.1em;--e-global-typography-6da27ee-letter-spacing:-0.02em;--e-global-typography-3279b34-font-family:"Obo Super";--e-global-typography-3279b34-font-size:var(--font-4);--e-global-typography-3279b34-line-height:1.1em;--e-global-typography-3279b34-letter-spacing:-0.02em;--e-global-typography-fd36ae1-font-family:"gotham";--e-global-typography-fd36ae1-font-size:var(--font-5);--e-global-typography-fd36ae1-font-weight:bold;--e-global-typography-fd36ae1-line-height:1em;--e-global-typography-fd36ae1-letter-spacing:-0.02em;--e-global-typography-1525c8c-font-family:"gotham";--e-global-typography-1525c8c-font-size:var(--font-4);--e-global-typography-1525c8c-font-weight:bold;--e-global-typography-1525c8c-line-height:1em;--e-global-typography-1525c8c-letter-spacing:-0.02em;--e-global-typography-514b305-font-family:"gotham";--e-global-typography-514b305-font-size:var(--font-3);--e-global-typography-514b305-font-weight:bold;--e-global-typography-514b305-line-height:1em;--e-global-typography-514b305-letter-spacing:-0.01em;--e-global-typography-333cb8e-font-family:"gotham";--e-global-typography-333cb8e-font-size:var(--font-2);--e-global-typography-333cb8e-font-weight:bold;--e-global-typography-333cb8e-line-height:1em;--e-global-typography-333cb8e-letter-spacing:-0.01em;--e-global-typography-5651e0d-font-family:"gotham";--e-global-typography-5651e0d-font-size:var(--font-1);--e-global-typography-5651e0d-font-weight:bold;--e-global-typography-5651e0d-line-height:1em;--e-global-typography-582d547-font-family:"figtree";--e-global-typography-582d547-font-size:var(--font-05);--e-global-typography-582d547-line-height:1.5em;--e-global-typography-e4b43d1-font-family:"figtree";--e-global-typography-e4b43d1-font-size:var(--font-0);--e-global-typography-e4b43d1-line-height:1.5em;--e-global-typography-d9c8fec-font-family:"figtree";--e-global-typography-d9c8fec-font-size:var(--font--1);--e-global-typography-d9c8fec-line-height:1.5em;--e-global-typography-261ef83-font-family:"figtree";--e-global-typography-261ef83-font-size:var(--font-1);--e-global-typography-261ef83-font-weight:bold;--e-global-typography-261ef83-line-height:1em;--e-global-typography-261ef83-letter-spacing:0.01em;--e-global-typography-77a48d1-font-family:"figtree";--e-global-typography-77a48d1-font-size:var(--font-0);--e-global-typography-77a48d1-font-weight:bold;--e-global-typography-77a48d1-line-height:1em;--e-global-typography-77a48d1-letter-spacing:0.01em;--e-global-typography-1e95afe-font-family:"figtree";--e-global-typography-1e95afe-font-size:var(--font--1);--e-global-typography-1e95afe-font-weight:bold;--e-global-typography-1e95afe-line-height:1em;--e-global-typography-1e95afe-letter-spacing:0.01em;--e-global-typography-c9c6bfb-font-family:"figtree";--e-global-typography-c9c6bfb-font-size:0.8rem;--e-global-typography-c9c6bfb-text-transform:uppercase;--e-global-typography-c9c6bfb-line-height:1em;--e-global-typography-c9c6bfb-letter-spacing:2px;background-color:var( --e-global-color-213d94f );color:var( --e-global-color-072c245 );font-family:var( --e-global-typography-e4b43d1-font-family ), Sans-serif;font-size:var( --e-global-typography-e4b43d1-font-size );line-height:var( --e-global-typography-e4b43d1-line-height );}.elementor-kit-14 button,.elementor-kit-14 input[type="button"],.elementor-kit-14 input[type="submit"],.elementor-kit-14 .elementor-button{background-color:var( --e-global-color-89110fe );font-family:var( --e-global-typography-77a48d1-font-family ), Sans-serif;font-size:var( --e-global-typography-77a48d1-font-size );font-weight:var( --e-global-typography-77a48d1-font-weight );line-height:var( --e-global-typography-77a48d1-line-height );letter-spacing:var( --e-global-typography-77a48d1-letter-spacing );color:var( --e-global-color-text );border-radius:8px 8px 8px 8px;padding:12px 32px 12px 32px;}.elementor-kit-14 button:hover,.elementor-kit-14 button:focus,.elementor-kit-14 input[type="button"]:hover,.elementor-kit-14 input[type="button"]:focus,.elementor-kit-14 input[type="submit"]:hover,.elementor-kit-14 input[type="submit"]:focus,.elementor-kit-14 .elementor-button:hover,.elementor-kit-14 .elementor-button:focus{background-color:var( --e-global-color-8cffaf8 );}.elementor-kit-14 e-page-transition{background-color:#FFBC7D;}.elementor-kit-14 p{margin-block-end:0.75em;}.elementor-kit-14 a{color:var( --e-global-color-072c245 );}.elementor-kit-14 h1{font-family:var( --e-global-typography-6da27ee-font-family ), Sans-serif;font-size:var( --e-global-typography-6da27ee-font-size );line-height:var( --e-global-typography-6da27ee-line-height );letter-spacing:var( --e-global-typography-6da27ee-letter-spacing );}.elementor-kit-14 h2{font-family:var( --e-global-typography-3279b34-font-family ), Sans-serif;font-size:var( --e-global-typography-3279b34-font-size );line-height:var( --e-global-typography-3279b34-line-height );letter-spacing:var( --e-global-typography-3279b34-letter-spacing );}.elementor-kit-14 h3{font-family:var( --e-global-typography-514b305-font-family ), Sans-serif;font-size:var( --e-global-typography-514b305-font-size );font-weight:var( --e-global-typography-514b305-font-weight );line-height:var( --e-global-typography-514b305-line-height );letter-spacing:var( --e-global-typography-514b305-letter-spacing );}.elementor-kit-14 h4{font-family:var( --e-global-typography-333cb8e-font-family ), Sans-serif;font-size:var( --e-global-typography-333cb8e-font-size );font-weight:var( --e-global-typography-333cb8e-font-weight );line-height:var( --e-global-typography-333cb8e-line-height );letter-spacing:var( --e-global-typography-333cb8e-letter-spacing );}.elementor-kit-14 h5{font-family:var( --e-global-typography-5651e0d-font-family ), Sans-serif;font-size:var( --e-global-typography-5651e0d-font-size );font-weight:var( --e-global-typography-5651e0d-font-weight );line-height:var( --e-global-typography-5651e0d-line-height );}.elementor-kit-14 h6{font-family:var( --e-global-typography-c9c6bfb-font-family ), Sans-serif;font-size:var( --e-global-typography-c9c6bfb-font-size );text-transform:var( --e-global-typography-c9c6bfb-text-transform );line-height:var( --e-global-typography-c9c6bfb-line-height );letter-spacing:var( --e-global-typography-c9c6bfb-letter-spacing );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1280px;}.e-con{--container-max-width:1280px;--container-default-padding-top:0px;--container-default-padding-right:0px;--container-default-padding-bottom:0px;--container-default-padding-left:0px;}.elementor-widget:not(:last-child){--kit-widget-spacing:1.5rem;}.elementor-element{--widgets-spacing:1.5rem 1.5rem;--widgets-spacing-row:1.5rem;--widgets-spacing-column:1.5rem;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1024px){.elementor-kit-14{font-size:var( --e-global-typography-e4b43d1-font-size );line-height:var( --e-global-typography-e4b43d1-line-height );}.elementor-kit-14 h1{font-size:var( --e-global-typography-6da27ee-font-size );line-height:var( --e-global-typography-6da27ee-line-height );letter-spacing:var( --e-global-typography-6da27ee-letter-spacing );}.elementor-kit-14 h2{font-size:var( --e-global-typography-3279b34-font-size );line-height:var( --e-global-typography-3279b34-line-height );letter-spacing:var( --e-global-typography-3279b34-letter-spacing );}.elementor-kit-14 h3{font-size:var( --e-global-typography-514b305-font-size );line-height:var( --e-global-typography-514b305-line-height );letter-spacing:var( --e-global-typography-514b305-letter-spacing );}.elementor-kit-14 h4{font-size:var( --e-global-typography-333cb8e-font-size );line-height:var( --e-global-typography-333cb8e-line-height );letter-spacing:var( --e-global-typography-333cb8e-letter-spacing );}.elementor-kit-14 h5{font-size:var( --e-global-typography-5651e0d-font-size );line-height:var( --e-global-typography-5651e0d-line-height );}.elementor-kit-14 h6{font-size:var( --e-global-typography-c9c6bfb-font-size );line-height:var( --e-global-typography-c9c6bfb-line-height );letter-spacing:var( --e-global-typography-c9c6bfb-letter-spacing );}.elementor-kit-14 button,.elementor-kit-14 input[type="button"],.elementor-kit-14 input[type="submit"],.elementor-kit-14 .elementor-button{font-size:var( --e-global-typography-77a48d1-font-size );line-height:var( --e-global-typography-77a48d1-line-height );letter-spacing:var( --e-global-typography-77a48d1-letter-spacing );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-14{font-size:var( --e-global-typography-e4b43d1-font-size );line-height:var( --e-global-typography-e4b43d1-line-height );}.elementor-kit-14 h1{font-size:var( --e-global-typography-6da27ee-font-size );line-height:var( --e-global-typography-6da27ee-line-height );letter-spacing:var( --e-global-typography-6da27ee-letter-spacing );}.elementor-kit-14 h2{font-size:var( --e-global-typography-3279b34-font-size );line-height:var( --e-global-typography-3279b34-line-height );letter-spacing:var( --e-global-typography-3279b34-letter-spacing );}.elementor-kit-14 h3{font-size:var( --e-global-typography-514b305-font-size );line-height:var( --e-global-typography-514b305-line-height );letter-spacing:var( --e-global-typography-514b305-letter-spacing );}.elementor-kit-14 h4{font-size:var( --e-global-typography-333cb8e-font-size );line-height:var( --e-global-typography-333cb8e-line-height );letter-spacing:var( --e-global-typography-333cb8e-letter-spacing );}.elementor-kit-14 h5{font-size:var( --e-global-typography-5651e0d-font-size );line-height:var( --e-global-typography-5651e0d-line-height );}.elementor-kit-14 h6{font-size:var( --e-global-typography-c9c6bfb-font-size );line-height:var( --e-global-typography-c9c6bfb-line-height );letter-spacing:var( --e-global-typography-c9c6bfb-letter-spacing );}.elementor-kit-14 button,.elementor-kit-14 input[type="button"],.elementor-kit-14 input[type="submit"],.elementor-kit-14 .elementor-button{font-size:var( --e-global-typography-77a48d1-font-size );line-height:var( --e-global-typography-77a48d1-line-height );letter-spacing:var( --e-global-typography-77a48d1-letter-spacing );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//**************************************************************
  ELEMENTOR BLUEPRINT CSS
  Author: Goodness Studio
  Purpose: Sitewide tokens, typography, utilities, effects
**************************************************************/

/* ============================================================
   0) BASE TOKENS & GLOBALS
   - Spacing, radius, typography scale, motion prefs
   ============================================================ */

:root {
  /* Spacing scale */
  --spacer-small: clamp(1.5rem, 3vw, 4rem);
  --spacer-medium: clamp(2rem, 5vw, 5rem);
  --spacer-large: clamp(2.5rem, 9vw, 8rem);
  --spacer-xlarge: clamp(3rem, 15vw, 12rem);

  /* Line height base */
  --base-line-height: calc(1.5em);

  /* Corner radius */
  --corner-s: 0.5rem;
  --corner-m: 1rem;
  --corner-l: 1.5rem;
  --corner-xl: 2rem;

  /* Link underline thickness (centralized) */
  --link-underline-thickness: 2px;

/* Fluid range */
  --fluid-min: 320;
  --fluid-max: 1280;

  /* Smaller steps for context */
  --font--2: .875rem;
  --font--1: 1rem;
  --font-0: clamp(1rem, 0.8992rem + 0.3226vw, 1.125rem);
  --font-05: clamp(1rem, 0.91rem + 0.45vw, 1.25rem);
  --font-1: clamp(1.25rem, 1.0487rem + 0.6442vw, 1.4996rem);
  --font-2: clamp(1.5625rem, 1.2105rem + 1.1265vw, 1.999rem);

    /* 3 & 4 share 2rem min – Firefox-safe */
  --font-3: clamp(2rem, 3vw, 2.6647rem);
  --font-4: clamp(2rem, 4vw, 3.552rem);

  /* 5–7 share 2.5rem min – Firefox-safe */
  --font-5: clamp(2.5rem, 5vw, 4.7348rem);
  --font-6: clamp(2.5rem, 6vw, 6.3115rem);
  --font-7: clamp(2.5rem, 7vw, 8.4132rem);

}

/* Reduce corner radius on mobile*/
@media (max-width: 767px) {
  :root {
    --corner-l: 1rem;
    --corner-xl: 1rem;
  }
}

/* Base html/body */
html, body {
  font-size: 16px;
}

/* Respect reduced motion (kept for any future transitions) */
@media (prefers-reduced-motion: reduce) {
  html, body { transition: none !important; }
}

/* Sitewide font smoothing + line-height */
body, h1, h2, h3, h4, h5, h6, p, a {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  line-height: var(--base-line-height);
}

/* Overflow guard (beware off-canvas UIs) */
body { overflow-x: hidden !important; }


/* ============================================================
   1) TYPOGRAPHY & TEXT UTILITIES
   - Headings, paragraphs, lists, white-on-dark helper
   ============================================================ */

.text-uppercase {
  text-transform: uppercase;
}

/* Make all text inside a .text-white section white */
.text-white h1,
.text-white h2,
.text-white h3,
.text-white h4,
.text-white h5,
.text-white h6,
.text-white p,
.text-white a,
.text-white div,
.text-white .elementor-button,
.text-white .elementor-text-editor a,
.text-white .elementor-widget-text-editor a {
  color: #fff;
}

/* Smart wrapping (ignored by older browsers) */
h1, h2, h3, h4, h5, h6 { text-wrap: balance; }
p, li, ol, ul { text-wrap: pretty; }

/* List spacing */
ul, ol { margin-bottom: .6em; }

/* Remove extra gap in Elementor text editor */
.elementor-widget-text-editor :last-child { margin-bottom: 0; }

/* Remove bottom padding from Elementor Heading widgets rendered as <p> */
.elementor-widget-heading p {
  padding-bottom: 0;
  margin-bottom: 0;
}


/* ============================================================
   2) LINKS & BUTTONS
   - Defaults and animated underlines
   ============================================================ */

/* Body/link defaults (fallback to currentColor if Elementor var absent) */
p a, p a:link, li a, li a:link {
  text-decoration: underline;
  color: var(--e-global-color-text, currentColor);
}
p a:hover, li a:hover { text-decoration: none; }

/* Link underline animations (shared base) */
.link-slide-in,
.link-slide-out,
.link-slide-in-white,
.link-slide-out-white { overflow: hidden; }

.link-slide-in a,
.link-slide-out a,
.link-slide-in-white a,
.link-slide-out-white a {
  position: relative;
  overflow: hidden;
  opacity: 1;
  transition: color .3s ease-in-out;
}

/* Underline bar (centralized thickness) */
.link-slide-in a::after,
.link-slide-out a::after,
.link-slide-in-white a::after,
.link-slide-out-white a::after {
  content: '';
  position: absolute;
  bottom: 0; left: 0;
  width: 100%;
  height: var(--link-underline-thickness);
  opacity: 1;
  transition: opacity 300ms, transform 300ms;
}

/* Color variants */
.link-slide-in a::after,
.link-slide-out a::after { background-color: var(--e-global-color-secondary); }
.link-slide-in-white a::after,
.link-slide-out-white a::after { background-color: #fff; }

/* Motion variants */
.link-slide-in a::after,
.link-slide-in-white a::after { transform: translate3d(-101%, 0, 0); }
.link-slide-in a:hover::after,
.link-slide-in a:focus::after,
.link-slide-in-white a:hover::after,
.link-slide-in-white a:focus::after { transform: translate3d(0, 0, 0); }

.link-slide-out a::after,
.link-slide-out-white a::after { transform: translate3d(0, 0, 0); }
.link-slide-out a:hover::after,
.link-slide-out a:focus::after,
.link-slide-out-white a:hover::after,
.link-slide-out-white a:focus::after { transform: translate3d(-101%, 0, 0); }

/* Button icon nudge on hover */
.elementor-button-icon {
  transition: transform 0.3s ease;
  transform: translateX(0);
}
.elementor-button:hover .elementor-button-icon {
  transform: translateX(6px);
}


/* ============================================================
   3) LAYOUT & SPACING UTILITIES
   - Margin/Padding helpers for vertical rhythm
   ============================================================ */

.margin-xl { margin-top: var(--spacer-xlarge); margin-bottom: var(--spacer-xlarge); }
.margin-l  { margin-top: var(--spacer-large);  margin-bottom: var(--spacer-large); }
.margin-m  { margin-top: var(--spacer-medium); margin-bottom: var(--spacer-medium); }
.margin-s  { margin-top: var(--spacer-small);  margin-bottom: var(--spacer-small); }

.padding-xl { padding-top: var(--spacer-xlarge); padding-bottom: var(--spacer-xlarge); }
.padding-l  { padding-top: var(--spacer-large);  padding-bottom: var(--spacer-large); }
.padding-m  { padding-top: var(--spacer-medium); padding-bottom: var(--spacer-medium); }
.padding-s  { padding-top: var(--spacer-small);  padding-bottom: var(--spacer-small); }

.margin-xl-bottom { margin-bottom: var(--spacer-xlarge); }
.margin-l-bottom  { margin-bottom: var(--spacer-large); }
.margin-m-bottom  { margin-bottom: var(--spacer-medium); }
.margin-s-bottom  { margin-bottom: var(--spacer-small); }

.padding-xl-bottom { padding-bottom: var(--spacer-xlarge); }
.padding-l-bottom  { padding-bottom: var(--spacer-large); }
.padding-m-bottom  { padding-bottom: var(--spacer-medium); }
.padding-s-bottom  { padding-bottom: var(--spacer-small); }

.margin-xl-top { margin-top: var(--spacer-xlarge); }
.margin-l-top  { margin-top: var(--spacer-large); }
.margin-m-top  { margin-top: var(--spacer-medium); }
.margin-s-top  { margin-top: var(--spacer-small); }

.padding-xl-top { padding-top: var(--spacer-xlarge); }
.padding-l-top  { padding-top: var(--spacer-large); }
.padding-m-top  { padding-top: var(--spacer-medium); }
.padding-s-top  { padding-top: var(--spacer-small); }


/* ============================================================
   4) ELEMENTOR FIXES & TWEAKS
   - Lists, icon boxes, misc widget adjustments
   ============================================================ */

/* Hide stray bullets in icon lists */
.elementor-icon-list-item ul { list-style: none; }

/* Make entire icon box clickable */
.elementor-widget-icon-box a:after {
  content: "";
  display: block !important;
  position: absolute;
  inset: 0;
  z-index: 1;
}
.elementor-icon-box-icon { z-index: 2; }


/* ============================================================
   5) ACCESSIBILITY & THIRD-PARTY WIDGETS
   ============================================================ */


.elementor-field-type-recaptcha_v3 { visibility: hidden; }


/* ============================================================
   6) ANIMATIONS (Goodness variants)
   - Replaces Elementor’s default animation mounts
   ============================================================ */

@keyframes goodnessDown {
  from { opacity: 0; transform: translate3d(0, -48px, 0); }
  to   { opacity: 1; transform: none; }
}
.goodnessDown { animation-name: goodnessDown; }

@keyframes goodnessLeft {
  from { opacity: 0; transform: translate3d(-48px, 0, 0); }
  to   { opacity: 1; transform: none; }
}
.goodnessLeft { animation-name: goodnessLeft; }

@keyframes goodnessRight {
  from { opacity: 0; transform: translate3d(48px, 0, 0); }
  to   { opacity: 1; transform: none; }
}
.goodnessRight { animation-name: goodnessRight; }

@keyframes goodnessUp {
  from { opacity: 0; transform: translate3d(0, 48px, 0); }
  to   { opacity: 1; transform: none; }
}
.goodnessUp { animation-name: goodnessUp; }


/* ============================================================
   UNIVERSAL PAGE EDGE GUTTER (works for boxed & full-width)
   ============================================================ */

.container-gutter {
  padding-inline: 1rem;
}

/* Remove side gutters for full-bleed sections */
.no-gutter {
  padding-inline: 0 !important;
}


/*Auto-animate certain graphics, rock back and forth*/

.image-animate-rock {
  display: inline-block;
  animation: rockTicket 2.8s ease-in-out infinite alternate;
  transform-origin: center center;
}

@keyframes rockTicket {
  0% {
    transform: rotate(-10deg);
  }
  100% {
    transform: rotate(10deg);
  }
}/* End custom CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'Obo Super';
	font-style: normal;
	font-weight: normal;
	font-display: auto;
	src: url('https://allaboardnc.org/wp-content/uploads/2025/10/OBOSuper.eot');
	src: url('https://allaboardnc.org/wp-content/uploads/2025/10/OBOSuper.eot?#iefix') format('embedded-opentype'),
		url('https://allaboardnc.org/wp-content/uploads/2025/10/OBOSuper.woff2') format('woff2'),
		url('https://allaboardnc.org/wp-content/uploads/2025/10/OBOSuper.woff') format('woff'),
		url('https://allaboardnc.org/wp-content/uploads/2025/10/OBOSuper.ttf') format('truetype'),
		url('https://allaboardnc.org/wp-content/uploads/2025/10/OBOSuper.svg#OboSuper') format('svg');
}
/* End Custom Fonts CSS */