.elementor-kit-8{--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-8 e-page-transition{background-color:#FFBC7D;}.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 *//*
  Paste this into site-level custom CSS or Elementor custom CSS.
  Use the listed HWU classes on containers and buttons in Elementor.
*/

:root {
  --hwu-primary: #c21874;
  --hwu-primary-dark: #711741;
  --hwu-primary-deep: #320b1f;
  --hwu-accent: #ff4da0;
  --hwu-accent-strong: #ff0d88;
  --hwu-highlight: #ffd4e9;
  --hwu-ink: #1d0a16;
  --hwu-muted: #6a4c5d;
  --hwu-bg: #fbf3f8;
  --hwu-surface: #ffffff;
  --hwu-surface-soft: #fff4f9;
  --hwu-border: #ebb6cf;
  --hwu-rule: rgba(255, 255, 255, 0.32);
  --hwu-radius-sm: 4px;
  --hwu-radius-md: 10px;
  --hwu-radius-lg: 16px;
  --hwu-shadow-soft: 0 10px 28px rgba(50, 11, 31, 0.12);
  --hwu-shadow-strong: 0 16px 0 rgba(50, 11, 31, 0.14), 0 24px 52px rgba(50, 11, 31, 0.22);
}

body {
  background: var(--hwu-bg);
  color: var(--hwu-ink);
}

h1,
h2,
h3,
.elementor-heading-title {
  font-family:
    "Arial Narrow",
    "League Spartan",
    "Franklin Gothic Medium Cond",
    "Helvetica Neue",
    Arial,
    sans-serif;
  letter-spacing: -0.04em;
}

h1,
h2 {
  font-weight: 900;
  line-height: 0.93;
  text-transform: uppercase;
}

h3,
h4 {
  font-weight: 800;
  line-height: 0.98;
}

body,
p,
li,
.elementor-widget-text-editor {
  font-family: "Source Sans 3", "Helvetica Neue", Arial, sans-serif;
}

.hwu-header-shell {
  backdrop-filter: blur(16px);
  background: rgba(69, 17, 43, 0.82);
  border-bottom: 1px solid var(--hwu-rule);
}

.hwu-header-shell a {
  color: white;
}

.hwu-header-shell .elementor-item,
.hwu-header-shell .menu-item a {
  color: rgba(255, 255, 255, 0.86);
  font-weight: 700;
  letter-spacing: 0.03em;
  text-transform: uppercase;
}

.hwu-header-shell .elementor-item:hover,
.hwu-header-shell .elementor-item:focus,
.hwu-header-shell .current-menu-item > a,
.hwu-header-shell .current_page_item > a {
  color: white;
}

.hwu-button .elementor-button,
.elementor-button.hwu-button--primary,
.elementor-button.hwu-button--secondary {
  border-radius: var(--hwu-radius-md);
  font-family:
    "Arial Narrow",
    "League Spartan",
    "Franklin Gothic Medium Cond",
    "Helvetica Neue",
    Arial,
    sans-serif;
  font-weight: 800;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  box-shadow: var(--hwu-shadow-soft);
}

.hwu-button--primary .elementor-button,
.elementor-button.hwu-button--primary {
  background: linear-gradient(180deg, var(--hwu-accent), var(--hwu-primary));
  color: white;
  box-shadow: var(--hwu-shadow-strong);
}

.hwu-button--secondary .elementor-button,
.elementor-button.hwu-button--secondary {
  background: rgba(255, 255, 255, 0.92);
  border: 2px solid rgba(113, 23, 65, 0.16);
  color: var(--hwu-primary-dark);
}

.hwu-hero {
  position: relative;
  overflow: hidden;
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.06), transparent 42%),
    linear-gradient(180deg, rgba(255, 77, 160, 0.16), transparent 62%),
    linear-gradient(135deg, var(--hwu-primary-dark), var(--hwu-primary-deep));
}

.hwu-hero::after {
  content: "";
  position: absolute;
  inset: 0;
  opacity: 0.16;
  pointer-events: none;
  background:
    radial-gradient(circle, rgba(255, 255, 255, 0.45) 0 1px, transparent 1.5px) 0 0 / 12px 12px;
}

.hwu-hero,
.hwu-hero h1,
.hwu-hero h2,
.hwu-hero p {
  color: white;
}

.hwu-eyebrow {
  display: inline-block;
  padding: 0.45rem 0.8rem;
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: var(--hwu-radius-sm);
  background: linear-gradient(90deg, var(--hwu-primary), var(--hwu-accent));
  color: white;
  font-family:
    "Arial Narrow",
    "League Spartan",
    "Franklin Gothic Medium Cond",
    "Helvetica Neue",
    Arial,
    sans-serif;
  font-size: 0.78rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.hwu-hero-panel {
  position: relative;
  overflow: hidden;
  background: rgba(69, 17, 43, 0.72);
  border: 2px solid rgba(255, 255, 255, 0.14);
  border-radius: var(--hwu-radius-lg);
  box-shadow: var(--hwu-shadow-strong);
}

.hwu-hero-panel::before {
  content: "";
  position: absolute;
  inset: 0 0 auto 0;
  height: 0.65rem;
  background: linear-gradient(90deg, var(--hwu-accent), rgba(255, 255, 255, 0));
}

.hwu-proof-strip,
.hwu-stat-strip {
  display: grid;
  gap: 1rem;
}

.hwu-card,
.hwu-quote-card,
.hwu-cta-band,
.hwu-footer-shell,
.hwu-panel {
  position: relative;
}

.hwu-card,
.hwu-panel {
  overflow: hidden;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(255, 244, 249, 0.96));
  border: 2px solid var(--hwu-border);
  border-radius: var(--hwu-radius-lg);
  box-shadow: var(--hwu-shadow-soft);
}

.hwu-card::before,
.hwu-panel::before {
  content: "";
  position: absolute;
  inset: 0 0 auto 0;
  height: 0.55rem;
  background: linear-gradient(90deg, var(--hwu-primary), var(--hwu-accent));
}

.hwu-accent-bar {
  width: 5rem;
  height: 0.55rem;
  border-radius: var(--hwu-radius-sm);
  background: linear-gradient(90deg, var(--hwu-primary), var(--hwu-accent));
}

.hwu-quote-card {
  overflow: hidden;
  background:
    linear-gradient(145deg, rgba(255, 77, 160, 0.12), transparent 40%),
    linear-gradient(135deg, var(--hwu-primary-dark), var(--hwu-primary));
  border: 2px solid rgba(255, 255, 255, 0.08);
  border-radius: var(--hwu-radius-lg);
  box-shadow: var(--hwu-shadow-strong);
  color: white;
}

.hwu-quote-card * {
  color: inherit;
}

.hwu-cta-band {
  overflow: hidden;
  background:
    linear-gradient(145deg, rgba(255, 255, 255, 0.08), transparent 45%),
    linear-gradient(135deg, var(--hwu-primary), var(--hwu-primary-dark));
  border: 2px solid rgba(255, 255, 255, 0.08);
  border-radius: var(--hwu-radius-lg);
  box-shadow: var(--hwu-shadow-strong);
  color: white;
}

.hwu-cta-band * {
  color: inherit;
}

.hwu-footer-shell {
  background: var(--hwu-primary-deep);
  color: rgba(255, 255, 255, 0.86);
  border-top: 4px solid var(--hwu-primary);
}

.hwu-footer-shell a,
.hwu-footer-shell h2,
.hwu-footer-shell h3,
.hwu-footer-shell h4 {
  color: white;
}

.hwu-light-surface {
  background: var(--hwu-surface-soft);
}

@media (max-width: 767px) {
  .hwu-hero {
    padding-top: 2.5rem;
  }
}


/* HWU HEADER ENFORCEMENT v1 */
.hwu-header-shell {
  flex-wrap: nowrap !important;
  gap: 16px !important;
  padding: 8px 24px !important;
  min-height: 72px;
}
.hwu-header-shell .elementor-widget-theme-site-logo {
  flex: 0 0 auto !important;
  width: auto !important;
  max-width: 280px !important;
}
.hwu-header-shell .elementor-widget-theme-site-logo .elementor-widget-container {
  padding: 0 !important;
}
.hwu-header-shell .elementor-widget-theme-site-logo img {
  max-height: 56px !important;
  max-width: 260px !important;
  width: auto !important;
  height: auto !important;
  object-fit: contain;
  display: block;
}
.hwu-header-shell .elementor-widget-nav-menu {
  flex: 1 1 auto !important;
  min-width: 0;
}
.hwu-header-shell nav.elementor-nav-menu--main ul.elementor-nav-menu {
  flex-wrap: nowrap !important;
  gap: 4px !important;
  justify-content: center;
}
.hwu-header-shell nav.elementor-nav-menu--main .elementor-item {
  font-family: "Oswald", sans-serif !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  letter-spacing: 0.04em !important;
  text-transform: uppercase !important;
  padding: 8px 10px !important;
  white-space: nowrap !important;
}
.hwu-header-shell .elementor-widget-button {
  flex: 0 0 auto !important;
}
.hwu-header-shell .elementor-widget-button .elementor-button {
  padding: 10px 22px !important;
  white-space: nowrap !important;
}
@media (max-width: 880px) {
  .hwu-header-shell nav.elementor-nav-menu--main .elementor-item {
    font-size: 12px !important;
    padding: 6px 7px !important;
  }
}


/* HWU OSC MAP FIX v1 */
.osc-map-layout { align-items: start; }
.osc-map-canvas {
  aspect-ratio: 960 / 520;
  min-height: 380px !important;
  max-height: 560px;
  position: sticky; top: 16px;
}
.osc-map-canvas svg {
  width: 100% !important;
  height: 100% !important;
  display: block;
}
@media (max-width: 900px) {
  .osc-map-layout { grid-template-columns: 1fr; }
  .osc-map-canvas { position: static; max-height: 420px; }
}/* End custom CSS */