/* The site menu only, lifted from post-v2-base.css by scripts/patch_nav_custom.py for pages with their own styles. Rebuild with that script. */
.w-icon-nav-menu:before {content: "";}
.w-inline-block {max-width: 100%; display: inline-block;}
.w-container {max-width: 940px; margin-left: auto; margin-right: auto;}
.w-container:before, .w-container:after {content: " "; grid-area: 1 / 1 / 2 / 2; display: table;}
.w-container:after {clear: both;}
@media screen and (max-width: 991px) {
.w-container {max-width: 728px;}
}
@media screen and (max-width: 479px) {
.w-container {max-width: none;}
}
.w-dropdown {text-align: left; z-index: 900; margin-left: auto; margin-right: auto; display: inline-block; position: relative;}
.w-dropdown-toggle, .w-dropdown-link {vertical-align: top; color: #222; text-align: left; white-space: nowrap; margin-left: auto; margin-right: auto; padding: 20px; text-decoration: none; position: relative;}
.w-dropdown-toggle {-webkit-user-select: none; user-select: none; cursor: pointer; padding-right: 40px; display: inline-block;}
.w-dropdown-toggle:focus {outline: 0;}
.w-dropdown-list {background: #ddd; min-width: 100%; display: none; position: absolute;}
.w-dropdown-list.w--open {display: block;}
.w-dropdown-link {color: #222; padding: 10px 20px; display: block;}
.w-dropdown-link.w--current {color: #0082f3;}
.w-dropdown-link:focus {outline: 0;}
@media screen and (max-width: 767px) {
.w-nav-brand {padding-left: 10px;}
}
.w-nav {z-index: 1000; background: #ddd; position: relative;}
.w-nav:before, .w-nav:after {content: " "; grid-area: 1 / 1 / 2 / 2; display: table;}
.w-nav:after {clear: both;}
.w-nav-brand {float: left; color: #333; text-decoration: none; position: relative;}
.w-nav-menu {float: right; position: relative;}
.w-nav-overlay {width: 100%; display: none; position: absolute; top: 100%; left: 0; right: 0; overflow: hidden;}
.w-nav-overlay [data-nav-menu-open] {top: 0;}
.w-nav[data-animation="over-left"] .w-nav-overlay {width: auto;}
.w-nav[data-animation="over-left"] .w-nav-overlay, .w-nav[data-animation="over-left"] [data-nav-menu-open] {z-index: 1; top: 0; right: auto;}
.w-nav[data-animation="over-right"] .w-nav-overlay {width: auto;}
.w-nav[data-animation="over-right"] .w-nav-overlay, .w-nav[data-animation="over-right"] [data-nav-menu-open] {z-index: 1; top: 0; left: auto;}
.w-nav-button {float: right; cursor: pointer; -webkit-tap-highlight-color: #0000; tap-highlight-color: #0000; -webkit-user-select: none; user-select: none; padding: 18px; font-size: 24px; display: none; position: relative;}
.w-nav-button:focus {outline: 0;}
.w-nav-button.w--open {color: #fff; background-color: #c8c8c8;}
.w-nav[data-collapse="all"] .w-nav-menu {display: none;}
.w-nav[data-collapse="all"] .w-nav-button, .w--nav-dropdown-open, .w--nav-dropdown-toggle-open {display: block;}
@media screen and (max-width: 991px) {
.w-nav[data-collapse="medium"] .w-nav-menu {display: none;}
.w-nav[data-collapse="medium"] .w-nav-button {display: block;}
}
@media screen and (max-width: 767px) {
.w-nav[data-collapse="small"] .w-nav-menu {display: none;}
.w-nav[data-collapse="small"] .w-nav-button {display: block;}
.w-nav-brand {padding-left: 10px;}
}
@media screen and (max-width: 479px) {
.w-nav[data-collapse="tiny"] .w-nav-menu {display: none;}
.w-nav[data-collapse="tiny"] .w-nav-button {display: block;}
}
:root { --white: white; --jwelshgrey: #f3f5f9; --black: black; --jwelshbg: #f3f5fb; --accent: #49a6a0; --dark-green: white}
.nav {flex-direction: row; justify-content: space-between; align-items: center; padding: 40px; display: none; position: absolute; inset: 0% 0% auto; overflow: visible;}
.nav.nav--light {z-index: 4; background-color: var(--jwelshgrey); border-bottom: 1px solid #d7e1f0; flex-flow: column; justify-content: center; align-items: center; margin-left: auto; margin-right: auto; padding: 12px 0; display: flex; position: sticky; top: 0; box-shadow: inset 0 1px 1px #0003;}
.logo__wrapper {flex: none; justify-content: flex-start; align-items: center; width: 202px; display: flex;}
.nav_menu {grid-column-gap: 8px; grid-row-gap: 8px; flex-direction: row; flex: 0 auto; justify-content: flex-end; align-items: center; width: 100%; max-width: 100%; display: flex;}
.headernav__item {color: #fff; letter-spacing: -1px; padding: 10px; font-family: Work Sans, sans-serif; font-size: 20px; font-weight: 500; line-height: 23px; text-decoration: none;}
.headernav__item:hover {color: #49a6a0;}
.headernav__item.headernav__item--light {color: var(--black);}
.headernav__item.headernav__item--light.dropdown {grid-column-gap: .5rem; grid-row-gap: .5rem; border-bottom: 2px solid #0000; justify-content: center; align-items: center; font-size: 16px; font-weight: 400; display: flex;}
.headernav__item.headernav__item--light.dropdown:hover {border-bottom-color: #000;}
.headernav__item.headernav__item--light.fontsize-16 {letter-spacing: 0; border-bottom: 2px solid #0000; font-size: 16px; font-weight: 400;}
.headernav__item.headernav__item--light.fontsize-16:hover {border-bottom-color: #000;}
.headernav__item.headernavnew__item--cta {border: 1px solid var(--black); letter-spacing: 0; text-transform: capitalize; cursor: pointer; background-color: #012321; border-radius: 100px; justify-content: center; align-items: center; height: 44px; padding: 1rem 1.5rem; font-family: Manrope, sans-serif; font-size: 14px; font-weight: 400; line-height: 24px; transition: all .3s; display: flex;}
.headernav__item.headernavnew__item--cta:hover {border-color: var(--accent); background-color: var(--accent); color: var(--black);}
.headernav__item.headernavnew__item--cta.mobile {display: none;}
.logodark {width: 202px;}
.header_sub-nav_item.headernav__item--light {color: var(--black); font-size: 16px;}
.header_sub-nav_item.headernav__item--light.dropdown {grid-column-gap: .5rem; grid-row-gap: .5rem; justify-content: flex-start; align-items: flex-start; display: flex;}
.header_sub-nav_item.headernavnew__item--cta {border: 1px solid var(--black); letter-spacing: 0; text-transform: capitalize; cursor: pointer; background-color: #012321; border-radius: 100px; justify-content: center; align-items: center; height: 44px; padding: 1rem 1.5rem; font-family: Manrope, sans-serif; font-size: 14px; font-weight: 400; line-height: 24px; transition: all .3s; display: flex;}
.header_sub-nav_item.headernavnew__item--cta:hover {border-color: var(--accent); background-color: var(--accent); color: var(--black);}
.sub-nav_wrap {transition: all .3s ease-in;}
.sub-nav_wrap.w--open {background-color: var(--jwelshbg); border: 1px solid #0000003d; border-radius: 4px; flex-flow: column; justify-content: space-between; align-items: center; width: auto; display: flex; top: 52px;}
.dropdown-2 {margin-left: 0; margin-right: 0;}
.navbar_v2_wrapper {grid-column-gap: 0px; grid-row-gap: 0px; flex-flow: row; flex: 0 auto; justify-content: space-between; align-items: center; width: 100%; max-width: 1200px; margin-left: 0; margin-right: 0; padding-left: 0; display: flex; position: relative;}
.menu-button-2, .mobile_cta_wrap {display: none;}
@media screen and (max-width: 991px) {
.nav {padding-left: 20px; padding-right: 20px; display: none;}
.nav.nav--light {flex-flow: column; padding-top: 0; padding-bottom: 0; display: flex; position: sticky;}
.nav_menu {grid-column-gap: 1rem; grid-row-gap: 1rem; background-color: var(--jwelshbg); border-bottom: 2px solid #000; flex-flow: row; flex: 0 auto; justify-content: flex-start; align-items: flex-start; width: 100%; height: 100vh; padding: 2rem; display: flex;}
.headernav__item.headernav__item--light.dropdown {justify-content: flex-start; align-items: center; width: auto; padding-left: 10px; transition: all .3s;}
.headernav__item.headernav__item--light.fontsize-16 {justify-content: flex-start; align-items: flex-start; width: auto; padding-left: 10px; display: flex;}
.headernav__item.headernavnew__item--cta {margin-top: .5rem;}
.headernav__item.headernavnew__item--cta.mobile {display: flex;}
.menu-button.w--open {background-color: #dfeceb;}
.sub-nav_wrap {position: static;}
.dropdown-2 {width: 100%; position: static;}
.navbar_v2_wrapper {grid-column-gap: 0px; grid-row-gap: 0px; grid-template-rows: auto; grid-template-columns: 1fr 1fr; grid-auto-columns: 1fr; justify-content: flex-start; align-items: center; padding: .75rem; display: flex;}
.menu-button-2 {grid-column-gap: 0px; grid-row-gap: 0px; background-color: var(--jwelshbg); border-radius: .25rem; justify-content: center; align-items: center; width: auto; height: auto; padding: .5rem; display: flex;}
.menu-button-2.w--open {background-color: var(--black); justify-content: center; align-items: center;}
.mobile_cta_wrap {grid-column-gap: 8px; grid-row-gap: 8px; justify-content: flex-end; align-items: center; width: 100%; display: flex;}
.icon-4 {width: 24px; height: 24px;}
}
@media screen and (max-width: 767px) {
.nav {display: none;}
.headernav__item.headernavnew__item--cta {display: flex;}
.headernav__item.headernavnew__item--cta.mobile {margin-top: 0;}
.navbar_v2_wrapper {padding-right: .5rem;}
}
@media screen and (max-width: 479px) {
.nav {display: none;}
.logo__wrapper {width: auto; padding-left: 0;}
.logo__wrapper.w--current {width: 140px;}
.headernav__item.headernavnew__item--cta.mobile {margin-top: 0;}
.menu-button {background-color: #fff; width: 24px; height: 24px; padding: 0;}
.menu-button.w--open {background-color: var(--jwelshbg);}
.logodark {width: auto;}
.logodark.desktop {width: 180px; max-width: none;}
.navbar_v2_wrapper {grid-column-gap: 0px; grid-row-gap: 0px; flex: 0 auto;}
.mobile_cta_wrap {grid-column-gap: 16px; grid-row-gap: 16px; justify-content: flex-end; align-items: center;}
}
.nav-right {display: none;}
.nav-login {color: #7a837d;}
.nav-login:hover {color: #1c211d;}
@media screen and (min-width: 992px) {
.navbar_v2_wrapper {display: grid; grid-template-columns: 1fr auto 1fr; align-items: center;}
.navbar_v2_wrapper .logo__wrapper {grid-column: 1; grid-row: 1;}
.navbar_v2_wrapper .nav_menu {grid-column: 2; grid-row: 1; justify-self: center;}
.navbar_v2_wrapper .nav-right {grid-column: 3; grid-row: 1; display: flex; justify-self: end; align-items: center; gap: 12px;}
.navbar_v2_wrapper .mobile_cta_wrap {display: none;}
.nav_menu .nav-login, .nav_menu .headernavnew__item--cta {display: none;}
}
:root { --color-bg: #fdfaf6; --color-bg-alt: #f5f0e8; --color-bg-dark: #1a1a2e; --color-text: #2d2d2d; --color-text-light: #5a5a5a; --color-text-white: #ffffff; --color-accent: #6b4c3b; --color-accent-hover: #5a3d2f; --color-border: #e0d5c7; --color-cta: #2563eb; --color-cta-hover: #1d4ed8; --font-heading: "Fraunces", "Playfair Display", Georgia, serif; --font-body: "Instrument Sans", "Work Sans", system-ui, sans-serif; --radius-sm: 8px; --radius-md: 12px; --radius-lg: 16px; --radius-pill: 999px; --shadow-card: 0 2px 12px rgba(0, 0, 0, 0.04); --accent: #6b4c3b; --jwelshgrey: #fdfaf6; --jwelshbg: #f5f0e8; --black: #2d2d2d}
html[data-theme="7stages"] p, html[data-theme="7stages"] .hero_text-description, html[data-theme="7stages"] .services__text {font-family: var(--font-body); color: var(--color-text-light); line-height: 1.65;}
p, .hero_text-description, .services__text {font-family: var(--font-body); color: var(--color-text-light); line-height: 1.65;}
html[data-theme="7stages"] .about__subheading {font-family: var(--font-body); color: var(--color-accent); text-transform: uppercase; letter-spacing: 0.1em; font-size: 0.8rem; font-weight: 600;}
.about__subheading {font-family: var(--font-body); color: var(--color-accent); text-transform: uppercase; letter-spacing: 0.1em; font-size: 0.8rem; font-weight: 600;}
html[data-theme="7stages"] .nav.nav--light {background-color: var(--color-bg); border-bottom: 1px solid var(--color-border); box-shadow: none; padding-top: 8px; padding-bottom: 8px;}
.nav.nav--light {background-color: var(--color-bg); border-bottom: 1px solid var(--color-border); box-shadow: none; padding-top: 8px; padding-bottom: 8px;}
html[data-theme="7stages"] .headernav__item, html[data-theme="7stages"] .headernav__item.headernav__item--light, html[data-theme="7stages"] .headernav__item.headernav__item--light.fontsize-16 {font-family: var(--font-body); color: var(--color-text); letter-spacing: 0; font-weight: 500; font-size: 15px; border-bottom: 2px solid transparent;}
.headernav__item, .headernav__item.headernav__item--light, .headernav__item.headernav__item--light.fontsize-16 {font-family: var(--font-body); color: var(--color-text); letter-spacing: 0; font-weight: 500; font-size: 15px; border-bottom: 2px solid transparent;}
html[data-theme="7stages"] .headernav__item.headernav__item--light:hover, html[data-theme="7stages"] .headernav__item.headernav__item--light.fontsize-16:hover {color: var(--color-accent); border-bottom-color: var(--color-accent);}
.headernav__item.headernav__item--light:hover, .headernav__item.headernav__item--light.fontsize-16:hover {color: var(--color-accent); border-bottom-color: var(--color-accent);}
html[data-theme="7stages"] .headernav__item.headernavnew__item--cta {background-color: var(--color-cta); color: var(--color-text-white); border: none; border-radius: var(--radius-sm); padding: 10px 20px; font-family: var(--font-body); font-size: 14px; font-weight: 600; text-transform: none; letter-spacing: 0;}
.headernav__item.headernavnew__item--cta {background-color: var(--color-cta); color: var(--color-text-white); border: none; border-radius: var(--radius-sm); padding: 10px 20px; font-family: var(--font-body); font-size: 14px; font-weight: 600; text-transform: none; letter-spacing: 0;}
html[data-theme="7stages"] .headernav__item.headernavnew__item--cta:hover {background-color: var(--color-cta-hover); color: var(--color-text-white); transform: translateY(-1px);}
.headernav__item.headernavnew__item--cta:hover {background-color: var(--color-cta-hover); color: var(--color-text-white); transform: translateY(-1px);}
html[data-theme="7stages"] .sub-nav_wrap, html[data-theme="7stages"] .w-dropdown-list {background: var(--color-text-white); border: 1px solid var(--color-border); border-radius: var(--radius-sm); box-shadow: 0 8px 24px rgba(0, 0, 0, 0.08);}
.sub-nav_wrap, .w-dropdown-list {background: var(--color-text-white); border: 1px solid var(--color-border); border-radius: var(--radius-sm); box-shadow: 0 8px 24px rgba(0, 0, 0, 0.08);}
html[data-theme="7stages"] .header_sub-nav_item, html[data-theme="7stages"] .w-dropdown-link {font-family: var(--font-body); color: var(--color-text);}
.header_sub-nav_item, .w-dropdown-link {font-family: var(--font-body); color: var(--color-text);}
html[data-theme="7stages"] .section_hero {background-color: var(--color-bg-alt); margin-top: 0; padding: 72px 0 56px;}
.section_hero {background-color: var(--color-bg-alt); margin-top: 0; padding: 72px 0 56px;}
html[data-theme="7stages"] .section_hero .hero_img-wrapper {border-radius: 20px; overflow: hidden; box-shadow: var(--shadow-card); aspect-ratio: 4 / 5; max-height: 540px;}
.section_hero .hero_img-wrapper {border-radius: 20px; overflow: hidden; box-shadow: var(--shadow-card); aspect-ratio: 4 / 5; max-height: 540px;}
html[data-theme="7stages"] .section.section--light {background-color: var(--color-bg);}
.section.section--light {background-color: var(--color-bg);}
html[data-theme="7stages"] .service__wrap {background-color: var(--color-text-white); border: 1px solid var(--color-border); border-radius: var(--radius-lg); box-shadow: var(--shadow-card); padding: 28px 24px;}
.service__wrap {background-color: var(--color-text-white); border: 1px solid var(--color-border); border-radius: var(--radius-lg); box-shadow: var(--shadow-card); padding: 28px 24px;}
html[data-theme="7stages"] .footer {background-color: var(--color-bg-dark);}
.footer {background-color: var(--color-bg-dark);}
html[data-theme="7stages"] .footerlinks, html[data-theme="7stages"] .footerlinks__heading, html[data-theme="7stages"] .footercopyright__text {font-family: var(--font-body);}
.footerlinks, .footerlinks__heading, .footercopyright__text {font-family: var(--font-body);}
html[data-theme="7stages"] .divider {background-color: rgba(255, 255, 255, 0.12);}
.divider {background-color: rgba(255, 255, 255, 0.12);}
html[data-theme="7stages"] [class*="treatment"] {font-family: var(--font-heading);}
[class*="treatment"] {font-family: var(--font-heading);}
@media (max-width: 767px) {
html[data-theme="7stages"] .section_hero {padding: 48px 0 40px;}
.section_hero {padding: 48px 0 40px;}
}
html[data-theme="7stages"] .sub-nav_wrap .course-soon-badge, .sub-nav_wrap .course-soon-badge {flex: 0 0 auto; margin-left: 12px; padding: 2px 8px; font-family: var(--font-body, "Instrument Sans", sans-serif); font-size: 10px; font-weight: 600; letter-spacing: 0.04em; text-transform: uppercase; color: #1b5e3f; background: #e7f3ec; border: 1px solid #bcdcca; border-radius: 999px; line-height: 1.5; white-space: nowrap;}
.sub-nav_wrap .course-soon-badge, .sub-nav_wrap .course-soon-badge {flex: 0 0 auto; margin-left: 12px; padding: 2px 8px; font-family: var(--font-body, "Instrument Sans", sans-serif); font-size: 10px; font-weight: 600; letter-spacing: 0.04em; text-transform: uppercase; color: #1b5e3f; background: #e7f3ec; border: 1px solid #bcdcca; border-radius: 999px; line-height: 1.5; white-space: nowrap;}
@media (max-width: 991px) {
html[data-theme="7stages"] .nav.w-nav {position: sticky; top: 0; z-index: 1000;}
.nav.w-nav {position: sticky; top: 0; z-index: 1000;}
html[data-theme="7stages"] .nav .navbar_v2_wrapper {position: relative;}
.nav .navbar_v2_wrapper {position: relative;}
html[data-theme="7stages"] .nav .nav_menu {display: none !important;}
.nav .nav_menu {display: none !important;}
html[data-theme="7stages"] .nav .menu-button-2 {display: flex !important;}
.nav .menu-button-2 {display: flex !important;}
html[data-theme="7stages"] .nav .mobile_cta_wrap {display: flex !important;}
.nav .mobile_cta_wrap {display: flex !important;}
html[data-theme="7stages"] .nav .nav_menu[data-nav-menu-open] {display: flex !important; position: absolute; top: 100%; left: 0; right: 0; width: 100%; height: auto; max-height: calc(100vh - 72px); overflow-y: auto; flex-flow: column nowrap; justify-content: flex-start; align-items: stretch; gap: 2px; padding: 14px 20px 22px; background-color: var(--color-bg, #fdfaf6); border-top: 1px solid var(--color-border, #e6ddce); box-shadow: 0 22px 44px -26px rgba(33, 28, 23, 0.45);}
.nav .nav_menu[data-nav-menu-open] {display: flex !important; position: absolute; top: 100%; left: 0; right: 0; width: 100%; height: auto; max-height: calc(100vh - 72px); overflow-y: auto; flex-flow: column nowrap; justify-content: flex-start; align-items: stretch; gap: 2px; padding: 14px 20px 22px; background-color: var(--color-bg, #fdfaf6); border-top: 1px solid var(--color-border, #e6ddce); box-shadow: 0 22px 44px -26px rgba(33, 28, 23, 0.45);}
html[data-theme="7stages"] .nav .nav_menu[data-nav-menu-open] > .headernav__item, html[data-theme="7stages"] .nav .nav_menu[data-nav-menu-open] > .courses-dropdown, html[data-theme="7stages"] .nav .nav_menu[data-nav-menu-open] .w-dropdown {width: 100%;}
.nav .nav_menu[data-nav-menu-open] > .headernav__item, .nav .nav_menu[data-nav-menu-open] > .courses-dropdown, .nav .nav_menu[data-nav-menu-open] .w-dropdown {width: 100%;}
html[data-theme="7stages"] .nav .nav_menu[data-nav-menu-open] .headernav__item {justify-content: flex-start; padding: 12px 4px;}
.nav .nav_menu[data-nav-menu-open] .headernav__item {justify-content: flex-start; padding: 12px 4px;}
html[data-theme="7stages"] .nav .nav_menu[data-nav-menu-open] .headernavnew__item--cta {justify-content: center; text-align: center; padding: 14px 20px;}
.nav .nav_menu[data-nav-menu-open] .headernavnew__item--cta {justify-content: center; text-align: center; padding: 14px 20px;}
html[data-theme="7stages"] .nav .nav_menu[data-nav-menu-open] .sub-nav_wrap {position: static !important; width: 100%; box-shadow: none; padding-left: 12px;}
.nav .nav_menu[data-nav-menu-open] .sub-nav_wrap {position: static !important; width: 100%; box-shadow: none; padding-left: 12px;}
}
.nav.nav--light { position: relative; z-index: 50; }
