:root {
  --cwmh-green-990: #021513;
  --cwmh-green-980: #031c18;
  --cwmh-green-950: #05271f;
  --cwmh-green-925: #082f28;
  --cwmh-green-900: #073a31;
  --cwmh-green-850: #0b463c;
  --cwmh-green-800: #0f5549;
  --cwmh-green-700: #147260;
  --cwmh-accent: #752f40;
  --cwmh-accent-dark: #5f2332;
  --cwmh-accent-soft: #f4e6ea;
  --cwmh-cream: #fbf5e6;
  --cwmh-paper: #fffdf6;
  --cwmh-paper-soft: #f7f1df;
  --cwmh-ink: #09231f;
  --cwmh-muted: #60736e;
  --cwmh-line: rgba(9, 35, 31, .12);
  --cwmh-white-line: rgba(255, 255, 255, .16);
  --cwmh-shadow: 0 32px 90px rgba(0, 0, 0, .20);
  --cwmh-shadow-soft: 0 18px 52px rgba(4, 33, 28, .13);
  --cwmh-radius-xl: 42px;
  --cwmh-radius-lg: 30px;
  --cwmh-radius-md: 18px;
  --cwmh-max: 1220px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body.cwmh-theme {
  margin: 0;
  font-family: Poppins, Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  background: var(--cwmh-cream);
  color: var(--cwmh-ink);
  overflow-x: hidden;
  text-rendering: optimizeLegibility;
}
body.cwmh-theme a { color: inherit; text-decoration: none; }
body.cwmh-theme img { max-width: 100%; height: auto; }
body.cwmh-theme h1,
body.cwmh-theme h2,
body.cwmh-theme h3,
body.cwmh-theme h4,
body.cwmh-theme p { margin-top: 0; }
body.cwmh-theme p { line-height: 1.68; }
.cwmh-container { width: min(var(--cwmh-max), calc(100% - 48px)); margin: 0 auto; position: relative; z-index: 2; }
.screen-reader-text,
.skip-link:not(:focus) { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.skip-link:focus { position: fixed; top: 16px; left: 16px; z-index: 9999; background: #fff; color: var(--cwmh-green-950); padding: 10px 14px; border-radius: 999px; font-weight: 800; }

.cwmh-site-header {
  position: sticky;
  top: 18px;
  z-index: 90;
  padding-top: 18px;
  pointer-events: none;
}
.admin-bar .cwmh-site-header { top: 50px; }
.cwmh-nav-pill {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  min-height: 76px;
  padding: 11px;
  border-radius: 999px;
  background: rgba(255,253,246,.96);
  border: 1px solid rgba(255,255,255,.72);
  box-shadow: 0 18px 70px rgba(0,0,0,.16);
  backdrop-filter: blur(22px);
  pointer-events: auto;
}
.cwmh-brand { display: flex; align-items: center; gap: 12px; min-width: 235px; padding-left: 10px; }
.cwmh-brand-logo img { width: auto; max-height: 54px; display: block; }
.cwmh-brand-mark {
  width: 46px; height: 46px; border-radius: 999px;
  display: grid; place-items: center;
  background: linear-gradient(135deg, var(--cwmh-green-700), var(--cwmh-green-950));
  color: #fff; font-weight: 900; letter-spacing: -.08em;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.24);
}
.cwmh-brand-title { display: flex; flex-direction: column; line-height: 1.02; font-weight: 900; letter-spacing: -.035em; font-size: 16px; }
.cwmh-brand-title small { margin-top: 4px; color: var(--cwmh-muted); font-size: 10px; font-weight: 800; letter-spacing: .11em; text-transform: uppercase; }
.cwmh-navigation { flex: 1; display: flex; justify-content: center; }
.cwmh-nav-menu { display: flex; align-items: center; justify-content: center; gap: 2px; flex: 1; margin: 0; padding: 0; list-style: none; }
.cwmh-nav-menu li { margin: 0; padding: 0; list-style: none; }
.cwmh-nav-menu > .menu-item { position: static; }
.cwmh-nav-menu > .menu-item > a {
  display: inline-flex; align-items: center; gap: 8px;
  min-height: 46px; padding: 0 13px;
  border-radius: 999px;
  color: rgba(9,35,31,.82);
  font-weight: 850; font-size: 13px;
  transition: background .2s ease, color .2s ease, transform .2s ease;
  white-space: nowrap;
}
.cwmh-nav-menu > .menu-item-has-children > a:after {
  content: ""; width: 6px; height: 6px; border-right: 2px solid currentColor; border-bottom: 2px solid currentColor; transform: rotate(45deg); margin-top: -4px; opacity: .72;
}
.cwmh-nav-menu > .menu-item > a:hover,
.cwmh-nav-menu > .current-menu-item > a,
.cwmh-nav-menu > .current-menu-ancestor > a { background: var(--cwmh-accent-soft); color: var(--cwmh-accent); transform: translateY(-1px); }
.cwmh-nav-menu > .menu-item > .sub-menu {
  position: absolute;
  left: 0;
  right: 0;
  top: calc(100% + 14px);
  width: 100%;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
  margin: 0;
  padding: 20px;
  border-radius: 32px;
  background: rgba(255,253,246,.985);
  border: 1px solid rgba(255,255,255,.82);
  box-shadow: var(--cwmh-shadow);
  opacity: 0;
  visibility: hidden;
  transform: translateY(10px);
  transition: opacity .2s ease, visibility .2s ease, transform .2s ease;
  list-style: none;
}
.cwmh-nav-menu > .menu-item > .sub-menu:before { content: ""; position: absolute; inset: -18px 0 auto 0; height: 18px; }
.cwmh-nav-menu > .menu-item:hover > .sub-menu,
.cwmh-nav-menu > .menu-item:focus-within > .sub-menu { opacity: 1; visibility: visible; transform: translateY(0); }
.cwmh-nav-menu > .menu-item > .sub-menu > .menu-item {
  padding: 20px;
  border-radius: 24px;
  background: rgba(247,241,223,.86);
  border: 1px solid rgba(9,35,31,.08);
}
.cwmh-nav-menu > .menu-item > .sub-menu > .menu-item:first-child {
  background: linear-gradient(135deg, var(--cwmh-green-950), var(--cwmh-green-800));
  color: #fff;
}
.cwmh-nav-menu > .menu-item > .sub-menu > .menu-item > a {
  display: block;
  margin-bottom: 12px;
  font-size: 12px;
  letter-spacing: .16em;
  text-transform: uppercase;
  color: var(--cwmh-accent);
  font-weight: 900;
}
.cwmh-nav-menu > .menu-item > .sub-menu > .menu-item:first-child > a { color: #fff; opacity: .72; }
.cwmh-nav-menu .sub-menu .sub-menu { position: static; display: block; margin: 0; padding: 0; list-style: none; }
.cwmh-nav-menu .sub-menu .sub-menu a,
.cwmh-nav-menu > .menu-item > .sub-menu > .menu-item:not(.menu-item-has-children) > a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 10px 0;
  color: rgba(9,35,31,.82);
  font-weight: 760;
  font-size: 14px;
  border-bottom: 1px solid rgba(9,35,31,.08);
  letter-spacing: normal;
  text-transform: none;
  margin-bottom: 0;
}
.cwmh-nav-menu .sub-menu .sub-menu a:after,
.cwmh-nav-menu > .menu-item > .sub-menu > .menu-item:not(.menu-item-has-children) > a:after { content: "›"; font-size: 20px; line-height: 1; }
.cwmh-nav-menu > .menu-item > .sub-menu > .menu-item:first-child .sub-menu a { color: rgba(255,255,255,.88); border-bottom-color: rgba(255,255,255,.14); }
.cwmh-nav-menu .sub-menu a:hover { color: var(--cwmh-accent); }
.cwmh-nav-menu > .menu-item > .sub-menu > .menu-item:first-child .sub-menu a:hover { color: #fff; }
.cwmh-nav-actions { min-width: 160px; display: flex; justify-content: flex-end; }
.cwmh-mobile-toggle { display: none; }

.cwmh-button,
.gform_wrapper.gravity-theme .gform_footer input[type="submit"],
.gform_wrapper .gform_button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  min-height: 46px;
  padding: 0 18px;
  border: 1px solid transparent;
  border-radius: 999px;
  font-weight: 900;
  font-size: 14px;
  white-space: nowrap;
  cursor: pointer;
  transition: transform .2s ease, background .2s ease, box-shadow .2s ease, color .2s ease;
}
.cwmh-button:hover,
.gform_wrapper.gravity-theme .gform_footer input[type="submit"]:hover,
.gform_wrapper .gform_button:hover { transform: translateY(-2px); }
.cwmh-button-primary { background: var(--cwmh-green-900); color: #fff; box-shadow: 0 14px 30px rgba(5,38,31,.22); }
.cwmh-button-primary:hover { background: var(--cwmh-green-950); color: #fff; }
.cwmh-button-accent,
.gform_wrapper.gravity-theme .gform_footer input[type="submit"],
.gform_wrapper .gform_button { background: var(--cwmh-accent); color: #fff; box-shadow: 0 14px 30px rgba(117,47,64,.24); }
.cwmh-button-accent:hover,
.gform_wrapper.gravity-theme .gform_footer input[type="submit"]:hover,
.gform_wrapper .gform_button:hover { background: var(--cwmh-accent-dark); color: #fff; }
.cwmh-button-light { background: var(--cwmh-paper); color: var(--cwmh-green-950); }
.cwmh-button-outline { color: #fff; border-color: rgba(255,255,255,.25); background: rgba(255,255,255,.10); }
.cwmh-button-outline:hover { background: rgba(255,255,255,.16); color: #fff; }
.cwmh-text-link { display: inline-flex; align-items: center; gap: 8px; color: var(--cwmh-accent); font-weight: 900; }
.cwmh-text-link:after { content: "›"; font-size: 19px; }

.cwmh-home-main {
  background:
    radial-gradient(circle at 92% 0%, rgba(117, 47, 64, .15), transparent 23rem),
    linear-gradient(180deg, var(--cwmh-green-950) 0%, var(--cwmh-green-900) 820px, var(--cwmh-cream) 820px, var(--cwmh-cream) 100%);
  position: relative;
  margin-top: -112px;
  padding-top: 112px;
}
.cwmh-home-main:before {
  content: "";
  position: absolute;
  inset: 0 0 auto 0;
  height: 650px;
  background-image:
    linear-gradient(rgba(255,255,255,.045) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.045) 1px, transparent 1px);
  background-size: 46px 46px;
  mask-image: linear-gradient(180deg, black, transparent 90%);
  pointer-events: none;
}
.cwmh-home-hero { padding: 120px 0 82px; color: #fff; position: relative; }
.cwmh-home-hero-grid { display: grid; grid-template-columns: minmax(0, .95fr) minmax(430px, .72fr); gap: 54px; align-items: center; }
.cwmh-hero-copy-panel { position: relative; min-height: 420px; }
.cwmh-hero-copy-slide {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  opacity: 0;
  visibility: hidden;
  transform: translateY(18px);
  transition: opacity .5s ease, visibility .5s ease, transform .6s ease;
}
.cwmh-hero-copy-slide.is-active { opacity: 1; visibility: visible; transform: translateY(0); }
.cwmh-home-hero h1 { max-width: 880px; margin: 0 0 20px; font-size: clamp(48px, 7.2vw, 94px); line-height: .9; letter-spacing: -.078em; text-wrap: balance; }
.cwmh-home-hero p { max-width: 740px; margin-bottom: 30px; color: rgba(255,255,255,.84); font-size: 19px; }
.cwmh-hero-actions { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; }
.cwmh-slider-controls { display: flex; align-items: center; justify-content: space-between; gap: 18px; max-width: 710px; margin-top: 18px; pointer-events: auto; }
.cwmh-slider-dots { display: flex; gap: 9px; pointer-events: auto; }
.cwmh-slider-dot {
  width: 11px; height: 11px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.45);
  background: rgba(255,255,255,.18);
  cursor: pointer;
  transition: width .2s ease, background .2s ease, border-color .2s ease;
}
.cwmh-slider-dot.is-active { width: 34px; background: var(--cwmh-accent); border-color: var(--cwmh-accent); }
.cwmh-slider-arrows { display: flex; gap: 10px; pointer-events: auto; }
.cwmh-slider-arrow {
  width: 42px; height: 42px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.22);
  background: rgba(255,255,255,.10);
  color: #fff;
  font: inherit;
  font-size: 22px;
  cursor: pointer;
  transition: transform .2s ease, background .2s ease;
}
.cwmh-slider-arrow:hover { transform: translateY(-2px); background: rgba(255,255,255,.18); }
.cwmh-hero-media { position: relative; min-height: 520px; }
.cwmh-hero-photo {
  position: absolute;
  overflow: hidden;
  border-radius: 34px;
  border: 1px solid rgba(255,255,255,.14);
  background-image: linear-gradient(180deg, rgba(0,0,0,.05), rgba(0,0,0,.55)), url('../img/project-bg-clean.png');
  background-size: cover;
  background-position: center;
  box-shadow: var(--cwmh-shadow);
  filter: saturate(.15) contrast(1.08);
}
.cwmh-hero-photo-large { inset: 34px 24px 32px 62px; }
.cwmh-hero-photo-small-top { width: 220px; height: 170px; left: 0; top: 0; background-position: 28% center; }
.cwmh-hero-photo-small-bottom { width: 230px; height: 190px; right: 0; bottom: 0; background-position: 58% center; }

.cwmh-section { padding: 84px 0; position: relative; }
.cwmh-section-head { display: flex; align-items: end; justify-content: space-between; gap: 24px; margin-bottom: 32px; }
.cwmh-section-head h2 { margin-bottom: 0; max-width: 760px; font-size: clamp(36px, 5vw, 66px); line-height: .95; letter-spacing: -.065em; color: var(--cwmh-green-950); }
.cwmh-section-head p { max-width: 430px; margin-bottom: 0; color: var(--cwmh-muted); font-weight: 560; }
.cwmh-section-label { display: inline-flex; align-items: center; gap: 9px; margin-bottom: 18px; padding: 8px 12px; border-radius: 999px; background: var(--cwmh-accent-soft); color: var(--cwmh-accent); font-weight: 900; font-size: 12px; letter-spacing: .12em; text-transform: uppercase; }
.cwmh-section-label:before { content: ""; width: 8px; height: 8px; border-radius: 50%; background: var(--cwmh-accent); }
.cwmh-card,
.cwmh-content-card { border-radius: var(--cwmh-radius-lg); background: var(--cwmh-paper); border: 1px solid rgba(9,35,31,.08); box-shadow: var(--cwmh-shadow-soft); }

.cwmh-about-grid { display: grid; grid-template-columns: .9fr 1.1fr; gap: 24px; align-items: stretch; }
.cwmh-about-copy { padding: clamp(28px, 4vw, 46px); }
.cwmh-about-copy h2 { margin-bottom: 22px; font-size: clamp(34px, 4.5vw, 58px); line-height: .96; letter-spacing: -.065em; color: var(--cwmh-green-950); }
.cwmh-about-copy p { color: var(--cwmh-muted); font-size: 16px; }
.cwmh-feature-list { display: grid; gap: 10px; margin: 24px 0 0; padding: 0; list-style: none; }
.cwmh-feature-list li { display: flex; align-items: center; gap: 10px; padding: 12px 14px; border-radius: 999px; background: var(--cwmh-paper-soft); color: var(--cwmh-green-950); font-weight: 850; }
.cwmh-feature-list li:before { content: ""; width: 8px; height: 8px; flex: 0 0 8px; border-radius: 50%; background: var(--cwmh-accent); }
.cwmh-video-card {
  min-height: 440px;
  display: grid;
  place-items: center;
  position: relative;
  overflow: hidden;
  border-radius: var(--cwmh-radius-lg);
  background-image: linear-gradient(180deg, rgba(5,39,31,.12), rgba(5,39,31,.72)), url('../img/project-bg-clean.png');
  background-size: cover;
  background-position: center;
  border: 1px solid rgba(9,35,31,.08);
  box-shadow: var(--cwmh-shadow-soft);
}
.cwmh-video-card:after { content: ""; position: absolute; inset: 24px; border-radius: 26px; border: 1px solid rgba(255,255,255,.20); pointer-events: none; }
.cwmh-play-button { position: relative; z-index: 2; width: 92px; height: 92px; border-radius: 50%; border: 1px solid rgba(255,255,255,.34); background: rgba(255,253,246,.92); color: var(--cwmh-green-950); display: grid; place-items: center; box-shadow: 0 24px 70px rgba(0,0,0,.28); }
.cwmh-play-button:before { content: ""; margin-left: 6px; width: 0; height: 0; border-top: 15px solid transparent; border-bottom: 15px solid transparent; border-left: 23px solid currentColor; }
.cwmh-video-label { position: absolute; left: 42px; bottom: 42px; z-index: 2; color: #fff; }
.cwmh-video-label small { display: block; color: #fff; opacity: .72; font-size: 12px; letter-spacing: .16em; text-transform: uppercase; font-weight: 900; margin-bottom: 7px; }
.cwmh-video-label strong { font-size: 24px; line-height: 1.05; letter-spacing: -.04em; }

.cwmh-involved-section { padding-top: 20px; }
.cwmh-involved-card { border-radius: var(--cwmh-radius-xl); padding: clamp(30px, 4vw, 54px); background: var(--cwmh-green-950); color: #fff; display: grid; grid-template-columns: .95fr 1fr; gap: clamp(24px, 5vw, 70px); box-shadow: var(--cwmh-shadow); }
.cwmh-involved-card h2 { margin-bottom: 0; font-size: clamp(36px, 5vw, 70px); line-height: .92; letter-spacing: -.07em; }
.cwmh-involved-card h3 { margin: 0 0 8px; color: #fff; font-size: 22px; letter-spacing: -.035em; }
.cwmh-involved-card p { color: rgba(255,255,255,.74); }
.cwmh-involved-copy { display: grid; gap: 16px; align-content: center; }

.cwmh-projects-section { overflow: hidden; }
.cwmh-project-tile-row { display: grid; grid-template-columns: repeat(5, minmax(220px, 1fr)); gap: 24px; overflow-x: auto; padding-bottom: 12px; scroll-snap-type: x mandatory; }
.cwmh-project-tile {
  min-height: 330px;
  border-radius: 28px;
  overflow: hidden;
  position: relative;
  display: flex;
  align-items: flex-end;
  padding: 26px;
  color: #fff;
  background-image: linear-gradient(180deg, rgba(0,0,0,.08), rgba(0,0,0,.72)), url('../img/project-tile-bg.png');
  background-size: cover;
  background-position: center;
  box-shadow: 0 22px 52px rgba(4,33,28,.20);
  scroll-snap-align: start;
  transition: transform .22s ease, box-shadow .22s ease;
}
.cwmh-project-tile:before { content: ""; position: absolute; inset: 0; background: rgba(0,0,0,.16); transition: background .2s ease; }
.cwmh-project-tile-logo { position: absolute; inset: 26px auto auto 26px; z-index: 2; text-transform: uppercase; letter-spacing: .13em; font-weight: 700; font-size: 14px; opacity: .9; }
.cwmh-project-tile-logo small { display: block; font-size: 8px; margin-top: 4px; }
.cwmh-project-tile strong { position: relative; z-index: 2; font-size: 24px; line-height: 1.04; letter-spacing: -.04em; }
.cwmh-project-tile:hover { transform: translateY(-5px); box-shadow: 0 28px 70px rgba(4,33,28,.28); }
.cwmh-project-tile:hover:before { background: rgba(117,47,64,.18); }

.cwmh-news-section { padding-top: 40px; }
.cwmh-news-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.cwmh-news-card { border-radius: 30px; overflow: hidden; background: var(--cwmh-paper); border: 1px solid rgba(9,35,31,.08); box-shadow: var(--cwmh-shadow-soft); }
.cwmh-news-image { display: block; min-height: 220px; background-size: cover; background-position: center; filter: saturate(.75); }
.cwmh-news-card-body { padding: 26px; }
.cwmh-news-card time { display: inline-flex; margin-bottom: 14px; padding: 8px 11px; border-radius: 999px; background: var(--cwmh-accent-soft); color: var(--cwmh-accent); font-size: 12px; font-weight: 900; letter-spacing: .04em; }
.cwmh-news-card h3 { margin: 0 0 10px; font-size: 25px; line-height: 1.06; letter-spacing: -.045em; color: var(--cwmh-green-950); }
.cwmh-news-card p { color: var(--cwmh-muted); font-size: 15px; }
.cwmh-empty-state { grid-column: 1 / -1; padding: 30px; border-radius: 24px; background: var(--cwmh-paper); border: 1px solid var(--cwmh-line); color: var(--cwmh-muted); }

.cwmh-mailing-section { padding-top: 30px; }
.cwmh-mailing-card { display: grid; grid-template-columns: .7fr 1fr; gap: 28px; align-items: stretch; border-radius: var(--cwmh-radius-xl); padding: clamp(28px, 4vw, 52px); background: var(--cwmh-green-900); color: #fff; box-shadow: var(--cwmh-shadow); overflow: hidden; position: relative; }
.cwmh-mailing-card:before { content: ""; position: absolute; inset: 0; background-image: linear-gradient(rgba(255,255,255,.06) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.06) 1px, transparent 1px); background-size: 38px 38px; opacity: .35; }
.cwmh-mailing-copy, .cwmh-mailing-form { position: relative; z-index: 1; }
.cwmh-mailing-copy h2 { margin-bottom: 18px; font-size: clamp(42px, 5.8vw, 76px); line-height: .9; letter-spacing: -.07em; }
.cwmh-mailing-copy p { color: rgba(255,255,255,.76); font-size: 17px; }
.cwmh-mailing-form { padding: 26px; border-radius: 28px; background: rgba(255,253,246,.10); border: 1px solid rgba(255,255,255,.15); display: grid; gap: 14px; backdrop-filter: blur(16px); }
.cwmh-mailing-form input[type="email"],
.cwmh-mailing-form input[type="text"] { width: 100%; min-height: 58px; border-radius: 18px; border: 1px solid rgba(255,255,255,.20); background: rgba(255,253,246,.94); padding: 0 18px; font: inherit; font-weight: 650; color: var(--cwmh-green-950); }
.cwmh-form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.cwmh-mailing-form fieldset { margin: 0; padding: 18px; border-radius: 20px; border: 1px solid rgba(255,255,255,.16); }
.cwmh-mailing-form legend { padding: 0 8px; font-weight: 900; }
.cwmh-check-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px 20px; margin-top: 10px; }
.cwmh-check-grid label { display: flex; align-items: center; gap: 10px; font-weight: 800; color: rgba(255,255,255,.86); }
.cwmh-check-grid input { width: 18px; height: 18px; accent-color: var(--cwmh-accent); }

.cwmh-inner-hero-shell {
  padding: 34px 0 0;
  background:
    radial-gradient(circle at 0% 0%, rgba(117,47,64,.09), transparent 26rem),
    linear-gradient(180deg, #fffdf6 0%, var(--cwmh-cream) 100%);
}
.cwmh-inner-hero {
  position: relative;
  min-height: 380px;
  border-radius: 38px;
  overflow: hidden;
  background: var(--cwmh-green-900);
  box-shadow: var(--cwmh-shadow-soft);
  isolation: isolate;
  color: #fff;
}
.cwmh-inner-slides { position: absolute; inset: 0; z-index: 1; }
.cwmh-inner-slide {
  position: absolute;
  inset: 0;
  background-size: cover;
  background-position: center center;
  opacity: 0;
  transform: scale(1.03);
  transition: opacity .9s ease, transform 1.5s ease;
  filter: saturate(.78) contrast(1.02);
}
.cwmh-inner-slide.is-active { opacity: 1; transform: scale(1); }
.cwmh-inner-hero-green {
  background-image:
    linear-gradient(90deg, rgba(5,38,31,.78), rgba(5,38,31,.34)),
    radial-gradient(circle at 82% 24%, rgba(117,47,64,.30), transparent 18rem),
    linear-gradient(135deg, #0a4a39, #126348 48%, #05261f);
}
.cwmh-inner-hero:before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 3;
  background-image:
    linear-gradient(rgba(255,255,255,.055) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.055) 1px, transparent 1px);
  background-size: 44px 44px;
  mask-image: linear-gradient(180deg, black, transparent 90%);
  pointer-events: none;
}
.cwmh-inner-hero-overlay {
  position: absolute;
  inset: 0;
  z-index: 2;
  background: linear-gradient(90deg, rgba(5,38,31,.80), rgba(5,38,31,.46), rgba(5,38,31,.20));
}
.cwmh-inner-hero:after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 4;
  background: linear-gradient(180deg, rgba(0,0,0,0) 38%, rgba(0,0,0,.16));
  pointer-events: none;
}
.cwmh-inner-hero-content {
  position: relative;
  z-index: 6;
  min-height: 380px;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding: clamp(28px, 5vw, 52px);
}
.cwmh-breadcrumbs { display: flex; flex-wrap: wrap; align-items: center; gap: 9px; margin-bottom: 16px; color: rgba(255,255,255,.74); font-size: 14px; font-weight: 800; }
.cwmh-breadcrumbs a { color: rgba(255,255,255,.84); }
.cwmh-breadcrumbs a:hover { color: #fff; }
.cwmh-breadcrumbs span[aria-hidden="true"] { color: var(--cwmh-accent); }
.cwmh-inner-hero h1 { max-width: 780px; margin: 0; color: #fff; font-size: clamp(50px, 7vw, 86px); line-height: .92; letter-spacing: -.075em; }
.cwmh-inner-dots { position: absolute; right: 34px; bottom: 34px; z-index: 9; display: flex; gap: 8px; }
.cwmh-inner-dot { width: 9px; height: 9px; border-radius: 999px; border: 0; padding: 0; background: rgba(255,255,255,.42); cursor: pointer; transition: width .2s ease, background .2s ease; }
.cwmh-inner-dot.is-active { width: 28px; background: var(--cwmh-accent); }

.cwmh-content-wrap { padding: 46px 0 78px; background: var(--cwmh-cream); }
.cwmh-inner-layout { display: grid; grid-template-columns: minmax(0, 1fr) 320px; gap: 30px; align-items: start; }
.cwmh-entry-content { padding: clamp(28px, 4vw, 52px); }
.cwmh-entry-content > *:first-child { margin-top: 0; }
.cwmh-entry-content h2 { margin: 34px 0 14px; font-size: clamp(30px, 4vw, 48px); line-height: 1; letter-spacing: -.055em; color: var(--cwmh-green-950); }
.cwmh-entry-content h3 { margin: 26px 0 12px; font-size: 26px; line-height: 1.08; letter-spacing: -.04em; color: var(--cwmh-green-900); }
.cwmh-entry-content p,
.cwmh-entry-content li { color: var(--cwmh-muted); font-size: 17px; }
.cwmh-entry-content a { color: var(--cwmh-accent); font-weight: 850; }
.cwmh-entry-content ul { list-style: none; padding: 0; margin: 20px 0; display: grid; gap: 12px; }
.cwmh-entry-content ul li { position: relative; padding-left: 34px; }
.cwmh-entry-content ul li:before { content: ""; position: absolute; left: 0; top: .48em; width: 18px; height: 18px; border-radius: 7px 7px 7px 2px; background: var(--cwmh-accent); box-shadow: 0 8px 18px rgba(117,47,64,.18); transform: rotate(-8deg); }
.cwmh-entry-content ol { padding-left: 28px; }
.cwmh-inner-sidebar { position: sticky; top: 112px; }
.cwmh-sidebar-widget { border-radius: 28px; background: var(--cwmh-green-950); color: #fff; padding: 20px; box-shadow: 0 22px 60px rgba(5,38,31,.18); }
.cwmh-sidebar-widget + .cwmh-sidebar-widget { margin-top: 18px; }
.cwmh-sidebar-title { margin: 0 0 14px; font-size: 22px; line-height: 1.05; letter-spacing: -.04em; text-transform: none; color: #fff; }
.cwmh-sidebar-widget ul { margin: 0; padding: 0; list-style: none; display: grid; gap: 8px; }
.cwmh-sidebar-widget li a { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 13px 14px; border-radius: 16px; background: rgba(255,255,255,.08); border: 1px solid rgba(255,255,255,.10); color: rgba(255,255,255,.84); font-weight: 820; font-size: 14px; }

.cwmh-sidebar-widget li a:after { content: "›"; font-size: 20px; }
.cwmh-sidebar-widget li.is-current > a,
.cwmh-sidebar-widget li.current_page_item > a,
.cwmh-sidebar-widget li.current-menu-item > a { background: var(--cwmh-accent); color: #fff; border-color: rgba(255,255,255,.14); }
.cwmh-sidebar-widget li a:hover { background: rgba(255,255,255,.13); color: #fff; }

.cwmh-archive-wrap,
.cwmh-news-page { padding-top: 90px; }
.cwmh-archive-header h1 { margin: 0 0 32px; color: var(--cwmh-green-950); font-size: clamp(48px, 7vw, 88px); line-height: .9; letter-spacing: -.075em; }
.cwmh-news-grid-archive { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.cwmh-page-intro { margin-bottom: 28px; }
.cwmh-pagination,
.pagination { margin-top: 34px; display: flex; justify-content: center; }
.cwmh-pagination ul,
.pagination .nav-links { display: flex; align-items: center; gap: 8px; margin: 0; padding: 0; list-style: none; }
.cwmh-pagination a,
.cwmh-pagination span,
.pagination a,
.pagination span { min-width: 42px; height: 42px; display: grid; place-items: center; border-radius: 999px; background: var(--cwmh-paper); border: 1px solid var(--cwmh-line); color: var(--cwmh-green-950); font-weight: 900; }
.cwmh-pagination .current,
.pagination .current { background: var(--cwmh-accent); color: #fff; border-color: var(--cwmh-accent); }
.cwmh-single-container { max-width: 900px; }
.cwmh-single-header time { display: inline-flex; margin-bottom: 16px; padding: 8px 11px; border-radius: 999px; background: var(--cwmh-accent-soft); color: var(--cwmh-accent); font-size: 12px; font-weight: 900; }
.cwmh-single-header h1 { margin: 0 0 22px; font-size: clamp(44px, 7vw, 78px); line-height: .92; letter-spacing: -.07em; color: var(--cwmh-green-950); }
.cwmh-single-image img { width: 100%; border-radius: 24px; margin-bottom: 28px; }

.cwmh-contact-panel { margin-bottom: 28px; padding: clamp(26px, 4vw, 46px); border-radius: var(--cwmh-radius-lg); background: var(--cwmh-green-950); color: #fff; }
.cwmh-contact-panel h2 { margin-bottom: 14px; color: #fff; }
.cwmh-contact-panel p { color: rgba(255,255,255,.76); }
.gform_wrapper.gravity-theme input[type="text"],
.gform_wrapper.gravity-theme input[type="email"],
.gform_wrapper.gravity-theme input[type="tel"],
.gform_wrapper.gravity-theme textarea,
.gform_wrapper.gravity-theme select,
.gform_wrapper input[type="text"],
.gform_wrapper input[type="email"],
.gform_wrapper input[type="tel"],
.gform_wrapper textarea,
.gform_wrapper select { border-radius: 16px !important; border: 1px solid var(--cwmh-line) !important; padding: 14px 16px !important; font: inherit !important; box-shadow: none !important; background: #fff !important; }
.gform_wrapper.gravity-theme .gfield_label,
.gform_wrapper .gfield_label { color: var(--cwmh-green-950) !important; font-weight: 900 !important; }
.gform_wrapper.gravity-theme .gform_footer,
.gform_wrapper .gform_footer { margin-top: 18px !important; }

.cwmh-testimonials-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.cwmh-testimonials-grid blockquote { margin: 0; padding: 24px; border-radius: 24px; background: var(--cwmh-paper-soft); color: var(--cwmh-green-950); }
.cwmh-testimonials-grid p { color: var(--cwmh-green-950); font-weight: 760; }
.cwmh-testimonials-grid cite { color: var(--cwmh-accent); font-style: normal; font-weight: 900; }

.cwmh-site-footer { background: var(--cwmh-green-990); color: #fff; padding: 70px 0 32px; }
.cwmh-footer-panel { border-radius: var(--cwmh-radius-xl); background: linear-gradient(135deg, var(--cwmh-green-950), var(--cwmh-green-900)); border: 1px solid rgba(255,255,255,.10); padding: clamp(28px, 4vw, 52px); box-shadow: var(--cwmh-shadow); }
.cwmh-footer-main { display: grid; grid-template-columns: 1.1fr .9fr .7fr; gap: 32px; align-items: start; }
.cwmh-footer-brand .cwmh-brand { min-width: 0; padding-left: 0; color: #fff; margin-bottom: 22px; }
.cwmh-footer-brand .cwmh-brand-title small { color: rgba(255,255,255,.66); }
.cwmh-footer-brand p,
.cwmh-footer-address address { color: rgba(255,255,255,.72); font-style: normal; }
.cwmh-footer-address h2,
.cwmh-footer-links h2 { margin: 0 0 14px; font-size: 12px; letter-spacing: .16em; text-transform: uppercase; color: rgba(255,255,255,.62); }
.cwmh-footer-address a { color: #fff; font-weight: 850; }
.cwmh-footer-menu { margin: 0; padding: 0; list-style: none; display: grid; gap: 10px; }
.cwmh-footer-menu a { color: rgba(255,255,255,.78); font-weight: 760; }
.cwmh-footer-menu a:hover { color: #fff; }
.cwmh-footer-logo-row { display: grid; grid-template-columns: repeat(5, 1fr); gap: 12px; margin-top: 36px; padding-top: 28px; border-top: 1px solid rgba(255,255,255,.12); }
.cwmh-footer-logo { min-height: 78px; display: grid; place-items: center; padding: 14px; border-radius: 18px; background: rgba(255,255,255,.07); border: 1px solid rgba(255,255,255,.10); }
.cwmh-footer-logo img { max-height: 52px; width: auto; object-fit: contain; filter: none; }
.cwmh-footer-logo span { color: rgba(255,255,255,.54); font-size: 12px; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
.cwmh-footer-bottom { display: flex; justify-content: space-between; gap: 20px; margin-top: 28px; padding-top: 22px; border-top: 1px solid rgba(255,255,255,.12); color: rgba(255,255,255,.54); font-size: 13px; font-weight: 750; }

@media (max-width: 1120px) {
  .cwmh-brand { min-width: 195px; }
  .cwmh-nav-actions { min-width: auto; }
  .cwmh-nav-menu > .menu-item > a { padding: 0 10px; font-size: 12px; }
  .cwmh-home-hero-grid { grid-template-columns: 1fr; }
  .cwmh-hero-media { min-height: 440px; max-width: 680px; }
  .cwmh-project-tile-row { grid-template-columns: repeat(5, 260px); }
}
@media (max-width: 920px) {
  .admin-bar .cwmh-site-header { top: 46px; }
  .cwmh-nav-pill { border-radius: 32px; align-items: center; flex-wrap: wrap; }
  .cwmh-mobile-toggle { display: grid; width: 46px; height: 46px; border: 0; border-radius: 999px; background: var(--cwmh-green-950); place-items: center; padding: 10px; }
  .cwmh-mobile-toggle span:not(.screen-reader-text) { width: 22px; height: 2px; background: #fff; display: block; margin: 2px 0; }
  .cwmh-navigation { display: none; flex-basis: 100%; order: 3; justify-content: stretch; }
  .cwmh-nav-pill.is-open .cwmh-navigation { display: block; }
  .cwmh-nav-menu { display: grid; gap: 6px; }
  .cwmh-nav-menu > .menu-item > a { width: 100%; justify-content: space-between; padding: 13px 16px; min-height: auto; }
  .cwmh-nav-menu > .menu-item > .sub-menu { position: static; width: 100%; display: none; opacity: 1; visibility: visible; transform: none; grid-template-columns: 1fr; box-shadow: none; margin: 4px 0 8px; border-radius: 22px; }
  .cwmh-nav-menu > .menu-item.is-open > .sub-menu { display: grid; }
  .cwmh-nav-actions { display: none; }
  .cwmh-about-grid,
  .cwmh-involved-card,
  .cwmh-mailing-card,
  .cwmh-inner-layout,
  .cwmh-footer-main { grid-template-columns: 1fr; }
  .cwmh-inner-sidebar { position: static; order: -1; }
  .cwmh-news-grid,
  .cwmh-news-grid-archive,
  .cwmh-testimonials-grid { grid-template-columns: 1fr; }
  .cwmh-footer-logo-row { grid-template-columns: repeat(2, 1fr); }
  .cwmh-section-head { align-items: start; flex-direction: column; }
}
@media (max-width: 640px) {
  .cwmh-container { width: min(100% - 28px, var(--cwmh-max)); }
  .cwmh-site-header { top: 8px; padding-top: 8px; }
  .admin-bar .cwmh-site-header { top: 54px; }
  .cwmh-brand { min-width: 0; }
  .cwmh-brand-title { font-size: 14px; }
  .cwmh-home-main { margin-top: -92px; padding-top: 92px; }
  .cwmh-home-hero { padding-top: 86px; }
  .cwmh-home-hero h1 { font-size: clamp(42px, 14vw, 62px); }
  .cwmh-home-hero p { font-size: 16px; }
  .cwmh-hero-copy-panel { min-height: 510px; }
  .cwmh-hero-media { min-height: 310px; }
  .cwmh-hero-photo-large { inset: 20px 0 20px 42px; }
  .cwmh-hero-photo-small-top { width: 160px; height: 122px; }
  .cwmh-hero-photo-small-bottom { width: 160px; height: 130px; }
  .cwmh-form-row,
  .cwmh-check-grid { grid-template-columns: 1fr; }
  .cwmh-inner-hero-shell { padding-top: 22px; }
  .cwmh-inner-hero { min-height: 310px; border-radius: 28px; }
  .cwmh-inner-hero-content { min-height: 310px; padding: 28px; }
  .cwmh-inner-hero h1 { font-size: clamp(44px, 16vw, 72px); }
  .cwmh-inner-dots { right: 24px; bottom: 24px; }
  .cwmh-entry-content { padding: 24px; }
  .cwmh-footer-logo-row { grid-template-columns: 1fr; }
  .cwmh-footer-bottom { flex-direction: column; }
}

/* v1.0.3 refinements */
.cwmh-site-header .cwmh-container {
  width: min(1680px, calc(100% - 64px));
}
.cwmh-nav-pill {
  justify-content: flex-start;
  padding-left: 16px;
  padding-right: 16px;
}
.cwmh-brand {
  flex: 0 0 auto;
  min-width: 215px;
  padding-left: 8px;
}
.cwmh-navigation {
  flex: 1 1 auto;
  justify-content: center;
}
.cwmh-nav-actions {
  flex: 0 0 auto;
}
.cwmh-nav-actions a.cwmh-button-primary,
.cwmh-nav-actions .cwmh-button-primary,
.cwmh-button.cwmh-button-primary {
  color: #fff !important;
}
.cwmh-nav-menu > .menu-item > .sub-menu {
  left: 0;
  right: 0;
  width: 100%;
}

.cwmh-elementor-safe-wrap {
  padding-top: 90px;
  padding-bottom: 90px;
}
.cwmh-elementor-content-card {
  min-height: 420px;
}
.elementor-editor-active .cwmh-site-header,
.elementor-editor-preview .cwmh-site-header {
  position: relative;
  top: auto;
}

.cwmh-sidebar-widget {
  padding: 24px;
}
.cwmh-sidebar-widget ul,
.cwmh-sidebar-widget .advanced-sidebar-menu,
.cwmh-sidebar-widget .advanced-sidebar-menu ul {
  gap: 14px;
}
.cwmh-sidebar-widget li,
.cwmh-sidebar-widget .advanced-sidebar-menu li {
  margin: 0 0 14px !important;
}
.cwmh-sidebar-widget li:last-child,
.cwmh-sidebar-widget .advanced-sidebar-menu li:last-child {
  margin-bottom: 0 !important;
}
.cwmh-sidebar-widget li a,
.cwmh-sidebar-widget .advanced-sidebar-menu a,
.cwmh-sidebar-widget .child-sidebar-menu a,
.cwmh-sidebar-widget .parent-sidebar-menu a {
  min-height: 64px;
  padding: 18px 20px !important;
  border-radius: 22px;
  font-size: 17px;
  line-height: 1.2;
}
.cwmh-sidebar-widget ul ul,
.cwmh-sidebar-widget .advanced-sidebar-menu ul ul {
  margin-top: 12px !important;
  padding-left: 0 !important;
}
.cwmh-sidebar-widget ul ul li a,
.cwmh-sidebar-widget .advanced-sidebar-menu ul ul a {
  min-height: 52px;
  padding: 14px 16px !important;
  border-radius: 18px;
  font-size: 15px;
  background: rgba(255,255,255,.055);
}

.cwmh-site-footer {
  background: var(--cwmh-green-990);
  color: #fff;
  padding: 78px 0 36px;
}
.cwmh-site-footer .cwmh-container.cwmh-footer-panel {
  width: min(var(--cwmh-max), calc(100% - 48px));
  margin: 0 auto;
}
.cwmh-footer-panel {
  border-radius: var(--cwmh-radius-xl);
  background: linear-gradient(135deg, var(--cwmh-green-950), var(--cwmh-green-900));
  border: 1px solid rgba(255,255,255,.12);
  padding: clamp(34px, 5vw, 64px);
  box-shadow: var(--cwmh-shadow);
}
.cwmh-footer-main {
  display: grid;
  grid-template-columns: 1.15fr .7fr;
  gap: 58px;
  align-items: start;
}
.cwmh-footer-cta-area p {
  max-width: 720px;
  margin-bottom: 24px;
  color: rgba(255,255,255,.70);
  font-size: 17px;
}
.cwmh-footer-brand {
  display: flex;
  align-items: center;
  margin-bottom: 28px;
}
.cwmh-footer-brand .cwmh-brand {
  min-width: 0;
  padding-left: 0;
  color: #fff;
  margin-bottom: 0;
}
.cwmh-footer-brand .cwmh-brand-logo img {
  max-height: 70px;
}
.cwmh-footer-brand .cwmh-brand-title small {
  color: rgba(255,255,255,.58);
}
.cwmh-footer-panel h2 {
  max-width: 780px;
  margin: 0 0 22px;
  color: #fff;
  font-size: clamp(40px, 6vw, 78px);
  line-height: .91;
  letter-spacing: -.075em;
}
.cwmh-footer-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}
.cwmh-footer-explore {
  padding: 26px 28px;
  border-radius: 28px;
  background: rgba(255,255,255,.07);
  border: 1px solid rgba(255,255,255,.13);
}
.cwmh-footer-explore > strong,
.cwmh-footer-logo-area > strong,
.cwmh-footer-address > strong {
  display: block;
  margin-bottom: 16px;
  color: rgba(255,255,255,.66);
  font-size: 12px;
  letter-spacing: .22em;
  text-transform: uppercase;
  font-weight: 900;
}
.cwmh-footer-menu {
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 0;
}
.cwmh-footer-menu a {
  display: block;
  padding: 10px 0;
  color: rgba(255,255,255,.78);
  font-size: 18px;
  font-weight: 840;
}
.cwmh-footer-menu a:hover {
  color: #fff;
}
.cwmh-footer-extra {
  margin-top: 36px;
  padding-top: 30px;
  border-top: 1px solid rgba(255,255,255,.14);
  display: grid;
  grid-template-columns: 1.2fr .8fr;
  gap: 28px;
  align-items: stretch;
}
.cwmh-footer-logo-row {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 12px;
  margin: 0;
  padding: 0;
  border-top: 0;
}
.cwmh-footer-logo {
  min-height: 86px;
  border-radius: 22px;
  background: rgba(255,255,255,.075);
  border: 1px solid rgba(255,255,255,.14);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 14px;
  text-align: center;
}
.cwmh-footer-logo span {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 9px;
  color: rgba(255,255,255,.62);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.cwmh-footer-logo span:before {
  content: "";
  width: 10px;
  height: 10px;
  border-radius: 999px;
  background: var(--cwmh-accent);
  box-shadow: 0 0 0 8px rgba(117,47,64,.18);
}
.cwmh-footer-logo img {
  max-height: 58px;
  width: auto;
  object-fit: contain;
}
.cwmh-footer-address-card {
  min-height: 120px;
  padding: 22px 24px;
  border-radius: 24px;
  background: rgba(255,255,255,.075);
  border: 1px solid rgba(255,255,255,.14);
}
.cwmh-footer-address-card address {
  margin: 0 0 14px;
  color: rgba(255,255,255,.84);
  font-style: normal;
  font-weight: 760;
  line-height: 1.62;
}
.cwmh-footer-address-card a {
  color: #fff;
  font-weight: 900;
}
.cwmh-footer-bottom {
  width: min(var(--cwmh-max), calc(100% - 48px));
  margin: 26px auto 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding-top: 0;
  border-top: 0;
  color: rgba(255,255,255,.44);
  font-weight: 760;
  font-size: 14px;
}

@media (max-width: 1120px) {
  .cwmh-site-header .cwmh-container { width: min(100% - 36px, 1680px); }
  .cwmh-brand { min-width: 190px; }
}
@media (max-width: 920px) {
  .cwmh-site-header .cwmh-container,
  .cwmh-site-footer .cwmh-container.cwmh-footer-panel,
  .cwmh-footer-bottom { width: min(100% - 28px, var(--cwmh-max)); }
  .cwmh-footer-main,
  .cwmh-footer-extra { grid-template-columns: 1fr; }
  .cwmh-footer-logo-row { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 640px) {
  .cwmh-sidebar-widget li a,
  .cwmh-sidebar-widget .advanced-sidebar-menu a,
  .cwmh-sidebar-widget .child-sidebar-menu a,
  .cwmh-sidebar-widget .parent-sidebar-menu a {
    min-height: 56px;
    padding: 15px 16px !important;
    font-size: 15px;
  }
  .cwmh-footer-logo-row { grid-template-columns: 1fr; }
  .cwmh-footer-bottom { align-items: flex-start; flex-direction: column; }
  .cwmh-footer-panel { border-radius: 30px; }
}

/* v1.0.4 navigation, footer and mobile refinements */
.cwmh-site-header .cwmh-container {
  width: min(var(--cwmh-max), calc(100% - 48px));
}
.cwmh-nav-pill {
  min-height: 76px;
  padding: 11px;
  gap: 14px;
  border-radius: 999px;
  justify-content: space-between;
  align-items: center;
}
.cwmh-brand {
  flex: 0 0 auto;
  min-width: 235px;
  max-width: 265px;
  padding-left: 10px;
  justify-content: flex-start;
  overflow: hidden;
}
.cwmh-brand-logo {
  display: block;
  line-height: 0;
  max-width: 100%;
}
.cwmh-brand-logo img,
.cwmh-custom-logo {
  display: block;
  width: auto !important;
  height: auto !important;
  max-width: 220px !important;
  max-height: 50px !important;
  object-fit: contain;
}
.cwmh-navigation {
  flex: 1 1 auto;
  justify-content: center;
}
.cwmh-nav-menu > .menu-item > a {
  min-height: 46px;
  padding: 0 13px;
  font-size: 13px;
}
.cwmh-nav-actions {
  flex: 0 0 auto;
  min-width: 160px;
  display: flex;
  justify-content: flex-end;
}
.cwmh-nav-actions .cwmh-button {
  min-height: 46px;
  padding: 0 18px;
  font-size: 14px;
}
.cwmh-nav-menu > .menu-item > .sub-menu {
  left: 0;
  right: 0;
  width: 100%;
}
.cwmh-site-footer .cwmh-brand {
  max-width: none;
  min-width: 0;
}
.cwmh-footer-actions a {
  pointer-events: auto;
  position: relative;
  z-index: 2;
}
.cwmh-footer-actions .cwmh-button-light {
  color: var(--cwmh-green-950) !important;
}
.cwmh-footer-actions .cwmh-button-outline {
  color: #fff !important;
}

@media (max-width: 1120px) {
  .cwmh-site-header .cwmh-container { width: min(100% - 36px, var(--cwmh-max)); }
  .cwmh-brand { min-width: 205px; max-width: 230px; }
  .cwmh-brand-logo img,
  .cwmh-custom-logo { max-width: 190px !important; max-height: 46px !important; }
  .cwmh-nav-menu > .menu-item > a { padding: 0 10px; font-size: 12px; }
  .cwmh-nav-actions { min-width: 140px; }
}

@media (max-width: 920px) {
  .cwmh-site-header {
    top: 10px;
    padding-top: 10px;
  }
  .admin-bar .cwmh-site-header { top: 56px; }
  .cwmh-site-header .cwmh-container { width: min(100% - 28px, var(--cwmh-max)); }
  .cwmh-nav-pill {
    min-height: 66px;
    padding: 9px;
    border-radius: 30px;
    flex-wrap: nowrap;
    align-items: center;
    gap: 10px;
  }
  .cwmh-brand {
    min-width: 0;
    max-width: calc(100% - 62px);
    flex: 1 1 auto;
    padding-left: 8px;
  }
  .cwmh-brand-logo img,
  .cwmh-custom-logo {
    max-width: 190px !important;
    max-height: 46px !important;
  }
  .cwmh-mobile-toggle {
    display: inline-flex;
    flex: 0 0 48px;
    width: 48px;
    height: 48px;
    margin-left: auto;
    border: 0;
    border-radius: 999px;
    background: var(--cwmh-green-950);
    align-items: center;
    justify-content: center;
    padding: 0;
  }
  .cwmh-mobile-toggle span:not(.screen-reader-text) {
    width: 22px;
    height: 2px;
    background: #fff;
    display: block;
    margin: 3px 0;
    border-radius: 999px;
  }
  .cwmh-navigation {
    display: none;
    position: absolute;
    left: 0;
    right: 0;
    top: calc(100% + 10px);
    z-index: 100;
    flex-basis: auto;
    order: initial;
    padding: 18px;
    border-radius: 30px;
    background: rgba(255,253,246,.985);
    border: 1px solid rgba(255,255,255,.76);
    box-shadow: 0 24px 70px rgba(0,0,0,.18);
    backdrop-filter: blur(18px);
  }
  .cwmh-nav-pill.is-open .cwmh-navigation {
    display: block;
  }
  .cwmh-nav-menu {
    display: grid;
    gap: 8px;
    width: 100%;
  }
  .cwmh-nav-menu > .menu-item > a {
    width: 100%;
    min-height: 54px;
    justify-content: space-between;
    padding: 0 18px;
    border-radius: 20px;
    font-size: 16px;
  }
  .cwmh-nav-menu > .menu-item > .sub-menu {
    position: static;
    width: 100%;
    display: none;
    grid-template-columns: 1fr;
    gap: 10px;
    opacity: 1;
    visibility: visible;
    transform: none;
    box-shadow: none;
    margin: 8px 0 4px;
    padding: 12px;
    border-radius: 24px;
    background: rgba(247,241,223,.78);
  }
  .cwmh-nav-menu > .menu-item.is-open > .sub-menu {
    display: grid;
  }
  .cwmh-nav-menu > .menu-item > .sub-menu > .menu-item {
    padding: 16px;
    border-radius: 20px;
  }
  .cwmh-nav-menu .sub-menu .sub-menu a,
  .cwmh-nav-menu > .menu-item > .sub-menu > .menu-item:not(.menu-item-has-children) > a {
    font-size: 15px;
    padding: 12px 0;
  }
  .cwmh-nav-actions {
    display: none;
  }
}

@media (max-width: 520px) {
  .cwmh-site-header .cwmh-container { width: min(100% - 20px, var(--cwmh-max)); }
  .cwmh-nav-pill { border-radius: 26px; }
  .cwmh-brand-logo img,
  .cwmh-custom-logo { max-width: 160px !important; max-height: 42px !important; }
  .cwmh-brand-mark { width: 42px; height: 42px; }
  .cwmh-mobile-toggle { width: 46px; height: 46px; flex-basis: 46px; }
  .cwmh-navigation { border-radius: 26px; padding: 14px; }
  .cwmh-nav-menu > .menu-item > a { min-height: 50px; font-size: 15px; }
}


/* v1.0.5 Elementor, nav and sidebar refinements */
.cwmh-site-header .cwmh-container {
  width: min(1180px, calc(100% - 40px)) !important;
  max-width: 1180px !important;
}
.cwmh-nav-pill {
  min-height: 72px !important;
  padding: 10px 12px !important;
  gap: 12px !important;
}
.cwmh-brand {
  min-width: 230px !important;
  max-width: 230px !important;
  padding-left: 6px !important;
  justify-content: flex-start !important;
}
.cwmh-brand-logo img,
.cwmh-custom-logo {
  max-width: 205px !important;
  max-height: 50px !important;
  width: auto !important;
  height: auto !important;
  object-fit: contain !important;
  object-position: left center !important;
}
.cwmh-navigation { justify-content: center !important; }
.cwmh-nav-menu > .menu-item > a {
  min-height: 44px !important;
  padding: 0 12px !important;
  font-size: 13px !important;
}
.cwmh-nav-actions { min-width: 148px !important; }
.cwmh-nav-actions .cwmh-button {
  min-height: 44px !important;
  padding: 0 18px !important;
  font-size: 13px !important;
}
.cwmh-nav-menu > .menu-item > .sub-menu {
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  max-width: none !important;
}

.cwmh-elementor-safe-home {
  padding: 0;
  margin: 0;
}
.cwmh-elementor-safe-home > .elementor,
.cwmh-elementor-safe-home > .elementor-section-wrap {
  width: 100%;
}
.elementor-editor-active .cwmh-elementor-safe-home .cwmh-home-main,
.elementor-editor-preview .cwmh-elementor-safe-home .cwmh-home-main {
  margin-top: 0;
  padding-top: 0;
}

.cwmh-sidebar-widget {
  padding: 20px !important;
  border-radius: 28px !important;
}
.cwmh-sidebar-title {
  margin: 0 0 14px !important;
  font-size: 22px !important;
  line-height: 1.05 !important;
}
.cwmh-sidebar-widget ul,
.cwmh-sidebar-widget .advanced-sidebar-menu,
.cwmh-sidebar-widget .advanced-sidebar-menu ul,
.cwmh-sidebar-widget .child-sidebar-menu,
.cwmh-sidebar-widget .parent-sidebar-menu {
  display: grid !important;
  gap: 8px !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}
.cwmh-sidebar-widget li,
.cwmh-sidebar-widget .advanced-sidebar-menu li,
.cwmh-sidebar-widget .child-sidebar-menu li,
.cwmh-sidebar-widget .parent-sidebar-menu li {
  margin: 0 !important;
  padding: 0 !important;
}
.cwmh-sidebar-widget li + li,
.cwmh-sidebar-widget .advanced-sidebar-menu li + li,
.cwmh-sidebar-widget .child-sidebar-menu li + li,
.cwmh-sidebar-widget .parent-sidebar-menu li + li {
  margin-top: 8px !important;
}
.cwmh-sidebar-widget li a,
.cwmh-sidebar-widget .advanced-sidebar-menu a,
.cwmh-sidebar-widget .child-sidebar-menu a,
.cwmh-sidebar-widget .parent-sidebar-menu a {
  min-height: 0 !important;
  padding: 13px 14px !important;
  border-radius: 16px !important;
  font-size: 14px !important;
  line-height: 1.2 !important;
  font-weight: 820 !important;
}
.cwmh-sidebar-widget ul ul,
.cwmh-sidebar-widget .advanced-sidebar-menu ul ul {
  margin-top: 8px !important;
  padding-left: 0 !important;
}
.cwmh-sidebar-widget ul ul li a,
.cwmh-sidebar-widget .advanced-sidebar-menu ul ul a {
  padding: 11px 13px !important;
  border-radius: 14px !important;
  font-size: 13px !important;
}

@media (max-width: 1120px) {
  .cwmh-site-header .cwmh-container { width: min(100% - 32px, 1180px) !important; }
  .cwmh-brand { min-width: 190px !important; max-width: 190px !important; }
  .cwmh-brand-logo img,
  .cwmh-custom-logo { max-width: 176px !important; max-height: 46px !important; }
  .cwmh-nav-menu > .menu-item > a { padding: 0 9px !important; font-size: 12px !important; }
}
@media (max-width: 920px) {
  .cwmh-site-header .cwmh-container { width: min(100% - 28px, 1180px) !important; }
  .cwmh-nav-pill {
    min-height: 66px !important;
    border-radius: 30px !important;
    padding: 9px !important;
  }
  .cwmh-brand {
    min-width: 0 !important;
    max-width: calc(100% - 62px) !important;
    flex: 1 1 auto !important;
  }
  .cwmh-brand-logo img,
  .cwmh-custom-logo { max-width: 172px !important; max-height: 44px !important; }
  .cwmh-navigation {
    left: 0 !important;
    right: 0 !important;
    top: calc(100% + 10px) !important;
    padding: 14px !important;
    border-radius: 26px !important;
  }
  .cwmh-nav-menu { gap: 6px !important; }
  .cwmh-nav-menu > .menu-item > a {
    min-height: 50px !important;
    padding: 0 16px !important;
    border-radius: 18px !important;
    font-size: 15px !important;
  }
  .cwmh-nav-menu > .menu-item > .sub-menu {
    padding: 10px !important;
    margin: 6px 0 4px !important;
    border-radius: 22px !important;
  }
  .cwmh-nav-menu > .menu-item > .sub-menu > .menu-item { padding: 14px !important; }
}
@media (max-width: 520px) {
  .cwmh-site-header .cwmh-container { width: min(100% - 20px, 1180px) !important; }
  .cwmh-brand-logo img,
  .cwmh-custom-logo { max-width: 150px !important; max-height: 40px !important; }
  .cwmh-mobile-toggle { width: 46px !important; height: 46px !important; flex-basis: 46px !important; }
}

/* v1.0.6 exact HTML matching, Elementor homepage, mobile nav and news sidebar fixes */
.cwmh-site-header .cwmh-container {
  width: min(var(--cwmh-max), calc(100% - 48px)) !important;
  max-width: var(--cwmh-max) !important;
}
.cwmh-nav-pill {
  width: 100% !important;
  min-height: 76px !important;
  padding: 11px !important;
  border-radius: 999px !important;
  gap: 14px !important;
}
.cwmh-brand {
  flex: 0 0 auto !important;
  min-width: 220px !important;
  max-width: 235px !important;
  padding-left: 8px !important;
  justify-content: flex-start !important;
}
.cwmh-brand-logo img,
.cwmh-custom-logo {
  max-width: 205px !important;
  max-height: 46px !important;
  width: auto !important;
  height: auto !important;
  object-fit: contain !important;
  object-position: left center !important;
}
.cwmh-nav-menu { gap: 2px !important; }
.cwmh-nav-menu > .menu-item > a {
  min-height: 46px !important;
  padding: 0 13px !important;
  font-size: 13px !important;
}
.cwmh-nav-actions { min-width: 160px !important; }
.cwmh-nav-actions .cwmh-button {
  min-height: 46px !important;
  padding: 0 18px !important;
  font-size: 14px !important;
}
.cwmh-nav-menu > .menu-item > .sub-menu {
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  max-width: none !important;
}

.cwmh-elementor-built-section,
.cwmh-elementor-built-section > .elementor-container,
.cwmh-elementor-built-section > .elementor-container > .elementor-column,
.cwmh-elementor-built-section .elementor-widget-wrap,
.cwmh-elementor-built-section .elementor-widget,
.cwmh-elementor-built-section .elementor-widget-container {
  margin: 0 !important;
  padding: 0 !important;
}
.cwmh-elementor-built-section .elementor-container {
  max-width: none !important;
}
.cwmh-elementor-home-hero { background: var(--cwmh-green-950); }
.cwmh-home-main-elementor { display: block; }

.cwmh-home-main,
.cwmh-home-main-elementor {
  background:
    radial-gradient(circle at 92% 0%, rgba(117, 47, 64, .15), transparent 23rem),
    linear-gradient(180deg, var(--cwmh-green-950) 0%, var(--cwmh-green-900) 820px, var(--cwmh-cream) 820px, var(--cwmh-cream) 100%) !important;
  position: relative !important;
  margin-top: -112px !important;
  padding-top: 112px !important;
  overflow: hidden;
}
.cwmh-home-main:before,
.cwmh-home-main-elementor:before {
  content: "";
  position: absolute;
  inset: 0 0 auto 0;
  height: 650px;
  background-image:
    linear-gradient(rgba(255,255,255,.045) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.045) 1px, transparent 1px);
  background-size: 46px 46px;
  mask-image: linear-gradient(180deg, black, transparent 90%);
  pointer-events: none;
}
.cwmh-home-hero {
  padding: 94px 0 82px !important;
  color: #fff !important;
  position: relative;
}
.cwmh-home-hero-grid {
  display: grid !important;
  grid-template-columns: minmax(0, .95fr) minmax(430px, .72fr) !important;
  gap: 54px !important;
  align-items: center !important;
}
.cwmh-hero-copy-panel {
  position: relative !important;
  min-height: 380px !important;
  min-width: 0;
}
.cwmh-hero-copy-slide {
  position: absolute !important;
  inset: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  opacity: 0 !important;
  visibility: hidden !important;
  transform: translateY(18px) !important;
  transition: opacity .5s ease, visibility .5s ease, transform .6s ease !important;
}
.cwmh-hero-copy-slide.is-active,
.cwmh-hero-copy-slide.active {
  opacity: 1 !important;
  visibility: visible !important;
  transform: translateY(0) !important;
}
.cwmh-hero-copy-slide h1,
.cwmh-home-hero h1 {
  max-width: 860px !important;
  margin: 0 0 20px !important;
  color: #fff !important;
  font-size: clamp(50px, 7.2vw, 94px) !important;
  line-height: .9 !important;
  letter-spacing: -.078em !important;
  text-wrap: balance;
}
.cwmh-hero-copy-slide p,
.cwmh-home-hero p {
  max-width: 710px !important;
  margin: 0 0 30px !important;
  color: rgba(255,255,255,.84) !important;
  font-size: 19px !important;
  line-height: 1.64 !important;
}
.cwmh-hero-actions { display: flex !important; flex-wrap: wrap !important; gap: 12px !important; align-items: center !important; }
.cwmh-slider-controls {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 18px !important;
  max-width: 710px !important;
  margin-top: 18px !important;
  pointer-events: auto !important;
}
.cwmh-slider-dots { display: flex !important; gap: 9px !important; pointer-events: auto !important; }
.cwmh-slider-dot {
  width: 11px !important;
  height: 11px !important;
  padding: 0 !important;
  border-radius: 999px !important;
  border: 1px solid rgba(255,255,255,.45) !important;
  background: rgba(255,255,255,.18) !important;
  cursor: pointer !important;
  transition: width .2s ease, background .2s ease, border-color .2s ease !important;
}
.cwmh-slider-dot.is-active,
.cwmh-slider-dot.active { width: 34px !important; background: var(--cwmh-accent) !important; border-color: var(--cwmh-accent) !important; }
.cwmh-slider-arrows { display: flex !important; gap: 10px !important; pointer-events: auto !important; }
.cwmh-slider-arrow {
  width: 42px !important;
  height: 42px !important;
  border-radius: 999px !important;
  border: 1px solid rgba(255,255,255,.22) !important;
  background: rgba(255,255,255,.10) !important;
  color: #fff !important;
  font: inherit !important;
  font-size: 22px !important;
  cursor: pointer !important;
}
.cwmh-hero-media { position: relative !important; min-height: 520px !important; }
.cwmh-hero-photo {
  position: absolute !important;
  overflow: hidden !important;
  border-radius: 34px !important;
  border: 1px solid rgba(255,255,255,.14) !important;
  background-image: linear-gradient(180deg, rgba(0,0,0,.05), rgba(0,0,0,.55)), url('../img/project-bg-clean.png') !important;
  background-size: cover !important;
  background-position: center !important;
  box-shadow: var(--cwmh-shadow) !important;
  filter: saturate(.15) contrast(1.08) !important;
}
.cwmh-hero-photo-large { inset: 34px 24px 32px 62px !important; }
.cwmh-hero-photo-small-top { width: 220px !important; height: 170px !important; left: 0 !important; top: 0 !important; background-position: 28% center !important; }
.cwmh-hero-photo-small-bottom { width: 230px !important; height: 190px !important; right: 0 !important; bottom: 0 !important; background-position: 58% center !important; }

.cwmh-inner-sidebar .cwmh-sidebar-widget {
  padding: 22px !important;
  border-radius: 30px !important;
}
.cwmh-sidebar-widget ul,
.cwmh-sidebar-widget .advanced-sidebar-menu,
.cwmh-sidebar-widget .advanced-sidebar-menu ul,
.cwmh-sidebar-widget .child-sidebar-menu,
.cwmh-sidebar-widget .parent-sidebar-menu {
  display: flex !important;
  flex-direction: column !important;
  gap: 18px !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}
.cwmh-sidebar-widget li,
.cwmh-sidebar-widget .advanced-sidebar-menu li,
.cwmh-sidebar-widget .child-sidebar-menu li,
.cwmh-sidebar-widget .parent-sidebar-menu li,
.cwmh-sidebar-widget li + li,
.cwmh-sidebar-widget .advanced-sidebar-menu li + li,
.cwmh-sidebar-widget .child-sidebar-menu li + li,
.cwmh-sidebar-widget .parent-sidebar-menu li + li {
  margin: 0 !important;
  padding: 0 !important;
}
.cwmh-sidebar-widget li a,
.cwmh-sidebar-widget .advanced-sidebar-menu a,
.cwmh-sidebar-widget .child-sidebar-menu a,
.cwmh-sidebar-widget .parent-sidebar-menu a {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  min-height: 64px !important;
  padding: 18px 22px !important;
  border-radius: 18px !important;
  font-size: 17px !important;
  line-height: 1.15 !important;
  font-weight: 900 !important;
}
.cwmh-sidebar-widget ul ul,
.cwmh-sidebar-widget .advanced-sidebar-menu ul ul {
  margin-top: 18px !important;
  gap: 12px !important;
  padding-left: 0 !important;
}
.cwmh-sidebar-widget ul ul li a,
.cwmh-sidebar-widget .advanced-sidebar-menu ul ul a {
  min-height: 50px !important;
  padding: 14px 18px !important;
  border-radius: 15px !important;
  font-size: 14px !important;
}
.cwmh-news-sidebar-list a {
  gap: 12px !important;
  justify-content: flex-start !important;
}
.cwmh-news-sidebar-thumb {
  flex: 0 0 58px;
  width: 58px;
  height: 58px;
  overflow: hidden;
  border-radius: 14px;
  background: rgba(255,255,255,.12);
}
.cwmh-news-sidebar-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.cwmh-news-sidebar-list time {
  display: block;
  margin-bottom: 4px;
  color: rgba(255,255,255,.62);
  font-size: 11px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .08em;
}
.cwmh-news-sidebar-list strong {
  display: block;
  color: #fff;
  font-size: 14px;
  line-height: 1.25;
}

@media (max-width: 1120px) {
  .cwmh-site-header .cwmh-container { width: min(100% - 36px, var(--cwmh-max)) !important; }
  .cwmh-brand { min-width: 190px !important; max-width: 200px !important; }
  .cwmh-brand-logo img,
  .cwmh-custom-logo { max-width: 178px !important; max-height: 42px !important; }
  .cwmh-nav-menu > .menu-item > a { padding: 0 9px !important; font-size: 12px !important; }
  .cwmh-nav-actions { min-width: 140px !important; }
}
@media (max-width: 920px) {
  .cwmh-site-header .cwmh-container { width: min(100% - 28px, var(--cwmh-max)) !important; }
  .cwmh-nav-pill {
    min-height: 66px !important;
    padding: 9px !important;
    border-radius: 30px !important;
    align-items: center !important;
  }
  .cwmh-brand {
    min-width: 0 !important;
    max-width: calc(100% - 62px) !important;
    flex: 1 1 auto !important;
    padding-left: 8px !important;
  }
  .cwmh-brand-logo img,
  .cwmh-custom-logo { max-width: 178px !important; max-height: 42px !important; }
  .cwmh-mobile-toggle {
    display: inline-flex !important;
    position: relative !important;
    flex: 0 0 50px !important;
    width: 50px !important;
    height: 50px !important;
    margin-left: auto !important;
    border: 0 !important;
    border-radius: 999px !important;
    background: var(--cwmh-green-950) !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 !important;
    overflow: hidden !important;
  }
  .cwmh-mobile-toggle span:not(.screen-reader-text) { display: none !important; }
  .cwmh-mobile-toggle:before {
    content: "" !important;
    width: 24px !important;
    height: 18px !important;
    display: block !important;
    background:
      linear-gradient(#fff, #fff) 0 0 / 24px 2px no-repeat,
      linear-gradient(#fff, #fff) 0 8px / 24px 2px no-repeat,
      linear-gradient(#fff, #fff) 0 16px / 24px 2px no-repeat !important;
    border-radius: 0 !important;
  }
  .cwmh-navigation {
    left: 0 !important;
    right: 0 !important;
    top: calc(100% + 12px) !important;
    max-height: calc(100vh - 110px) !important;
    overflow-y: auto !important;
    padding: 22px !important;
    border-radius: 30px !important;
  }
  .cwmh-nav-menu {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 12px !important;
  }
  .cwmh-nav-menu > .menu-item > a {
    width: 100% !important;
    min-height: 58px !important;
    justify-content: space-between !important;
    padding: 0 22px !important;
    border-radius: 22px !important;
    font-size: 17px !important;
  }
  .cwmh-nav-menu > .menu-item > .sub-menu {
    position: static !important;
    display: none !important;
    grid-template-columns: 1fr !important;
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    box-shadow: none !important;
    margin: 10px 0 2px !important;
    padding: 12px !important;
    border-radius: 24px !important;
  }
  .cwmh-nav-menu > .menu-item.is-open > .sub-menu { display: grid !important; }
  .cwmh-nav-menu > .menu-item > .sub-menu > .menu-item { padding: 16px !important; border-radius: 20px !important; }
  .cwmh-nav-actions { display: none !important; }
  .cwmh-home-main,
  .cwmh-home-main-elementor { margin-top: -86px !important; padding-top: 86px !important; }
  .cwmh-home-hero { padding-top: 58px !important; }
  .cwmh-home-hero-grid { grid-template-columns: 1fr !important; }
  .cwmh-hero-copy-panel { min-height: 420px !important; }
  .cwmh-hero-media { min-height: 430px !important; }
}
@media (max-width: 720px) {
  .cwmh-container { width: min(100% - 26px, var(--cwmh-max)) !important; }
  .cwmh-home-hero h1,
  .cwmh-hero-copy-slide h1 { font-size: 46px !important; }
  .cwmh-home-hero p,
  .cwmh-hero-copy-slide p { font-size: 17px !important; }
  .cwmh-slider-arrows { display: none !important; }
  .cwmh-hero-media { display: none !important; }
  .cwmh-hero-copy-panel { min-height: 470px !important; }
  .cwmh-nav-pill { border-radius: 28px !important; }
  .cwmh-brand-logo img,
  .cwmh-custom-logo { max-width: 160px !important; max-height: 40px !important; }
  .cwmh-sidebar-widget li a,
  .cwmh-sidebar-widget .advanced-sidebar-menu a,
  .cwmh-sidebar-widget .child-sidebar-menu a,
  .cwmh-sidebar-widget .parent-sidebar-menu a {
    min-height: 58px !important;
    padding: 16px 18px !important;
    font-size: 15px !important;
  }
}

/* v1.0.7 Elementor widget build and sidebar refinements */
.cwmh-home-elementor-wrap .elementor-section,
.cwmh-home-elementor-wrap .elementor-container,
.cwmh-home-elementor-wrap .elementor-column,
.cwmh-home-elementor-wrap .elementor-widget-wrap,
.cwmh-home-elementor-wrap .elementor-widget,
.cwmh-home-elementor-wrap .elementor-widget-container,
.cwmh-elementor-built-section,
.cwmh-elementor-built-section > .elementor-container,
.cwmh-elementor-built-section > .elementor-container > .elementor-column,
.cwmh-elementor-built-section .elementor-widget-wrap,
.cwmh-elementor-built-section .elementor-widget,
.cwmh-elementor-built-section .elementor-widget-container {
  margin: 0 !important;
  padding: 0 !important;
}
.cwmh-home-elementor-wrap .elementor-section,
.cwmh-elementor-built-section .elementor-container { max-width: none !important; }
.cwmh-home-elementor-wrap { display: block; }
.cwmh-home-elementor-wrap .cwmh-home-hero { padding-top: 94px !important; }
.cwmh-home-hero { overflow: hidden; }
.cwmh-home-hero .cwmh-hero-photo {
  background-image: linear-gradient(180deg, rgba(0,0,0,.05), rgba(0,0,0,.55)), var(--cwmh-hero-image, url('../img/project-bg-clean.png')) !important;
}
.cwmh-widget-text > :first-child { margin-top: 0; }
.cwmh-widget-text > :last-child { margin-bottom: 0; }

.cwmh-inner-sidebar .cwmh-sidebar-widget,
.cwmh-sidebar-widget {
  padding: 20px !important;
  border-radius: 28px !important;
}
.cwmh-sidebar-title {
  margin: 0 0 14px !important;
  font-size: 22px !important;
  line-height: 1.05 !important;
}
.cwmh-sidebar-widget ul,
.cwmh-sidebar-widget .advanced-sidebar-menu,
.cwmh-sidebar-widget .advanced-sidebar-menu ul,
.cwmh-sidebar-widget .child-sidebar-menu,
.cwmh-sidebar-widget .parent-sidebar-menu {
  display: grid !important;
  gap: 10px !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}
.cwmh-sidebar-widget li,
.cwmh-sidebar-widget .advanced-sidebar-menu li,
.cwmh-sidebar-widget .child-sidebar-menu li,
.cwmh-sidebar-widget .parent-sidebar-menu li {
  margin: 0 !important;
  padding: 0 !important;
}
.cwmh-sidebar-widget li + li,
.cwmh-sidebar-widget .advanced-sidebar-menu li + li,
.cwmh-sidebar-widget .child-sidebar-menu li + li,
.cwmh-sidebar-widget .parent-sidebar-menu li + li {
  margin-top: 2px !important;
}
.cwmh-sidebar-widget li a,
.cwmh-sidebar-widget .advanced-sidebar-menu a,
.cwmh-sidebar-widget .child-sidebar-menu a,
.cwmh-sidebar-widget .parent-sidebar-menu a {
  min-height: 0 !important;
  padding: 13px 14px !important;
  border-radius: 16px !important;
  font-size: 14px !important;
  line-height: 1.2 !important;
  font-weight: 820 !important;
}
.cwmh-sidebar-widget ul ul,
.cwmh-sidebar-widget .advanced-sidebar-menu ul ul {
  margin-top: 10px !important;
  gap: 8px !important;
}
.cwmh-sidebar-widget ul ul li a,
.cwmh-sidebar-widget .advanced-sidebar-menu ul ul a {
  min-height: 0 !important;
  padding: 11px 13px !important;
  border-radius: 14px !important;
  font-size: 13px !important;
}

@media (max-width: 920px) {
  .cwmh-nav-pill { min-height: 66px !important; padding: 9px !important; }
  .cwmh-mobile-toggle span:not(.screen-reader-text) {
    display: block !important;
    width: 23px !important;
    height: 2px !important;
    background: #fff !important;
    border-radius: 99px !important;
    margin: 3px 0 !important;
  }
  .cwmh-mobile-toggle:before { display: none !important; }
  .cwmh-navigation {
    padding: 18px !important;
    border-radius: 26px !important;
  }
  .cwmh-nav-menu { gap: 10px !important; }
  .cwmh-nav-menu > .menu-item > a {
    min-height: 52px !important;
    padding: 0 18px !important;
    border-radius: 18px !important;
    font-size: 15px !important;
  }
  .cwmh-nav-menu > .menu-item > .sub-menu { padding: 12px !important; }
  .cwmh-home-elementor-wrap .cwmh-home-hero { padding-top: 58px !important; }
}
@media (max-width: 720px) {
  .cwmh-sidebar-widget li a,
  .cwmh-sidebar-widget .advanced-sidebar-menu a,
  .cwmh-sidebar-widget .child-sidebar-menu a,
  .cwmh-sidebar-widget .parent-sidebar-menu a {
    padding: 13px 14px !important;
    font-size: 14px !important;
  }
}


/* v1.0.8 sidebar spacing and Elementor widget homepage assurance */
.cwmh-inner-sidebar .cwmh-sidebar-widget,
.cwmh-sidebar-widget {
  padding: 20px !important;
  border-radius: 28px !important;
}
.cwmh-sidebar-widget ul,
.cwmh-sidebar-widget .advanced-sidebar-menu,
.cwmh-sidebar-widget .advanced-sidebar-menu ul,
.cwmh-sidebar-widget .child-sidebar-menu,
.cwmh-sidebar-widget .parent-sidebar-menu {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}
.cwmh-sidebar-widget li,
.cwmh-sidebar-widget .advanced-sidebar-menu li,
.cwmh-sidebar-widget .child-sidebar-menu li,
.cwmh-sidebar-widget .parent-sidebar-menu li {
  display: block !important;
  margin: 0 0 14px 0 !important;
  padding: 0 !important;
  list-style: none !important;
}
.cwmh-sidebar-widget li:last-child,
.cwmh-sidebar-widget .advanced-sidebar-menu li:last-child,
.cwmh-sidebar-widget .child-sidebar-menu li:last-child,
.cwmh-sidebar-widget .parent-sidebar-menu li:last-child {
  margin-bottom: 0 !important;
}
.cwmh-sidebar-widget li + li,
.cwmh-sidebar-widget .advanced-sidebar-menu li + li,
.cwmh-sidebar-widget .child-sidebar-menu li + li,
.cwmh-sidebar-widget .parent-sidebar-menu li + li {
  margin-top: 0 !important;
}
.cwmh-sidebar-widget li a,
.cwmh-sidebar-widget .advanced-sidebar-menu a,
.cwmh-sidebar-widget .child-sidebar-menu a,
.cwmh-sidebar-widget .parent-sidebar-menu a {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  min-height: 0 !important;
  padding: 13px 14px !important;
  border-radius: 16px !important;
  font-size: 14px !important;
  line-height: 1.18 !important;
  font-weight: 820 !important;
}
.cwmh-sidebar-widget ul ul,
.cwmh-sidebar-widget .advanced-sidebar-menu ul ul {
  margin: 12px 0 0 0 !important;
  padding-left: 0 !important;
}
.cwmh-sidebar-widget ul ul li,
.cwmh-sidebar-widget .advanced-sidebar-menu ul ul li {
  margin-bottom: 10px !important;
}
.cwmh-sidebar-widget ul ul li a,
.cwmh-sidebar-widget .advanced-sidebar-menu ul ul a {
  padding: 10px 12px !important;
  border-radius: 14px !important;
  font-size: 13px !important;
}
.cwmh-home-elementor-wrap .elementor-widget-cwmh_home_hero,
.cwmh-home-elementor-wrap .elementor-widget-cwmh_about_video,
.cwmh-home-elementor-wrap .elementor-widget-cwmh_get_involved,
.cwmh-home-elementor-wrap .elementor-widget-cwmh_project_tiles,
.cwmh-home-elementor-wrap .elementor-widget-cwmh_latest_posts,
.cwmh-home-elementor-wrap .elementor-widget-cwmh_mailing_list {
  width: 100% !important;
}
@media (max-width: 720px) {
  .cwmh-sidebar-widget li,
  .cwmh-sidebar-widget .advanced-sidebar-menu li,
  .cwmh-sidebar-widget .child-sidebar-menu li,
  .cwmh-sidebar-widget .parent-sidebar-menu li {
    margin-bottom: 13px !important;
  }
  .cwmh-sidebar-widget li a,
  .cwmh-sidebar-widget .advanced-sidebar-menu a,
  .cwmh-sidebar-widget .child-sidebar-menu a,
  .cwmh-sidebar-widget .parent-sidebar-menu a {
    min-height: 0 !important;
    padding: 13px 14px !important;
    font-size: 14px !important;
  }
}
.cwmh-home-hero h1 span,
.cwmh-hero-copy-slide h1 span {
  color: var(--cwmh-accent) !important;
}


/* v1.0.9 Elementor registration, contact widget and sidebar spacing fixes */
.cwmh-inner-sidebar .cwmh-sidebar-widget,
.cwmh-sidebar-widget {
  padding: 20px !important;
  border-radius: 28px !important;
}
.cwmh-sidebar-widget ul,
.cwmh-sidebar-widget .advanced-sidebar-menu,
.cwmh-sidebar-widget .advanced-sidebar-menu ul,
.cwmh-sidebar-widget .child-sidebar-menu,
.cwmh-sidebar-widget .parent-sidebar-menu {
  display: flex !important;
  flex-direction: column !important;
  gap: 8px !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}
.cwmh-sidebar-widget li,
.cwmh-sidebar-widget .advanced-sidebar-menu li,
.cwmh-sidebar-widget .child-sidebar-menu li,
.cwmh-sidebar-widget .parent-sidebar-menu li,
.cwmh-sidebar-widget li + li,
.cwmh-sidebar-widget .advanced-sidebar-menu li + li,
.cwmh-sidebar-widget .child-sidebar-menu li + li,
.cwmh-sidebar-widget .parent-sidebar-menu li + li,
.cwmh-sidebar-widget li:last-child,
.cwmh-sidebar-widget .advanced-sidebar-menu li:last-child,
.cwmh-sidebar-widget .child-sidebar-menu li:last-child,
.cwmh-sidebar-widget .parent-sidebar-menu li:last-child {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}
.cwmh-sidebar-widget li a,
.cwmh-sidebar-widget .advanced-sidebar-menu a,
.cwmh-sidebar-widget .child-sidebar-menu a,
.cwmh-sidebar-widget .parent-sidebar-menu a {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  width: 100% !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 13px 14px !important;
  border-radius: 16px !important;
  font-size: 14px !important;
  line-height: 1.18 !important;
  font-weight: 820 !important;
}
.cwmh-sidebar-widget ul ul,
.cwmh-sidebar-widget .advanced-sidebar-menu ul ul {
  margin: 8px 0 0 0 !important;
  padding-left: 0 !important;
  gap: 8px !important;
}
.cwmh-sidebar-widget ul ul li a,
.cwmh-sidebar-widget .advanced-sidebar-menu ul ul a {
  padding: 11px 12px !important;
  border-radius: 14px !important;
  font-size: 13px !important;
}
.cwmh-contact-section {
  padding: clamp(46px, 7vw, 92px) 0;
}
.cwmh-contact-grid {
  display: grid;
  grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr);
  gap: 24px;
  align-items: stretch;
}
.cwmh-contact-section .cwmh-contact-panel {
  margin: 0 !important;
  height: 100%;
  background: var(--cwmh-green-950);
  color: #fff;
}
.cwmh-contact-section .cwmh-contact-panel .cwmh-section-label { color: var(--cwmh-mint); }
.cwmh-contact-section .cwmh-contact-panel h2 { color: #fff; }
.cwmh-contact-section .cwmh-contact-panel p,
.cwmh-contact-section .cwmh-contact-address { color: rgba(255,255,255,.78); }
.cwmh-contact-section .cwmh-gravity-wrap {
  padding: clamp(24px, 4vw, 42px);
  border-radius: var(--cwmh-radius-lg);
  background: #fff;
  border: 1px solid var(--cwmh-line);
  box-shadow: var(--cwmh-shadow);
}
@media (max-width: 900px) {
  .cwmh-contact-grid { grid-template-columns: 1fr; }
}
@media (max-width: 720px) {
  .cwmh-sidebar-widget ul,
  .cwmh-sidebar-widget .advanced-sidebar-menu,
  .cwmh-sidebar-widget .advanced-sidebar-menu ul,
  .cwmh-sidebar-widget .child-sidebar-menu,
  .cwmh-sidebar-widget .parent-sidebar-menu { gap: 8px !important; }
  .cwmh-sidebar-widget li a,
  .cwmh-sidebar-widget .advanced-sidebar-menu a,
  .cwmh-sidebar-widget .child-sidebar-menu a,
  .cwmh-sidebar-widget .parent-sidebar-menu a {
    padding: 13px 14px !important;
    font-size: 14px !important;
  }
}


/* v1.1.0 definitive sidebar rhythm and Elementor page safety */
.cwmh-inner-sidebar .cwmh-sidebar-widget,
.cwmh-sidebar-widget {
  --cwmh-sidebar-gap: 18px;
  padding: 20px !important;
  border-radius: 28px !important;
}
.cwmh-sidebar-widget .cwmh-sidebar-title {
  margin: 0 0 16px !important;
  font-size: 20px !important;
  line-height: 1.08 !important;
}
.cwmh-sidebar-widget :is(ul, .advanced-sidebar-menu, .child-sidebar-menu, .parent-sidebar-menu) {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: var(--cwmh-sidebar-gap) !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}
.cwmh-sidebar-widget :is(ul, .advanced-sidebar-menu, .child-sidebar-menu, .parent-sidebar-menu) + :is(ul, .advanced-sidebar-menu, .child-sidebar-menu, .parent-sidebar-menu),
.cwmh-sidebar-widget :is(li, .page_item, .menu-item) > :is(ul, .children, .sub-menu) {
  margin-top: var(--cwmh-sidebar-gap) !important;
}
.cwmh-sidebar-widget :is(li, .page_item, .menu-item),
.cwmh-sidebar-widget :is(li, .page_item, .menu-item) + :is(li, .page_item, .menu-item),
.cwmh-sidebar-widget :is(li, .page_item, .menu-item):last-child {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}
.cwmh-sidebar-widget :is(li, .page_item, .menu-item) > a,
.cwmh-sidebar-widget :is(.advanced-sidebar-menu, .child-sidebar-menu, .parent-sidebar-menu) a,
.cwmh-sidebar-widget a.page_item,
.cwmh-sidebar-widget a.menu-link {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  width: 100% !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 13px 16px !important;
  border-radius: 16px !important;
  font-size: 14px !important;
  line-height: 1.18 !important;
  font-weight: 820 !important;
  letter-spacing: -.015em !important;
}
.cwmh-sidebar-widget :is(li, .page_item, .menu-item) > a::after,
.cwmh-sidebar-widget :is(.advanced-sidebar-menu, .child-sidebar-menu, .parent-sidebar-menu) a::after {
  margin-left: auto !important;
}
.cwmh-sidebar-widget :is(ul ul, .advanced-sidebar-menu ul, .children, .sub-menu) {
  --cwmh-sidebar-gap: 10px;
}
.cwmh-sidebar-widget :is(ul ul, .advanced-sidebar-menu ul, .children, .sub-menu) a {
  padding: 10px 12px !important;
  border-radius: 14px !important;
  font-size: 13px !important;
}
@media (max-width: 720px) {
  .cwmh-sidebar-widget { --cwmh-sidebar-gap: 14px; padding: 18px !important; }
  .cwmh-sidebar-widget :is(li, .page_item, .menu-item) > a,
  .cwmh-sidebar-widget :is(.advanced-sidebar-menu, .child-sidebar-menu, .parent-sidebar-menu) a {
    padding: 12px 14px !important;
    font-size: 14px !important;
  }
}

/* v1.1.1 homepage hero and contact page final match */
.cwmh-home-main.cwmh-home-elementor-wrap,
.cwmh-home-main-elementor.cwmh-home-elementor-wrap {
  background:
    radial-gradient(circle at 92% 0%, rgba(117, 47, 64, .15), transparent 23rem),
    linear-gradient(180deg, var(--cwmh-green-950) 0%, var(--cwmh-green-900) 820px, var(--cwmh-cream) 820px, var(--cwmh-cream) 100%) !important;
}
.cwmh-home-elementor-wrap .cwmh-home-hero,
.cwmh-home-hero {
  padding: 94px 0 82px !important;
  min-height: auto !important;
  color: #fff !important;
}
.cwmh-home-elementor-wrap .cwmh-home-hero-grid,
.cwmh-home-hero-grid {
  display: grid !important;
  grid-template-columns: minmax(0, .95fr) minmax(430px, .72fr) !important;
  gap: 54px !important;
  align-items: center !important;
}
.cwmh-home-elementor-wrap .cwmh-hero-copy-panel,
.cwmh-hero-copy-panel {
  position: relative !important;
  min-height: 460px !important;
  padding-bottom: 76px !important;
  min-width: 0 !important;
}
.cwmh-home-elementor-wrap .cwmh-hero-copy-slide,
.cwmh-hero-copy-slide {
  position: absolute !important;
  top: 0 !important;
  right: 0 !important;
  bottom: 76px !important;
  left: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  opacity: 0 !important;
  visibility: hidden !important;
  transform: translateY(18px) !important;
  pointer-events: none !important;
  transition: opacity .5s ease, visibility .5s ease, transform .6s ease !important;
}
.cwmh-home-elementor-wrap .cwmh-hero-copy-slide.is-active,
.cwmh-home-elementor-wrap .cwmh-hero-copy-slide.active,
.cwmh-hero-copy-slide.is-active,
.cwmh-hero-copy-slide.active {
  opacity: 1 !important;
  visibility: visible !important;
  transform: translateY(0) !important;
  pointer-events: auto !important;
}
.cwmh-home-elementor-wrap .cwmh-hero-copy-slide h1,
.cwmh-home-elementor-wrap .cwmh-home-hero h1,
.cwmh-hero-copy-slide h1,
.cwmh-home-hero h1 {
  max-width: 860px !important;
  margin: 0 0 20px !important;
  color: #fff !important;
  font-size: clamp(50px, 7.2vw, 94px) !important;
  line-height: .9 !important;
  letter-spacing: -.078em !important;
  text-wrap: balance !important;
}
.cwmh-home-elementor-wrap .cwmh-hero-copy-slide h1 span,
.cwmh-hero-copy-slide h1 span { color: var(--cwmh-accent) !important; }
.cwmh-home-elementor-wrap .cwmh-hero-copy-slide p,
.cwmh-home-elementor-wrap .cwmh-home-hero p,
.cwmh-hero-copy-slide p,
.cwmh-home-hero p {
  max-width: 710px !important;
  margin: 0 0 30px !important;
  color: rgba(255,255,255,.84) !important;
  font-size: 19px !important;
  line-height: 1.64 !important;
}
.cwmh-home-elementor-wrap .cwmh-hero-actions,
.cwmh-hero-actions {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 12px !important;
  align-items: center !important;
  position: relative !important;
  z-index: 4 !important;
}
.cwmh-home-elementor-wrap .cwmh-hero-actions .cwmh-button-light,
.cwmh-hero-actions .cwmh-button-light { color: var(--cwmh-green-950) !important; background: var(--cwmh-paper) !important; }
.cwmh-home-elementor-wrap .cwmh-slider-controls,
.cwmh-slider-controls {
  position: absolute !important;
  left: 0 !important;
  right: auto !important;
  bottom: 0 !important;
  z-index: 6 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  width: min(710px, 100%) !important;
  max-width: 710px !important;
  margin: 0 !important;
  pointer-events: auto !important;
}
.cwmh-home-elementor-wrap .cwmh-slider-dots,
.cwmh-slider-dots { display: flex !important; gap: 9px !important; align-items: center !important; }
.cwmh-home-elementor-wrap .cwmh-slider-arrows,
.cwmh-slider-arrows { display: flex !important; gap: 10px !important; align-items: center !important; }
.cwmh-home-elementor-wrap .cwmh-slider-arrow,
.cwmh-slider-arrow {
  width: 42px !important;
  height: 42px !important;
  display: inline-grid !important;
  place-items: center !important;
  padding: 0 !important;
  border-radius: 999px !important;
  border: 1px solid rgba(255,255,255,.22) !important;
  background: rgba(255,255,255,.10) !important;
  color: #fff !important;
  line-height: 1 !important;
}
.cwmh-home-elementor-wrap .cwmh-hero-media,
.cwmh-hero-media { position: relative !important; min-height: 520px !important; }
.cwmh-home-elementor-wrap .cwmh-hero-photo,
.cwmh-hero-photo {
  position: absolute !important;
  overflow: hidden !important;
  border-radius: 34px !important;
  border: 1px solid rgba(255,255,255,.14) !important;
  background-image: linear-gradient(180deg, rgba(0,0,0,.05), rgba(0,0,0,.55)), var(--cwmh-hero-image, url('../img/project-bg-clean.png')) !important;
  background-size: cover !important;
  background-position: center !important;
  box-shadow: var(--cwmh-shadow) !important;
  filter: saturate(.15) contrast(1.08) !important;
}
.cwmh-home-elementor-wrap .cwmh-hero-photo-large,
.cwmh-hero-photo-large { inset: 34px 24px 32px 62px !important; }
.cwmh-home-elementor-wrap .cwmh-hero-photo-small-top,
.cwmh-hero-photo-small-top { width: 220px !important; height: 170px !important; left: 0 !important; top: 0 !important; background-position: 28% center !important; }
.cwmh-home-elementor-wrap .cwmh-hero-photo-small-bottom,
.cwmh-hero-photo-small-bottom { width: 230px !important; height: 190px !important; right: 0 !important; bottom: 0 !important; background-position: 58% center !important; }

.cwmh-contact-section {
  padding: clamp(64px, 7vw, 92px) 0 !important;
  background: var(--cwmh-cream) !important;
}
.cwmh-contact-grid {
  display: grid !important;
  grid-template-columns: minmax(300px, .78fr) minmax(0, 1.22fr) !important;
  gap: 34px !important;
  align-items: stretch !important;
}
.cwmh-contact-section .cwmh-contact-panel {
  margin: 0 !important;
  min-height: 520px !important;
  padding: clamp(30px, 4.6vw, 58px) !important;
  border-radius: 42px !important;
  background:
    radial-gradient(circle at 16% 12%, rgba(117,47,64,.16), transparent 20rem),
    linear-gradient(135deg, var(--cwmh-green-950), var(--cwmh-green-980)) !important;
  color: #fff !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  box-shadow: var(--cwmh-shadow-soft) !important;
}
.cwmh-contact-section .cwmh-contact-panel .cwmh-section-label {
  align-self: flex-start !important;
  background: var(--cwmh-accent-soft) !important;
  color: var(--cwmh-accent) !important;
}
.cwmh-contact-section .cwmh-contact-panel h2 {
  max-width: 620px !important;
  margin: 0 0 22px !important;
  color: #fff !important;
  font-size: clamp(42px, 4.8vw, 72px) !important;
  line-height: .94 !important;
  letter-spacing: -.07em !important;
}
.cwmh-contact-section .cwmh-contact-panel p {
  max-width: 470px !important;
  color: rgba(255,255,255,.74) !important;
  font-size: 18px !important;
  line-height: 1.64 !important;
}
.cwmh-contact-section .cwmh-contact-address {
  margin-top: 24px !important;
  padding-top: 22px !important;
  border-top: 1px solid rgba(255,255,255,.16) !important;
  color: rgba(255,255,255,.72) !important;
  line-height: 1.62 !important;
}
.cwmh-contact-section .cwmh-gravity-wrap {
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  min-height: 520px !important;
  padding: clamp(30px, 5vw, 58px) !important;
  border-radius: 42px !important;
  background: rgba(255,253,246,.98) !important;
  border: 1px solid rgba(9,35,31,.10) !important;
  box-shadow: var(--cwmh-shadow-soft) !important;
}
.cwmh-contact-section .gform_wrapper.gravity-theme .gfield_label,
.cwmh-contact-section .gform_wrapper .gfield_label {
  color: var(--cwmh-green-950) !important;
  font-weight: 900 !important;
  font-size: 19px !important;
  letter-spacing: -.02em !important;
}
.cwmh-contact-section .gform_wrapper.gravity-theme input[type="text"],
.cwmh-contact-section .gform_wrapper.gravity-theme input[type="email"],
.cwmh-contact-section .gform_wrapper.gravity-theme input[type="tel"],
.cwmh-contact-section .gform_wrapper.gravity-theme textarea,
.cwmh-contact-section .gform_wrapper.gravity-theme select,
.cwmh-contact-section .gform_wrapper input[type="text"],
.cwmh-contact-section .gform_wrapper input[type="email"],
.cwmh-contact-section .gform_wrapper input[type="tel"],
.cwmh-contact-section .gform_wrapper textarea,
.cwmh-contact-section .gform_wrapper select {
  min-height: 58px !important;
  border-radius: 18px !important;
  border: 1px solid rgba(9,35,31,.14) !important;
  background: #fff !important;
  box-shadow: none !important;
}
.cwmh-contact-section .gform_wrapper.gravity-theme textarea,
.cwmh-contact-section .gform_wrapper textarea { min-height: 220px !important; }
.cwmh-contact-section .gform_wrapper.gravity-theme .gform_footer input[type="submit"],
.cwmh-contact-section .gform_wrapper .gform_button {
  min-height: 58px !important;
  padding: 0 34px !important;
  border-radius: 999px !important;
  background: var(--cwmh-accent) !important;
  color: #fff !important;
  font-weight: 900 !important;
  border: 0 !important;
}

@media (max-width: 1080px) {
  .cwmh-home-elementor-wrap .cwmh-home-hero-grid,
  .cwmh-home-hero-grid { grid-template-columns: 1fr !important; }
  .cwmh-home-elementor-wrap .cwmh-hero-copy-panel,
  .cwmh-hero-copy-panel { min-height: 420px !important; }
  .cwmh-home-elementor-wrap .cwmh-hero-media,
  .cwmh-hero-media { min-height: 430px !important; }
  .cwmh-contact-grid { grid-template-columns: 1fr !important; }
  .cwmh-contact-section .cwmh-contact-panel,
  .cwmh-contact-section .cwmh-gravity-wrap { min-height: auto !important; }
}
@media (max-width: 720px) {
  .cwmh-home-elementor-wrap .cwmh-home-hero,
  .cwmh-home-hero { padding-top: 58px !important; }
  .cwmh-home-elementor-wrap .cwmh-hero-copy-panel,
  .cwmh-hero-copy-panel { min-height: 500px !important; padding-bottom: 54px !important; }
  .cwmh-home-elementor-wrap .cwmh-hero-copy-slide,
  .cwmh-hero-copy-slide { bottom: 54px !important; }
  .cwmh-home-elementor-wrap .cwmh-hero-copy-slide h1,
  .cwmh-home-elementor-wrap .cwmh-home-hero h1,
  .cwmh-hero-copy-slide h1,
  .cwmh-home-hero h1 { font-size: clamp(42px, 13vw, 58px) !important; }
  .cwmh-home-elementor-wrap .cwmh-hero-media,
  .cwmh-hero-media { display: none !important; }
  .cwmh-home-elementor-wrap .cwmh-slider-arrows,
  .cwmh-slider-arrows { display: none !important; }
  .cwmh-contact-section .cwmh-contact-panel,
  .cwmh-contact-section .cwmh-gravity-wrap { border-radius: 30px !important; padding: 28px !important; }
  .cwmh-contact-section .cwmh-contact-panel h2 { font-size: clamp(42px, 13vw, 58px) !important; }
}

/* v1.1.2 final visual parity fixes */
.cwmh-page-builder-wrap {
  background: var(--cwmh-cream);
  margin-top: -112px;
  padding-top: 132px;
}
.cwmh-entry-content-empty { min-height: 0 !important; }
.cwmh-entry-content-elementor {
  min-width: 0;
}
.cwmh-entry-content-elementor .elementor-section,
.cwmh-entry-content-elementor .e-con {
  max-width: 100%;
}

/* Home hero: two editable images, cleaner controls and better long-slide spacing */
.cwmh-home-elementor-wrap .cwmh-home-hero,
.cwmh-home-hero {
  padding: 94px 0 82px !important;
}
.cwmh-home-elementor-wrap .cwmh-hero-copy-panel,
.cwmh-hero-copy-panel {
  min-height: 540px !important;
  padding-bottom: 98px !important;
}
.cwmh-home-elementor-wrap .cwmh-hero-copy-slide,
.cwmh-hero-copy-slide {
  bottom: 112px !important;
  justify-content: center !important;
}
.cwmh-home-elementor-wrap .cwmh-hero-copy-slide h1,
.cwmh-home-elementor-wrap .cwmh-home-hero h1,
.cwmh-hero-copy-slide h1,
.cwmh-home-hero h1 {
  font-size: clamp(46px, 6.2vw, 86px) !important;
  line-height: .92 !important;
  max-width: 860px !important;
}
.cwmh-home-elementor-wrap .cwmh-slider-controls,
.cwmh-slider-controls {
  bottom: 12px !important;
  z-index: 8 !important;
}
.cwmh-hero-photo-small-top { display: none !important; }
.cwmh-home-elementor-wrap .cwmh-hero-photo-large,
.cwmh-hero-photo-large {
  inset: 34px 24px 32px 36px !important;
  background-image: linear-gradient(180deg, rgba(0,0,0,.05), rgba(0,0,0,.55)), var(--cwmh-hero-large-image, url('../img/project-bg-clean.png')) !important;
}
.cwmh-home-elementor-wrap .cwmh-hero-photo-small-bottom,
.cwmh-hero-photo-small-bottom {
  width: 250px !important;
  height: 194px !important;
  right: 0 !important;
  bottom: 0 !important;
  background-image: linear-gradient(180deg, rgba(0,0,0,.05), rgba(0,0,0,.55)), var(--cwmh-hero-small-image, url('../img/project-bg-clean.png')) !important;
}
.cwmh-video-card:not([style]) {
  background:
    radial-gradient(circle at 22% 20%, rgba(117,47,64,.22), transparent 18rem),
    linear-gradient(135deg, var(--cwmh-green-900), var(--cwmh-green-950)) !important;
}

/* Project tiles: visible text and editable logo overlay */
.cwmh-project-tile {
  color: #fff !important;
}
.cwmh-project-tile:before {
  background: linear-gradient(180deg, rgba(0,0,0,.22), rgba(0,0,0,.76)) !important;
}
.cwmh-project-tile strong {
  color: #fff !important;
  text-shadow: 0 3px 18px rgba(0,0,0,.45) !important;
}
.cwmh-project-tile-logo {
  position: absolute !important;
  top: 24px !important;
  left: 24px !important;
  right: 24px !important;
  z-index: 3 !important;
  display: flex !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
  opacity: .98 !important;
}
.cwmh-project-tile-logo img {
  display: block !important;
  max-width: 150px !important;
  max-height: 58px !important;
  width: auto !important;
  height: auto !important;
  object-fit: contain !important;
}

/* Contact widget: restore the clean HTML-style two-card layout */
.cwmh-contact-section {
  padding: clamp(64px, 7vw, 94px) 0 !important;
  background: var(--cwmh-cream) !important;
}
.cwmh-contact-grid {
  display: grid !important;
  grid-template-columns: minmax(360px, .84fr) minmax(0, 1.16fr) !important;
  gap: 28px !important;
  align-items: stretch !important;
}
.cwmh-contact-section .cwmh-contact-panel {
  min-height: 0 !important;
  height: auto !important;
  padding: clamp(34px, 4vw, 54px) !important;
  border-radius: 42px !important;
  background:
    radial-gradient(circle at 16% 12%, rgba(117,47,64,.16), transparent 20rem),
    linear-gradient(135deg, var(--cwmh-green-950), var(--cwmh-green-980)) !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  overflow: hidden !important;
}
.cwmh-contact-section .cwmh-contact-panel h2 {
  max-width: 560px !important;
  margin: 0 0 20px !important;
  font-size: clamp(42px, 4.2vw, 64px) !important;
  line-height: .96 !important;
  letter-spacing: -.065em !important;
  word-break: normal !important;
  overflow-wrap: normal !important;
}
.cwmh-contact-section .cwmh-contact-panel p {
  max-width: 520px !important;
  font-size: 17px !important;
}
.cwmh-contact-section .cwmh-gravity-wrap {
  min-height: 0 !important;
  padding: clamp(34px, 4vw, 54px) !important;
  border-radius: 42px !important;
  display: block !important;
  background: rgba(255,253,246,.98) !important;
}
.cwmh-contact-section .gform_wrapper.gravity-theme,
.cwmh-contact-section .gform_wrapper {
  margin: 0 !important;
}
.cwmh-contact-section .gform_wrapper.gravity-theme .gform_fields {
  grid-row-gap: 22px !important;
}
.cwmh-contact-section .gform_wrapper.gravity-theme textarea,
.cwmh-contact-section .gform_wrapper textarea {
  min-height: 190px !important;
}
.cwmh-contact-section .gform_wrapper.gravity-theme .gform_footer,
.cwmh-contact-section .gform_wrapper .gform_footer {
  padding-bottom: 0 !important;
  margin-bottom: 0 !important;
}

@media (max-width: 1080px) {
  .cwmh-home-elementor-wrap .cwmh-hero-copy-panel,
  .cwmh-hero-copy-panel { min-height: 500px !important; }
  .cwmh-home-elementor-wrap .cwmh-hero-media,
  .cwmh-hero-media { min-height: 420px !important; }
  .cwmh-contact-grid { grid-template-columns: 1fr !important; }
}
@media (max-width: 720px) {
  .cwmh-home-elementor-wrap .cwmh-hero-copy-panel,
  .cwmh-hero-copy-panel { min-height: 560px !important; padding-bottom: 96px !important; }
  .cwmh-home-elementor-wrap .cwmh-hero-copy-slide,
  .cwmh-hero-copy-slide { bottom: 112px !important; }
  .cwmh-contact-section .cwmh-contact-panel h2 { font-size: clamp(38px, 12vw, 52px) !important; }
}


/* v1.1.3 final home hero image pairs, contact, video thumbnail and tile visibility fixes */
.cwmh-hero-media { position: relative !important; min-height: 520px !important; }
.cwmh-hero-media-slide {
  position: absolute !important;
  inset: 0 !important;
  opacity: 0 !important;
  visibility: hidden !important;
  transform: translateY(16px) scale(.985) !important;
  transition: opacity .5s ease, visibility .5s ease, transform .6s ease !important;
}
.cwmh-hero-media-slide.is-active {
  opacity: 1 !important;
  visibility: visible !important;
  transform: translateY(0) scale(1) !important;
}
.cwmh-hero-media-slide .cwmh-hero-photo { display: block !important; }
.cwmh-hero-media-slide .cwmh-hero-photo-large {
  inset: 34px 24px 32px 36px !important;
  width: auto !important;
  height: auto !important;
}
.cwmh-hero-media-slide .cwmh-hero-photo-small-bottom {
  width: 250px !important;
  height: 194px !important;
  right: 0 !important;
  bottom: 0 !important;
  left: auto !important;
  top: auto !important;
}
.cwmh-hero-photo-small-top { display: none !important; }
.cwmh-home-elementor-wrap .cwmh-slider-controls,
.cwmh-slider-controls { bottom: 0 !important; }
.cwmh-home-elementor-wrap .cwmh-hero-copy-panel,
.cwmh-hero-copy-panel { min-height: 540px !important; padding-bottom: 110px !important; }
.cwmh-home-elementor-wrap .cwmh-hero-copy-slide,
.cwmh-hero-copy-slide { bottom: 124px !important; }

.cwmh-projects-section .cwmh-project-tile,
.cwmh-projects-section .cwmh-project-tile:visited,
.cwmh-projects-section .cwmh-project-tile:hover,
.cwmh-projects-section .cwmh-project-tile *,
.elementor-widget-cwmh_project_tiles .cwmh-project-tile,
.elementor-widget-cwmh_project_tiles .cwmh-project-tile * {
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}
.cwmh-projects-section .cwmh-project-tile strong,
.elementor-widget-cwmh_project_tiles .cwmh-project-tile strong {
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  text-shadow: 0 4px 18px rgba(0,0,0,.72) !important;
  background: transparent !important;
}
.cwmh-projects-section .cwmh-project-tile-logo img,
.elementor-widget-cwmh_project_tiles .cwmh-project-tile-logo img {
  filter: brightness(0) invert(1) drop-shadow(0 3px 12px rgba(0,0,0,.45));
}

.cwmh-video-card[style] {
  background-size: cover !important;
  background-position: center !important;
}

.cwmh-contact-section {
  padding: clamp(54px, 6vw, 82px) 0 !important;
  background: var(--cwmh-cream) !important;
}
.cwmh-contact-grid {
  display: grid !important;
  grid-template-columns: minmax(320px, .9fr) minmax(0, 1.1fr) !important;
  gap: 28px !important;
  align-items: start !important;
}
.cwmh-contact-section .cwmh-contact-panel,
.cwmh-contact-section .cwmh-gravity-wrap {
  min-height: 0 !important;
  height: auto !important;
  border-radius: 38px !important;
}
.cwmh-contact-section .cwmh-contact-panel {
  padding: clamp(34px, 4.5vw, 58px) !important;
  justify-content: flex-start !important;
}
.cwmh-contact-section .cwmh-contact-panel h2 {
  max-width: 520px !important;
  font-size: clamp(46px, 5vw, 78px) !important;
  line-height: .92 !important;
  letter-spacing: -.075em !important;
}
.cwmh-contact-section .cwmh-contact-panel p {
  max-width: 500px !important;
}
.cwmh-contact-section .cwmh-gravity-wrap {
  padding: clamp(30px, 4vw, 52px) !important;
  display: block !important;
  justify-content: flex-start !important;
}
.cwmh-contact-section .gform_wrapper.gravity-theme .gform_fields,
.cwmh-contact-section .gform_wrapper .gform_fields {
  grid-row-gap: 22px !important;
}
.cwmh-contact-section .gform_wrapper.gravity-theme input[type="text"],
.cwmh-contact-section .gform_wrapper.gravity-theme input[type="email"],
.cwmh-contact-section .gform_wrapper.gravity-theme input[type="tel"],
.cwmh-contact-section .gform_wrapper.gravity-theme select,
.cwmh-contact-section .gform_wrapper input[type="text"],
.cwmh-contact-section .gform_wrapper input[type="email"],
.cwmh-contact-section .gform_wrapper input[type="tel"],
.cwmh-contact-section .gform_wrapper select {
  min-height: 60px !important;
}
.cwmh-contact-section .gform_wrapper.gravity-theme textarea,
.cwmh-contact-section .gform_wrapper textarea {
  min-height: 180px !important;
}
@media (max-width: 1080px) {
  .cwmh-hero-media { min-height: 420px !important; }
  .cwmh-contact-grid { grid-template-columns: 1fr !important; }
}
@media (max-width: 720px) {
  .cwmh-home-elementor-wrap .cwmh-hero-copy-panel,
  .cwmh-hero-copy-panel { min-height: 610px !important; padding-bottom: 110px !important; }
  .cwmh-home-elementor-wrap .cwmh-hero-copy-slide,
  .cwmh-hero-copy-slide { bottom: 126px !important; }
  .cwmh-hero-media { min-height: 330px !important; }
  .cwmh-hero-media-slide .cwmh-hero-photo-large { inset: 18px 34px 44px 0 !important; }
  .cwmh-hero-media-slide .cwmh-hero-photo-small-bottom { width: 190px !important; height: 145px !important; }
}

/* v1.1.4 project tile hover + ACF flexible content compatibility */
.cwmh-projects-section .cwmh-project-tile,
.elementor-widget-cwmh_project_tiles .cwmh-project-tile {
  transform: none !important;
  transition: box-shadow .18s ease, border-color .18s ease !important;
}
.cwmh-projects-section .cwmh-project-tile:hover,
.elementor-widget-cwmh_project_tiles .cwmh-project-tile:hover {
  transform: none !important;
  box-shadow: 0 22px 52px rgba(4,33,28,.20) !important;
}
.cwmh-projects-section .cwmh-project-tile:before,
.cwmh-projects-section .cwmh-project-tile:hover:before,
.elementor-widget-cwmh_project_tiles .cwmh-project-tile:before,
.elementor-widget-cwmh_project_tiles .cwmh-project-tile:hover:before {
  background: linear-gradient(180deg, rgba(0,0,0,.08), rgba(0,0,0,.74)) !important;
}
.cwmh-projects-section .cwmh-project-tile strong,
.elementor-widget-cwmh_project_tiles .cwmh-project-tile strong {
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  background: transparent !important;
  box-shadow: none !important;
  text-decoration: none !important;
  text-shadow: 0 4px 20px rgba(0,0,0,.75) !important;
}
.cwmh-projects-section .cwmh-project-tile::selection,
.cwmh-projects-section .cwmh-project-tile *::selection,
.elementor-widget-cwmh_project_tiles .cwmh-project-tile::selection,
.elementor-widget-cwmh_project_tiles .cwmh-project-tile *::selection {
  background: rgba(117,47,64,.65) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}

.cwmh-flexi-content {
  display: grid;
  gap: 24px;
}
.cwmh-flexi-section {
  border-radius: 30px;
  border: 1px solid rgba(9,35,31,.08);
  background: rgba(255,253,246,.82);
  padding: clamp(24px, 3vw, 38px);
  box-shadow: var(--cwmh-shadow-soft);
}
.cwmh-flexi-section h2,
.cwmh-flexi-section h3 {
  color: var(--cwmh-green-950);
  letter-spacing: -.045em;
}
.cwmh-flexi-media-row {
  display: grid;
  grid-template-columns: minmax(220px, .82fr) minmax(0, 1.18fr);
  gap: 26px;
  align-items: stretch;
}
.cwmh-flexi-image {
  min-height: 260px;
  border-radius: 24px;
  background-size: cover;
  background-position: center;
}
.cwmh-flexi-copy {
  align-self: center;
}
.cwmh-flexi-card-grid,
.cwmh-flexi-gallery-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}
.cwmh-flexi-card {
  border-radius: 24px;
  background: #fffdf6;
  border: 1px solid rgba(9,35,31,.08);
  padding: 24px;
}
.cwmh-flexi-gallery-grid figure {
  margin: 0;
  min-height: 220px;
  border-radius: 24px;
  background-size: cover;
  background-position: center;
}
@media (max-width: 900px) {
  .cwmh-flexi-media-row,
  .cwmh-flexi-card-grid,
  .cwmh-flexi-gallery-grid { grid-template-columns: 1fr; }
}

/* v1.1.5 inner content parity: remove returned white panels and restore HTML-style lists */
body.cwmh-theme .cwmh-content-wrap {
  background: var(--cwmh-cream) !important;
}
body.cwmh-theme .cwmh-content-card,
body.cwmh-theme .cwmh-entry-content.cwmh-content-card,
body.cwmh-theme article.cwmh-content-card {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  border-radius: 0 !important;
}
body.cwmh-theme .cwmh-inner-layout > .cwmh-content-card,
body.cwmh-theme .cwmh-inner-layout > .cwmh-entry-content {
  padding: 0 !important;
}
body.cwmh-theme .cwmh-flexi-content {
  display: grid !important;
  gap: 30px !important;
}
body.cwmh-theme .cwmh-flexi-section {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  padding: 0 !important;
}
body.cwmh-theme .cwmh-entry-content ul:not(.elementor-icon-list-items):not(.gform_fields):not(.gfield_checkbox):not(.gfield_radio):not(.ginput_container_checkbox ul):not(.ginput_container_radio ul),
body.cwmh-theme .cwmh-flexi-content ul:not(.elementor-icon-list-items):not(.gform_fields):not(.gfield_checkbox):not(.gfield_radio):not(.ginput_container_checkbox ul):not(.ginput_container_radio ul) {
  display: block !important;
  list-style: disc outside !important;
  margin: 10px 0 22px !important;
  padding-left: 20px !important;
}
body.cwmh-theme .cwmh-entry-content ul:not(.elementor-icon-list-items):not(.gform_fields):not(.gfield_checkbox):not(.gfield_radio):not(.ginput_container_checkbox ul):not(.ginput_container_radio ul) li,
body.cwmh-theme .cwmh-flexi-content ul:not(.elementor-icon-list-items):not(.gform_fields):not(.gfield_checkbox):not(.gfield_radio):not(.ginput_container_checkbox ul):not(.ginput_container_radio ul) li {
  position: static !important;
  padding-left: 0 !important;
  margin: 0 0 9px !important;
  display: list-item !important;
  list-style: inherit !important;
}
body.cwmh-theme .cwmh-entry-content ul:not(.elementor-icon-list-items):not(.gform_fields):not(.gfield_checkbox):not(.gfield_radio):not(.ginput_container_checkbox ul):not(.ginput_container_radio ul) li::before,
body.cwmh-theme .cwmh-flexi-content ul:not(.elementor-icon-list-items):not(.gform_fields):not(.gfield_checkbox):not(.gfield_radio):not(.ginput_container_checkbox ul):not(.ginput_container_radio ul) li::before {
  content: none !important;
  display: none !important;
}
body.cwmh-theme .cwmh-entry-content ol,
body.cwmh-theme .cwmh-flexi-content ol {
  margin: 10px 0 22px !important;
  padding-left: 24px !important;
}
body.cwmh-theme .cwmh-entry-content ol li,
body.cwmh-theme .cwmh-flexi-content ol li {
  margin-bottom: 9px !important;
}

/* v1.1.6 flexible content cards and final list reset */
body.cwmh-theme .cwmh-flexi-content {
  display: grid !important;
  gap: 30px !important;
}
body.cwmh-theme .cwmh-flexi-panel,
body.cwmh-theme .cwmh-elementor-content-panel {
  overflow: hidden !important;
  border-radius: 42px !important;
  background: rgba(255,253,246,.96) !important;
  border: 1px solid rgba(9,35,31,.09) !important;
  box-shadow: var(--cwmh-shadow-soft) !important;
  padding: clamp(30px, 4vw, 56px) !important;
  color: var(--cwmh-green-950) !important;
}
body.cwmh-theme .cwmh-flexi-panel-inner {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: clamp(24px, 3vw, 42px) !important;
  align-items: start !important;
}
body.cwmh-theme .cwmh-flexi-panel-with-media .cwmh-flexi-panel-inner {
  grid-template-columns: minmax(220px, .42fr) minmax(0, 1fr) !important;
}
body.cwmh-theme .cwmh-flexi-panel-with-media.cwmh-media-right .cwmh-flexi-panel-inner {
  grid-template-columns: minmax(0, 1fr) minmax(220px, .42fr) !important;
}
body.cwmh-theme .cwmh-flexi-panel-head h2,
body.cwmh-theme .cwmh-flexi-panel h2,
body.cwmh-theme .cwmh-elementor-content-panel h2 {
  margin: 0 0 18px !important;
  color: var(--cwmh-green-950) !important;
  font-size: clamp(38px, 5.2vw, 72px) !important;
  line-height: .92 !important;
  letter-spacing: -.075em !important;
}
body.cwmh-theme .cwmh-flexi-panel h3,
body.cwmh-theme .cwmh-elementor-content-panel h3 {
  margin: 30px 0 10px !important;
  color: var(--cwmh-green-950) !important;
  font-size: clamp(24px, 3vw, 34px) !important;
  line-height: 1.05 !important;
  letter-spacing: -.055em !important;
}
body.cwmh-theme .cwmh-flexi-panel p,
body.cwmh-theme .cwmh-flexi-panel li,
body.cwmh-theme .cwmh-elementor-content-panel p,
body.cwmh-theme .cwmh-elementor-content-panel li {
  color: var(--cwmh-muted) !important;
  font-size: clamp(16px, 1.45vw, 20px) !important;
  line-height: 1.68 !important;
}
body.cwmh-theme .cwmh-flexi-lead p {
  font-size: clamp(18px, 1.8vw, 23px) !important;
  line-height: 1.55 !important;
}
body.cwmh-theme .cwmh-flexi-image {
  min-height: 280px !important;
  border-radius: 26px !important;
  background-size: contain !important;
  background-repeat: no-repeat !important;
  background-position: center !important;
  background-color: #fff !important;
  border: 1px solid rgba(9,35,31,.08) !important;
}
body.cwmh-theme .cwmh-clean-rule,
body.cwmh-theme .cwmh-flexi-panel .cwmh-clean-rule {
  width: 100% !important;
  height: 1px !important;
  margin: 30px 0 !important;
  background: rgba(9,35,31,.12) !important;
}
body.cwmh-theme .cwmh-flexi-actions {
  display: flex !important;
  justify-content: flex-end !important;
  align-items: center !important;
  gap: 12px !important;
  margin: clamp(26px, 3vw, 40px) calc(clamp(30px, 4vw, 56px) * -1) calc(clamp(30px, 4vw, 56px) * -1) !important;
  padding: 20px clamp(30px, 4vw, 56px) !important;
  background: rgba(9,35,31,.055) !important;
  border-top: 1px solid rgba(9,35,31,.08) !important;
}
body.cwmh-theme .cwmh-flexi-actions .cwmh-button {
  min-width: 190px !important;
}
body.cwmh-theme .cwmh-flexi-card-grid,
body.cwmh-theme .cwmh-flexi-gallery-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 18px !important;
}
body.cwmh-theme .cwmh-flexi-card {
  border-radius: 24px !important;
  background: rgba(255,255,255,.78) !important;
  border: 1px solid rgba(9,35,31,.08) !important;
  padding: 24px !important;
}

/* remove the old green/title-bar feel from imported flexible content */
body.cwmh-theme .cwmh-flexi-panel [style*="background-color"],
body.cwmh-theme .cwmh-flexi-panel [class*="title-bar"],
body.cwmh-theme .cwmh-flexi-panel [class*="heading-bar"] {
  background-color: transparent !important;
}

/* definitive bullet reset: use the plain HTML bullet style, not the old red blob marker */
body.cwmh-theme .cwmh-entry-content ul:not(.elementor-editor-element-settings):not(.elementor-icon-list-items):not(.gform_fields):not(.gfield_checkbox):not(.gfield_radio),
body.cwmh-theme .cwmh-flexi-content ul:not(.elementor-editor-element-settings):not(.elementor-icon-list-items):not(.gform_fields):not(.gfield_checkbox):not(.gfield_radio),
body.cwmh-theme .cwmh-elementor-content-panel ul:not(.elementor-editor-element-settings):not(.elementor-icon-list-items):not(.gform_fields):not(.gfield_checkbox):not(.gfield_radio) {
  display: block !important;
  list-style: disc outside !important;
  margin: 10px 0 22px !important;
  padding-left: 1.25em !important;
}
body.cwmh-theme .cwmh-entry-content ul:not(.elementor-editor-element-settings):not(.elementor-icon-list-items):not(.gform_fields):not(.gfield_checkbox):not(.gfield_radio) > li,
body.cwmh-theme .cwmh-flexi-content ul:not(.elementor-editor-element-settings):not(.elementor-icon-list-items):not(.gform_fields):not(.gfield_checkbox):not(.gfield_radio) > li,
body.cwmh-theme .cwmh-elementor-content-panel ul:not(.elementor-editor-element-settings):not(.elementor-icon-list-items):not(.gform_fields):not(.gfield_checkbox):not(.gfield_radio) > li {
  display: list-item !important;
  position: static !important;
  margin: 0 0 9px !important;
  padding-left: 0 !important;
  list-style: disc outside !important;
}
body.cwmh-theme .cwmh-entry-content ul:not(.elementor-editor-element-settings):not(.elementor-icon-list-items):not(.gform_fields):not(.gfield_checkbox):not(.gfield_radio) > li::before,
body.cwmh-theme .cwmh-entry-content ul:not(.elementor-editor-element-settings):not(.elementor-icon-list-items):not(.gform_fields):not(.gfield_checkbox):not(.gfield_radio) > li:before,
body.cwmh-theme .cwmh-flexi-content ul:not(.elementor-editor-element-settings):not(.elementor-icon-list-items):not(.gform_fields):not(.gfield_checkbox):not(.gfield_radio) > li::before,
body.cwmh-theme .cwmh-flexi-content ul:not(.elementor-editor-element-settings):not(.elementor-icon-list-items):not(.gform_fields):not(.gfield_checkbox):not(.gfield_radio) > li:before,
body.cwmh-theme .cwmh-elementor-content-panel ul:not(.elementor-editor-element-settings):not(.elementor-icon-list-items):not(.gform_fields):not(.gfield_checkbox):not(.gfield_radio) > li::before,
body.cwmh-theme .cwmh-elementor-content-panel ul:not(.elementor-editor-element-settings):not(.elementor-icon-list-items):not(.gform_fields):not(.gfield_checkbox):not(.gfield_radio) > li:before {
  content: none !important;
  display: none !important;
  width: 0 !important;
  height: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

@media (max-width: 900px) {
  body.cwmh-theme .cwmh-flexi-panel-with-media .cwmh-flexi-panel-inner,
  body.cwmh-theme .cwmh-flexi-panel-with-media.cwmh-media-right .cwmh-flexi-panel-inner,
  body.cwmh-theme .cwmh-flexi-card-grid,
  body.cwmh-theme .cwmh-flexi-gallery-grid {
    grid-template-columns: 1fr !important;
  }
  body.cwmh-theme .cwmh-flexi-actions {
    justify-content: flex-start !important;
  }
}

/* v1.1.7 remove empty sidebar/flexi placeholders */
body.cwmh-theme .cwmh-entry-content-empty,
body.cwmh-theme .cwmh-flexi-panel:empty,
body.cwmh-theme .cwmh-flexi-card:empty,
body.cwmh-theme .cwmh-sidebar-widget:empty {
  display: none !important;
}
body.cwmh-theme .cwmh-inner-sidebar .widget:empty,
body.cwmh-theme .cwmh-inner-sidebar section:empty,
body.cwmh-theme .cwmh-inner-sidebar .advanced-sidebar-menu:empty,
body.cwmh-theme .cwmh-inner-sidebar .advanced-sidebar-menu-wrap:empty {
  display: none !important;
}
body.cwmh-theme .cwmh-inner-sidebar .cwmh-sidebar-widget:not(:has(a)):not(:has(li)):not(:has(img)):not(:has(svg)) {
  display: none !important;
}
body.cwmh-theme .cwmh-flexi-content:not(:has(.cwmh-flexi-panel)) {
  display: none !important;
}
body.cwmh-theme .cwmh-inner-layout:has(> .cwmh-entry-content-empty) {
  grid-template-columns: 1fr 320px;
}

/* v1.1.8 legacy ACF Projects support */
body.cwmh-theme .cwmh-projects-panel {
  display: block !important;
}
body.cwmh-theme .cwmh-projects-panel-head {
  max-width: 980px !important;
  margin: 0 0 clamp(22px, 3vw, 36px) !important;
}
body.cwmh-theme .cwmh-projects-panel-head h2 {
  margin: 0 0 14px !important;
}
body.cwmh-theme .cwmh-projects-card-list {
  display: grid !important;
  gap: 18px !important;
}
body.cwmh-theme .cwmh-project-card {
  display: grid !important;
  grid-template-columns: minmax(190px, 280px) minmax(0, 1fr) !important;
  gap: 26px !important;
  align-items: stretch !important;
  border: 1px solid rgba(9,35,31,.09) !important;
  border-radius: 28px !important;
  background: rgba(255,255,255,.68) !important;
  padding: 18px !important;
  overflow: hidden !important;
}
body.cwmh-theme .cwmh-project-card-image {
  min-height: 190px !important;
  border-radius: 22px !important;
  background-color: #fff !important;
  background-size: contain !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
  border: 1px solid rgba(9,35,31,.08) !important;
}
body.cwmh-theme .cwmh-project-card-copy {
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  min-width: 0 !important;
  padding: 8px 4px !important;
}
body.cwmh-theme .cwmh-project-card-meta {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
  margin-bottom: 12px !important;
}
body.cwmh-theme .cwmh-project-card-meta span {
  display: inline-flex !important;
  align-items: center !important;
  min-height: 30px !important;
  border-radius: 999px !important;
  padding: 6px 12px !important;
  background: rgba(117,47,64,.1) !important;
  color: var(--cwmh-red) !important;
  font-size: 13px !important;
  font-weight: 900 !important;
  letter-spacing: .02em !important;
}
body.cwmh-theme .cwmh-project-card h3 {
  margin: 0 0 10px !important;
  font-size: clamp(24px, 3vw, 38px) !important;
  line-height: 1 !important;
  letter-spacing: -.055em !important;
  color: var(--cwmh-green-950) !important;
}
body.cwmh-theme .cwmh-project-card p {
  margin: 0 0 18px !important;
  color: var(--cwmh-muted) !important;
  font-size: clamp(16px, 1.35vw, 19px) !important;
  line-height: 1.55 !important;
}
body.cwmh-theme .cwmh-project-card-link {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  width: fit-content !important;
  margin-top: auto !important;
  color: var(--cwmh-red) !important;
  font-weight: 900 !important;
  text-decoration: none !important;
}
body.cwmh-theme .cwmh-project-card-link span {
  font-size: 1.3em !important;
  line-height: 1 !important;
}
body.cwmh-theme .elementor-widget-cwmh_acf_projects .cwmh-projects-panel {
  margin: 0 !important;
}

@media (max-width: 760px) {
  body.cwmh-theme .cwmh-project-card {
    grid-template-columns: 1fr !important;
  }
  body.cwmh-theme .cwmh-project-card-image {
    min-height: 220px !important;
  }
}


/* v1.1.9 stronger legacy Projects rendering */
body.cwmh-theme .cwmh-project-card-no-image {
  grid-template-columns: 1fr !important;
}
body.cwmh-theme .cwmh-project-card-no-image .cwmh-project-card-copy {
  grid-column: 1 / -1 !important;
  max-width: none !important;
  width: 100% !important;
  justify-content: flex-start !important;
  padding: clamp(18px, 2.3vw, 30px) !important;
}
body.cwmh-theme .cwmh-project-card-text {
  margin: 0 0 20px !important;
  color: var(--cwmh-muted) !important;
  font-size: clamp(16px, 1.35vw, 20px) !important;
  line-height: 1.6 !important;
  max-width: 100% !important;
}
body.cwmh-theme .cwmh-project-card-text p {
  margin: 0 0 14px !important;
  max-width: none !important;
}
body.cwmh-theme .cwmh-project-card-text p:last-child {
  margin-bottom: 0 !important;
}
body.cwmh-theme .cwmh-project-card-copy {
  max-width: none !important;
  width: 100% !important;
}
body.cwmh-theme .cwmh-project-card-link {
  align-self: flex-start !important;
  margin-top: auto !important;
  border-radius: 999px !important;
  padding: 14px 22px !important;
  background: var(--cwmh-red) !important;
  color: #fff !important;
  box-shadow: 0 18px 38px rgba(117,47,64,.18) !important;
}
body.cwmh-theme .cwmh-project-card-link:hover {
  transform: translateY(-1px) !important;
  color: #fff !important;
}
body.cwmh-theme .cwmh-project-card h3 {
  max-width: 980px !important;
}
body.cwmh-theme .cwmh-project-card {
  min-height: auto !important;
}

/* v1.2.1 final mobile hamburger and project CTA colour fixes */
body.cwmh-theme .cwmh-projects-panel .cwmh-project-card-link,
body.cwmh-theme .cwmh-projects-panel .cwmh-project-card-link:visited,
body.cwmh-theme .cwmh-projects-panel .cwmh-project-card-link:hover,
body.cwmh-theme .cwmh-project-card a.cwmh-project-card-link,
body.cwmh-theme .cwmh-flexi-actions a,
body.cwmh-theme .cwmh-flexi-actions .cwmh-button,
body.cwmh-theme .cwmh-flexi-panel a.cwmh-button,
body.cwmh-theme .cwmh-flexi-panel .cwmh-button-accent {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: fit-content !important;
  min-height: 50px !important;
  padding: 0 28px !important;
  border-radius: 999px !important;
  border: 1px solid var(--cwmh-accent) !important;
  background: var(--cwmh-accent) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  font-weight: 900 !important;
  text-decoration: none !important;
  box-shadow: 0 18px 38px rgba(117,47,64,.20) !important;
  opacity: 1 !important;
}
body.cwmh-theme .cwmh-projects-panel .cwmh-project-card-link:hover,
body.cwmh-theme .cwmh-flexi-actions a:hover,
body.cwmh-theme .cwmh-flexi-actions .cwmh-button:hover {
  background: var(--cwmh-accent-dark) !important;
  border-color: var(--cwmh-accent-dark) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  transform: translateY(-1px) !important;
}

@media (max-width: 920px) {
  body.cwmh-theme .cwmh-mobile-toggle,
  body.cwmh-theme .cwmh-nav-pill .cwmh-mobile-toggle {
    display: inline-flex !important;
    position: relative !important;
    flex: 0 0 50px !important;
    width: 50px !important;
    height: 50px !important;
    margin-left: auto !important;
    border: 0 !important;
    border-radius: 999px !important;
    background: var(--cwmh-green-950) !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 !important;
    overflow: hidden !important;
    line-height: 1 !important;
  }
  body.cwmh-theme .cwmh-mobile-toggle span:not(.screen-reader-text),
  body.cwmh-theme .cwmh-nav-pill .cwmh-mobile-toggle span:not(.screen-reader-text) {
    display: none !important;
  }
  body.cwmh-theme .cwmh-mobile-toggle::before,
  body.cwmh-theme .cwmh-nav-pill .cwmh-mobile-toggle::before {
    content: "" !important;
    display: block !important;
    width: 25px !important;
    height: 18px !important;
    background-image:
      linear-gradient(#fff, #fff),
      linear-gradient(#fff, #fff),
      linear-gradient(#fff, #fff) !important;
    background-repeat: no-repeat !important;
    background-size: 25px 2px, 25px 2px, 25px 2px !important;
    background-position: 0 0, 0 8px, 0 16px !important;
    border-radius: 0 !important;
    opacity: 1 !important;
  }
  body.cwmh-theme .cwmh-mobile-toggle::after,
  body.cwmh-theme .cwmh-nav-pill .cwmh-mobile-toggle::after {
    content: none !important;
    display: none !important;
  }
}


/* v1.2.2 demo testimonials page parity */
body.cwmh-theme .cwmh-page-builder-testimonials {
  margin-top: 0 !important;
  padding-top: 0 !important;
}
body.cwmh-theme .cwmh-entry-content-elementor .cwmh-elementor-testimonials,
body.cwmh-theme .cwmh-entry-content .cwmh-testimonials-grid {
  width: 100% !important;
}
body.cwmh-theme .cwmh-entry-content .cwmh-testimonials-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 18px !important;
}
body.cwmh-theme .cwmh-entry-content .cwmh-testimonials-grid blockquote {
  min-height: 220px !important;
  padding: clamp(24px, 3vw, 34px) !important;
  border-radius: 30px !important;
  background: rgba(255,253,246,.96) !important;
  border: 1px solid rgba(9,35,31,.08) !important;
  box-shadow: var(--cwmh-shadow-soft) !important;
}
body.cwmh-theme .cwmh-entry-content .cwmh-testimonials-grid p {
  margin: 0 0 22px !important;
  font-size: clamp(18px, 1.35vw, 22px) !important;
  line-height: 1.55 !important;
  font-weight: 850 !important;
  color: var(--cwmh-green-950) !important;
}
body.cwmh-theme .cwmh-entry-content .cwmh-testimonials-grid cite {
  display: block !important;
  color: var(--cwmh-accent) !important;
  font-style: normal !important;
  font-weight: 900 !important;
}
@media (max-width: 900px) {
  body.cwmh-theme .cwmh-entry-content .cwmh-testimonials-grid {
    grid-template-columns: 1fr !important;
  }
}

/* v1.2.3 legacy ACF Teams section */
body.cwmh-theme .cwmh-teams-panel {
  width: 100%;
  background: rgba(255,255,250,.86);
  border: 1px solid rgba(6, 45, 38, .10);
  border-radius: 34px;
  padding: clamp(30px, 4vw, 56px);
  box-shadow: 0 30px 80px rgba(6,45,38,.08);
}
body.cwmh-theme .cwmh-teams-panel-head {
  max-width: 760px;
  margin: 0 0 28px;
}
body.cwmh-theme .cwmh-teams-panel-head h2 {
  margin: 0 0 12px;
  color: var(--cwmh-green);
  font-size: clamp(34px, 4.8vw, 72px);
  line-height: .92;
  letter-spacing: -.06em;
}
body.cwmh-theme .cwmh-team-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}
body.cwmh-theme .cwmh-team-card {
  display: grid;
  grid-template-columns: 92px minmax(0, 1fr);
  gap: 20px;
  align-items: start;
  padding: 22px;
  border-radius: 28px;
  background: #fffdf4;
  border: 1px solid rgba(6,45,38,.10);
  box-shadow: 0 18px 45px rgba(6,45,38,.06);
}
body.cwmh-theme .cwmh-team-card-media {
  width: 92px;
  height: 92px;
  border-radius: 26px;
  overflow: hidden;
  background: var(--cwmh-green);
  color: #fff;
  display: grid;
  place-items: center;
  font-weight: 900;
  letter-spacing: -.04em;
  font-size: 26px;
}
body.cwmh-theme .cwmh-team-card-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
body.cwmh-theme .cwmh-team-card h3 {
  margin: 0;
  color: var(--cwmh-green);
  font-size: 24px;
  line-height: 1;
  letter-spacing: -.05em;
}
body.cwmh-theme .cwmh-team-role {
  margin: 8px 0 12px;
  color: var(--cwmh-red);
  font-weight: 900;
  line-height: 1.25;
}
body.cwmh-theme .cwmh-team-bio,
body.cwmh-theme .cwmh-team-bio p {
  color: var(--cwmh-muted);
  font-size: 16px;
  line-height: 1.55;
  margin: 0 0 12px;
}
body.cwmh-theme .cwmh-team-links {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 14px;
}
body.cwmh-theme .cwmh-team-links a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 38px;
  padding: 9px 14px;
  border-radius: 999px;
  background: var(--cwmh-red);
  color: #fff !important;
  text-decoration: none;
  font-size: 14px;
  font-weight: 900;
  line-height: 1;
}
@media (max-width: 1100px) {
  body.cwmh-theme .cwmh-team-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 720px) {
  body.cwmh-theme .cwmh-teams-panel { padding: 24px; border-radius: 26px; }
  body.cwmh-theme .cwmh-team-grid { grid-template-columns: 1fr; }
  body.cwmh-theme .cwmh-team-card { grid-template-columns: 72px minmax(0,1fr); padding: 18px; border-radius: 24px; }
  body.cwmh-theme .cwmh-team-card-media { width: 72px; height: 72px; border-radius: 20px; font-size: 20px; }
}

/* v1.2.4 refined ACF Teams and Strategic Board sections */
body.cwmh-theme .cwmh-teams-panel,
body.cwmh-theme .cwmh-strategic-board-panel {
  width: 100% !important;
  background: rgba(255,255,250,.88) !important;
  border: 1px solid rgba(6,45,38,.10) !important;
  border-radius: clamp(28px, 3vw, 44px) !important;
  padding: clamp(28px, 4vw, 58px) !important;
  overflow: hidden !important;
}
body.cwmh-theme .cwmh-teams-panel + .cwmh-strategic-board-panel,
body.cwmh-theme .cwmh-teams-panel + .cwmh-teams-panel {
  margin-top: clamp(24px, 3vw, 42px) !important;
}
body.cwmh-theme .cwmh-teams-panel-head,
body.cwmh-theme .cwmh-strategic-board-panel .cwmh-teams-panel-head {
  max-width: 900px !important;
  margin: 0 0 clamp(24px, 3vw, 38px) !important;
}
body.cwmh-theme .cwmh-teams-panel-head h2,
body.cwmh-theme .cwmh-strategic-board-panel .cwmh-teams-panel-head h2 {
  margin: 0 !important;
  color: var(--cwmh-green-950, #002f28) !important;
  font-size: clamp(36px, 5vw, 82px) !important;
  line-height: .92 !important;
  letter-spacing: -.065em !important;
}
body.cwmh-theme .cwmh-team-grid {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)) !important;
  gap: clamp(18px, 2vw, 26px) !important;
}
body.cwmh-theme .cwmh-team-card {
  display: flex !important;
  flex-direction: column !important;
  min-width: 0 !important;
  height: 100% !important;
  padding: 0 !important;
  border-radius: 30px !important;
  overflow: hidden !important;
  background: rgba(255,253,244,.94) !important;
  border: 1px solid rgba(6,45,38,.12) !important;
  box-shadow: 0 22px 60px rgba(6,45,38,.07) !important;
}
body.cwmh-theme .cwmh-team-card-media {
  width: 100% !important;
  height: 240px !important;
  min-height: 240px !important;
  border-radius: 0 !important;
  overflow: hidden !important;
  background: linear-gradient(145deg, rgba(0,53,45,.95), rgba(21,76,65,.9)) !important;
  color: #fff !important;
  display: grid !important;
  place-items: center !important;
  font-weight: 900 !important;
  letter-spacing: -.04em !important;
  font-size: 42px !important;
}
body.cwmh-theme .cwmh-team-card-media img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
  display: block !important;
}
body.cwmh-theme .cwmh-team-card-copy {
  display: flex !important;
  flex-direction: column !important;
  flex: 1 1 auto !important;
  min-width: 0 !important;
  padding: clamp(22px, 2.6vw, 32px) !important;
}
body.cwmh-theme .cwmh-team-card h3 {
  margin: 0 0 12px !important;
  color: var(--cwmh-green-950, #002f28) !important;
  font-size: clamp(26px, 3vw, 42px) !important;
  line-height: .96 !important;
  letter-spacing: -.06em !important;
  overflow-wrap: anywhere !important;
}
body.cwmh-theme .cwmh-team-role {
  margin: 0 0 14px !important;
  color: var(--cwmh-red, #7d2d43) !important;
  font-size: clamp(16px, 1.5vw, 22px) !important;
  font-weight: 900 !important;
  line-height: 1.25 !important;
  overflow-wrap: anywhere !important;
}
body.cwmh-theme .cwmh-team-bio,
body.cwmh-theme .cwmh-team-bio p {
  color: var(--cwmh-muted, #61726d) !important;
  font-size: 16px !important;
  line-height: 1.55 !important;
}
body.cwmh-theme .cwmh-team-links {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 10px !important;
  margin-top: auto !important;
  padding-top: 16px !important;
}
body.cwmh-theme .cwmh-team-links:empty {
  display: none !important;
}
body.cwmh-theme .cwmh-team-links a {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 42px !important;
  padding: 0 16px !important;
  border-radius: 999px !important;
  background: var(--cwmh-red, #7d2d43) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  text-decoration: none !important;
  font-size: 14px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
}
@media (max-width: 720px) {
  body.cwmh-theme .cwmh-team-card-media {
    height: 220px !important;
    min-height: 220px !important;
  }
}

/* v1.2.5 refined ACF people/board cards */
body.cwmh-theme .cwmh-teams-panel,
body.cwmh-theme .cwmh-strategic-board-panel {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: clamp(18px, 2vw, 28px) 0 !important;
  overflow: visible !important;
}
body.cwmh-theme .cwmh-teams-panel-head,
body.cwmh-theme .cwmh-strategic-board-panel .cwmh-teams-panel-head {
  margin: 0 0 clamp(20px, 2.2vw, 32px) !important;
  max-width: 980px !important;
}
body.cwmh-theme .cwmh-teams-panel-head h2,
body.cwmh-theme .cwmh-strategic-board-panel .cwmh-teams-panel-head h2 {
  font-size: clamp(38px, 5.4vw, 84px) !important;
  line-height: .9 !important;
  letter-spacing: -.07em !important;
}
body.cwmh-theme .cwmh-team-grid {
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)) !important;
  gap: clamp(18px, 2vw, 26px) !important;
}
body.cwmh-theme .cwmh-team-card {
  display: grid !important;
  grid-template-columns: 116px minmax(0, 1fr) !important;
  gap: clamp(18px, 2vw, 28px) !important;
  align-items: center !important;
  min-height: 190px !important;
  height: auto !important;
  padding: clamp(20px, 2.4vw, 32px) !important;
  border-radius: 34px !important;
  overflow: hidden !important;
  background: rgba(255,253,244,.9) !important;
  border: 1px solid rgba(6,45,38,.12) !important;
  box-shadow: 0 24px 70px rgba(6,45,38,.06) !important;
}
body.cwmh-theme .cwmh-team-card-media {
  width: 116px !important;
  height: 116px !important;
  min-width: 116px !important;
  min-height: 116px !important;
  border-radius: 30px !important;
  overflow: hidden !important;
  background: var(--cwmh-green, #00352d) !important;
  color: #fff !important;
  display: grid !important;
  place-items: center !important;
  font-size: 34px !important;
  line-height: 1 !important;
}
body.cwmh-theme .cwmh-team-card-media img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
}
body.cwmh-theme .cwmh-team-card-copy {
  padding: 0 !important;
  min-width: 0 !important;
}
body.cwmh-theme .cwmh-team-card h3 {
  font-size: clamp(25px, 2.7vw, 42px) !important;
  line-height: .98 !important;
  margin: 0 0 8px !important;
  letter-spacing: -.055em !important;
}
body.cwmh-theme .cwmh-team-role {
  color: var(--cwmh-muted, #61726d) !important;
  font-size: clamp(16px, 1.45vw, 21px) !important;
  line-height: 1.25 !important;
  margin: 0 !important;
}
body.cwmh-theme .cwmh-team-bio,
body.cwmh-theme .cwmh-team-bio p {
  margin-top: 12px !important;
}
body.cwmh-theme .cwmh-team-links {
  margin-top: 18px !important;
  padding-top: 0 !important;
}
body.cwmh-theme .cwmh-team-links a {
  background: var(--cwmh-red, #7d2d43) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}
body.cwmh-theme .cwmh-strategic-board-panel .cwmh-team-grid {
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)) !important;
}
body.cwmh-theme .cwmh-strategic-board-panel .cwmh-team-card {
  display: flex !important;
  min-height: 150px !important;
  align-items: flex-start !important;
}
body.cwmh-theme .cwmh-strategic-board-panel .cwmh-team-card-media {
  display: none !important;
}
body.cwmh-theme .cwmh-strategic-board-panel .cwmh-team-card-copy {
  width: 100% !important;
}
@media (max-width: 720px) {
  body.cwmh-theme .cwmh-team-grid,
  body.cwmh-theme .cwmh-strategic-board-panel .cwmh-team-grid {
    grid-template-columns: 1fr !important;
  }
  body.cwmh-theme .cwmh-team-card {
    grid-template-columns: 86px minmax(0, 1fr) !important;
    min-height: 0 !important;
    border-radius: 28px !important;
    padding: 18px !important;
  }
  body.cwmh-theme .cwmh-team-card-media {
    width: 86px !important;
    height: 86px !important;
    min-width: 86px !important;
    min-height: 86px !important;
    border-radius: 22px !important;
    font-size: 24px !important;
  }
}


/* v1.2.6 ACF Buttons repeater and team card link cleanup */
body.cwmh-theme .cwmh-flexi-buttons-row {
  margin: clamp(24px, 3vw, 42px) 0 !important;
}
body.cwmh-theme .cwmh-flexi-buttons-row .cwmh-flexi-actions {
  margin: 0 !important;
  border-radius: 30px !important;
  justify-content: flex-start !important;
  flex-wrap: wrap !important;
}
body.cwmh-theme .cwmh-flexi-actions .cwmh-button-acf-primary,
body.cwmh-theme .cwmh-flexi-panel .cwmh-button-acf-primary,
body.cwmh-theme a.cwmh-button-acf-primary {
  background: var(--cwmh-accent) !important;
  border-color: var(--cwmh-accent) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}
body.cwmh-theme .cwmh-flexi-actions .cwmh-button-acf-secondary,
body.cwmh-theme .cwmh-flexi-panel .cwmh-button-acf-secondary,
body.cwmh-theme a.cwmh-button-acf-secondary {
  background: rgba(255,255,255,.86) !important;
  border-color: rgba(9,35,31,.16) !important;
  color: var(--cwmh-green-950) !important;
  -webkit-text-fill-color: var(--cwmh-green-950) !important;
  box-shadow: none !important;
}
body.cwmh-theme .cwmh-team-links:empty {
  display: none !important;
}


/* v1.2.7 remove ACF buttons row background */
body.cwmh-theme .cwmh-flexi-buttons-row,
body.cwmh-theme section.cwmh-flexi-buttons-row {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
}
body.cwmh-theme .cwmh-flexi-buttons-row .cwmh-flexi-actions {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin: 0 !important;
  border-radius: 0 !important;
  justify-content: center !important;
  gap: clamp(14px, 2vw, 24px) !important;
}
body.cwmh-theme .cwmh-flexi-buttons-row .cwmh-button {
  margin: 0 !important;
}

/* v1.2.8 mobile stability, footer overflow and nav logo fixes */
html,
body.cwmh-theme {
  width: 100% !important;
  max-width: 100% !important;
  overflow-x: hidden !important;
}
body.cwmh-theme .cwmh-site-header,
body.cwmh-theme .cwmh-site-footer,
body.cwmh-theme main,
body.cwmh-theme .cwmh-container,
body.cwmh-theme .elementor,
body.cwmh-theme .elementor-section,
body.cwmh-theme .elementor-container {
  max-width: 100% !important;
}
body.cwmh-theme .cwmh-footer-address-card,
body.cwmh-theme .cwmh-footer-address-card *,
body.cwmh-theme .cwmh-footer-bottom,
body.cwmh-theme .cwmh-footer-bottom * {
  min-width: 0 !important;
  max-width: 100% !important;
  overflow-wrap: anywhere !important;
  word-break: break-word !important;
}
body.cwmh-theme .cwmh-footer-address-card a {
  display: block !important;
  width: 100% !important;
  line-height: 1.35 !important;
}

@media (max-width: 920px) {
  body.cwmh-theme .cwmh-site-header {
    top: calc(env(safe-area-inset-top, 0px) + 8px) !important;
    padding-top: 8px !important;
    left: 0 !important;
    right: 0 !important;
  }
  body.admin-bar.cwmh-theme .cwmh-site-header {
    top: 54px !important;
  }
  body.cwmh-theme .cwmh-site-header .cwmh-container {
    width: min(100% - 28px, var(--cwmh-max)) !important;
    max-width: calc(100% - 28px) !important;
  }
  body.cwmh-theme .cwmh-nav-pill {
    width: 100% !important;
    max-width: 100% !important;
    min-height: 72px !important;
    padding: 9px 10px !important;
    border-radius: 34px !important;
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 10px !important;
    overflow: visible !important;
  }
  body.cwmh-theme .cwmh-nav-pill .cwmh-brand {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    max-width: calc(100% - 72px) !important;
    height: 58px !important;
    padding-left: 8px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    overflow: hidden !important;
  }
  body.cwmh-theme .cwmh-nav-pill .cwmh-brand-logo {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    width: 100% !important;
    max-width: 100% !important;
    height: 58px !important;
    overflow: hidden !important;
    line-height: 0 !important;
  }
  body.cwmh-theme .cwmh-nav-pill .cwmh-brand-logo img,
  body.cwmh-theme .cwmh-nav-pill .cwmh-custom-logo,
  body.cwmh-theme .cwmh-site-header .custom-logo {
    display: block !important;
    width: auto !important;
    height: auto !important;
    max-width: clamp(172px, 54vw, 238px) !important;
    max-height: 54px !important;
    object-fit: contain !important;
    object-position: left center !important;
  }
  body.cwmh-theme .cwmh-mobile-toggle,
  body.cwmh-theme .cwmh-nav-pill .cwmh-mobile-toggle {
    display: inline-flex !important;
    flex: 0 0 56px !important;
    width: 56px !important;
    height: 56px !important;
    min-width: 56px !important;
    min-height: 56px !important;
    max-width: 56px !important;
    max-height: 56px !important;
    margin-left: auto !important;
    border-radius: 999px !important;
    align-items: center !important;
    justify-content: center !important;
    flex-direction: column !important;
    gap: 5px !important;
    padding: 0 !important;
    background: var(--cwmh-green-950, #05271f) !important;
    border: 0 !important;
    box-shadow: none !important;
    position: relative !important;
  }
  body.cwmh-theme .cwmh-mobile-toggle span:not(.screen-reader-text),
  body.cwmh-theme .cwmh-nav-pill .cwmh-mobile-toggle span:not(.screen-reader-text) {
    display: block !important;
    position: static !important;
    width: 25px !important;
    height: 3px !important;
    min-height: 3px !important;
    margin: 0 !important;
    border-radius: 999px !important;
    background: #fff !important;
    opacity: 1 !important;
    transform: none !important;
    content: none !important;
  }
  body.cwmh-theme .cwmh-mobile-toggle::before,
  body.cwmh-theme .cwmh-mobile-toggle::after,
  body.cwmh-theme .cwmh-nav-pill .cwmh-mobile-toggle::before,
  body.cwmh-theme .cwmh-nav-pill .cwmh-mobile-toggle::after {
    display: none !important;
    content: none !important;
  }
  body.cwmh-theme .cwmh-navigation {
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    max-height: calc(100dvh - 118px) !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    -webkit-overflow-scrolling: touch !important;
  }
  body.cwmh-theme .cwmh-nav-menu,
  body.cwmh-theme .cwmh-nav-menu ul,
  body.cwmh-theme .cwmh-footer-menu,
  body.cwmh-theme .cwmh-footer-menu ul {
    list-style: none !important;
    margin-left: 0 !important;
    padding-left: 0 !important;
  }
  body.cwmh-theme .cwmh-nav-menu li,
  body.cwmh-theme .cwmh-footer-menu li {
    list-style: none !important;
  }
  body.cwmh-theme .cwmh-nav-menu li::marker,
  body.cwmh-theme .cwmh-footer-menu li::marker {
    content: "" !important;
  }
}

@media (max-width: 720px) {
  body.cwmh-theme .cwmh-site-footer {
    padding: 44px 0 26px !important;
    overflow: hidden !important;
  }
  body.cwmh-theme .cwmh-site-footer .cwmh-container.cwmh-footer-panel,
  body.cwmh-theme .cwmh-footer-panel {
    width: min(100% - 28px, var(--cwmh-max)) !important;
    max-width: calc(100% - 28px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding: 28px 20px !important;
    border-radius: 34px !important;
    overflow: hidden !important;
  }
  body.cwmh-theme .cwmh-footer-main,
  body.cwmh-theme .cwmh-footer-extra {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 24px !important;
  }
  body.cwmh-theme .cwmh-footer-panel h2 {
    max-width: 100% !important;
    font-size: clamp(34px, 11vw, 52px) !important;
    line-height: .95 !important;
    overflow-wrap: anywhere !important;
  }
  body.cwmh-theme .cwmh-footer-brand .cwmh-brand,
  body.cwmh-theme .cwmh-site-footer .cwmh-brand {
    max-width: 100% !important;
    min-width: 0 !important;
    width: 100% !important;
    overflow: hidden !important;
  }
  body.cwmh-theme .cwmh-footer-brand .cwmh-brand-logo img,
  body.cwmh-theme .cwmh-site-footer .cwmh-brand-logo img,
  body.cwmh-theme .cwmh-site-footer .cwmh-custom-logo {
    max-width: min(260px, 72vw) !important;
    max-height: 62px !important;
    object-fit: contain !important;
    object-position: left center !important;
  }
  body.cwmh-theme .cwmh-footer-explore {
    padding: 18px 20px !important;
    border-radius: 24px !important;
  }
  body.cwmh-theme .cwmh-footer-menu {
    display: grid !important;
    gap: 2px !important;
  }
  body.cwmh-theme .cwmh-footer-menu a {
    font-size: 16px !important;
    padding: 9px 0 !important;
  }
  body.cwmh-theme .cwmh-footer-logo-row {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
  }
  body.cwmh-theme .cwmh-footer-logo {
    min-height: 74px !important;
    padding: 10px !important;
    border-radius: 18px !important;
  }
  body.cwmh-theme .cwmh-footer-logo img {
    max-width: 100% !important;
    max-height: 46px !important;
    object-fit: contain !important;
  }
  body.cwmh-theme .cwmh-footer-logo span {
    font-size: 9px !important;
    line-height: 1.2 !important;
  }
  body.cwmh-theme .cwmh-footer-address-card {
    min-height: 0 !important;
    padding: 18px !important;
    border-radius: 22px !important;
  }
  body.cwmh-theme .cwmh-footer-address-card address {
    font-size: 15px !important;
    line-height: 1.5 !important;
    margin-bottom: 12px !important;
  }
  body.cwmh-theme .cwmh-footer-address-card a {
    font-size: clamp(12px, 3.5vw, 15px) !important;
    letter-spacing: 0 !important;
  }
  body.cwmh-theme .cwmh-footer-bottom {
    width: min(100% - 28px, var(--cwmh-max)) !important;
    max-width: calc(100% - 28px) !important;
    margin-top: 20px !important;
    gap: 10px !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    font-size: 13px !important;
    line-height: 1.45 !important;
  }
}

@media (max-width: 430px) {
  body.cwmh-theme .cwmh-site-header .cwmh-container {
    width: min(100% - 24px, var(--cwmh-max)) !important;
    max-width: calc(100% - 24px) !important;
  }
  body.cwmh-theme .cwmh-nav-pill {
    min-height: 70px !important;
    padding: 8px !important;
    border-radius: 30px !important;
  }
  body.cwmh-theme .cwmh-nav-pill .cwmh-brand {
    max-width: calc(100% - 66px) !important;
    height: 54px !important;
    padding-left: 6px !important;
  }
  body.cwmh-theme .cwmh-nav-pill .cwmh-brand-logo,
  body.cwmh-theme .cwmh-nav-pill .cwmh-brand-logo img,
  body.cwmh-theme .cwmh-nav-pill .cwmh-custom-logo,
  body.cwmh-theme .cwmh-site-header .custom-logo {
    max-width: clamp(160px, 58vw, 220px) !important;
    max-height: 50px !important;
  }
  body.cwmh-theme .cwmh-mobile-toggle,
  body.cwmh-theme .cwmh-nav-pill .cwmh-mobile-toggle {
    flex-basis: 54px !important;
    width: 54px !important;
    height: 54px !important;
    min-width: 54px !important;
    min-height: 54px !important;
  }
  body.cwmh-theme .cwmh-footer-logo-row {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

/* v1.2.9 mobile consistency patch */
@media (max-width: 920px) {
  html,
  body,
  body.cwmh-theme {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: clip !important;
  }

  body.cwmh-theme *,
  body.cwmh-theme *::before,
  body.cwmh-theme *::after {
    box-sizing: border-box !important;
  }

  body.cwmh-theme img,
  body.cwmh-theme video,
  body.cwmh-theme iframe,
  body.cwmh-theme svg {
    max-width: 100% !important;
  }

  body.cwmh-theme .cwmh-site-header {
    position: sticky !important;
    top: calc(env(safe-area-inset-top, 0px) + 10px) !important;
    left: 0 !important;
    right: 0 !important;
    z-index: 999 !important;
    width: 100% !important;
    padding: 10px 0 0 !important;
    margin: 0 !important;
    pointer-events: none !important;
  }

  body.admin-bar.cwmh-theme .cwmh-site-header {
    top: 54px !important;
  }

  body.cwmh-theme .cwmh-site-header > .cwmh-container {
    width: calc(100% - 28px) !important;
    max-width: calc(100% - 28px) !important;
    min-width: 0 !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding: 0 !important;
  }

  body.cwmh-theme .cwmh-nav-pill {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    min-height: 78px !important;
    height: auto !important;
    padding: 10px 12px !important;
    border-radius: 36px !important;
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 10px !important;
    overflow: visible !important;
    pointer-events: auto !important;
  }

  body.cwmh-theme .cwmh-nav-pill .cwmh-brand {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    width: auto !important;
    max-width: calc(100% - 78px) !important;
    height: 58px !important;
    padding: 0 0 0 10px !important;
    margin: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    overflow: hidden !important;
  }

  body.cwmh-theme .cwmh-nav-pill .cwmh-brand-mark,
  body.cwmh-theme .cwmh-nav-pill .cwmh-brand-title {
    display: none !important;
  }

  body.cwmh-theme .cwmh-nav-pill .cwmh-brand-logo {
    flex: 0 1 auto !important;
    width: auto !important;
    max-width: 100% !important;
    height: 58px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    line-height: 0 !important;
    overflow: hidden !important;
  }

  body.cwmh-theme .cwmh-nav-pill .cwmh-brand-logo a,
  body.cwmh-theme .cwmh-nav-pill .custom-logo-link {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    width: auto !important;
    max-width: 100% !important;
    height: 58px !important;
    line-height: 0 !important;
    overflow: hidden !important;
  }

  body.cwmh-theme .cwmh-nav-pill .cwmh-brand-logo img,
  body.cwmh-theme .cwmh-nav-pill img.custom-logo,
  body.cwmh-theme .cwmh-site-header img.custom-logo,
  body.cwmh-theme .cwmh-site-header .cwmh-custom-logo {
    display: block !important;
    width: auto !important;
    height: auto !important;
    min-width: 0 !important;
    max-width: min(265px, calc(100vw - 132px)) !important;
    max-height: 58px !important;
    object-fit: contain !important;
    object-position: left center !important;
    transform: none !important;
  }

  body.cwmh-theme .cwmh-mobile-toggle,
  body.cwmh-theme .cwmh-nav-pill .cwmh-mobile-toggle {
    display: inline-flex !important;
    flex: 0 0 58px !important;
    width: 58px !important;
    min-width: 58px !important;
    max-width: 58px !important;
    height: 58px !important;
    min-height: 58px !important;
    max-height: 58px !important;
    margin: 0 0 0 auto !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 999px !important;
    background: var(--cwmh-green-950, #05271f) !important;
    color: #fff !important;
    align-items: center !important;
    justify-content: center !important;
    position: relative !important;
    overflow: hidden !important;
    box-shadow: none !important;
    appearance: none !important;
    -webkit-appearance: none !important;
  }

  body.cwmh-theme .cwmh-mobile-toggle span:not(.screen-reader-text),
  body.cwmh-theme .cwmh-nav-pill .cwmh-mobile-toggle span:not(.screen-reader-text) {
    display: none !important;
  }

  body.cwmh-theme .cwmh-mobile-toggle::before,
  body.cwmh-theme .cwmh-nav-pill .cwmh-mobile-toggle::before {
    content: "" !important;
    display: block !important;
    width: 27px !important;
    height: 3px !important;
    border-radius: 999px !important;
    background: #fff !important;
    box-shadow: 0 -9px 0 #fff, 0 9px 0 #fff !important;
    transform: none !important;
    position: static !important;
  }

  body.cwmh-theme .cwmh-mobile-toggle::after,
  body.cwmh-theme .cwmh-nav-pill .cwmh-mobile-toggle::after {
    display: none !important;
    content: none !important;
  }

  body.cwmh-theme .cwmh-nav-pill:not(.is-open) .cwmh-navigation {
    display: none !important;
  }

  body.cwmh-theme .cwmh-navigation {
    position: absolute !important;
    top: calc(100% + 12px) !important;
    left: 0 !important;
    right: 0 !important;
    z-index: 1000 !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    padding: 20px !important;
    border-radius: 32px !important;
    background: rgba(255, 253, 246, .985) !important;
    border: 1px solid rgba(9,35,31,.08) !important;
    box-shadow: 0 24px 70px rgba(0,0,0,.18) !important;
    max-height: calc(100dvh - 128px) !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    -webkit-overflow-scrolling: touch !important;
  }

  body.cwmh-theme .cwmh-nav-pill.is-open .cwmh-navigation {
    display: block !important;
  }

  body.cwmh-theme .cwmh-nav-menu {
    width: 100% !important;
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
  }

  body.cwmh-theme .cwmh-nav-menu > .menu-item > a {
    width: 100% !important;
    min-height: 56px !important;
    padding: 0 20px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    border-radius: 22px !important;
    font-size: 17px !important;
    line-height: 1.1 !important;
  }

  body.cwmh-theme .cwmh-nav-menu > .menu-item > .sub-menu {
    position: static !important;
    width: 100% !important;
    display: none !important;
    grid-template-columns: 1fr !important;
    padding: 12px !important;
    margin: 8px 0 0 !important;
    border-radius: 22px !important;
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    box-shadow: none !important;
  }

  body.cwmh-theme .cwmh-nav-menu > .menu-item.is-open > .sub-menu {
    display: grid !important;
  }

  body.cwmh-theme .cwmh-nav-actions {
    display: none !important;
  }
}

@media (max-width: 720px) {
  body.cwmh-theme .cwmh-site-footer {
    width: 100% !important;
    max-width: 100% !important;
    padding: 46px 0 28px !important;
    margin: 0 !important;
    overflow: hidden !important;
  }

  body.cwmh-theme .cwmh-site-footer .cwmh-container.cwmh-footer-panel,
  body.cwmh-theme .cwmh-footer-panel {
    width: calc(100% - 28px) !important;
    max-width: calc(100% - 28px) !important;
    min-width: 0 !important;
    margin: 0 auto !important;
    padding: 26px 20px !important;
    border-radius: 34px !important;
    overflow: hidden !important;
  }

  body.cwmh-theme .cwmh-footer-main,
  body.cwmh-theme .cwmh-footer-extra {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 22px !important;
    width: 100% !important;
    min-width: 0 !important;
  }

  body.cwmh-theme .cwmh-footer-cta-area,
  body.cwmh-theme .cwmh-footer-explore,
  body.cwmh-theme .cwmh-footer-logo-area,
  body.cwmh-theme .cwmh-footer-address {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    overflow: hidden !important;
  }

  body.cwmh-theme .cwmh-footer-panel h2 {
    font-size: clamp(32px, 10vw, 46px) !important;
    line-height: .98 !important;
    max-width: 100% !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
  }

  body.cwmh-theme .cwmh-footer-actions {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 10px !important;
    width: 100% !important;
  }

  body.cwmh-theme .cwmh-footer-actions .cwmh-button {
    min-width: 0 !important;
    max-width: 100% !important;
    padding: 13px 18px !important;
    font-size: 14px !important;
  }

  body.cwmh-theme .cwmh-footer-brand .cwmh-brand,
  body.cwmh-theme .cwmh-site-footer .cwmh-brand {
    display: block !important;
    min-width: 0 !important;
    max-width: 100% !important;
    height: auto !important;
    padding: 0 !important;
    overflow: hidden !important;
  }

  body.cwmh-theme .cwmh-footer-brand .cwmh-brand-logo,
  body.cwmh-theme .cwmh-site-footer .cwmh-brand-logo {
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    display: block !important;
  }

  body.cwmh-theme .cwmh-footer-brand .cwmh-brand-logo img,
  body.cwmh-theme .cwmh-site-footer .cwmh-brand-logo img,
  body.cwmh-theme .cwmh-site-footer img.custom-logo {
    max-width: min(250px, 76vw) !important;
    max-height: 60px !important;
    width: auto !important;
    height: auto !important;
    object-fit: contain !important;
    object-position: left center !important;
  }

  body.cwmh-theme .cwmh-footer-logo-area > strong,
  body.cwmh-theme .cwmh-footer-address > strong,
  body.cwmh-theme .cwmh-footer-explore > strong {
    display: block !important;
    font-size: 11px !important;
    letter-spacing: .16em !important;
    line-height: 1.2 !important;
    margin-bottom: 12px !important;
  }

  body.cwmh-theme .cwmh-footer-logo-row {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
  }

  body.cwmh-theme .cwmh-footer-logo {
    width: 100% !important;
    min-width: 0 !important;
    min-height: 64px !important;
    max-height: 74px !important;
    padding: 8px !important;
    border-radius: 18px !important;
    overflow: hidden !important;
  }

  body.cwmh-theme .cwmh-footer-logo img,
  body.cwmh-theme .cwmh-footer-logo a img {
    max-width: 100% !important;
    max-height: 44px !important;
    width: auto !important;
    height: auto !important;
    object-fit: contain !important;
  }

  body.cwmh-theme .cwmh-footer-logo span {
    font-size: 9px !important;
    line-height: 1.2 !important;
    letter-spacing: .08em !important;
  }

  body.cwmh-theme .cwmh-footer-address-card {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    display: grid !important;
    grid-template-columns: 1fr auto !important;
    gap: 14px !important;
    align-items: start !important;
    padding: 18px !important;
    border-radius: 22px !important;
    overflow: hidden !important;
  }

  body.cwmh-theme .cwmh-footer-address-card address {
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    font-size: 15px !important;
    line-height: 1.48 !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
  }

  body.cwmh-theme .cwmh-footer-email-icon {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 48px !important;
    height: 48px !important;
    min-width: 48px !important;
    border-radius: 999px !important;
    background: var(--cwmh-accent, #752f40) !important;
    color: #fff !important;
    text-decoration: none !important;
    line-height: 1 !important;
  }

  body.cwmh-theme .cwmh-footer-email-icon svg {
    width: 22px !important;
    height: 22px !important;
    display: block !important;
  }

  body.cwmh-theme .cwmh-footer-bottom {
    width: calc(100% - 28px) !important;
    max-width: calc(100% - 28px) !important;
    min-width: 0 !important;
    margin: 20px auto 0 !important;
    padding-top: 18px !important;
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
    font-size: 13px !important;
    line-height: 1.45 !important;
    overflow: hidden !important;
  }
}

@media (max-width: 430px) {
  body.cwmh-theme .cwmh-site-header > .cwmh-container {
    width: calc(100% - 24px) !important;
    max-width: calc(100% - 24px) !important;
  }

  body.cwmh-theme .cwmh-nav-pill {
    min-height: 74px !important;
    border-radius: 32px !important;
    padding: 9px 10px !important;
  }

  body.cwmh-theme .cwmh-nav-pill .cwmh-brand {
    max-width: calc(100% - 72px) !important;
    height: 56px !important;
    padding-left: 8px !important;
  }

  body.cwmh-theme .cwmh-nav-pill .cwmh-brand-logo,
  body.cwmh-theme .cwmh-nav-pill .custom-logo-link {
    height: 56px !important;
  }

  body.cwmh-theme .cwmh-nav-pill .cwmh-brand-logo img,
  body.cwmh-theme .cwmh-nav-pill img.custom-logo,
  body.cwmh-theme .cwmh-site-header img.custom-logo,
  body.cwmh-theme .cwmh-site-header .cwmh-custom-logo {
    max-width: min(245px, calc(100vw - 124px)) !important;
    max-height: 54px !important;
  }

  body.cwmh-theme .cwmh-mobile-toggle,
  body.cwmh-theme .cwmh-nav-pill .cwmh-mobile-toggle {
    flex-basis: 56px !important;
    width: 56px !important;
    min-width: 56px !important;
    height: 56px !important;
    min-height: 56px !important;
  }

  body.cwmh-theme .cwmh-footer-logo-row {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

/* v1.3.0 mobile/footer consistency and final overrides */
body.cwmh-theme {
  overflow-x: hidden !important;
}

body.cwmh-theme .cwmh-footer-email-text {
  display: inline-flex !important;
  align-items: center !important;
  max-width: 100% !important;
  color: #fff !important;
  font-weight: 850 !important;
  text-decoration: none !important;
  overflow-wrap: anywhere !important;
  word-break: break-word !important;
}

body.cwmh-theme .cwmh-footer-email-text:hover {
  color: #fff !important;
  text-decoration: underline !important;
}

body.cwmh-theme .cwmh-footer-email-icon {
  display: none !important;
}

@media (min-width: 721px) {
  body.cwmh-theme .cwmh-footer-address-card {
    display: block !important;
  }
  body.cwmh-theme .cwmh-footer-email-text {
    display: inline-flex !important;
    margin-top: 18px !important;
  }
  body.cwmh-theme .cwmh-footer-email-icon {
    display: none !important;
  }
}

@media (max-width: 720px) {
  html, body, body.cwmh-theme, body.cwmh-theme #page, body.cwmh-theme .site, body.cwmh-theme main, body.cwmh-theme footer {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: hidden !important;
  }

  body.cwmh-theme .cwmh-footer-email-text {
    display: none !important;
  }

  body.cwmh-theme .cwmh-footer-address-card {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 58px !important;
    align-items: center !important;
    gap: 14px !important;
  }

  body.cwmh-theme .cwmh-footer-address-card address {
    min-width: 0 !important;
    max-width: 100% !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
  }

  body.cwmh-theme .cwmh-footer-email-icon {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    justify-self: center !important;
    align-self: center !important;
    margin: 0 auto !important;
    width: 58px !important;
    height: 58px !important;
    min-width: 58px !important;
    min-height: 58px !important;
    border-radius: 999px !important;
    background: var(--cwmh-accent, #752f40) !important;
    color: #fff !important;
  }

  body.cwmh-theme .cwmh-footer-email-icon svg {
    display: block !important;
    width: 24px !important;
    height: 24px !important;
    margin: auto !important;
  }

  body.cwmh-theme .cwmh-site-header,
  body.cwmh-theme .cwmh-site-header * {
    box-sizing: border-box !important;
  }

  body.cwmh-theme .cwmh-site-header > .cwmh-container {
    width: calc(100% - 24px) !important;
    max-width: calc(100% - 24px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  body.cwmh-theme .cwmh-nav-pill {
    width: 100% !important;
    min-height: 74px !important;
    height: auto !important;
    padding: 9px 10px !important;
    border-radius: 32px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
  }

  body.cwmh-theme .cwmh-nav-pill .cwmh-brand {
    max-width: calc(100% - 74px) !important;
    height: 56px !important;
    min-width: 0 !important;
    overflow: hidden !important;
  }

  body.cwmh-theme .cwmh-nav-pill .cwmh-brand-logo img,
  body.cwmh-theme .cwmh-nav-pill img.custom-logo,
  body.cwmh-theme .cwmh-site-header img.custom-logo,
  body.cwmh-theme .cwmh-site-header .cwmh-custom-logo {
    width: auto !important;
    height: auto !important;
    max-width: min(235px, calc(100vw - 126px)) !important;
    max-height: 52px !important;
    object-fit: contain !important;
    object-position: left center !important;
  }

  body.cwmh-theme .cwmh-mobile-toggle,
  body.cwmh-theme .cwmh-nav-pill .cwmh-mobile-toggle {
    display: inline-flex !important;
    flex: 0 0 56px !important;
    width: 56px !important;
    height: 56px !important;
    min-width: 56px !important;
    min-height: 56px !important;
    border-radius: 999px !important;
    align-items: center !important;
    justify-content: center !important;
    background: var(--cwmh-green-950, #05271f) !important;
  }

  body.cwmh-theme .cwmh-mobile-toggle::before,
  body.cwmh-theme .cwmh-nav-pill .cwmh-mobile-toggle::before {
    content: "" !important;
    display: block !important;
    width: 27px !important;
    height: 3px !important;
    border-radius: 999px !important;
    background: #fff !important;
    box-shadow: 0 -9px 0 #fff, 0 9px 0 #fff !important;
  }
}

/* v1.3.2 final mobile footer and forced page layout consistency */
body.cwmh-theme .cwmh-footer-address-copy {
  min-width: 0 !important;
  max-width: 100% !important;
}

@media (min-width: 721px) {
  body.cwmh-theme .cwmh-footer-address-card {
    display: block !important;
  }
  body.cwmh-theme .cwmh-footer-address-copy {
    display: block !important;
  }
  body.cwmh-theme .cwmh-footer-email-text {
    display: inline-flex !important;
    visibility: visible !important;
    width: auto !important;
    height: auto !important;
    margin-top: 18px !important;
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
  }
  body.cwmh-theme .cwmh-footer-email-icon {
    display: none !important;
  }
}

@media (max-width: 720px) {
  html,
  body,
  body.cwmh-theme {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: hidden !important;
  }

  body.cwmh-theme .cwmh-footer-address-card {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    justify-content: flex-start !important;
    gap: 18px !important;
    width: 100% !important;
    max-width: 100% !important;
    padding: 24px 22px !important;
    border-radius: 28px !important;
    overflow: hidden !important;
  }

  body.cwmh-theme .cwmh-footer-address-copy {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
  }

  body.cwmh-theme .cwmh-footer-address-card address {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    margin: 0 !important;
    font-size: clamp(18px, 5.2vw, 23px) !important;
    line-height: 1.35 !important;
    letter-spacing: 0 !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
    hyphens: none !important;
  }

  body.cwmh-theme .cwmh-footer-email-text,
  body.cwmh-theme .cwmh-footer-address-card .cwmh-footer-email-text,
  body.cwmh-theme a.cwmh-footer-email-text {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    width: 0 !important;
    max-width: 0 !important;
    height: 0 !important;
    max-height: 0 !important;
    min-width: 0 !important;
    min-height: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    overflow: hidden !important;
    pointer-events: none !important;
    position: absolute !important;
    left: -9999px !important;
  }

  body.cwmh-theme .cwmh-footer-email-icon,
  body.cwmh-theme .cwmh-footer-address-card .cwmh-footer-email-icon,
  body.cwmh-theme a.cwmh-footer-email-icon {
    display: inline-flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    align-items: center !important;
    justify-content: center !important;
    align-self: center !important;
    margin: 2px auto 0 !important;
    width: 64px !important;
    height: 64px !important;
    min-width: 64px !important;
    min-height: 64px !important;
    max-width: 64px !important;
    max-height: 64px !important;
    padding: 0 !important;
    border-radius: 999px !important;
    background: var(--cwmh-accent, #752f40) !important;
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
    text-decoration: none !important;
    line-height: 1 !important;
    position: relative !important;
    left: auto !important;
    overflow: hidden !important;
  }

  body.cwmh-theme .cwmh-footer-email-icon svg {
    display: block !important;
    width: 26px !important;
    height: 26px !important;
    margin: 0 !important;
    flex: 0 0 auto !important;
  }

  body.cwmh-theme .cwmh-site-footer .cwmh-container.cwmh-footer-panel,
  body.cwmh-theme .cwmh-footer-panel,
  body.cwmh-theme .cwmh-footer-bottom {
    width: calc(100% - 28px) !important;
    max-width: calc(100% - 28px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  body.cwmh-theme .cwmh-footer-bottom {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    align-items: start !important;
    text-align: left !important;
  }
}
