:root {
  --font-heading: "Cormorant Garamond", Georgia, serif;
  --font-body: "Satoshi", "Nunito Sans", Arial, sans-serif;
  --font-ui: "Sora", "Nunito Sans", Arial, sans-serif;
  --text-body: 18.7px;
  --text-body-line: 1.62;

  --color-bg: #F8F0E6;
  --color-bg-soft: #FCF8F1;
  --color-card: #FBF6EE;
  --color-text: #2F2926;
  --color-muted: #756D63;
  --color-green: #8F9C7C;
  --color-green-dark: #617052;
  --color-green-button: #6F7B5D;
  --color-white: #FFFFFF;

  --container-main: 1200px;
  --container-nav: 1236px;

  --radius-card: 10px;
  --radius-small: 7px;
  --radius-pill: 999px;

  --shadow-soft: 0 16px 40px rgba(50, 42, 34, 0.10);
}

html,
body {
  margin: 0;
  background: var(--color-bg) !important;
  color: var(--color-text) !important;
  font-family: var(--font-body) !important;
  font-weight: 400;
  line-height: 1.65;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

body,
main,
.page,
.site-wrapper,
.hero,
.section,
.cream-section {
  background: var(--color-bg) !important;
}

img {
  max-width: 100%;
  display: block;
}

.container,
.section-container,
.hero-grid,
.services-container,
.approach-container,
.about-container,
.testimonials-container,
.faq-container,
.call-container,
.bio-container,
.section-inner,
.hero-head,
.hero-story,
.credibility-strip-inner,
.site-footer-grid,
.footer-contact-band-inner {
  max-width: var(--container-main) !important;
  width: min(var(--container-main), calc(100vw - 32px)) !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.navbar,
.nav-shell,
.site-header {
  max-width: var(--container-nav) !important;
  width: min(var(--container-nav), calc(100vw - 96px)) !important;
  min-height: 70px !important;
  margin: 36px auto 0 !important;
  padding: 11px 18px 11px 30px !important;
  gap: 14px !important;
  border-radius: var(--radius-pill) !important;
  background: var(--color-bg-soft) !important;
  box-shadow: var(--shadow-soft) !important;
  display: flex !important;
  align-items: center !important;
  box-sizing: border-box !important;
}

.site-nav {
  flex: 1 1 auto !important;
  min-width: 0 !important;
  justify-content: center !important;
  gap: 22px !important;
}

.header-controls {
  flex-shrink: 0 !important;
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
}

.lang-switch {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  padding: 4px !important;
  border-radius: var(--radius-pill) !important;
  background: var(--color-bg-soft) !important;
}

body[data-lang="en"] .nav-link,
body[data-lang="it"] .nav-link,
body[data-lang="en"] .navbar a,
body[data-lang="it"] .navbar a,
body[data-lang="en"] .nav-menu a,
body[data-lang="it"] .nav-menu a,
body[data-lang="en"] .site-nav a,
body[data-lang="it"] .site-nav a,
body[data-lang="en"] .site-nav .nav-link-button,
body[data-lang="it"] .site-nav .nav-link-button,
body[data-lang="en"] .lang-option,
body[data-lang="it"] .lang-option {
  font-family: var(--font-ui) !important;
  font-size: 11px !important;
  line-height: 1 !important;
  font-weight: 600 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  color: var(--color-muted) !important;
  text-decoration: none !important;
  white-space: nowrap !important;
}

body[data-lang="en"] .site-nav a,
body[data-lang="it"] .site-nav a,
body[data-lang="en"] .site-nav .nav-link-button,
body[data-lang="it"] .site-nav .nav-link-button {
  display: inline-flex !important;
  align-items: center !important;
  min-height: 44px !important;
}

body[data-lang="en"] .site-nav [data-i18n="nav.contact"],
body[data-lang="it"] .site-nav [data-i18n="nav.contact"] {
  color: var(--color-muted) !important;
}

.logo,
.site-logo,
.brand,
.brand-mark {
  font-family: var(--font-heading) !important;
  font-size: 28px !important;
  line-height: 0.92 !important;
  font-weight: 400 !important;
  letter-spacing: -0.02em !important;
  color: var(--color-text) !important;
}

.brand,
.site-logo,
.logo {
  min-height: 44px !important;
  display: inline-flex !important;
  align-items: center !important;
  margin-right: 22px !important;
}

.brand-mark {
  position: relative !important;
  top: -1px !important;
}

body[data-lang="en"] .nav-cta,
body[data-lang="it"] .nav-cta,
body[data-lang="en"] .header-cta,
body[data-lang="it"] .header-cta,
body[data-lang="en"] .navbar .button,
body[data-lang="it"] .navbar .button,
body[data-lang="en"] .book-call-button,
body[data-lang="it"] .book-call-button,
body[data-lang="en"] .site-nav .nav-cta,
body[data-lang="it"] .site-nav .nav-cta {
  font-family: var(--font-ui) !important;
  font-size: 10.5px !important;
  line-height: 1 !important;
  font-weight: 700 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  color: var(--color-card) !important;
  background: var(--color-green-button) !important;
  border-radius: var(--radius-pill) !important;
  min-height: 44px !important;
  padding: 0 26px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  white-space: nowrap !important;
  box-shadow: 0 12px 28px rgba(83, 92, 68, 0.18) !important;
  transition:
    background-color 180ms ease,
    color 180ms ease,
    border-color 180ms ease,
    box-shadow 180ms ease,
    transform 180ms ease !important;
}

body[data-lang="en"] .lang-option.is-active,
body[data-lang="it"] .lang-option.is-active,
.lang-option.is-active {
  background: var(--color-green-button) !important;
  color: var(--color-card) !important;
  -webkit-text-fill-color: var(--color-card) !important;
}

body[data-lang="en"] .lang-option.is-active:hover,
body[data-lang="en"] .lang-option.is-active:focus,
body[data-lang="en"] .lang-option.is-active:focus-visible,
body[data-lang="it"] .lang-option.is-active:hover,
body[data-lang="it"] .lang-option.is-active:focus,
body[data-lang="it"] .lang-option.is-active:focus-visible,
.lang-option.is-active:hover,
.lang-option.is-active:focus,
.lang-option.is-active:focus-visible {
  color: var(--color-card) !important;
  background: var(--color-green-button) !important;
  -webkit-text-fill-color: var(--color-card) !important;
}

.lang-option {
  min-width: 34px !important;
  min-height: 34px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: var(--radius-pill) !important;
  background: transparent !important;
  color: var(--color-muted) !important;
}

.menu-toggle {
  display: none !important;
}

h1,
h2,
h3,
.hero-title,
.section-title,
.pain-title,
.pain-begin,
.begin-here,
.services-title,
.approach-title,
.about-title,
.testimonials-title,
.faq-title,
.call-title {
  font-family: var(--font-heading) !important;
  font-weight: 400 !important;
  letter-spacing: -0.035em !important;
  color: var(--color-text) !important;
}

body[data-lang="en"] .hero-title,
body[data-lang="it"] .hero-title {
  font-size: 64px !important;
  line-height: 0.89 !important;
  text-align: center !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 auto !important;
  padding: 0 !important;
  font-family: var(--font-heading) !important;
  font-weight: 400 !important;
  font-style: normal !important;
  letter-spacing: -0.02em !important;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
}

body[data-lang="en"] .section-title,
body[data-lang="it"] .section-title {
  font-family: var(--font-heading) !important;
  font-weight: 500 !important;
  font-style: normal !important;
  letter-spacing: -0.02em !important;
  white-space: nowrap !important;
  text-wrap: nowrap !important;
  max-width: none !important;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
}

.section-title,
.services-title,
.approach-title,
.about-title,
.testimonials-title,
.faq-title {
  font-size: 53px !important;
  line-height: 0.92 !important;
}

.pain-title {
  font-size: 50px !important;
  line-height: 0.94 !important;
  font-weight: 500 !important;
  color: var(--color-bg) !important;
}

.pain-begin,
.begin-here {
  font-family: var(--font-heading) !important;
  font-size: 50px !important;
  line-height: 0.95 !important;
  font-weight: 500 !important;
  letter-spacing: -0.035em !important;
  color: var(--color-bg) !important;
  text-align: right !important;
}

.call-title {
  font-size: 42px !important;
  line-height: 0.95 !important;
  color: var(--color-bg) !important;
}

.hero-title span,
.section-title span,
.services-title span,
.approach-title span,
.about-title span,
.testimonials-title span,
.faq-title span,
.call-title span {
  display: block;
}

.hero-title span {
  white-space: nowrap;
}

body[data-lang="en"] .hero-head,
body[data-lang="it"] .hero-head {
  width: 100% !important;
  max-width: 1200px !important;
  margin: 0 auto !important;
  display: grid !important;
  gap: 18px !important;
  text-align: center !important;
}

body[data-lang="en"] .hero-head h1,
body[data-lang="it"] .hero-head h1,
body[data-lang="en"] .hero-head .hero-title,
body[data-lang="it"] .hero-head .hero-title {
  max-width: none !important;
  margin: 0 auto !important;
}

body[data-lang="en"] .hero,
body[data-lang="it"] .hero {
  padding-top: 82px !important;
  padding-bottom: 32px !important;
}

body[data-lang="en"] .hero-head .eyebrow,
body[data-lang="it"] .hero-head .eyebrow {
  font-size: 11px !important;
  margin: 0 !important;
  text-align: center !important;
}

body[data-lang="en"] .hero-head .hero-title,
body[data-lang="it"] .hero-head .hero-title {
  width: auto !important;
  max-width: 100% !important;
  margin: 0 auto !important;
  font-size: 74px !important;
  line-height: 0.96 !important;
  font-weight: 500 !important;
  letter-spacing: -0.03em !important;
  color: #2F2926 !important;
}

body[data-lang="en"] .hero-head .hero-title span {
  white-space: nowrap !important;
}

body[data-lang="it"] .hero-head .hero-title span {
  white-space: nowrap !important;
}

body[data-lang="en"] .hero-story,
body[data-lang="it"] .hero-story {
  width: 100vw !important;
  max-width: none !important;
  margin: 34px calc(50% - 50vw) 0 !important;
  position: relative !important;
  display: grid !important;
  place-items: center !important;
  min-height: 560px !important;
  padding: 88px 40px 96px !important;
  border-radius: 0 !important;
  overflow: hidden !important;
  background:
    linear-gradient(180deg, rgba(28, 25, 22, 0.24) 0%, rgba(28, 25, 22, 0.08) 22%, rgba(28, 25, 22, 0.08) 74%, rgba(28, 25, 22, 0.24) 100%),
    var(--hero-story-image) center center / cover no-repeat !important;
  box-shadow: none !important;
  box-sizing: border-box !important;
}

body[data-lang="it"] .hero-story.hero-story-it {
  background:
    linear-gradient(180deg, rgba(28, 25, 22, 0.24) 0%, rgba(28, 25, 22, 0.08) 22%, rgba(28, 25, 22, 0.08) 74%, rgba(28, 25, 22, 0.24) 100%),
    url("./assets/photos/hero-opening.webp") center center / cover no-repeat !important;
}

body[data-lang="en"] .hero-story-copy,
body[data-lang="it"] .hero-story-copy {
  position: relative !important;
  z-index: 1 !important;
  width: min(680px, 100%) !important;
  max-width: 680px !important;
  display: grid !important;
  gap: 18px !important;
  text-align: center !important;
  padding-top: 0 !important;
  justify-items: center !important;
  align-content: center !important;
  transform: translateX(108px) !important;
}

body[data-lang="en"] .hero-media,
body[data-lang="it"] .hero-media,
body[data-lang="en"] .hero-visual,
body[data-lang="it"] .hero-visual,
body[data-lang="en"] .hero-image,
body[data-lang="it"] .hero-image {
  width: min(640px, 100%) !important;
  min-width: 640px !important;
  max-width: 640px !important;
  margin: 42px 0 0 !important;
  align-self: start !important;
}

body[data-lang="en"] .hero-image-panel,
body[data-lang="it"] .hero-image-panel,
.hero-media img,
.hero-image img,
.hero-visual img {
  width: 100% !important;
  max-width: none !important;
  height: 430px !important;
  min-height: 430px !important;
  aspect-ratio: auto !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  object-fit: cover !important;
  object-position: center center !important;
  border-radius: 26px !important;
  display: block !important;
}

.hero-media video,
.hero-image video,
.hero-visual video {
  width: 100% !important;
  height: 430px !important;
  object-fit: cover !important;
  object-position: center center !important;
  border-radius: 26px !important;
  display: block !important;
}

body,
p,
li,
.body-copy,
.section-copy,
.card-text,
.service-card p,
.pain-card p,
.about-text,
.about-text p,
.approach-card p,
.foundation-card p,
.testimonial-card p,
.faq-row,
.accordion-row,
.call-text,
.hero-copy,
.hero-support-line,
.service-overview,
.about-support-copy,
.call-note,
.video-testimonial p {
  font-family: var(--font-body) !important;
  font-weight: 400 !important;
  color: var(--color-text) !important;
}

p,
.body-copy,
.section-copy,
.about-text p,
.about-support-copy {
  font-size: var(--text-body) !important;
  line-height: calc(var(--text-body-line) + 0.08) !important;
  letter-spacing: -0.01em !important;
}

.hero-copy,
.hero-intro,
.hero-text,
.hero-body {
  max-width: 560px !important;
}

body[data-lang="en"] .hero-story-copy p,
body[data-lang="it"] .hero-story-copy p,
.hero-description,
.hero-copy,
.hero-closing-line {
  font-family: var(--font-heading, "Cormorant Garamond", Georgia, serif) !important;
  font-size: 27px !important;
  line-height: 1.22 !important;
  font-weight: 400 !important;
  letter-spacing: -0.02em !important;
  color: rgba(255, 249, 240, 0.94) !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  text-shadow: 0 10px 30px rgba(32, 25, 20, 0.18) !important;
}

body[data-lang="en"] .hero-story-copy p:last-of-type,
body[data-lang="it"] .hero-story-copy p:last-of-type,
.hero-copy:last-of-type,
.hero-closing-line:last-of-type {
  margin-bottom: 4px !important;
}

body[data-lang="en"] .hero-story-copy p:first-child,
body[data-lang="it"] .hero-story-copy p:first-child,
.hero-support-line {
  font-family: var(--font-ui) !important;
  font-size: 15px !important;
  line-height: 1.65 !important;
  font-weight: 500 !important;
  letter-spacing: -0.01em !important;
  color: #FFF8EE !important;
  margin: 0 !important;
  padding: 14px 18px !important;
  max-width: 640px !important;
  border-radius: 14px !important;
  background: rgba(47, 41, 38, 0.34) !important;
  backdrop-filter: blur(10px) !important;
  text-shadow: none !important;
}

.hero-actions {
  display: flex !important;
  justify-content: center !important;
  width: 100% !important;
  padding-top: 6px !important;
}

.hero-cta-link {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: fit-content !important;
  min-height: 58px !important;
  padding: 0 28px !important;
  border-radius: 999px !important;
  background: #6F7B5D !important;
  color: #FFF8EE !important;
  text-decoration: none !important;
  font-family: var(--font-ui) !important;
  font-size: 16px !important;
  line-height: 1 !important;
  font-weight: 700 !important;
  letter-spacing: -0.01em !important;
  box-shadow: 0 12px 28px rgba(83, 92, 68, 0.22) !important;
  transition: background-color 180ms ease, color 180ms ease, box-shadow 180ms ease, transform 180ms ease !important;
}

.hero-cta-link:hover,
.hero-cta-link:focus-visible {
  background: #627052 !important;
  color: #FFF8EE !important;
  box-shadow: 0 16px 34px rgba(83, 92, 68, 0.28) !important;
  transform: translateY(-1px) !important;
  outline: none !important;
}

@media (max-width: 900px) {
  .hero-layout,
  .hero-content,
  .hero-grid,
  body[data-lang="en"] .hero-story,
  body[data-lang="it"] .hero-story {
    min-height: 500px !important;
    padding: 62px 26px 72px !important;
  }

  body[data-lang="en"] .hero-story-copy,
  body[data-lang="it"] .hero-story-copy {
    width: 100% !important;
    max-width: 560px !important;
    padding-top: 0 !important;
    transform: translateX(56px) !important;
  }

  body[data-lang="en"] .hero-head .hero-title,
  body[data-lang="it"] .hero-head .hero-title {
    font-size: 58px !important;
  }

  .hero-media,
  .hero-image,
  .hero-visual,
  body[data-lang="en"] .hero-visual,
  body[data-lang="it"] .hero-visual {
    margin-top: 34px !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
  }

  .hero-media img,
  .hero-image img,
  .hero-visual img,
  .hero-media video,
  .hero-image video,
  .hero-visual video,
  body[data-lang="en"] .hero-image-panel,
  body[data-lang="it"] .hero-image-panel {
    height: 320px !important;
    min-height: 320px !important;
  }

  body[data-lang="en"] .hero-story-copy p,
  body[data-lang="it"] .hero-story-copy p,
  .hero-copy,
  .hero-closing-line,
  .hero-description {
    font-size: 15px !important;
    line-height: 1.58 !important;
  }

  body[data-lang="en"] .hero-story-copy p:first-child,
  body[data-lang="it"] .hero-story-copy p:first-child,
  .hero-support-line {
    font-size: 14px !important;
    line-height: 1.58 !important;
  }
}

@media (max-width: 600px) {
  body[data-lang="en"] .hero-head,
  body[data-lang="it"] .hero-head {
    max-width: 100% !important;
  }

  body[data-lang="en"] .hero-story,
  body[data-lang="it"] .hero-story {
    min-height: 420px !important;
    padding: 40px 18px 48px !important;
    border-radius: 0 !important;
    background:
      linear-gradient(180deg, rgba(28, 25, 22, 0.22) 0%, rgba(28, 25, 22, 0.06) 24%, rgba(28, 25, 22, 0.18) 100%),
      var(--hero-story-image) center center / cover no-repeat !important;
  }

  body[data-lang="it"] .hero-story.hero-story-it {
    background:
      linear-gradient(180deg, rgba(28, 25, 22, 0.22) 0%, rgba(28, 25, 22, 0.06) 24%, rgba(28, 25, 22, 0.18) 100%),
      url("./assets/photos/hero-opening.webp") center center / cover no-repeat !important;
  }

  body[data-lang="en"] .hero-head .hero-title,
  body[data-lang="it"] .hero-head .hero-title {
    font-size: 40px !important;
    line-height: 0.98 !important;
  }

  body[data-lang="it"] .hero-head .hero-title span {
    white-space: normal !important;
  }

  body[data-lang="en"] .hero-story-copy,
  body[data-lang="it"] .hero-story-copy {
    transform: none !important;
  }

  .hero-media img,
  .hero-image img,
  .hero-visual img,
  .hero-media video,
  .hero-image video,
  .hero-visual video,
  body[data-lang="en"] .hero-image-panel,
  body[data-lang="it"] .hero-image-panel {
    height: 260px !important;
    min-height: 260px !important;
    border-radius: 20px !important;
  }

  .hero-support-line,
  .hero-copy,
  .hero-closing-line,
  .hero-description {
    font-size: 14px !important;
  }

  body[data-lang="en"] .hero-story-copy p:first-child,
  body[data-lang="it"] .hero-story-copy p:first-child,
  .hero-support-line {
    font-size: 13px !important;
    padding: 12px 14px !important;
  }
}

body[data-lang="en"] .hero-lead-small,
body[data-lang="it"] .hero-lead-small,
body[data-lang="en"] .section-subtitle,
body[data-lang="it"] .section-subtitle,
body[data-lang="en"] .hero-support-line,
body[data-lang="it"] .hero-support-line,
body[data-lang="en"] .service-overview,
body[data-lang="it"] .service-overview,
body[data-lang="en"] .section-heading p,
body[data-lang="it"] .section-heading p,
body[data-lang="en"] .discovery-meta,
body[data-lang="it"] .discovery-meta {
  font-size: var(--text-body) !important;
  line-height: calc(var(--text-body-line) + 0.02) !important;
  color: var(--color-muted) !important;
}

.pain-card p {
  font-family: var(--font-body) !important;
  font-size: var(--text-body) !important;
  line-height: var(--text-body-line) !important;
  letter-spacing: -0.01em !important;
  font-weight: 400 !important;
  color: #5F574F !important;
}

.credibility-strip {
  min-height: 92px !important;
  padding: 0 !important;
  display: flex !important;
  align-items: flex-end !important;
}

.credibility-strip-inner {
  display: grid !important;
  gap: 0.12rem !important;
  padding: 18px 0 24px !important;
  border-top: 1px solid rgba(117, 109, 99, 0.18) !important;
  border-bottom: none !important;
  justify-items: start !important;
  text-align: left !important;
}

.credibility-line-primary,
.credibility-line-secondary {
  font-size: 0.68rem !important;
  line-height: 1.35 !important;
  letter-spacing: 0.12em !important;
  color: rgba(117, 109, 99, 0.62) !important;
  opacity: 0.78 !important;
}

.approach-credibility-note {
  display: grid !important;
  gap: 0 !important;
  margin-top: 46px !important;
  padding: 18px 0 24px !important;
  border-top: 1px solid rgba(117, 109, 99, 0.26) !important;
  justify-items: start !important;
  text-align: left !important;
}

.approach-credibility-note .credibility-line-primary {
  margin: 0 !important;
  color: rgba(101, 92, 82, 0.78) !important;
  opacity: 0.94 !important;
}

.pathways-credibility-note {
  display: grid !important;
  gap: 0 !important;
  margin-top: 40px !important;
  padding: 18px 0 24px !important;
  border-top: 1px solid rgba(117, 109, 99, 0.18) !important;
  justify-items: start !important;
  text-align: left !important;
}

.pathways-credibility-note .credibility-line-primary {
  margin: 0 !important;
}

.foundation-section {
  padding-bottom: 52px !important;
}

.service-card p,
.info-accordion p,
.service-detail-list li {
  font-size: 14.4px !important;
  line-height: 1.56 !important;
}

.approach-card p,
.foundation-card p {
  font-family: var(--font-body) !important;
  font-size: var(--text-body) !important;
  line-height: calc(var(--text-body-line) + 0.05) !important;
  font-weight: 400 !important;
  letter-spacing: -0.01em !important;
  color: #5F574F !important;
}

.faq-row,
.accordion-row,
.faq-question,
.faq-accordion summary {
  font-size: 13px !important;
  line-height: 1.2 !important;
  font-weight: 400 !important;
}

.faq-section .faq-accordion summary {
  font-family: var(--font-heading) !important;
  font-size: 25.2px !important;
  line-height: 1.12 !important;
  font-weight: 500 !important;
  letter-spacing: -0.02em !important;
  color: var(--color-text) !important;
  padding-top: 1.1rem !important;
  padding-bottom: 1.1rem !important;
}

.faq-accordion p {
  font-size: var(--text-body) !important;
  line-height: calc(var(--text-body-line) + 0.08) !important;
  color: rgba(117, 109, 99, 0.96) !important;
}

.card-title,
.service-card h3,
.pain-card h3,
.testimonial-card h3 {
  font-family: var(--font-heading) !important;
  font-weight: 400 !important;
  letter-spacing: -0.025em !important;
  color: var(--color-text) !important;
}

.service-card h3 {
  font-size: 26px !important;
  line-height: 1.02 !important;
  font-weight: 500 !important;
  text-align: center !important;
  width: 100% !important;
  justify-self: center !important;
}

body[data-lang="en"] .service-overview,
body[data-lang="it"] .service-overview {
  font-size: 14.5px !important;
  line-height: 1.42 !important;
  display: block !important;
}

.info-accordion summary {
  font-size: 13.6px !important;
}

.offer-card {
  display: grid !important;
  grid-template-rows: auto minmax(48px, auto) minmax(86px, auto) auto auto auto !important;
  align-content: start !important;
  height: 100% !important;
  gap: 0.9rem !important;
  padding: 1.5rem !important;
}

.offer-card-primary {
  align-items: stretch !important;
  gap: 1.25rem !important;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
  height: auto !important;
  align-self: start !important;
}

.offer-card-primary-copy {
  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-start !important;
  height: auto !important;
  gap: 0.85rem !important;
  align-self: start !important;
  padding-top: 0.15rem !important;
}

.offer-card h3,
.offer-card-primary-copy h3 {
  margin: 0 !important;
  align-self: start !important;
  display: flex !important;
  align-items: flex-start !important;
  justify-content: center !important;
}

.offer-card > p:not(.service-overview),
.offer-card-primary-copy > p:not(.service-overview) {
  margin: 0 !important;
}

.offer-card > p:not(.service-overview) {
  min-height: 86px !important;
}

.offer-card-primary-copy > p:not(.service-overview) {
  min-height: 90px !important;
}

.offer-card-primary-copy .info-accordion {
  margin-top: 0.35rem !important;
}

.offer-card .info-accordion,
.offer-card-primary-copy .info-accordion,
.offer-card .button.button-primary,
.offer-card-primary-copy .button.button-primary {
  align-self: end !important;
}

.offer-card .button.button-primary,
.offer-card-primary-copy .button.button-primary {
  width: 100% !important;
  min-height: 58px !important;
  font-size: 13.2px !important;
  line-height: 1 !important;
  padding: 0 22px !important;
}

.services-grid,
.offers-secondary-grid {
  align-items: stretch !important;
}

.offers-secondary-grid > .offer-card {
  height: 100% !important;
  gap: 0.9rem !important;
  grid-template-rows: auto minmax(50px, auto) minmax(48px, auto) minmax(86px, auto) auto auto !important;
}

.offers-secondary-grid > .offer-card > p:not(.service-overview) {
  min-height: 86px !important;
}

.offers-secondary-grid .info-accordion summary,
.offers-secondary-grid .button.button-primary {
  min-height: 52px !important;
  box-sizing: border-box !important;
}

.service-media-nutrition,
.service-media-integration {
  aspect-ratio: 1.38 !important;
  min-height: 225px !important;
}

.service-media-bodywork {
  aspect-ratio: 1.38 !important;
  min-height: 225px !important;
  height: auto !important;
}

.services-section,
.pathways-section,
.work-with-me-section {
  background: var(--color-bg, #F8F0E6) !important;
  padding: 84px 0 92px !important;
}

.services-section.pathways-section.work-with-me-section {
  position: relative !important;
  isolation: isolate !important;
  overflow: hidden !important;
  background:
    linear-gradient(180deg, rgba(250, 244, 233, 0.28) 0%, rgba(242, 228, 206, 0.22) 100%),
    url("./assets/photos/pathways-texture-ivory.jpg") center center / cover no-repeat !important;
}

.services-section.pathways-section.work-with-me-section::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  pointer-events: none !important;
  z-index: -1 !important;
  opacity: 1 !important;
  background:
    radial-gradient(ellipse 52% 24% at 18% 18%, rgba(255, 251, 244, 0.18) 0, rgba(255, 251, 244, 0.08) 22%, rgba(255, 251, 244, 0) 54%),
    radial-gradient(ellipse 42% 20% at 84% 16%, rgba(255, 247, 233, 0.12) 0, rgba(255, 247, 233, 0.04) 24%, rgba(255, 247, 233, 0) 52%);
  filter: blur(1px) !important;
}

.services-section.pathways-section.work-with-me-section::after {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  pointer-events: none !important;
  z-index: -1 !important;
  opacity: 0 !important;
  background: none !important;
  filter: none !important;
}

.services-header,
.pathways-header {
  max-width: 1120px !important;
  margin: 0 auto 34px auto !important;
}

.services-header .section-kicker,
.pathways-header .section-kicker,
.services-header .eyebrow,
.pathways-header .eyebrow {
  margin: 0 0 14px 0 !important;
  font-size: 13.5px !important;
  color: rgba(95, 104, 77, 0.88) !important;
}

.services-header .section-title,
.pathways-header .section-title {
  margin: 0 0 18px 0 !important;
  color: var(--color-text) !important;
}

.services-header .section-subtitle,
.pathways-header .section-subtitle {
  max-width: 760px !important;
  margin: 0 !important;
  color: rgba(117, 109, 99, 0.94) !important;
}

.services-grid,
.pathways-grid,
.work-grid {
  max-width: 1120px !important;
  margin: 36px auto 0 auto !important;
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 28px !important;
  align-items: start !important;
}

.service-card.featured,
.pathway-card.featured,
.services-grid > .service-card:first-child {
  grid-column: 1 / -1 !important;
  width: min(640px, calc(((100% - 28px) / 2) + 54px)) !important;
  justify-self: center !important;
}

.service-card,
.pathway-card,
.service-card:hover,
.pathway-card:hover {
  transform: none !important;
}

.service-card img,
.service-card:hover img,
.pathway-card img,
.pathway-card:hover img {
  transform: none !important;
  scale: 1 !important;
}

.service-card *,
.pathway-card * {
  transition-property: background-color, color, border-color, box-shadow !important;
}

.service-card,
.pathway-card {
  min-height: 620px !important;
  height: auto !important;
  align-self: start !important;
  padding: 18px !important;
  box-sizing: border-box !important;
  display: flex !important;
  flex-direction: column !important;
  background: var(--color-card, #FBF6EE) !important;
  border-radius: 18px !important;
  overflow: hidden !important;
}

.services-grid > .service-card,
.services-grid > .pathway-card,
.pathways-grid > .service-card,
.pathways-grid > .pathway-card,
.work-grid > .service-card,
.work-grid > .pathway-card {
  height: auto !important;
  align-self: start !important;
}

.service-card img,
.pathway-card img,
.service-card.featured img,
.pathway-card.featured img,
.services-grid > .service-card:first-child img {
  width: 100% !important;
  height: 400px !important;
  object-fit: cover !important;
  object-position: center 54% !important;
  border-radius: 14px !important;
  display: block !important;
}

.service-card.featured img,
.pathway-card.featured img,
.services-grid > .service-card:first-child img {
  height: 540px !important;
  object-fit: cover !important;
  object-position: center 62% !important;
}

.services-grid > .service-card:nth-child(2) img,
.pathways-grid > .pathway-card:nth-child(2) img,
.work-grid > .service-card:nth-child(2) img {
  object-position: center center !important;
}

.services-grid > .service-card:nth-child(3) img,
.pathways-grid > .pathway-card:nth-child(3) img,
.work-grid > .service-card:nth-child(3) img {
  object-position: center 38% !important;
}

.service-card-content,
.pathway-card-content {
  display: flex !important;
  flex-direction: column !important;
  flex: 1 !important;
  padding: 14px 6px 14px !important;
}

.service-card h3,
.pathway-card h3 {
  margin: 0 0 14px 0 !important;
  font-family: var(--font-heading, "Cormorant Garamond", Georgia, serif) !important;
  font-size: 30px !important;
  line-height: 1 !important;
  font-weight: 700 !important;
  letter-spacing: -0.025em !important;
  color: var(--color-text, #2F2926) !important;
  text-align: center !important;
  min-height: 46px !important;
  display: flex !important;
  align-items: flex-start !important;
  justify-content: center !important;
}

.service-card-title,
.pathway-card-title {
  text-align: center !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.service-card p,
.pathway-card p {
  margin: 0 0 18px 0 !important;
  font-family: var(--font-body) !important;
  font-size: var(--text-body) !important;
  line-height: var(--text-body-line) !important;
  font-weight: 400 !important;
  color: var(--color-text, #2F2926) !important;
}

.service-card > p,
.pathway-card > p,
.service-card-content > p,
.pathway-card-content > p,
.service-card .visible-copy,
.pathway-card .visible-copy,
.service-card .service-summary,
.pathway-card .service-summary,
.service-card .service-description,
.pathway-card .service-description,
.service-card .service-overview,
.pathway-card .service-overview {
  text-align: center !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.service-card .service-overview,
.pathway-card .service-overview {
  min-height: 44px !important;
}

.service-card-content > p:not(.service-overview),
.pathway-card-content > p:not(.service-overview) {
  min-height: 74px !important;
}

.service-card-content > p,
.pathway-card-content > p,
.service-content > p,
.pathway-content > p,
.service-card .visible-copy,
.pathway-card .visible-copy,
.service-card .service-summary,
.pathway-card .service-summary,
.service-card .service-description,
.pathway-card .service-description {
  margin-top: 0 !important;
  margin-bottom: 14px !important;
  text-align: center !important;
}

.service-card-content > p:first-of-type,
.pathway-card-content > p:first-of-type,
.service-content > p:first-of-type,
.pathway-content > p:first-of-type {
  margin-bottom: 14px !important;
}

.service-card-content > p:last-of-type,
.pathway-card-content > p:last-of-type,
.service-content > p:last-of-type,
.pathway-content > p:last-of-type {
  margin-bottom: 16px !important;
}

.service-card details p,
.pathway-card details p,
.service-card .more-info-content,
.pathway-card .more-info-content,
.service-card .dropdown-content,
.pathway-card .dropdown-content,
.service-card .accordion-content,
.pathway-card .accordion-content {
  text-align: left !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

.service-card .more-info-content,
.pathway-card .more-info-content,
.service-card .dropdown-content,
.pathway-card .dropdown-content,
.service-card .accordion-content,
.pathway-card .accordion-content {
  padding: 22px 32px 26px 32px !important;
  box-sizing: border-box !important;
  transform-origin: top center !important;
}

.service-card details[open] .more-info-content,
.pathway-card details[open] .more-info-content {
  padding-top: 24px !important;
  animation: pathwayMoreInfoReveal 760ms cubic-bezier(0.16, 0.84, 0.2, 1) both !important;
}

.service-card details[open] summary + *,
.pathway-card details[open] summary + * {
  margin-top: 18px !important;
}

.service-card .more-info-content p,
.pathway-card .more-info-content p {
  margin: 0 0 22px 0 !important;
}

.service-card .more-info-content ul,
.pathway-card .more-info-content ul {
  margin-top: 22px !important;
  margin-bottom: 0 !important;
  padding-left: 24px !important;
}

.service-card .more-info-content li,
.pathway-card .more-info-content li {
  margin-bottom: 12px !important;
}

.service-card-actions,
.pathway-card-actions {
  margin-top: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 14px !important;
}

.service-card details,
.pathway-card details,
.service-card .more-info-toggle,
.pathway-card .more-info-toggle {
  margin-top: 0 !important;
}

.service-more,
.more-info-toggle,
.service-card details summary {
  width: 100% !important;
  min-height: 52px !important;
  padding-left: 22px !important;
  padding-right: 22px !important;
  box-sizing: border-box !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  border-radius: 14px !important;
  background: var(--color-bg-soft, #FCF8F1) !important;
  color: var(--color-text, #2F2926) !important;
  font-family: var(--font-ui) !important;
  font-size: 14px !important;
  line-height: 1 !important;
  font-weight: 700 !important;
  text-decoration: none !important;
}

.service-card details summary:focus,
.pathway-card details summary:focus,
.more-info-toggle:focus {
  outline: none !important;
  box-shadow: 0 0 0 1px rgba(111, 123, 93, 0.35) !important;
}

.service-card details,
.pathway-card details {
  width: 100% !important;
}

.service-card details[open],
.pathway-card details[open] {
  height: auto !important;
}

.service-card details summary,
.pathway-card details summary {
  transition: background-color 180ms ease, box-shadow 180ms ease !important;
}

.service-card details[open] summary,
.pathway-card details[open] summary {
  box-shadow: 0 10px 24px rgba(50, 42, 34, 0.06) !important;
}

@keyframes pathwayMoreInfoReveal {
  from {
    opacity: 0;
    transform: translateY(-8px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.service-book-button,
.service-card .book-button,
.pathway-card .book-button {
  width: 100% !important;
  height: 52px !important;
  padding: 0 24px !important;
  box-sizing: border-box !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: 999px !important;
  background: var(--color-green-button, #6F7B5D) !important;
  color: #FFFFFF !important;
  text-decoration: none !important;
  font-family: var(--font-ui) !important;
  font-size: 14px !important;
  line-height: 1 !important;
  font-weight: 700 !important;
  box-shadow: 0 12px 28px rgba(83, 92, 68, 0.18) !important;
  transition:
    background-color 180ms ease,
    color 180ms ease,
    border-color 180ms ease,
    box-shadow 180ms ease,
    transform 180ms ease !important;
}

@media (max-width: 900px) {
  .services-grid,
  .pathways-grid,
  .work-grid {
    grid-template-columns: 1fr !important;
    max-width: calc(100% - 48px) !important;
  }

  .service-card.featured,
  .pathway-card.featured,
  .services-grid > .service-card:first-child {
    grid-column: auto !important;
    width: 100% !important;
  }

  .service-card,
  .pathway-card {
    min-height: auto !important;
  }

  .service-card img,
  .pathway-card img {
    height: 300px !important;
  }
}

.pain-card h3 {
  font-family: var(--font-heading, "Cormorant Garamond", Georgia, serif) !important;
  font-size: 25.3px !important;
  line-height: 1 !important;
  font-weight: 700 !important;
  color: var(--color-text, #2F2926) !important;
}

.foundation-card h3,
.approach-card h3 {
  font-family: var(--font-heading, "Cormorant Garamond", Georgia, serif) !important;
  font-size: 25.3px !important;
  line-height: 1 !important;
  font-weight: 700 !important;
  color: var(--color-text, #2F2926) !important;
}

.foundation-section::before {
  background:
    linear-gradient(rgba(246, 239, 229, 0.62), rgba(246, 239, 229, 0.62)),
    url("./assets/photos/approach-seminar.jpg") !important;
  background-position: center 35% !important;
  background-size: cover !important;
  background-repeat: no-repeat !important;
  opacity: 0.68 !important;
}

.testimonial-card h3,
.testimonial-card .quote-title {
  font-size: 25px !important;
  line-height: 1.02 !important;
}

.section-kicker,
.kicker,
.eyebrow,
.hero-eyebrow {
  font-family: var(--font-ui) !important;
  font-size: 11.5px !important;
  line-height: 1.2 !important;
  font-weight: 500 !important;
  letter-spacing: 0.16em !important;
  text-transform: uppercase !important;
  color: var(--color-muted) !important;
}

body[data-lang="en"] .card-eyebrow,
body[data-lang="it"] .card-eyebrow,
body[data-lang="en"] .testimonial-language,
body[data-lang="it"] .testimonial-language,
body[data-lang="en"] .testimonial-tag,
body[data-lang="it"] .testimonial-tag {
  font-family: var(--font-ui) !important;
}

.green-section .section-kicker,
.pain-section .section-kicker,
.testimonials-section .section-kicker,
.pain-section .eyebrow,
.testimonials-section .eyebrow {
  color: var(--color-bg) !important;
}

.pain-section {
  position: relative !important;
  overflow: hidden !important;
  background: #5C684D !important;
}

.pain-section::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background:
    repeating-linear-gradient(
      115deg,
      rgba(255, 248, 238, 0.018) 0px,
      rgba(255, 248, 238, 0.018) 2px,
      rgba(255, 248, 238, 0.004) 2px,
      rgba(255, 248, 238, 0.004) 6px
    ),
    repeating-linear-gradient(
      25deg,
      rgba(73, 84, 59, 0.02) 0px,
      rgba(73, 84, 59, 0.02) 1px,
      rgba(73, 84, 59, 0.005) 1px,
      rgba(73, 84, 59, 0.005) 5px
    ),
    linear-gradient(180deg, rgba(255, 248, 238, 0.03), rgba(255, 248, 238, 0) 32%, rgba(68, 79, 55, 0.04) 100%);
  opacity: 0.95 !important;
  pointer-events: none !important;
}

.pain-section > * {
  position: relative !important;
}

.support-bridge {
  max-width: 760px !important;
  margin: 24px 0 0 !important;
  font-family: var(--font-body) !important;
  font-size: var(--text-body) !important;
  line-height: calc(var(--text-body-line) + 0.08) !important;
  font-weight: 400 !important;
  letter-spacing: -0.01em !important;
  color: rgba(248, 240, 230, 0.92) !important;
}

.benefits-section {
  position: relative !important;
  overflow: hidden !important;
  background: linear-gradient(180deg, #F7F0E6 0%, #F2E8DA 100%) !important;
  padding: 110px 0 !important;
}

.workshops-section {
  position: relative !important;
  overflow: hidden !important;
  background: linear-gradient(180deg, #E9DACA 0%, #E1CFB9 100%) !important;
  padding: 108px 0 !important;
}

.workshops-section::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background:
    linear-gradient(rgba(244, 235, 224, 0.46), rgba(244, 235, 224, 0.42)),
    radial-gradient(112% 74% at 50% 2%, rgba(255, 248, 236, 0.58) 0%, rgba(255, 248, 236, 0.18) 26%, rgba(255, 248, 236, 0) 52%),
    url("./assets/photos/workshops-editorial-bg.jpg") !important;
  background-position: center center !important;
  background-size: cover !important;
  background-repeat: no-repeat !important;
  pointer-events: none !important;
  opacity: 1 !important;
  filter: saturate(0.9) blur(0.5px) !important;
}

.workshops-section::after {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background:
    radial-gradient(118% 80% at 16% 18%, rgba(255, 255, 255, 0.48) 0%, rgba(255, 255, 255, 0) 44%),
    radial-gradient(78% 50% at 84% 78%, rgba(172, 156, 132, 0.16) 0%, rgba(172, 156, 132, 0) 60%),
    linear-gradient(135deg, rgba(150, 132, 107, 0.08) 8%, rgba(255, 255, 255, 0) 34%, rgba(126, 141, 118, 0.08) 58%, rgba(255, 255, 255, 0) 82%);
  pointer-events: none !important;
  opacity: 0.72 !important;
}

.workshops-inner {
  position: relative !important;
  z-index: 1 !important;
  display: grid !important;
  gap: 34px !important;
}

.workshops-stack {
  display: grid !important;
  gap: 34px !important;
}

.workshops-subsection {
  display: grid !important;
  gap: 20px !important;
}

.workshops-empty-state,
.workshops-archive {
  border-radius: 4px !important;
  border: 1px solid rgba(102, 88, 74, 0.12) !important;
  background: rgba(255, 250, 243, 0.88) !important;
  box-shadow: 0 16px 40px rgba(60, 50, 41, 0.1) !important;
  backdrop-filter: blur(6px) !important;
}

.workshops-subsection-head {
  display: flex !important;
  align-items: baseline !important;
}

.workshops-subtitle {
  margin: 0 !important;
  font-family: var(--font-heading, "Cormorant Garamond", Georgia, serif) !important;
  font-size: clamp(28px, 3.2vw, 38px) !important;
  line-height: 1.02 !important;
  font-weight: 400 !important;
  letter-spacing: -0.03em !important;
  color: #332C26 !important;
}

.workshops-heading {
  max-width: 760px !important;
}

.workshops-section .section-heading .eyebrow {
  font-size: 13.5px !important;
}

.workshops-title {
  max-width: 720px !important;
}

.workshops-intro {
  max-width: 720px !important;
  margin: 20px 0 0 !important;
  font-family: var(--font-body) !important;
  font-size: 18px !important;
  line-height: 1.7 !important;
  font-weight: 400 !important;
  letter-spacing: -0.01em !important;
  color: #6B625A !important;
  white-space: normal !important;
}

.workshops-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 24px !important;
  justify-content: center !important;
  align-items: start !important;
  max-width: 884px !important;
  width: 100% !important;
}

.workshops-grid-single {
  grid-template-columns: minmax(320px, 430px) !important;
  max-width: 430px !important;
}

.workshops-empty-state {
  padding: 22px 24px !important;
}

.workshops-empty-state p {
  margin: 0 !important;
  font-family: var(--font-body) !important;
  font-size: var(--text-body) !important;
  line-height: calc(var(--text-body-line) + 0.06) !important;
  color: #5F564E !important;
}

.workshops-archive {
  overflow: hidden !important;
}

.workshops-archive-summary {
  list-style: none !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 24px !important;
  padding: 26px 28px !important;
  cursor: pointer !important;
}

.workshops-archive-summary::-webkit-details-marker {
  display: none !important;
}

.workshops-archive-copy {
  display: grid !important;
  gap: 10px !important;
}

.workshops-archive-copy .eyebrow {
  color: #6F7B5D !important;
  font-size: 15px !important;
  letter-spacing: 0.14em !important;
}

.workshops-archive-copy p {
  margin: 0 !important;
  max-width: 720px !important;
  font-family: var(--font-body) !important;
  font-size: var(--text-body) !important;
  line-height: calc(var(--text-body-line) + 0.06) !important;
  color: #6B625A !important;
}

.workshops-archive-toggle {
  display: inline-flex !important;
  align-items: center !important;
  gap: 10px !important;
  white-space: nowrap !important;
  font-family: var(--font-ui) !important;
  font-size: 13px !important;
  line-height: 1.2 !important;
  font-weight: 600 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  color: #6F7B5D !important;
}

.workshops-archive-toggle::after {
  content: "+" !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 24px !important;
  height: 24px !important;
  border-radius: 999px !important;
  border: 1px solid rgba(111, 123, 93, 0.24) !important;
  font-size: 18px !important;
  line-height: 1 !important;
  font-weight: 400 !important;
}

.workshops-archive[open] .workshops-archive-toggle::after {
  content: "−" !important;
}

.workshops-archive-panel {
  padding: 0 28px 28px !important;
  animation: workshopsArchiveReveal 260ms ease !important;
}

.workshops-archive-grid {
  max-width: 100% !important;
}

@keyframes workshopsArchiveReveal {
  from {
    opacity: 0;
    transform: translateY(-6px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.workshop-card {
  display: flex !important;
  flex-direction: column !important;
  overflow: hidden !important;
  border-radius: 4px !important;
  border: 1px solid rgba(102, 88, 74, 0.1) !important;
  background: rgba(255, 251, 245, 0.88) !important;
  box-shadow: 0 18px 42px rgba(60, 50, 41, 0.12) !important;
  backdrop-filter: blur(6px) !important;
  max-width: 430px !important;
  width: 100% !important;
  justify-self: center !important;
}

.workshop-card:hover,
.workshop-card:focus-within {
  transform: none !important;
  box-shadow: 0 20px 44px rgba(60, 50, 41, 0.14) !important;
}

.card,
.pain-card,
.service-card,
.testimonial-card,
.approach-card,
.foundation-card,
.faq-row,
.accordion-row {
  border-radius: 4px !important;
}

.workshop-card-image {
  width: calc(100% - 28px) !important;
  aspect-ratio: auto !important;
  max-height: 420px !important;
  object-fit: contain !important;
  display: block !important;
  margin: 14px auto 0 !important;
}

.workshop-card-media {
  position: relative !important;
  width: calc(100% - 28px) !important;
  margin: 14px auto 0 !important;
  border-radius: 2px !important;
  overflow: hidden !important;
}

.workshop-card-media-button {
  display: block !important;
  width: 100% !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  cursor: zoom-in !important;
  text-align: inherit !important;
}

.workshop-card-media-button:hover .workshop-card-image-cover,
.workshop-card-media-button:focus-visible .workshop-card-image-cover {
  transform: scale(1.015) !important;
}

.workshop-card-media-button:focus-visible {
  outline: 2px solid rgba(111, 123, 93, 0.38) !important;
  outline-offset: 4px !important;
}

.workshop-card-image-cover {
  width: 100% !important;
  height: 420px !important;
  max-height: none !important;
  object-fit: cover !important;
  object-position: center 28% !important;
  margin: 0 !important;
  transition: transform 220ms ease !important;
}

.workshop-card-badge {
  position: absolute !important;
  left: 18px !important;
  bottom: 18px !important;
  display: inline-flex !important;
  align-items: center !important;
  padding: 9px 14px !important;
  border-radius: 999px !important;
  background: rgba(246, 239, 229, 0.9) !important;
  color: #4E453E !important;
  font-family: var(--font-ui) !important;
  font-size: 12px !important;
  line-height: 1.2 !important;
  font-weight: 600 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  box-shadow: 0 8px 20px rgba(55, 46, 38, 0.14) !important;
}

.workshop-card-content {
  padding: 24px 24px 26px !important;
  display: grid !important;
  gap: 12px !important;
}

.workshop-card-kicker {
  margin: 0 !important;
  font-family: var(--font-ui) !important;
  font-size: 14px !important;
  line-height: 1.3 !important;
  font-weight: 600 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  color: #7B6F64 !important;
}

.workshop-card-title {
  margin: 0 !important;
}

.workshop-card-subtitle {
  margin: -4px 0 0 !important;
  font-family: var(--font-body) !important;
  font-size: var(--text-body) !important;
  line-height: var(--text-body-line) !important;
  color: #5B534C !important;
}

.workshop-card-meta {
  display: grid !important;
  gap: 4px !important;
  padding-top: 4px !important;
}

.workshop-card-meta p,
.workshop-card-summary {
  margin: 0 !important;
  font-family: var(--font-body) !important;
  font-size: var(--text-body) !important;
  line-height: calc(var(--text-body-line) + 0.08) !important;
  color: #403833 !important;
}

.workshop-card-summary {
  color: #5F564E !important;
}

.workshop-card-chip-list {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 10px !important;
  margin-top: 6px !important;
}

.workshop-card-chip-list span {
  display: inline-flex !important;
  align-items: center !important;
  padding: 8px 12px !important;
  border-radius: 999px !important;
  border: 1px solid rgba(111, 123, 93, 0.18) !important;
  background: rgba(246, 239, 229, 0.86) !important;
  font-family: var(--font-body) !important;
  font-size: 14px !important;
  line-height: 1.25 !important;
  color: #4E453E !important;
}

.workshop-card.is-past .workshop-card-image-cover {
  object-position: center 24% !important;
}

.workshop-card-media.archive-flyer {
  background: linear-gradient(180deg, rgba(243, 232, 218, 0.78) 0%, rgba(235, 221, 203, 0.72) 100%) !important;
}

.workshop-card-media.archive-flyer .workshop-card-image-cover {
  filter: saturate(0.62) brightness(1.06) contrast(0.92) !important;
}

.workshop-card-button {
  width: 100% !important;
  margin-top: 6px !important;
  justify-content: center !important;
  border-radius: 999px !important;
  background: var(--color-green-button, #6F7B5D) !important;
  color: #FFF8EE !important;
  box-shadow: 0 12px 28px rgba(83, 92, 68, 0.18) !important;
}

.course-program-card {
  display: grid !important;
  grid-template-columns: 1fr !important;
  isolation: isolate !important;
  overflow: hidden !important;
  border-radius: 4px !important;
  background: #F6EFE5 !important;
  border: 1px solid rgba(102, 92, 81, 0.16) !important;
  box-shadow: 0 22px 52px rgba(55, 49, 41, 0.12) !important;
  position: relative !important;
}

.course-program-card::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background:
    linear-gradient(90deg, rgba(246, 239, 229, 0.22) 0%, rgba(246, 239, 229, 0.08) 28%, rgba(246, 239, 229, 0) 46%),
    url("./assets/photos/course-self-embrace-soft.png") center right / cover no-repeat !important;
  z-index: 0 !important;
  pointer-events: none !important;
}

.course-program-media {
  display: none !important;
  position: relative !important;
  z-index: 0 !important;
  overflow: hidden !important;
}

.course-program-media::before {
  display: none !important;
}

.course-program-media::after {
  display: none !important;
}

.course-program-image {
  width: 100% !important;
  height: 100% !important;
  min-height: 440px !important;
  display: block !important;
  object-fit: cover !important;
  object-position: center 24% !important;
  position: relative !important;
  z-index: 1 !important;
  -webkit-mask-image: none !important;
  mask-image: none !important;
}

.course-program-content {
  display: grid !important;
  gap: 18px !important;
  padding: 34px 36px 34px !important;
  position: relative !important;
  z-index: 1 !important;
  max-width: min(100%, 71%) !important;
  background: transparent !important;
  backdrop-filter: none !important;
  color: #332C26 !important;
}

.course-program-content::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background:
    linear-gradient(90deg, rgba(246, 239, 229, 0.9) 0%, rgba(246, 239, 229, 0.84) 42%, rgba(246, 239, 229, 0.62) 76%, rgba(246, 239, 229, 0.24) 100%),
    linear-gradient(180deg, rgba(244, 237, 226, 0.18) 0%, rgba(244, 237, 226, 0.08) 100%) !important;
  opacity: 1 !important;
  pointer-events: none !important;
  z-index: 0 !important;
  filter: none !important;
}

.course-program-topline,
.course-program-title,
.course-program-subtitle,
.course-program-description,
.course-program-details,
.course-program-note,
.course-program-pillars,
.course-program-actions {
  position: relative !important;
  z-index: 1 !important;
}

.course-program-topline {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 10px !important;
  align-items: center !important;
}

.course-program-badge,
.course-program-status {
  display: inline-flex !important;
  align-items: center !important;
  border-radius: 999px !important;
  padding: 9px 14px !important;
  font-family: var(--font-ui) !important;
  font-size: 12px !important;
  line-height: 1.2 !important;
  font-weight: 600 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
}

.course-program-badge {
  background: rgba(111, 123, 93, 0.9) !important;
  color: #F6EFE5 !important;
  border: 1px solid rgba(111, 123, 93, 0.44) !important;
}

.course-program-status {
  background: rgba(246, 239, 229, 0.62) !important;
  color: #5C6650 !important;
  border: 1px solid rgba(111, 123, 93, 0.18) !important;
}

.course-program-title {
  margin: 0 !important;
  color: #332C26 !important;
}

.course-program-subtitle {
  margin: -6px 0 0 !important;
  font-family: var(--font-body) !important;
  font-size: var(--text-body) !important;
  line-height: var(--text-body-line) !important;
  color: rgba(51, 44, 38, 0.9) !important;
}

.course-program-description,
.course-program-details {
  margin: 0 !important;
  font-family: var(--font-body) !important;
  font-size: var(--text-body) !important;
  line-height: calc(var(--text-body-line) + 0.08) !important;
  color: rgba(51, 44, 38, 0.86) !important;
}

.course-program-note {
  margin: -2px 0 2px !important;
  font-family: var(--font-body) !important;
  font-size: 13.5px !important;
  line-height: 1.5 !important;
  color: #766B61 !important;
}

.course-program-pillars {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 12px !important;
}

.course-program-pillar {
  display: grid !important;
  gap: 7px !important;
  align-content: start !important;
  min-height: 112px !important;
  padding: 16px 16px 15px !important;
  border-radius: 18px !important;
  background: rgba(250, 246, 239, 0.9) !important;
  border: 1px solid rgba(111, 123, 93, 0.16) !important;
  box-shadow: 0 10px 24px rgba(70, 61, 50, 0.04) !important;
}

.course-program-pillar h4 {
  margin: 0 !important;
  font-family: var(--font-heading, "Cormorant Garamond", Georgia, serif) !important;
  font-size: 25px !important;
  line-height: 0.98 !important;
  font-weight: 700 !important;
  letter-spacing: -0.02em !important;
  color: #332C26 !important;
}

.course-program-pillar p {
  margin: 0 !important;
  font-family: var(--font-body) !important;
  font-size: var(--text-body) !important;
  line-height: calc(var(--text-body-line) + 0.04) !important;
  color: #5F564E !important;
}

.course-program-actions {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 14px !important;
  align-items: center !important;
}

.course-program-button {
  width: auto !important;
  min-width: 190px !important;
  margin-top: 0 !important;
  background: #6F7B5D !important;
  color: #FFF8EE !important;
  box-shadow: 0 14px 28px rgba(66, 73, 54, 0.16) !important;
}

.course-program-link {
  font-family: var(--font-body) !important;
  font-size: 15px !important;
  line-height: 1.4 !important;
  font-weight: 600 !important;
  color: #5C684D !important;
  text-decoration: none !important;
  text-underline-offset: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 58px !important;
  padding: 16px 26px !important;
  border-radius: 999px !important;
  border: 1px solid rgba(111, 123, 93, 0.22) !important;
  background: rgba(255, 249, 241, 0.94) !important;
  box-shadow: 0 8px 18px rgba(83, 92, 68, 0.06) !important;
  transition:
    background-color 180ms ease,
    color 180ms ease,
    border-color 180ms ease,
    box-shadow 180ms ease,
    transform 180ms ease !important;
}

.benefits-section::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background:
    radial-gradient(120% 76% at 18% 20%, rgba(255, 255, 255, 0.8) 0%, rgba(255, 255, 255, 0) 48%),
    radial-gradient(90% 58% at 84% 78%, rgba(202, 181, 154, 0.22) 0%, rgba(202, 181, 154, 0) 56%),
    linear-gradient(132deg, rgba(161, 141, 116, 0.14) 9%, rgba(255, 255, 255, 0) 27%, rgba(171, 151, 125, 0.12) 45%, rgba(255, 255, 255, 0) 61%, rgba(153, 132, 108, 0.1) 79%, rgba(255, 255, 255, 0) 95%);
  opacity: 0.9 !important;
  pointer-events: none !important;
}

.benefits-section::after {
  content: none !important;
}

.benefits-inner {
  position: relative !important;
  z-index: 1 !important;
  display: grid !important;
  gap: 34px !important;
}

.benefits-heading {
  max-width: 760px !important;
}

.benefits-section .section-heading .eyebrow {
  font-size: 11.5px !important;
}

.benefits-title {
  max-width: 720px !important;
  white-space: normal !important;
  text-wrap: balance !important;
}

.benefits-intro {
  max-width: 760px !important;
  margin: 20px 0 0 !important;
  font-family: var(--font-body) !important;
  font-size: var(--text-body) !important;
  line-height: calc(var(--text-body-line) + 0.08) !important;
  font-weight: 400 !important;
  letter-spacing: -0.01em !important;
  color: #6B625A !important;
}

.benefits-list {
  display: grid !important;
  gap: 18px !important;
  max-width: 880px !important;
  margin-top: 2px !important;
}

.benefit-item {
  background: rgba(251, 246, 238, 0.88) !important;
  border: 1px solid rgba(94, 82, 68, 0.1) !important;
  border-radius: 4px !important;
  backdrop-filter: blur(4px) !important;
  padding: 22px 20px !important;
  box-shadow: 0 18px 40px rgba(50, 42, 34, 0.12) !important;
  opacity: 0;
  transform: translateX(26px);
  transition:
    opacity 1800ms cubic-bezier(0.2, 0.8, 0.2, 1),
    transform 1800ms cubic-bezier(0.2, 0.8, 0.2, 1) !important;
}

.benefit-item.is-visible {
  opacity: 1;
  transform: translateY(0);
}

.benefit-item h3 {
  margin: 0 0 10px !important;
  font-family: var(--font-heading) !important;
  font-size: 25.3px !important;
  line-height: 1 !important;
  font-weight: 700 !important;
  letter-spacing: -0.02em !important;
  color: var(--color-text) !important;
}

.benefit-item p {
  max-width: 720px !important;
  margin: 0 !important;
  font-family: var(--font-body) !important;
  font-size: var(--text-body) !important;
  line-height: calc(var(--text-body-line) + 0.08) !important;
  font-weight: 400 !important;
  letter-spacing: -0.01em !important;
  color: var(--color-text) !important;
}

@media (prefers-reduced-motion: reduce) {
  .benefits-section::after {
    animation: none !important;
  }
}

.testimonials-section,
.green-section {
  background: #5C684D !important;
}

.card,
.pain-card,
.service-card,
.testimonial-card,
.approach-card,
.foundation-card,
.faq-row,
.accordion-row {
  background: var(--color-card) !important;
}

.pain-card,
.service-card,
.foundation-card {
  transform-origin: center center !important;
  box-shadow: 0 18px 40px rgba(50, 42, 34, 0.18) !important;
  transition:
    transform 220ms ease,
    box-shadow 220ms ease !important;
  will-change: transform !important;
}

.pain-card:hover,
.pain-card:focus-within,
.service-card:hover,
.service-card:focus-within,
.foundation-card:hover,
.foundation-card:focus-within {
  transform: translateY(-4px) scale(1.055) !important;
  box-shadow: 0 30px 60px rgba(50, 42, 34, 0.26) !important;
}

.services-section .service-card,
.services-section .pathway-card,
.pathways-section .service-card,
.pathways-section .pathway-card,
.work-with-me-section .service-card,
.work-with-me-section .pathway-card {
  transition-property: background-color, color, border-color, box-shadow !important;
  transition-duration: 220ms !important;
  transition-timing-function: ease !important;
  will-change: auto !important;
}

.services-section .service-card:hover,
.services-section .service-card:focus-within,
.services-section .pathway-card:hover,
.services-section .pathway-card:focus-within,
.pathways-section .service-card:hover,
.pathways-section .service-card:focus-within,
.pathways-section .pathway-card:hover,
.pathways-section .pathway-card:focus-within,
.work-with-me-section .service-card:hover,
.work-with-me-section .service-card:focus-within,
.work-with-me-section .pathway-card:hover,
.work-with-me-section .pathway-card:focus-within {
  transform: none !important;
  box-shadow: 0 14px 32px rgba(50, 42, 34, 0.14) !important;
}

.call-card,
.free-call-card,
.cta-card,
.discovery-card {
  background: var(--color-green-button) !important;
}

button,
.button,
.btn,
.card-button,
.service-button,
summary {
  font-family: var(--font-ui) !important;
  border-radius: var(--radius-pill) !important;
}

.button.green,
.btn.green,
.service-button,
.card-button {
  background: var(--color-green-button) !important;
  color: var(--color-white) !important;
}

body[data-lang="en"] .nav-cta:hover,
body[data-lang="en"] .nav-cta:focus-visible,
body[data-lang="it"] .nav-cta:hover,
body[data-lang="it"] .nav-cta:focus-visible,
body[data-lang="en"] .header-cta:hover,
body[data-lang="en"] .header-cta:focus-visible,
body[data-lang="it"] .header-cta:hover,
body[data-lang="it"] .header-cta:focus-visible,
body[data-lang="en"] .navbar .button:hover,
body[data-lang="en"] .navbar .button:focus-visible,
body[data-lang="it"] .navbar .button:hover,
body[data-lang="it"] .navbar .button:focus-visible,
body[data-lang="en"] .book-call-button:hover,
body[data-lang="en"] .book-call-button:focus-visible,
body[data-lang="it"] .book-call-button:hover,
body[data-lang="it"] .book-call-button:focus-visible,
body[data-lang="en"] .site-nav .nav-cta:hover,
body[data-lang="en"] .site-nav .nav-cta:focus-visible,
body[data-lang="it"] .site-nav .nav-cta:hover,
body[data-lang="it"] .site-nav .nav-cta:focus-visible,
.hero-cta-link:hover,
.hero-cta-link:focus-visible,
.service-book-button:hover,
.service-book-button:focus-visible,
.service-card .book-button:hover,
.service-card .book-button:focus-visible,
.pathway-card .book-button:hover,
.pathway-card .book-button:focus-visible,
.workshop-card-button:hover,
.workshop-card-button:focus-visible,
.course-program-button:hover,
.course-program-button:focus-visible,
.footer-updates-button:hover,
.footer-updates-button:focus-visible,
.free-call-button:hover,
.free-call-button:focus-visible,
.course-modal-cta .button:hover,
.course-modal-cta .button:focus-visible,
.workshop-modal-actions .button:not(.button-secondary):hover,
.workshop-modal-actions .button:not(.button-secondary):focus-visible,
.pricing-modal .pricing-button:hover,
.pricing-modal .pricing-button:focus-visible,
.pricing-modal .button-primary:hover,
.pricing-modal .button-primary:focus-visible,
.button.green:hover,
.button.green:focus-visible,
.btn.green:hover,
.btn.green:focus-visible,
.service-button:hover,
.service-button:focus-visible,
.card-button:hover,
.card-button:focus-visible {
  background: #5C684D !important;
  color: #FFF8EE !important;
  border-color: #5C684D !important;
  box-shadow: 0 16px 34px rgba(83, 92, 68, 0.26) !important;
  transform: translateY(-2px) !important;
  outline: none !important;
}

.workshop-modal-actions .button-secondary,
.course-program-link-secondary,
.button.button-secondary,
.btn.btn-secondary {
  background: rgba(255, 249, 241, 0.94) !important;
  color: #5C684D !important;
  border: 1px solid rgba(111, 123, 93, 0.22) !important;
  box-shadow: 0 8px 18px rgba(83, 92, 68, 0.06) !important;
  transition:
    background-color 180ms ease,
    color 180ms ease,
    border-color 180ms ease,
    box-shadow 180ms ease,
    transform 180ms ease !important;
}

.workshop-modal-actions .button-secondary:hover,
.workshop-modal-actions .button-secondary:focus-visible,
.course-program-link:hover,
.course-program-link:focus-visible,
.course-program-link-secondary:hover,
.course-program-link-secondary:focus-visible,
.button.button-secondary:hover,
.button.button-secondary:focus-visible,
.btn.btn-secondary:hover,
.btn.btn-secondary:focus-visible {
  background: #6F7B5D !important;
  color: #FFF8EE !important;
  border-color: #6F7B5D !important;
  box-shadow: 0 14px 28px rgba(83, 92, 68, 0.18) !important;
  transform: translateY(-1px) !important;
  outline: none !important;
}

.about-section .section-heading {
  display: grid !important;
  gap: 18px !important;
  margin-bottom: 0 !important;
}

.about-section .section-heading .eyebrow {
  margin: 0 !important;
  font-size: 13.5px !important;
}

.about-title {
  max-width: 520px !important;
  margin: 0 !important;
}

.about-layout {
  display: grid !important;
  grid-template-columns: 520px 430px !important;
  justify-content: space-between !important;
  column-gap: 72px !important;
  align-items: start !important;
  margin-top: 28px !important;
}

.about-portrait {
  order: 2 !important;
  width: 430px !important;
  max-width: 430px !important;
  aspect-ratio: 0.82 !important;
  border-radius: 18px !important;
  background-position: center 26% !important;
  align-self: start !important;
}

.about-copy {
  order: 1 !important;
  width: 520px !important;
  max-width: 520px !important;
  display: grid !important;
  gap: 18px !important;
  align-content: start !important;
}

.about-copy p {
  margin: 0 !important;
  font-size: var(--text-body) !important;
  line-height: calc(var(--text-body-line) + 0.08) !important;
}

.about-intro {
  font-size: var(--text-body) !important;
  line-height: calc(var(--text-body-line) + 0.08) !important;
  font-weight: 400 !important;
  color: rgba(117, 109, 99, 0.96) !important;
}

.about-support-copy {
  font-size: var(--text-body) !important;
  line-height: calc(var(--text-body-line) + 0.12) !important;
  color: rgba(117, 109, 99, 0.96) !important;
}

.about-copy strong {
  color: var(--color-text) !important;
  font-weight: 600 !important;
}

.testimonials-section .section-heading {
  display: grid !important;
  gap: 16px !important;
}

.foundation-section .section-heading .eyebrow,
.testimonials-section .section-heading .eyebrow,
.faq-section .section-heading .eyebrow {
  font-size: 13.5px !important;
}

.testimonials-title {
  font-size: 53px !important;
  line-height: 0.98 !important;
  max-width: 760px !important;
  color: var(--color-bg) !important;
  font-weight: 500 !important;
}

.testimonial-videos {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 1.35rem !important;
  align-items: stretch !important;
}

.video-testimonial,
.story-placeholder-card {
  min-height: 420px !important;
  padding: 1.25rem !important;
  display: grid !important;
  box-sizing: border-box !important;
}

.video-testimonial {
  grid-template-columns: 220px minmax(0, 1fr) !important;
  gap: 1.15rem !important;
  align-items: stretch !important;
}

.video-frame {
  height: 100% !important;
}

.video-play-overlay[hidden] {
  display: none !important;
}

.video-play-overlay {
  background: transparent !important;
}

.play-icon {
  width: 4.6rem !important;
  height: 4.6rem !important;
  background: rgba(248, 240, 230, 0.72) !important;
  box-shadow: 0 10px 24px rgba(68, 56, 42, 0.1) !important;
}

.play-icon::before {
  border-top-width: 0.68rem !important;
  border-bottom-width: 0.68rem !important;
  border-left-width: 1.02rem !important;
}

.testimonial-video {
  width: 100% !important;
  height: 100% !important;
  aspect-ratio: 0.74 !important;
  object-fit: cover !important;
}

.testimonial-video-secondary {
  transform: none !important;
  transform-origin: center center !important;
  object-position: center 24% !important;
}

.testimonial-copy-block,
.story-placeholder-copy {
  display: grid !important;
  gap: 0.55rem !important;
  align-content: center !important;
}

.testimonial-copy-block > p:empty {
  display: none !important;
}

.testimonial-copy-block h3,
.story-placeholder-copy h3,
.testimonial-card .quote-title {
  font-family: var(--font-heading) !important;
  font-size: 26px !important;
  line-height: 1.4 !important;
  font-style: normal !important;
  font-weight: 400 !important;
}

.testimonial-tag {
  font-size: 11px !important;
  letter-spacing: 0.12em !important;
  padding: 0.38rem 0.78rem !important;
}

.testimonial-language,
.testimonial-tag,
.testimonial-caption,
.story-placeholder-copy p,
.testimonial-copy-block p {
  font-size: 13.5px !important;
  line-height: 1.58 !important;
}

.testimonial-language,
.testimonial-tag {
  display: inline-flex !important;
  align-items: center !important;
  width: fit-content !important;
  min-height: 40px !important;
  padding: 0.38rem 0.92rem !important;
  border-radius: 999px !important;
  background: rgba(252, 248, 241, 0.92) !important;
}

.testimonial-caption {
  margin-top: 0.2rem !important;
}

.story-placeholder-copy {
  padding-right: 22px !important;
}


.free-call-section {
  background: #5C684D !important;
  padding: 72px 60px 78px;
  display: grid;
  grid-template-columns: minmax(0, 620px) 460px;
  column-gap: 18px;
  align-items: center;
  justify-content: center;
}

.free-call-card {
  display: contents;
  background: transparent !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  border: 0 !important;
}

.free-call-card,
.free-call-card p,
.free-call-card h2,
.free-call-kicker,
.free-call-title,
.free-call-duration,
.free-call-text {
  color: #FBF6EE !important;
}

.free-call-copy {
  width: 620px;
  max-width: 100%;
  align-self: center;
  padding: 0;
}

.free-call-kicker {
  margin: 0 0 20px 0;
  font-family: var(--font-ui);
  font-size: 12px;
  line-height: 1;
  font-weight: 700;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: #FBF6EE;
}

.free-call-title {
  margin: 0 0 18px 0;
  font-family: var(--font-heading, "Cormorant Garamond", Georgia, serif);
  font-size: 48px;
  line-height: 0.96;
  font-weight: 400;
  letter-spacing: -0.035em;
  color: #FBF6EE;
}

.free-call-title span {
  display: block;
}

.free-call-duration {
  margin: 0 0 22px 0;
  font-family: var(--font-ui);
  font-size: 12px;
  line-height: 1;
  font-weight: 700;
  letter-spacing: 0.20em;
  text-transform: uppercase;
  color: #FBF6EE;
}

.free-call-text {
  max-width: 560px;
  margin: 0 0 14px 0;
  font-family: var(--font-body);
  font-size: var(--text-body);
  line-height: calc(var(--text-body-line) + 0.04);
  font-weight: 500;
  letter-spacing: -0.01em;
  color: #FBF6EE;
}

.free-call-button {
  width: 100%;
  max-width: 520px;
  height: 52px;
  margin-top: 10px;
  padding: 0 28px;
  box-sizing: border-box;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  background: #FBF6EE !important;
  color: var(--color-text, #2F2926) !important;
  text-decoration: none;
  font-family: var(--font-ui);
  font-size: 14px;
  line-height: 1;
  font-weight: 700;
  letter-spacing: -0.01em;
}

.free-call-image {
  width: 460px;
  height: 286px;
  align-self: center;
  padding: 0;
}

.free-call-image img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  object-position: center 46%;
  border: 2px solid #FBF6EE;
  border-radius: 18px;
  box-sizing: border-box;
}

@media (max-width: 1100px) {
  .free-call-section {
    padding: 72px 36px 78px;
    grid-template-columns: 1fr;
    row-gap: 34px;
  }

  .free-call-card {
    display: contents;
  }

  .free-call-copy {
    max-width: 100%;
    padding: 0;
  }

  .free-call-title {
    font-size: 44px;
  }

  .free-call-text {
    font-size: 15px;
  }

  .free-call-image {
    width: 100%;
    height: 340px;
    padding: 0;
  }

  .free-call-button {
    max-width: 100%;
  }
}

@media (max-width: 700px) {
  .free-call-section {
    padding: 56px 30px;
  }

  .free-call-card {
    display: contents;
  }

  .free-call-copy {
    padding: 0 12px;
  }

  .free-call-title {
    font-size: 38px;
  }

  .free-call-kicker,
  .free-call-duration {
    font-size: 11px;
  }

  .free-call-text {
    font-size: 15px;
  }

  .free-call-button {
    height: 50px;
    font-size: 13px;
    max-width: calc(100% - 4px);
    margin-left: auto;
    margin-right: auto;
  }

  .free-call-image {
    height: 280px;
    padding: 0 12px;
  }

  .free-call-image img {
    object-fit: cover;
    object-position: center center;
    transform: scale(1.035);
    transform-origin: center center;
    border-radius: 28px !important;
  }
}

.footer-quote {
  font-family: var(--font-heading) !important;
  font-size: 34px !important;
  line-height: 1.4 !important;
  font-style: italic !important;
  font-weight: 400 !important;
  letter-spacing: -0.02em !important;
  color: var(--color-text) !important;
}

.site-footer {
  margin-top: 56px !important;
  padding-bottom: 0 !important;
  background: transparent !important;
}

.site-footer-grid {
  margin-bottom: 0 !important;
}

.footer-photo-credit {
  width: min(var(--container-main), calc(100vw - 32px)) !important;
  margin: 18px auto 0 !important;
  font-family: var(--font-ui) !important;
  font-size: 11px !important;
  line-height: 1.5 !important;
  font-weight: 500 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  color: rgba(117, 109, 99, 0.72) !important;
  text-align: left !important;
}

.footer-contact-band {
  background: var(--color-bg) !important;
  padding: 18px 0 8px !important;
}

.footer-contact-band-inner {
  padding-top: 24px !important;
  padding-bottom: 8px !important;
  border-top: 1px solid rgba(117, 109, 99, 0.16) !important;
  background: transparent !important;
}

.footer-newsletter-block .eyebrow,
.footer-newsletter-block p,
.footer-contact-links a,
.footer-legal-links a,
.footer-band-meta,
.footer-contact-band {
  color: var(--color-green-dark) !important;
}

.footer-location-note {
  margin-top: 8px !important;
  max-width: 240px !important;
  font-size: 12.5px !important;
  line-height: 1.55 !important;
  color: rgba(92, 104, 77, 0.86) !important;
}

.footer-updates-title {
  margin: 10px 0 6px !important;
  font-family: var(--font-heading, "Cormorant Garamond", Georgia, serif) !important;
  font-size: clamp(28px, 3.3vw, 40px) !important;
  line-height: 0.98 !important;
  letter-spacing: -0.025em !important;
  color: #332D28 !important;
}

.footer-updates-copy {
  margin: 0 0 16px !important;
  max-width: 560px !important;
  font-size: var(--text-body) !important;
  line-height: calc(var(--text-body-line) + 0.06) !important;
  color: rgba(79, 71, 64, 0.88) !important;
}

.footer-updates-form {
  margin-top: 0 !important;
  padding: 20px !important;
  border-radius: 24px !important;
  background: rgba(255, 250, 243, 0.94) !important;
  border: 1px solid rgba(109, 94, 77, 0.14) !important;
  box-shadow: 0 18px 34px rgba(74, 60, 44, 0.06) !important;
  max-width: 720px !important;
}

.footer-updates-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}

.footer-updates-button {
  width: fit-content !important;
  min-width: 180px !important;
}

.footer-updates-note {
  margin: 12px 0 0 !important;
  max-width: 620px !important;
  font-size: 12.5px !important;
  line-height: 1.55 !important;
  color: rgba(79, 71, 64, 0.8) !important;
}

.footer-contact-links a,
.footer-legal-links a {
  text-decoration-color: rgba(92, 104, 77, 0.28) !important;
}

.site-footer-copy p {
  font-size: var(--text-body) !important;
  line-height: calc(var(--text-body-line) + 0.08) !important;
  color: rgba(79, 71, 64, 0.82) !important;
}

.footer-disclaimer {
  font-size: 90% !important;
  color: rgba(79, 71, 64, 0.82) !important;
}

.pricing-overlay {
  background: rgba(58, 51, 44, 0.38) !important;
  backdrop-filter: blur(12px) !important;
}

.workshop-overlay {
  background: rgba(58, 51, 44, 0.36) !important;
  backdrop-filter: blur(12px) !important;
}

.pricing-modal {
  background: radial-gradient(circle at top left, rgba(255, 255, 255, 0.76), rgba(246, 238, 226, 0.96) 45%, rgba(235, 221, 203, 0.98) 100%) !important;
  border-radius: 34px !important;
  padding: 56px 48px 42px !important;
  max-width: 1120px !important;
  width: min(92vw, 1120px) !important;
  box-shadow: 0 34px 90px rgba(57, 49, 41, 0.24) !important;
  border: 1px solid rgba(255, 255, 255, 0.56) !important;
  color: #342E29 !important;
}

.workshop-modal {
  background: radial-gradient(circle at top left, rgba(255, 255, 255, 0.82), rgba(246, 239, 228, 0.97) 44%, rgba(236, 225, 209, 0.98) 100%) !important;
  border-radius: 30px !important;
  padding: 34px 34px 36px !important;
  max-width: 980px !important;
  width: min(92vw, 980px) !important;
  box-shadow: 0 34px 90px rgba(57, 49, 41, 0.24) !important;
  border: 1px solid rgba(255, 255, 255, 0.58) !important;
  color: #342E29 !important;
}

.pricing-modal .guide-modal-topbar {
  margin-bottom: 0 !important;
}

.pricing-modal-close {
  color: #5F564E !important;
  opacity: 0.75 !important;
}

.workshop-modal-close {
  color: #5F564E !important;
  opacity: 0.78 !important;
}

.pricing-modal-close:hover,
.pricing-modal-close:focus-visible {
  opacity: 1 !important;
}

.workshop-modal-close:hover,
.workshop-modal-close:focus-visible {
  opacity: 1 !important;
}

.workshop-modal-body {
  display: grid !important;
  grid-template-columns: minmax(260px, 360px) minmax(0, 1fr) !important;
  gap: 32px !important;
  align-items: start !important;
}

.workshop-modal-media {
  position: relative !important;
  display: block !important;
  width: 100% !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  cursor: zoom-in !important;
}

.workshop-modal-media img {
  width: 100% !important;
  aspect-ratio: auto !important;
  max-height: 720px !important;
  object-fit: contain !important;
  display: block !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

.workshop-image-hint {
  position: absolute !important;
  right: 14px !important;
  bottom: 14px !important;
  padding: 8px 12px !important;
  border-radius: 999px !important;
  background: rgba(56, 48, 41, 0.68) !important;
  color: #FFF8EE !important;
  font-family: var(--font-body) !important;
  font-size: 12px !important;
  line-height: 1 !important;
  font-weight: 600 !important;
  letter-spacing: 0.04em !important;
  opacity: 0.92 !important;
  transition: transform 180ms ease, opacity 180ms ease !important;
  pointer-events: none !important;
}

.workshop-modal-media:hover .workshop-image-hint,
.workshop-modal-media:focus-visible .workshop-image-hint {
  transform: translateY(-2px) !important;
  opacity: 1 !important;
}

.workshop-image-lightbox {
  position: fixed !important;
  inset: 0 !important;
  z-index: 1200 !important;
}

.workshop-image-lightbox[hidden] {
  display: none !important;
}

.workshop-image-lightbox-backdrop {
  position: absolute !important;
  inset: 0 !important;
  background: rgba(40, 35, 30, 0.8) !important;
  backdrop-filter: blur(10px) !important;
}

.workshop-image-lightbox-dialog {
  position: relative !important;
  z-index: 1 !important;
  width: min(92vw, 1100px) !important;
  max-height: 92vh !important;
  margin: 4vh auto !important;
  padding: 24px !important;
  border-radius: 26px !important;
  background: rgba(249, 243, 235, 0.98) !important;
  box-shadow: 0 30px 80px rgba(28, 24, 21, 0.28) !important;
}

.workshop-image-lightbox-img {
  width: 100% !important;
  max-height: calc(92vh - 48px) !important;
  object-fit: contain !important;
  display: block !important;
}

.workshop-image-lightbox-close {
  position: absolute !important;
  top: 10px !important;
  right: 12px !important;
  width: 40px !important;
  height: 40px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: rgba(255, 250, 243, 0.92) !important;
  color: #514841 !important;
  font-size: 28px !important;
  line-height: 1 !important;
  cursor: pointer !important;
}

.workshop-modal-copy {
  padding: 4px 4px 0 0 !important;
}

.course-modal {
  max-width: 900px !important;
  width: min(92vw, 900px) !important;
  max-height: 85vh !important;
}

.course-modal-body {
  grid-template-columns: minmax(0, 1fr) !important;
  gap: 0 !important;
}

.course-modal-copy h3 {
  margin: 0 0 14px 0 !important;
  font-family: var(--font-heading, "Cormorant Garamond", Georgia, serif) !important;
  font-size: 28px !important;
  line-height: 1.02 !important;
  font-weight: 400 !important;
  letter-spacing: -0.025em !important;
  color: #332D28 !important;
}

.course-modal-list {
  display: grid !important;
  gap: 8px !important;
  margin: 0 !important;
  padding-left: 18px !important;
}

.course-modal-list li {
  font-family: var(--font-body) !important;
  font-size: var(--text-body) !important;
  line-height: calc(var(--text-body-line) + 0.02) !important;
  color: #403833 !important;
}

.course-modal-cta {
  margin-top: 8px !important;
  padding: 26px 26px 28px !important;
  border-radius: 24px !important;
  background: rgba(255, 250, 243, 0.88) !important;
  border: 1px solid rgba(109, 94, 77, 0.14) !important;
  box-shadow: 0 20px 36px rgba(74, 60, 44, 0.08) !important;
}

.course-modal-cta .button {
  margin-top: 6px !important;
}

.course-waitlist-form {
  display: grid !important;
  gap: 16px !important;
  margin-top: 18px !important;
}

.course-honeypot {
  position: absolute !important;
  left: -9999px !important;
  width: 1px !important;
  height: 1px !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

.course-waitlist-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 14px !important;
}

.course-waitlist-field {
  display: grid !important;
  gap: 8px !important;
}

.course-waitlist-field label {
  font-family: var(--font-body) !important;
  font-size: 13px !important;
  line-height: 1.35 !important;
  font-weight: 600 !important;
  color: #4a4037 !important;
}

.course-waitlist-field input {
  width: 100% !important;
  min-height: 52px !important;
  padding: 14px 16px !important;
  border-radius: 16px !important;
  border: 1px solid rgba(109, 94, 77, 0.16) !important;
  background: rgba(255, 252, 247, 0.94) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.5) !important;
  font-family: var(--font-body) !important;
  font-size: var(--text-body) !important;
  line-height: var(--text-body-line) !important;
  color: #332D28 !important;
}

.course-waitlist-field input:focus,
.consent-checkbox input:focus {
  outline: none !important;
  border-color: rgba(114, 126, 83, 0.7) !important;
  box-shadow: 0 0 0 3px rgba(114, 126, 83, 0.14) !important;
}

.consent-checkbox {
  display: grid !important;
  grid-template-columns: 18px minmax(0, 1fr) !important;
  align-items: start !important;
  gap: 12px !important;
  margin-top: 2px !important;
  font-family: var(--font-body) !important;
  font-size: 12.5px !important;
  line-height: 1.55 !important;
  color: #5a5048 !important;
}

.consent-checkbox input {
  width: 18px !important;
  height: 18px !important;
  margin: 1px 0 0 0 !important;
  border-radius: 5px !important;
}

.course-form-status {
  margin: -2px 0 0 0 !important;
  padding: 12px 14px !important;
  border-radius: 14px !important;
  border: 1px solid rgba(109, 94, 77, 0.14) !important;
  background: rgba(255, 252, 247, 0.88) !important;
  font-family: var(--font-body) !important;
  font-size: 13px !important;
  line-height: 1.5 !important;
  color: #4b423a !important;
}

.course-form-status.is-success {
  border-color: rgba(114, 126, 83, 0.28) !important;
  background: rgba(241, 246, 233, 0.92) !important;
  color: #415033 !important;
}

.course-form-status.is-error {
  border-color: rgba(150, 92, 78, 0.22) !important;
  background: rgba(250, 239, 235, 0.92) !important;
  color: #7a4135 !important;
}

.course-program-link {
  appearance: none !important;
  cursor: pointer !important;
}

.course-modal-hero {
  display: grid !important;
  gap: 14px !important;
  margin-bottom: 28px !important;
}

.course-modal-copy .workshop-modal-subtitle {
  max-width: 40rem !important;
}

.course-modal-highlight {
  max-width: 44rem !important;
  margin: 10px 0 4px 0 !important;
  padding: 24px 28px !important;
  border-radius: 24px !important;
  background:
    linear-gradient(180deg, rgba(248, 241, 231, 0.98) 0%, rgba(241, 233, 220, 0.94) 100%) !important;
  border: 1px solid rgba(120, 110, 95, 0.12) !important;
  box-shadow: 0 18px 36px rgba(74, 60, 44, 0.06) !important;
  font-family: var(--font-heading, "Cormorant Garamond", Georgia, serif) !important;
  font-size: clamp(1.55rem, 2.3vw, 2.05rem) !important;
  line-height: 1.3 !important;
  font-weight: 500 !important;
  font-style: italic !important;
  letter-spacing: -0.015em !important;
  text-align: center !important;
  color: #3a302a !important;
}

.course-language-note {
  margin: -8px 0 24px 0 !important;
  padding: 10px 14px !important;
  width: fit-content !important;
  border-radius: 999px !important;
  background: rgba(124, 134, 92, 0.1) !important;
  border: 1px solid rgba(117, 101, 82, 0.1) !important;
  font-family: var(--font-body) !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
  color: #51453b !important;
}

.course-modal-intro {
  display: grid !important;
  gap: 16px !important;
  max-width: 42rem !important;
  margin-bottom: 28px !important;
}

.course-modal-copy .course-journey-box {
  display: grid !important;
  gap: 0 !important;
  margin: 0 0 38px 0 !important;
  padding: 34px 34px 28px !important;
  border-radius: 28px !important;
  background: linear-gradient(180deg, rgba(248, 243, 236, 0.98) 0%, rgba(244, 236, 226, 0.92) 100%) !important;
  border: 1px solid rgba(111, 123, 93, 0.12) !important;
  box-shadow: 0 22px 48px rgba(68, 57, 45, 0.06) !important;
}

.course-modal-copy .course-journey-box .course-format-heading h3 {
  margin: 0 0 16px 0 !important;
  font-family: var(--font-heading, "Cormorant Garamond", Georgia, serif) !important;
  font-size: clamp(2rem, 3vw, 2.7rem) !important;
  line-height: 1.04 !important;
  font-weight: 500 !important;
  font-style: normal !important;
  letter-spacing: -0.025em !important;
  color: #332C26 !important;
}

.course-modal-copy .course-journey-grid {
  position: relative !important;
  display: grid !important;
  gap: 24px !important;
  margin-top: 34px !important;
  padding-left: 34px !important;
}

.course-modal-copy .course-journey-grid::before {
  content: "" !important;
  position: absolute !important;
  top: 12px !important;
  bottom: 16px !important;
  left: 10px !important;
  width: 1px !important;
  background: rgba(111, 123, 93, 0.32) !important;
}

.course-modal-copy .course-journey-intro {
  max-width: 720px !important;
  margin: 0 !important;
  font-family: var(--font-body) !important;
  font-size: var(--text-body) !important;
  font-weight: 400 !important;
  line-height: calc(var(--text-body-line) + 0.08) !important;
  letter-spacing: 0 !important;
  color: #766B61 !important;
}

.course-modal-copy .course-journey-card {
  position: relative !important;
  display: grid !important;
  gap: 0 !important;
  align-content: start !important;
  max-width: 640px !important;
  padding: 26px 30px !important;
  border-radius: 22px !important;
  background: rgba(255, 252, 246, 0.92) !important;
  border: 1px solid rgba(111, 123, 93, 0.14) !important;
  box-shadow: 0 14px 35px rgba(51, 44, 38, 0.045) !important;
}

.course-modal-copy .course-journey-card::before {
  content: "" !important;
  position: absolute !important;
  top: 30px !important;
  left: -31px !important;
  width: 12px !important;
  height: 12px !important;
  border-radius: 999px !important;
  background: #B9C3A7 !important;
  border: 2px solid #F6EFE5 !important;
  box-shadow: 0 0 0 1px rgba(111, 123, 93, 0.35) !important;
}

.course-modal-copy .course-journey-week {
  margin: 0 0 10px 0 !important;
  font-family: var(--font-ui) !important;
  font-size: 0.72rem !important;
  line-height: 1.2 !important;
  font-weight: 700 !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
  color: #6F7B5D !important;
}

.course-modal-copy .course-journey-card h4 {
  margin: 0 0 10px 0 !important;
  font-family: var(--font-heading, "Cormorant Garamond", Georgia, serif) !important;
  font-size: clamp(1.45rem, 2vw, 1.85rem) !important;
  line-height: 1.12 !important;
  font-weight: 500 !important;
  font-style: normal !important;
  letter-spacing: -0.022em !important;
  color: #332C26 !important;
}

.course-modal-copy .course-journey-card p {
  margin: 0 !important;
  font-family: var(--font-body) !important;
  font-size: var(--text-body) !important;
  font-weight: 400 !important;
  line-height: calc(var(--text-body-line) + 0.05) !important;
  color: #5F554C !important;
  font-style: normal !important;
  text-align: left !important;
  text-wrap: pretty !important;
  max-width: 620px !important;
}

.course-modal-intro p,
.course-note-box p,
.course-modal-cta p {
  margin: 0 !important;
  font-family: var(--font-body) !important;
  font-size: var(--text-body) !important;
  line-height: calc(var(--text-body-line) + 0.08) !important;
  color: #403833 !important;
  text-align: left !important;
}

.course-modal-cards {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 18px !important;
  margin-bottom: 24px !important;
}

.course-modal-copy .course-modal-card {
  display: grid !important;
  align-content: start !important;
  gap: 0 !important;
  padding: 24px 24px 22px !important;
  border-radius: 22px !important;
  background: rgba(255, 251, 245, 0.9) !important;
  border: 1px solid rgba(109, 94, 77, 0.1) !important;
  box-shadow: 0 16px 32px rgba(74, 60, 44, 0.06) !important;
}

.course-modal-card-wide {
  grid-column: auto !important;
}

.course-format-box {
  display: grid !important;
  gap: 18px !important;
  margin-bottom: 22px !important;
  padding: 24px 24px 22px !important;
  border-radius: 22px !important;
  background: rgba(247, 241, 233, 0.94) !important;
  border: 1px solid rgba(109, 94, 77, 0.1) !important;
}

.course-modal-copy .course-modal-card h3,
.course-modal-copy .course-format-heading h3,
.course-modal-copy .course-note-box h3,
.course-modal-copy .course-modal-cta h3 {
  margin-bottom: 0 !important;
  font-family: var(--font-heading, "Cormorant Garamond", Georgia, serif) !important;
  font-size: clamp(1.8rem, 2.4vw, 2.3rem) !important;
  line-height: 1.1 !important;
  font-weight: 500 !important;
  font-style: normal !important;
  letter-spacing: -0.024em !important;
  color: #332D28 !important;
}

.course-modal-copy .course-modal-card h3,
.course-modal-copy .course-note-box h3,
.course-modal-copy .course-modal-cta h3 {
  margin: 0 0 18px 0 !important;
}

.course-format-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 14px 18px !important;
}

.course-format-item {
  display: grid !important;
  gap: 6px !important;
}

.course-format-item p {
  margin: 0 !important;
  font-family: var(--font-body) !important;
  font-size: var(--text-body) !important;
  line-height: var(--text-body-line) !important;
  color: #403833 !important;
}

.course-format-item .workshop-detail-label {
  color: #6F7B5D !important;
}

.course-modal-copy .course-modal-list {
  gap: 10px !important;
}

.course-modal-copy .course-modal-list li {
  font-family: var(--font-body) !important;
  font-size: var(--text-body) !important;
  line-height: calc(var(--text-body-line) + 0.12) !important;
  color: #4E463F !important;
}

.consent-checkbox-optional {
  margin-top: -4px !important;
}

.consent-checkbox-optional span {
  color: #4f473f !important;
}

.course-note-box {
  display: grid !important;
  gap: 12px !important;
  margin-bottom: 22px !important;
  padding: 22px 24px !important;
  border-radius: 22px !important;
  background: rgba(251, 246, 238, 0.9) !important;
  border: 1px solid rgba(109, 94, 77, 0.1) !important;
}

.workshop-modal-copy .eyebrow {
  display: inline-block !important;
  margin: 0 0 14px 0 !important;
}

.workshop-modal-copy h2 {
  margin: 0 !important;
  font-family: var(--font-heading, "Cormorant Garamond", Georgia, serif) !important;
  font-size: clamp(44px, 5vw, 64px) !important;
  line-height: 0.95 !important;
  font-weight: 400 !important;
  letter-spacing: -0.035em !important;
  color: #332D28 !important;
}

.workshop-modal-subtitle {
  margin: 12px 0 0 !important;
  font-family: var(--font-body) !important;
  font-size: 18px !important;
  line-height: 1.6 !important;
  color: #5D544C !important;
}

.workshop-modal-copy p {
  font-family: var(--font-body) !important;
  font-size: var(--text-body) !important;
  line-height: calc(var(--text-body-line) + 0.08) !important;
  color: #403833 !important;
  text-align: justify !important;
  text-wrap: pretty !important;
  margin: 0 0 18px 0 !important;
}

.workshop-modal-copy p:last-of-type {
  margin-bottom: 0 !important;
}

.workshop-modal-details {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 16px !important;
  margin: 26px 0 22px !important;
}

.workshop-modal-detail {
  background: rgba(255, 250, 243, 0.74) !important;
  border: 1px solid rgba(111, 96, 79, 0.12) !important;
  border-radius: 18px !important;
  padding: 16px 18px !important;
  box-shadow: 0 10px 22px rgba(75, 63, 52, 0.06) !important;
}

.workshop-detail-label {
  display: inline-block !important;
  margin-bottom: 6px !important;
  font-family: var(--font-ui) !important;
  font-size: 11.5px !important;
  line-height: 1.2 !important;
  font-weight: 600 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  color: #766A5F !important;
}

.workshop-modal-detail p,
.workshop-modal-note {
  margin: 0 !important;
}

.workshop-modal-note + .workshop-modal-note {
  margin-top: 8px !important;
}

.workshop-modal-actions {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 14px !important;
  margin-top: 24px !important;
}

.workshop-modal-actions .button {
  min-height: 50px !important;
  padding: 14px 24px !important;
  border-radius: 999px !important;
  text-align: center !important;
  text-decoration: none !important;
}

.workshop-modal-actions .button-secondary {
  background: rgba(255, 249, 241, 0.92) !important;
  color: #4A423B !important;
  border: 1px solid rgba(102, 88, 74, 0.12) !important;
  box-shadow: none !important;
}

.pricing-modal-body {
  padding: 0 !important;
}

.pricing-modal .eyebrow {
  display: inline-block !important;
  margin: 0 0 14px 0 !important;
  font-size: 12px !important;
  line-height: 1 !important;
  font-weight: 700 !important;
  letter-spacing: 0.22em !important;
  text-transform: uppercase !important;
  color: #6B6258 !important;
}

.pricing-modal h2 {
  font-family: var(--font-heading, "Cormorant Garamond", Georgia, serif) !important;
  font-size: clamp(48px, 5vw, 72px) !important;
  line-height: 0.95 !important;
  font-weight: 400 !important;
  letter-spacing: -0.035em !important;
  color: #332D28 !important;
  margin: 0 0 22px 0 !important;
}

.pricing-modal .pricing-intro {
  font-size: var(--text-body) !important;
  line-height: var(--text-body-line) !important;
  color: #5C544D !important;
  max-width: none !important;
  white-space: nowrap !important;
  margin: 0 !important;
}

.pricing-modal .pricing-intro strong {
  color: #4B433C !important;
  font-weight: 600 !important;
}

.pricing-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(300px, 1fr)) !important;
  gap: 24px !important;
  margin-top: 32px !important;
}

.pricing-card {
  background: rgba(255, 250, 242, 0.78) !important;
  border: 1px solid rgba(116, 102, 84, 0.13) !important;
  border-radius: 24px !important;
  padding: 32px 28px !important;
  box-shadow: 0 18px 42px rgba(75, 63, 52, 0.10) !important;
  backdrop-filter: blur(6px) !important;
}

.pricing-card h3 {
  font-family: var(--font-heading, "Cormorant Garamond", Georgia, serif) !important;
  font-size: 27px !important;
  line-height: 1.08 !important;
  font-weight: 500 !important;
  letter-spacing: -0.015em !important;
  color: #332D28 !important;
  margin: 0 0 26px 0 !important;
}

.pricing-line {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  align-items: baseline !important;
  column-gap: 20px !important;
  width: 100% !important;
  padding: 12px 0 !important;
  margin: 0 !important;
  border-bottom: 1px solid rgba(79, 71, 64, 0.10) !important;
}

.pricing-card .pricing-line:last-of-type {
  border-bottom: none !important;
}

.price-label {
  min-width: 0 !important;
  white-space: normal !important;
  overflow: visible !important;
  text-overflow: clip !important;
  font-size: 19px !important;
  line-height: 1.34 !important;
  font-weight: 500 !important;
  color: #3F3832 !important;
}

.price-values {
  display: block !important;
  justify-self: end !important;
  width: max-content !important;
  margin-left: auto !important;
  text-align: right !important;
  font-size: 15px !important;
}

.current-price {
  justify-self: end !important;
  text-align: right !important;
  white-space: nowrap !important;
  font-variant-numeric: tabular-nums !important;
  font-weight: 700 !important;
  color: #342E29 !important;
}

.old-price {
  justify-self: end !important;
  text-align: right !important;
  white-space: nowrap !important;
  font-variant-numeric: tabular-nums !important;
  margin-left: 0 !important;
  color: rgba(77, 69, 61, 0.45) !important;
  text-decoration: line-through !important;
  font-weight: 500 !important;
  opacity: 0.42 !important;
}

.pricing-note {
  margin-top: 22px !important;
  padding-top: 18px !important;
  border-top: 1px solid rgba(79, 71, 64, 0.10) !important;
  font-size: 15.5px !important;
  line-height: 1.55 !important;
  color: #5A5149 !important;
}

.pricing-modal .guide-actions {
  display: flex !important;
  justify-content: center !important;
  margin-top: 32px !important;
}

.pricing-modal .pricing-button,
.pricing-modal .button-primary {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin: 0 auto !important;
  padding: 15px 34px !important;
  border-radius: 999px !important;
  background: #6F7B5D !important;
  color: #FFF8EE !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  box-shadow: 0 12px 28px rgba(83, 92, 68, 0.22) !important;
}

@media (max-width: 900px) {
  .pricing-grid {
    grid-template-columns: 1fr !important;
  }

  .pricing-modal .pricing-intro {
    white-space: normal !important;
  }

  .pricing-line {
    grid-template-columns: minmax(0, 1fr) auto !important;
  }

  .price-label {
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: clip !important;
    font-size: 18px !important;
    line-height: 1.34 !important;
  }
}

body[data-lang="it"] .brand-mark,
body[data-lang="en"] .brand-mark,
body[data-lang="it"] .nav-cta,
body[data-lang="en"] .nav-cta,
body[data-lang="it"] .section-inner,
body[data-lang="en"] .section-inner,
body[data-lang="it"] .hero-head,
body[data-lang="en"] .hero-head,
body[data-lang="it"] .hero-story,
body[data-lang="en"] .hero-story,
body[data-lang="it"] .site-header,
body[data-lang="en"] .site-header {
  font-family: inherit !important;
  color: inherit !important;
  letter-spacing: inherit !important;
}

@media (max-width: 980px) {
  html,
  body {
    overflow-x: hidden !important;
  }

  .container,
  .section-container,
  .hero-grid,
  .services-container,
  .approach-container,
  .about-container,
  .testimonials-container,
  .faq-container,
  .call-container,
  .bio-container,
  .section-inner,
  .hero-head,
  .hero-story,
  .credibility-strip-inner,
  .site-footer-grid,
  .footer-contact-band-inner {
    width: min(var(--container-main), calc(100vw - 28px)) !important;
  }

  .site-header,
  .nav-shell,
  .navbar {
    position: sticky !important;
    top: 10px !important;
    z-index: 80 !important;
    width: calc(100vw - 28px) !important;
    min-height: 62px !important;
    margin-top: 18px !important;
    padding: 10px 12px 10px 18px !important;
    gap: 10px !important;
  }

  .brand,
  .site-logo,
  .logo {
    margin-right: 0 !important;
    min-height: 40px !important;
  }

  .brand-mark {
    font-size: 24px !important;
  }

  .header-controls {
    margin-left: auto !important;
    gap: 8px !important;
  }

  .lang-switch {
    padding: 3px !important;
  }

  .lang-option {
    min-width: 32px !important;
    min-height: 32px !important;
    font-size: 10px !important;
  }

  .menu-toggle {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 40px !important;
    padding: 0 14px !important;
    border: 1px solid rgba(117, 109, 99, 0.18) !important;
    background: rgba(252, 248, 241, 0.94) !important;
    color: var(--color-muted) !important;
    font-family: var(--font-ui) !important;
    font-size: 10.5px !important;
    line-height: 1 !important;
    font-weight: 700 !important;
    letter-spacing: 0.14em !important;
    text-transform: uppercase !important;
    border-radius: 999px !important;
  }

  .site-nav {
    position: absolute !important;
    top: calc(100% + 10px) !important;
    left: 0 !important;
    right: 0 !important;
    z-index: 40 !important;
    display: none !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 6px !important;
    padding: 14px !important;
    border-radius: 22px !important;
    background: rgba(252, 248, 241, 0.98) !important;
    box-shadow: 0 16px 36px rgba(50, 42, 34, 0.14) !important;
    border: 1px solid rgba(117, 109, 99, 0.12) !important;
  }

  .site-nav.is-open {
    display: flex !important;
  }

  body[data-lang="en"] .site-nav a,
  body[data-lang="it"] .site-nav a,
  body[data-lang="en"] .site-nav .nav-link-button,
  body[data-lang="it"] .site-nav .nav-link-button {
    width: 100% !important;
    min-height: 44px !important;
    justify-content: flex-start !important;
    padding: 0 12px !important;
    font-size: 11px !important;
    letter-spacing: 0.12em !important;
    border-radius: 14px !important;
  }

  body[data-lang="en"] .site-nav .nav-cta,
  body[data-lang="it"] .site-nav .nav-cta {
    margin-top: 4px !important;
    justify-content: center !important;
    min-height: 46px !important;
    padding: 0 18px !important;
  }

  body.is-menu-open {
    overflow: hidden !important;
  }

  body[data-lang="en"] .hero,
  body[data-lang="it"] .hero {
    padding-top: 48px !important;
    padding-bottom: 48px !important;
  }

  body[data-lang="en"] .hero-head,
  body[data-lang="it"] .hero-head {
    gap: 14px !important;
    text-align: center !important;
  }

  body[data-lang="en"] .hero-head .eyebrow,
  body[data-lang="it"] .hero-head .eyebrow {
    font-size: 9.5px !important;
    line-height: 1.45 !important;
    padding: 0 8px !important;
  }

  body[data-lang="en"] .hero-title,
  body[data-lang="it"] .hero-title {
    font-size: 46px !important;
    line-height: 0.94 !important;
    letter-spacing: -0.025em !important;
  }

  body[data-lang="en"] .hero-title span,
  body[data-lang="it"] .hero-title span {
    white-space: normal !important;
  }

  body[data-lang="en"] .hero-story,
  body[data-lang="it"] .hero-story {
    margin-top: 32px !important;
    row-gap: 22px !important;
    column-gap: 0 !important;
  }

  body[data-lang="en"] .hero-story-copy,
  body[data-lang="it"] .hero-story-copy {
    gap: 10px !important;
    max-width: 100% !important;
    text-align: center !important;
    justify-items: center !important;
  }

  body[data-lang="en"] .hero-story-copy p,
  body[data-lang="it"] .hero-story-copy p,
  .hero-copy,
  .hero-closing-line,
  .hero-description {
    font-size: 17px !important;
    line-height: 1.58 !important;
    margin-bottom: 14px !important;
  }

  .hero-copy {
    font-size: 21px !important;
    line-height: 1.28 !important;
  }

  body[data-lang="en"] .hero-story-copy p:first-child,
  body[data-lang="it"] .hero-story-copy p:first-child,
  .hero-support-line {
    font-size: 21px !important;
    line-height: 1.26 !important;
    margin-bottom: 16px !important;
  }

  .hero-cta-link {
    min-height: 50px !important;
    padding: 0 20px !important;
    font-size: 14px !important;
  }

  .hero-actions {
    justify-content: center !important;
  }

  .pain-grid,
  .support-grid,
  .benefits-list,
  .workshops-grid,
  .foundation-grid,
  .testimonial-videos,
  .site-footer-grid,
  .footer-contact-band-inner {
    grid-template-columns: 1fr !important;
  }

  .pain-grid,
  .support-grid {
    gap: 18px !important;
  }

  .benefits-section {
    padding: 78px 0 !important;
  }

  .workshops-section {
    padding: 78px 0 !important;
  }

  .benefits-inner {
    gap: 18px !important;
  }

  .workshops-inner {
    gap: 24px !important;
  }

  .pain-card,
  .benefit-item,
  .foundation-card {
    padding: 22px 18px !important;
  }

  .pain-title,
  .pain-begin,
  .begin-here {
    font-size: 32px !important;
    line-height: 1.02 !important;
  }

  .pain-begin,
  .begin-here {
    text-align: left !important;
    margin-top: 24px !important;
  }

  .services-section,
  .pathways-section,
  .work-with-me-section,
  .benefits-section,
  .foundation-section,
  .about-section,
  .testimonials-section,
  .faq-section {
    padding-top: 64px !important;
    padding-bottom: 72px !important;
  }

  .section-title,
  .services-title,
  .approach-title,
  .about-title,
  .testimonials-title,
  .faq-title {
    font-size: 36px !important;
    line-height: 1.02 !important;
    white-space: normal !important;
    text-wrap: balance !important;
  }

  body[data-lang="en"] .approach-title,
  body[data-lang="it"] .approach-title,
  body[data-lang="en"] .testimonials-title,
  body[data-lang="it"] .testimonials-title {
    white-space: normal !important;
    text-wrap: balance !important;
    overflow-wrap: anywhere !important;
    max-width: 100% !important;
  }

  .services-header .section-subtitle,
  .pathways-header .section-subtitle,
  .benefits-intro,
  .workshops-intro,
  .section-heading p {
    max-width: 100% !important;
  }

  .workshops-intro {
    white-space: normal !important;
  }

  .workshops-grid {
    max-width: 100% !important;
  }

  .workshops-stack {
    gap: 28px !important;
  }

  .workshops-subsection {
    gap: 18px !important;
  }

  .workshops-empty-state,
  .workshops-archive-summary {
    padding: 20px 20px !important;
  }

  .workshops-archive-summary {
    flex-direction: column !important;
    align-items: flex-start !important;
  }

  .workshops-archive-panel {
    padding: 0 20px 20px !important;
  }

  .workshops-archive-toggle {
    align-self: flex-start !important;
  }

  .workshops-subtitle {
    font-size: 30px !important;
  }

  .course-program-card {
    grid-template-columns: 1fr !important;
    background: #F6EFE5 !important;
  }

  .course-program-card::before {
    display: none !important;
  }

  .course-program-media {
    display: none !important;
  }

  .course-program-media::before {
    display: none !important;
  }

  .course-program-media::after {
    display: none !important;
  }

  .course-program-content {
    max-width: 100% !important;
    padding: 24px 20px 18px !important;
    gap: 16px !important;
    background: linear-gradient(180deg, rgba(246, 239, 229, 0.88) 0%, rgba(241, 233, 222, 0.82) 100%) !important;
  }

  .course-program-content::before {
    background: linear-gradient(180deg, rgba(246, 239, 229, 0.9) 0%, rgba(246, 239, 229, 0.84) 100%) !important;
  }

  .course-program-pillars {
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }

  .course-program-pillar {
    min-height: 0 !important;
    padding: 14px 14px 13px !important;
    border-radius: 16px !important;
  }

  .course-program-pillar h4 {
    font-size: 22px !important;
  }

  .course-program-pillar p {
    font-size: 13px !important;
  }

  .course-program-note {
    font-size: 13px !important;
  }

  .course-program-actions {
    display: grid !important;
    grid-template-columns: 1fr !important;
  }

  .course-program-button {
    width: 100% !important;
    justify-self: stretch !important;
  }

  .workshops-archive-grid {
    grid-template-columns: 1fr !important;
    gap: 18px !important;
  }

  .benefits-list {
    max-width: 100% !important;
    gap: 10px !important;
    margin-top: 18px !important;
  }

  .benefit-item {
    padding: 16px 15px !important;
    border-radius: 16px !important;
  }

  .benefit-item h3 {
    font-size: 22px !important;
    line-height: 1.04 !important;
    margin-bottom: 6px !important;
  }

  .benefit-item p {
    font-size: var(--text-body) !important;
    line-height: calc(var(--text-body-line) + 0.08) !important;
  }

  .service-card,
  .pathway-card {
    padding: 12px !important;
  }

  .service-card img,
  .pathway-card img {
    height: 220px !important;
  }

  .service-card-content,
  .pathway-card-content {
    padding: 14px 4px 8px !important;
  }

  .service-card h3,
  .pathway-card h3 {
    font-size: 24px !important;
    min-height: 0 !important;
    margin-bottom: 10px !important;
  }

  .service-card p,
  .pathway-card p,
  .service-card .service-overview,
  .pathway-card .service-overview {
    font-size: 14px !important;
    line-height: 1.5 !important;
    margin-bottom: 12px !important;
  }

  .service-card .service-overview,
  .pathway-card .service-overview,
  .service-card-content > p:not(.service-overview),
  .pathway-card-content > p:not(.service-overview) {
    min-height: 0 !important;
  }

  .service-card .more-info-content,
  .pathway-card .more-info-content,
  .service-card .dropdown-content,
  .pathway-card .dropdown-content,
  .service-card .accordion-content,
  .pathway-card .accordion-content {
    padding: 18px 20px 20px 20px !important;
  }

  .service-card .more-info-content p,
  .pathway-card .more-info-content p,
  .service-card .more-info-content li,
  .pathway-card .more-info-content li {
    font-size: 13.5px !important;
    line-height: 1.55 !important;
  }

  .service-card details summary,
  .pathway-card details summary {
    min-height: 48px !important;
    font-size: 13px !important;
  }

  .service-book-button,
  .service-card .book-button,
  .pathway-card .book-button {
    height: 48px !important;
    font-size: 13px !important;
  }

  .about-layout {
    grid-template-columns: 1fr !important;
    gap: 24px !important;
    margin-top: 22px !important;
  }

  .about-portrait {
    order: 1 !important;
    width: 100% !important;
    max-width: 100% !important;
    aspect-ratio: 0.92 !important;
  }

  .about-copy {
    order: 2 !important;
    width: 100% !important;
    max-width: 100% !important;
    gap: 14px !important;
  }

  .about-copy p {
    text-align: left !important;
  }

  .about-intro,
  .about-support-copy {
    font-size: var(--text-body) !important;
    line-height: calc(var(--text-body-line) + 0.08) !important;
  }

  .video-testimonial {
    grid-template-columns: 1fr !important;
    min-height: auto !important;
    gap: 16px !important;
  }

  .video-frame,
  .testimonial-video {
    height: auto !important;
    aspect-ratio: 0.78 !important;
  }

  .testimonial-copy-block,
  .story-placeholder-copy {
    align-content: start !important;
    padding-right: 0 !important;
  }

  .faq-section .faq-accordion summary {
    font-size: 18px !important;
    line-height: 1.18 !important;
    padding-top: 0.95rem !important;
    padding-bottom: 0.95rem !important;
  }

  .faq-accordion p {
    font-size: 14px !important;
    line-height: 1.62 !important;
  }

  .free-call-section {
    padding: 52px 0 60px !important;
  }

  .free-call-card {
    width: 100% !important;
    grid-template-columns: 1fr !important;
    row-gap: 20px !important;
    padding: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    border: 0 !important;
  }

  .free-call-copy,
  .free-call-image {
    width: 100% !important;
    max-width: 100% !important;
  }

  .free-call-title {
    font-size: 34px !important;
  }

  .free-call-text {
    font-size: 15px !important;
    line-height: 1.58 !important;
  }

  .free-call-copy {
    padding-left: 12px !important;
    padding-right: 12px !important;
  }

  .free-call-image {
    height: 240px !important;
    padding-left: 12px !important;
    padding-right: 12px !important;
  }

  .free-call-image img {
    transform: scale(1.04) !important;
    transform-origin: center center !important;
    border-radius: 28px !important;
  }

  .site-footer {
    margin-top: 44px !important;
  }

  .site-footer-grid {
    gap: 28px !important;
  }

  .footer-quote {
    font-size: 24px !important;
    line-height: 1.18 !important;
  }

  .footer-quote-author {
    margin-top: 12px !important;
  }

  .footer-contact-band {
    padding-top: 10px !important;
  }

  .footer-contact-band-inner {
    gap: 18px !important;
    padding-top: 18px !important;
  }

  .footer-contact-links,
  .footer-legal-links {
    display: grid !important;
    gap: 10px !important;
  }

  .pricing-modal {
    width: calc(100vw - 22px) !important;
    padding: 34px 20px 24px !important;
    border-radius: 24px !important;
  }

  .workshop-modal {
    width: calc(100vw - 22px) !important;
    padding: 28px 18px 22px !important;
    border-radius: 24px !important;
  }

  .pricing-modal h2 {
    font-size: 44px !important;
  }

  .workshop-modal-copy h2 {
    font-size: 44px !important;
  }

  .pricing-card {
    padding: 24px 20px !important;
  }

  .workshop-card-content {
    padding: 20px 20px 22px !important;
  }

  .workshop-card-media {
    width: calc(100% - 24px) !important;
    margin-top: 12px !important;
  }

  .workshop-card-image-cover {
    height: 360px !important;
  }

  .workshop-card-badge {
    left: 14px !important;
    right: 14px !important;
    bottom: 14px !important;
    justify-content: center !important;
    text-align: center !important;
  }

  .workshop-card-chip-list {
    gap: 8px !important;
  }

  .workshop-card-chip-list span {
    font-size: 13px !important;
    padding: 7px 11px !important;
  }

  .course-modal-copy h3 {
    font-size: 28px !important;
  }

  .course-modal-hero {
    gap: 12px !important;
    margin-bottom: 24px !important;
  }

  .course-modal-highlight {
    max-width: none !important;
    padding: 18px 18px !important;
    border-radius: 18px !important;
    font-size: 1.45rem !important;
    line-height: 1.28 !important;
  }

  .course-modal-intro {
    gap: 14px !important;
    margin-bottom: 22px !important;
  }

  .course-language-note {
    width: auto !important;
    margin: -6px 0 20px 0 !important;
    padding: 10px 12px !important;
    border-radius: 16px !important;
    font-size: 12.5px !important;
  }

  .course-modal-copy .course-journey-box {
    gap: 0 !important;
    margin-bottom: 20px !important;
    padding: 24px 18px 20px !important;
    border-radius: 20px !important;
  }

  .course-modal-copy .course-journey-box .course-format-heading h3 {
    margin-bottom: 12px !important;
    font-size: 30px !important;
  }

  .course-modal-copy .course-journey-grid {
    gap: 14px !important;
    margin-top: 24px !important;
    padding-left: 22px !important;
  }

  .course-modal-copy .course-journey-grid::before {
    left: 6px !important;
  }

  .course-modal-copy .course-journey-intro {
    font-size: 13px !important;
    line-height: 1.62 !important;
  }

  .course-modal-copy .course-journey-card {
    max-width: none !important;
    padding: 20px 18px !important;
    border-radius: 16px !important;
  }

  .course-modal-copy .course-journey-card::before {
    top: 21px !important;
    left: -22px !important;
    width: 11px !important;
    height: 11px !important;
    box-shadow: 0 0 0 1px rgba(111, 123, 93, 0.35) !important;
  }

  .course-modal-copy .course-journey-card h4 {
    margin-bottom: 9px !important;
    font-size: 24px !important;
    line-height: 1.06 !important;
  }

  .course-modal-copy .course-journey-card p {
    font-size: 0.92rem !important;
    line-height: 1.62 !important;
    text-align: left !important;
  }

  .course-modal-copy .course-journey-week {
    margin-bottom: 8px !important;
    font-size: 10.5px !important;
    letter-spacing: 0.15em !important;
  }

  .course-modal-intro p,
  .course-note-box p,
  .course-modal-cta p,
  .course-format-item p {
    font-size: 14px !important;
    line-height: 1.58 !important;
  }

  .course-modal-cards {
    grid-template-columns: 1fr !important;
    gap: 14px !important;
    margin-bottom: 20px !important;
  }

  .course-waitlist-grid {
    grid-template-columns: 1fr !important;
    gap: 12px !important;
  }

  .course-waitlist-form {
    gap: 14px !important;
    margin-top: 16px !important;
  }

  .footer-updates-form {
    padding: 18px !important;
    border-radius: 22px !important;
  }

  .footer-updates-grid {
    grid-template-columns: 1fr !important;
    gap: 12px !important;
  }

  .footer-updates-button {
    width: 100% !important;
  }

  .footer-updates-title {
    font-size: 28px !important;
  }

  .footer-updates-copy,
  .footer-updates-note {
    max-width: none !important;
  }

  .course-waitlist-field input {
    min-height: 50px !important;
    padding: 13px 14px !important;
    border-radius: 14px !important;
    font-size: 14px !important;
  }

  .consent-checkbox {
    grid-template-columns: 16px minmax(0, 1fr) !important;
    gap: 10px !important;
    font-size: 12px !important;
  }

  .course-modal-card,
  .course-journey-box,
  .course-format-box,
  .course-note-box {
    padding: 20px 18px 18px !important;
    border-radius: 20px !important;
  }

  .course-format-grid {
    grid-template-columns: 1fr 1fr !important;
    gap: 12px 14px !important;
  }

  .course-modal-cta {
    padding: 18px 18px 20px !important;
    border-radius: 20px !important;
  }

  .workshop-modal-body {
    grid-template-columns: 1fr !important;
    gap: 24px !important;
  }

  .workshop-image-hint {
    right: 10px !important;
    bottom: 10px !important;
    font-size: 11px !important;
  }

  .workshop-modal-details {
    grid-template-columns: 1fr !important;
  }

  .workshop-modal-actions .button {
    width: 100% !important;
  }

  .workshop-image-lightbox-dialog {
    width: calc(100vw - 18px) !important;
    margin: 2vh auto !important;
    padding: 18px !important;
    border-radius: 20px !important;
  }
}

@media (max-width: 640px) {
  .site-header,
  .nav-shell,
  .navbar {
    width: calc(100vw - 20px) !important;
    padding: 9px 10px 9px 14px !important;
  }

  .brand-mark {
    font-size: 22px !important;
  }

  .lang-switch {
    display: inline-flex !important;
    padding: 2px !important;
    gap: 4px !important;
  }

  .lang-option {
    min-width: 30px !important;
    min-height: 30px !important;
    font-size: 9.5px !important;
    letter-spacing: 0.12em !important;
  }

  body[data-lang="en"] .hero-title,
  body[data-lang="it"] .hero-title {
    font-size: 34px !important;
    line-height: 1.01 !important;
  }

  body[data-lang="en"] .hero-head .eyebrow,
  body[data-lang="it"] .hero-head .eyebrow {
    font-size: 9px !important;
  }

  .section-title,
  .services-title,
  .approach-title,
  .about-title,
  .testimonials-title,
  .faq-title,
  .pain-title {
    font-size: 30px !important;
    line-height: 1.04 !important;
  }

  .pain-card h3,
  .foundation-card h3 {
    font-size: 22px !important;
    line-height: 1.04 !important;
  }

  .pain-card p,
  .foundation-card p {
    font-size: 13.5px !important;
    line-height: 1.52 !important;
  }

  .hero-media img,
  .hero-image img,
  .hero-visual img,
  .hero-media video,
  .hero-image video,
  .hero-visual video,
  body[data-lang="en"] .hero-image-panel,
  body[data-lang="it"] .hero-image-panel,
  .about-portrait,
  .free-call-image,
  .service-card img,
  .pathway-card img {
    border-radius: 18px !important;
  }

  .service-card img,
  .pathway-card img {
    height: 205px !important;
  }

  .testimonial-video {
    aspect-ratio: 0.74 !important;
  }

  .testimonial-copy-block h3,
  .story-placeholder-copy h3,
  .testimonial-card .quote-title {
    font-family: var(--font-heading) !important;
    font-size: 18px !important;
    line-height: 1.42 !important;
    font-style: normal !important;
    font-weight: 400 !important;
  }

  .testimonial-language,
  .testimonial-tag,
  .testimonial-caption,
  .testimonial-copy-block p {
    font-size: 12px !important;
  }

  .faq-section .faq-accordion summary {
    font-size: 17px !important;
  }

  .free-call-title {
    font-size: 30px !important;
  }

  .free-call-text {
    font-size: 14px !important;
  }

.pricing-modal h2 {
  font-size: 38px !important;
}
}

@media (max-width: 900px) {
  body[data-lang="en"] .hero-title,
  body[data-lang="en"] .hero-head .hero-title {
    width: 100% !important;
    max-width: 100% !important;
    text-align: center !important;
  }

  body[data-lang="en"] .hero-title span,
  body[data-lang="en"] .hero-head .hero-title span {
    display: flex !important;
    justify-content: center !important;
    width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    white-space: nowrap !important;
    text-align: center !important;
  }

  body[data-lang="en"] .hero-head,
  body[data-lang="it"] .hero-head {
    width: min(100%, calc(100vw - 28px)) !important;
    gap: 12px !important;
  }

  body[data-lang="en"] .hero-head .eyebrow,
  body[data-lang="it"] .hero-head .eyebrow {
    font-size: 8.8px !important;
    line-height: 1.45 !important;
    letter-spacing: 0.16em !important;
    padding: 0 10px !important;
  }

  body[data-lang="en"] .hero-title,
  body[data-lang="it"] .hero-title,
  body[data-lang="en"] .hero-head .hero-title,
  body[data-lang="it"] .hero-head .hero-title {
    max-width: 9.5ch !important;
    font-size: clamp(34px, 8.2vw, 50px) !important;
    line-height: 0.98 !important;
    letter-spacing: -0.03em !important;
    text-wrap: balance !important;
  }

  body[data-lang="en"] .hero-title span,
  body[data-lang="it"] .hero-title span,
  body[data-lang="en"] .hero-head .hero-title span,
  body[data-lang="it"] .hero-head .hero-title span {
    display: block !important;
    white-space: normal !important;
    text-wrap: balance !important;
  }

  body[data-lang="en"] .hero-story,
  body[data-lang="it"] .hero-story {
    min-height: 520px !important;
    padding: 34px 18px 30px !important;
    align-items: start !important;
  }

  body[data-lang="en"] .hero-story-copy,
  body[data-lang="it"] .hero-story-copy {
    width: min(280px, calc(100vw - 72px)) !important;
    max-width: 280px !important;
    gap: 10px !important;
    transform: none !important;
    justify-self: start !important;
    justify-items: start !important;
    text-align: left !important;
  }

  body[data-lang="en"] .hero-story-copy p:first-child,
  body[data-lang="it"] .hero-story-copy p:first-child,
  .hero-support-line {
    max-width: 100% !important;
    font-size: 12.5px !important;
    line-height: 1.42 !important;
    margin-bottom: 10px !important;
    padding: 12px 14px !important;
    border-radius: 18px !important;
    background: rgba(47, 41, 38, 0.42) !important;
  }

  .hero-actions {
    width: auto !important;
    justify-content: flex-start !important;
    padding-top: 2px !important;
  }

  .hero-cta-link {
    min-height: 44px !important;
    padding: 0 18px !important;
    font-size: 13px !important;
    line-height: 1.05 !important;
  }
}

@media (max-width: 640px) {
  body[data-lang="en"] .hero-title,
  body[data-lang="en"] .hero-head .hero-title {
    font-size: 30px !important;
    line-height: 0.98 !important;
    width: 100% !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    justify-self: center !important;
    transform: none !important;
    text-align: center !important;
  }

  body[data-lang="en"] .hero-title span,
  body[data-lang="en"] .hero-head .hero-title span {
    display: flex !important;
    justify-content: center !important;
    width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    white-space: nowrap !important;
    text-align: center !important;
  }

  body[data-lang="en"] .hero-title span:last-child,
  body[data-lang="en"] .hero-head .hero-title span:last-child {
    transform: translateX(-10px) !important;
  }

  body[data-lang="en"] .hero,
  body[data-lang="it"] .hero {
    padding-top: 40px !important;
    padding-bottom: 34px !important;
  }

  body[data-lang="en"] .hero-head .eyebrow,
  body[data-lang="it"] .hero-head .eyebrow {
    font-size: 8.2px !important;
    line-height: 1.4 !important;
    padding: 0 4px !important;
  }

  body[data-lang="en"] .hero-title,
  body[data-lang="it"] .hero-title,
  body[data-lang="en"] .hero-head .hero-title,
  body[data-lang="it"] .hero-head .hero-title {
    max-width: 8.8ch !important;
    font-size: 31px !important;
    line-height: 1 !important;
  }

  body[data-lang="en"] .hero-story,
  body[data-lang="it"] .hero-story {
    min-height: 460px !important;
    padding: 24px 14px 20px !important;
    background-position: center center !important;
  }

  body[data-lang="en"] .hero-story-copy,
  body[data-lang="it"] .hero-story-copy {
    width: min(228px, calc(100vw - 64px)) !important;
    max-width: 228px !important;
    gap: 8px !important;
    justify-self: start !important;
    margin-left: 6px !important;
  }

  body[data-lang="en"] .hero-story-copy p:first-child,
  body[data-lang="it"] .hero-story-copy p:first-child,
  .hero-support-line {
    font-size: 11.5px !important;
    line-height: 1.38 !important;
    padding: 10px 12px !important;
  }

  .hero-cta-link {
    min-height: 42px !important;
    padding: 0 16px !important;
    font-size: 12.5px !important;
  }
}

.card,
.pain-card,
.service-card,
.testimonial-card,
.approach-card,
.foundation-card,
.faq-row,
.accordion-row,
.benefit-item,
.workshop-card {
  border-radius: 4px !important;
}

@media (max-width: 900px) {
  .service-card p,
  .pathway-card p,
  .service-card .service-overview,
  .pathway-card .service-overview,
  .faq-accordion p,
  .free-call-text,
  .course-program-description,
  .course-program-details,
  .course-program-pillar p,
  .course-modal-list li,
  .course-modal-copy .course-modal-list li,
  .course-modal-copy .course-journey-intro,
  .course-modal-copy .course-journey-card p,
  .course-modal-intro p,
  .course-note-box p,
  .course-modal-cta p,
  .course-format-item p,
  .workshop-modal-copy p,
  .footer-updates-copy,
  .site-footer-copy p {
    font-size: var(--text-body) !important;
    line-height: calc(var(--text-body-line) + 0.08) !important;
  }

  .course-waitlist-field input {
    font-size: var(--text-body) !important;
    line-height: var(--text-body-line) !important;
  }

  .workshops-section .course-program-content {
    padding: 20px 16px 16px !important;
    gap: 14px !important;
  }

  .workshops-section .course-program-description,
  .workshops-section .course-program-details,
  .workshops-section .course-program-note,
  .workshops-section .course-program-pillar p {
    font-size: 15px !important;
    line-height: 1.55 !important;
  }

  .workshops-section .course-program-pillar h4 {
    font-size: 17px !important;
    line-height: 1.16 !important;
  }

  .workshops-section .course-program-pillars {
    gap: 10px !important;
  }

  .workshops-section .course-program-pillar {
    padding: 13px 13px 12px !important;
  }
}
