div.wpforms-container-full .wpforms-form button[type=submit] { margin: 0 auto !important; display: block !important; width: 100% !important; }
.iow-page .manifesto-line {
  font-size: clamp(28px, 3.35vw, 46px) !important;
  line-height: 1.34 !important;
}
.iow-page .manifesto-close {
  font-size: clamp(24px, 2.5vw, 34px) !important;
}
.iow-page .entry-lead {
  font-size: clamp(30px, 4.15vw, 48px) !important;
}
@media (max-width: 560px) {
  .iow-page .manifesto-line {
    font-size: 30px !important;
    line-height: 1.38 !important;
  }
  .iow-page .manifesto-close {
    font-size: 25px !important;
  }
}

/*  IOW7 GLOBAL COLOR SYSTEM  from feel-better-180  */
:root {
    --gold: #C9A96E;
    --gold-light: #E8D5A3;
    --gold-dim: #7A6040;
    --dark: #080B0F;
    --dark-2: #0F1318;
    --dark-3: #161C24;
    --teal: #1D9E75;
    --teal-dim: #0F5A42;
    --text: #D4CEC6;
    --text-dim: #7A7570;
    --white: #F5F2EE;
}

/*  GLOBAL BACKGROUND & BASE COLORS  */
body {
    background-color: var(--dark) !important;
    color: var(--text) !important;
}

/*  HEADER / NAV COLORS  */
.site-header,
.ast-primary-header-bar,
#masthead {
    background-color: var(--dark) !important;
    border-bottom: 1px solid rgba(201,169,110,0.12) !important;
}

.main-header-bar {
    background-color: var(--dark) !important;
}

/* Nav links */
.main-header-menu .menu-item > a,
.ast-builder-menu-1 .menu-item > a,
header .menu-item > a {
    color: var(--text) !important;
    font-family: 'Jost', sans-serif !important;
    font-weight: 300 !important;
    letter-spacing: 0.08em !important;
    font-size: 13px !important;
}

.main-header-menu .menu-item > a:hover,
header .menu-item > a:hover {
    color: var(--gold) !important;
}

/* Nav CTA button */
.ast-header-button-1 .ast-custom-button,
header .menu-item.ast-menu-item-custom > a,
.site-header a[href*="appointment"],
.site-header .menu-item:last-child > a {
    background: transparent !important;
    border: 1px solid var(--gold-dim) !important;
    color: var(--gold) !important;
    letter-spacing: 0.3em !important;
    font-size: 11px !important;
    padding: 10px 24px !important;
    border-radius: 0 !important;
    transition: all 0.3s ease !important;
}

/*  FOOTER COLORS  */
.site-footer,
#colophon,
.footer-widget-area,
.ast-small-footer {
    background-color: var(--dark) !important;
    border-top: 1px solid rgba(201,169,110,0.1) !important;
    color: var(--text-dim) !important;
}

.site-footer a,
#colophon a {
    color: var(--gold-dim) !important;
}

/*  PAGE CONTENT  */
.entry-content,
.elementor-section,
.elementor-widget-wrap {
    background-color: transparent;
}

/*  SECTION DIVIDERS  */
.iow7-divider {
    width: 60px;
    height: 1px;
    background: linear-gradient(90deg, transparent, var(--gold), transparent);
    margin: 48px auto;
}

/*  SCROLLBAR  */
::-webkit-scrollbar { width: 6px; }
::-webkit-scrollbar-track { background: var(--dark-2); }
::-webkit-scrollbar-thumb { background: var(--gold-dim); border-radius: 3px; }
::-webkit-scrollbar-thumb:hover { background: var(--gold); }

/*  LANDING PAGE BACKGROUND - flat dark matching feel-better  */
.iow-page {
    background: var(--dark) !important;
}

/*  HEADING PROMINENCE  */
h1, h2, h3, h4 {
    color: var(--white) !important;
    font-weight: 700 !important;
}

.entry-content h1,
.entry-content h2,
.entry-content h3,
.entry-content h4,
.elementor-widget-heading .elementor-heading-title {
    color: var(--white) !important;
    font-weight: 700 !important;
}

/* Section titles on dark pages */
.ast-container h1,
.ast-container h2,
.ast-container h3,
.ast-container h4 {
    color: var(--white) !important;
}

/*  ASTRA HEADER LOGO — replace Lumora SVG with IOW7 text  */
.custom-logo {
    display: none !important;
}
.custom-logo-link {
    text-decoration: none !important;
}
.custom-logo-link::before {
    content: 'IOW7';
    font-family: 'Jost', sans-serif;
    font-size: 22px;
    font-weight: 700;
    letter-spacing: 0.15em;
    color: var(--white);
}

/*  FOOTER — hide Lumora placeholder widget rows, keep only bottom bar  */
.site-above-footer-wrap,
.site-above-footer-inner-wrap {
    display: none !important;
}

/*  FOOTER primary section — clean up padding  */
.site-primary-footer-wrap {
    padding: 20px 0 !important;
}

/*  FOOTER HTML 1 — remove background, ensure clean display  */
.ast-footer-html-1 {
    background: transparent !important;
}
.ast-footer-html-1 p {
    margin: 0 !important;
    color: var(--text) !important;
}

/*  FOOTER — ensure primary footer has dark background  */
.site-primary-footer-wrap {
    background-color: var(--dark) !important;
    border-top: 1px solid rgba(201,169,110,0.1) !important;
}