.elementor-kit-970{--e-global-color-primary:#6EC1E4;--e-global-color-secondary:#54595F;--e-global-color-text:#7A7A7A;--e-global-color-accent:#61CE70;--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;}.elementor-kit-970 button:hover,.elementor-kit-970 button:focus,.elementor-kit-970 input[type="button"]:hover,.elementor-kit-970 input[type="button"]:focus,.elementor-kit-970 input[type="submit"]:hover,.elementor-kit-970 input[type="submit"]:focus,.elementor-kit-970 .elementor-button:hover,.elementor-kit-970 .elementor-button:focus{background-color:#141A40;color:#FFFFFF;}.elementor-kit-970 e-page-transition{background-color:#FFBC7D;}.elementor-kit-970 a{color:#282E66;}.elementor-kit-970 a:hover{color:#141A40;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}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-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* Header background and spacing */
body.zep-page .site-header.stuck {
  background: rgba(5, 7, 9, .94) !important;
}
body.zep-page.admin-bar .site-header.stuck {
  top: 32px;
}
@media (max-width: 782px) {
  body.zep-page.admin-bar .site-header.stuck {
    top: 46px;
  }
}
@media (max-width: 767px) {
  body.zep-page .header-row .pill {
    margin-left: auto;
  }
  body.zep-page .site-header:has(.nav.open),
  body.zep-page .site-header .nav.open {
    background: rgba(5, 7, 9, .94) !important;
  }
}

/* Section cards and hover colors */
body.zep-page .service,
body.zep-page .service:first-child {
  background: transparent !important;
  color: var(--text);
}
body.zep-page .service:before { opacity: 0 !important; }
body.zep-page .service:hover,
body.zep-page .service:focus-visible {
  background: #7651CB !important;
  color: #fff;
}
body.zep-page .service:first-child .service-number,
body.zep-page .service:first-child .arrow { color: var(--purple); }
body.zep-page .service:first-child:hover .service-number,
body.zep-page .service:first-child:hover .arrow { color: #fff; }
body.zep-page .project {
  background: rgba(5, 7, 9, .94) !important;
  padding: 15px !important;
}
body.zep-page .project-caption {
  background: #7651CC !important;
}
body.zep-page .resume-card,
body.zep-page .skill-box,
body.zep-page .story-card,
body.zep-page .contact-item {
  background: rgba(5, 7, 9, .94) !important;
  transition: background-color .3s, color .3s;
}
body.zep-page .resume-card:hover,
body.zep-page .skill-box:hover,
body.zep-page .story-card:hover,
body.zep-page .contact-item:hover {
  background: #7651CC !important;
}
body.zep-page .resume-card:hover .date,
body.zep-page .skill-box:hover strong,
body.zep-page .skill-box:hover + span,
body.zep-page .story-card:hover *,
body.zep-page .contact-item:hover * { color: #fff; }

body.zep-page .skill {
  background: rgba(5, 7, 9, .94) !important;
  border-radius: 18px;
  transition: background-color .3s;
}
body.zep-page .skill .skill-box { background: transparent !important; }
body.zep-page .skill:hover { background: #7651CC !important; }
body.zep-page .skill:hover strong,
body.zep-page .skill:hover > span { color: #fff; }
body.zep-page .contact-item {
  padding: 15px !important;
  border-radius: 15px;
}
/* Give skill descriptions breathing room and clear the admin bar. */
body.zep-page .skill { padding-bottom: 20px !important; }
body.zep-page .site-header.stuck { padding-top: 25px !important; padding-bottom: 17px !important; }
body.zep-page.admin-bar .site-header.stuck { top: 32px !important; }
@media (max-width: 782px) {
  body.zep-page.admin-bar .site-header.stuck { top: 46px !important; }
}/* End custom CSS */