.elementor-9121 .elementor-element.elementor-element-0f644fc{--display:flex;}.elementor-9121 .elementor-element.elementor-element-3b79f03{--display:flex;}.elementor-9121 .elementor-element.elementor-element-94714e2{--display:flex;}.elementor-9121 .elementor-element.elementor-element-f49dce1{--display:flex;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-9121 .elementor-element.elementor-element-fc4efbf.elementor-element{--align-self:flex-start;}.elementor-9121 .elementor-element.elementor-element-1f7aa44{--display:flex;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-9121 .elementor-element.elementor-element-5b518b8{--display:flex;}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-9121 .elementor-element.elementor-element-377ab00{--display:flex;}.elementor-9121 .elementor-element.elementor-element-4199da4{--display:flex;}.elementor-9121 .elementor-element.elementor-element-86d0a9f{--display:flex;}.elementor-9121 .elementor-element.elementor-element-e3df0f4{--display:flex;}.elementor-9121 .elementor-element.elementor-element-dd0386f{--display:flex;}.elementor-9121 .elementor-element.elementor-element-3bdde28{--display:flex;}.elementor-9121 .elementor-element.elementor-element-c0c3db4{--display:flex;}.elementor-9121 .elementor-element.elementor-element-0cffe4c{--display:flex;}.elementor-9121 .elementor-element.elementor-element-57f7e35{--display:flex;}.elementor-9121 .elementor-element.elementor-element-4a1a159{--display:flex;}.elementor-9121 .elementor-element.elementor-element-1fd1596{--display:flex;}.elementor-9121 .elementor-element.elementor-element-b71f84a{--display:flex;}.elementor-9121 .elementor-element.elementor-element-f68c596{--display:flex;}.elementor-9121 .elementor-element.elementor-element-4eccd13{--display:flex;}.elementor-9121 .elementor-element.elementor-element-0785e94{--display:flex;}.elementor-9121 .elementor-element.elementor-element-1c1fb70{--display:flex;}.elementor-9121 .elementor-element.elementor-element-c245f5b{--display:flex;}.elementor-9121 .elementor-element.elementor-element-e44fc29{--display:flex;}.elementor-9121 .elementor-element.elementor-element-b76a342{--display:flex;}.elementor-9121 .elementor-element.elementor-element-833e9d2{--display:flex;}.elementor-9121 .elementor-element.elementor-element-0314271{--display:flex;}.elementor-9121 .elementor-element.elementor-element-ac37b11{--display:flex;}.elementor-9121 .elementor-element.elementor-element-cd8f5cb{--display:flex;}.elementor-9121 .elementor-element.elementor-element-493a141{--display:flex;}.elementor-9121 .elementor-element.elementor-element-387ffd7{--display:flex;}.elementor-9121 .elementor-element.elementor-element-a693907{--display:flex;}.elementor-9121 .elementor-element.elementor-element-f177a80{--display:flex;}:root{--page-title-display:none;}/* Start custom CSS *//* SCOTSMAN® Book Page CSS v4 */

/* ============================================================
   Page tokens and canvas reinforcement
   ============================================================ */

.sm-page-book,
.sm-page-book.elementor-element {
  --sm-book-navy-deep: var(--sm-navy-deep, #0E1A35);
  --sm-book-navy: var(--sm-navy, #1B2A4E);
  --sm-book-navy-soft: #243456;
  --sm-book-orange: var(--sm-orange, #C97B1E);
  --sm-book-orange-light: var(--sm-orange-light, #E89B4D);
  --sm-book-green: var(--sm-green, #16A34A);
  --sm-book-paper: var(--sm-paper, #FAFAF7);
  --sm-book-light: var(--sm-light, #F1F1ED);
  --sm-book-white: var(--sm-white, #FFFFFF);
  --sm-book-ink: var(--sm-ink, #2A2F45);
  --sm-book-slate: var(--sm-slate, #475569);
  --sm-book-muted: var(--sm-muted, #94A3B8);
  --sm-book-rule: var(--sm-rule, #E2E8F0);
  --sm-book-on-dark-2: var(--sm-on-dark-2, #C9D4E8);
  --sm-book-on-dark-3: var(--sm-on-dark-3, #B8C4DA);
  --sm-book-sans: var(--sm-sans, Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif);
  --sm-book-display: var(--sm-display, Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif);
  --sm-book-serif: var(--sm-serif, Fraunces, Georgia, "Times New Roman", serif);
  --sm-book-container: var(--sm-container-max, 1200px);
  --sm-book-container-narrow: var(--sm-container-narrow, 900px);
  --sm-book-container-pad: var(--sm-container-pad, 32px);
  --sm-book-section-y: var(--sm-section-y-desktop, 104px);
  --sm-book-section-y-mobile: var(--sm-section-y-mobile, 64px);
  --sm-book-radius: var(--sm-radius, 8px);
  --sm-book-radius-lg: var(--sm-radius-lg, 12px);
  --sm-book-radius-xl: var(--sm-radius-xl, 14px);
  --sm-book-shadow-cover: -10px 14px 32px rgba(0,0,0,0.45), inset 1px 0 0 rgba(255,255,255,0.04);
}

.sm-page-book {
  background: var(--sm-book-paper) !important;
  color: var(--sm-book-ink) !important;
  font-family: var(--sm-book-sans) !important;
}

.sm-page-book,
.sm-page-book.elementor-element,
.sm-page-book > .e-con-inner {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  gap: 0 !important;
  overflow-x: hidden !important;
}

.sm-page-book,
.sm-page-book > .e-con-inner {
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
}

.sm-page-book .sm-section,
.sm-page-book .sm-section.elementor-element,
.sm-page-book .sm-section > .e-con-inner {
  width: 100% !important;
  max-width: none !important;
  margin-inline: 0 !important;
  padding-inline: 0 !important;
  align-self: stretch !important;
  gap: 0 !important;
}

.sm-page-book .sm-container,
.sm-page-book .sm-container.elementor-element,
.sm-page-book .sm-container > .e-con-inner {
  width: 100% !important;
  max-width: var(--sm-book-container) !important;
  margin-inline: auto !important;
  padding-inline: var(--sm-book-container-pad) !important;
  gap: 0 !important;
}

.sm-page-book .sm-container--narrow,
.sm-page-book .sm-container--narrow.elementor-element,
.sm-page-book .sm-container--narrow > .e-con-inner {
  max-width: var(--sm-book-container-narrow) !important;
}

/* Page-specific footer gap reset */
.sm-page-book,
.sm-page-book.elementor-element,
.sm-page-book > .e-con-inner {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  --padding-top: 0 !important;
  --padding-bottom: 0 !important;
  --margin-top: 0 !important;
  --margin-bottom: 0 !important;
  gap: 0 !important;
  row-gap: 0 !important;
  --gap: 0 !important;
  --row-gap: 0 !important;
}

.site-main:has(.sm-page-book),
.site-main:has(.sm-page-book) > .page-content,
.site-main:has(.sm-page-book) > .page-content > .elementor {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

.site-main:has(.sm-page-book) + .elementor-location-footer,
.site-main:has(.sm-page-book) + footer,
body:has(.sm-page-book) .elementor-location-footer {
  margin-top: 0 !important;
}

.sm-page-book > .e-con-inner > .sm-section:last-child,
.sm-page-book > .sm-section:last-child,
.sm-page-book .sm-book-cta,
.sm-page-book .sm-book-cta.elementor-element {
  margin-bottom: 0 !important;
}

/* Elementor spacing normalisation inside this page */
.sm-page-book .elementor-widget,
.sm-page-book .elementor-widget:not(:last-child),
.sm-page-book .elementor-widget-container,
.sm-page-book .elementor-heading-title,
.sm-page-book p,
.sm-page-book ul,
.sm-page-book ol,
.sm-page-book li,
.sm-page-book figure {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

.sm-page-book .elementor-widget-container > *:first-child { margin-top: 0 !important; }
.sm-page-book .elementor-widget-container > *:last-child { margin-bottom: 0 !important; }
.sm-page-book .elementor-button-wrapper { line-height: 1 !important; }

/* ============================================================
   Shared section and typography rhythm
   ============================================================ */

.sm-page-book .sm-section,
.sm-page-book .sm-section.elementor-element {
  padding-block: var(--sm-book-section-y) !important;
}

.sm-page-book .sm-section--dark {
  background: var(--sm-book-navy-deep) !important;
  color: var(--sm-book-white) !important;
}

.sm-page-book .sm-section--light {
  background: var(--sm-book-paper) !important;
  color: var(--sm-book-ink) !important;
}

.sm-page-book .sm-section--tint {
  background: var(--sm-book-light) !important;
  color: var(--sm-book-ink) !important;
}

.sm-page-book .sm-eyebrow,
.sm-page-book .sm-eyebrow.elementor-widget,
.sm-page-book .sm-eyebrow .elementor-widget-container,
.sm-page-book .sm-eyebrow .elementor-heading-title {
  display: inline-block !important;
  width: auto !important;
  margin: 0 0 22px !important;
  padding: 0 !important;
  font-family: var(--sm-book-sans) !important;
  font-size: var(--sm-fs-eyebrow, 13px) !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  letter-spacing: var(--sm-ls-eyebrow, 1.6px) !important;
  text-transform: uppercase !important;
  color: var(--sm-book-orange) !important;
}

.sm-page-book .sm-section--dark .sm-eyebrow,
.sm-page-book .sm-section--dark .sm-eyebrow .elementor-widget-container,
.sm-page-book .sm-section--dark .sm-eyebrow .elementor-heading-title {
  color: var(--sm-book-orange-light) !important;
}

.sm-page-book .sm-section-title,
.sm-page-book .sm-section-title.elementor-widget,
.sm-page-book .sm-section-title .elementor-widget-container,
.sm-page-book .sm-section-title .elementor-heading-title {
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  font-family: var(--sm-book-display) !important;
  font-size: var(--sm-fs-h2, 40px) !important;
  font-weight: 700 !important;
  line-height: 1.12 !important;
  letter-spacing: -0.5px !important;
  color: var(--sm-book-navy) !important;
}

.sm-page-book .sm-section--dark .sm-section-title,
.sm-page-book .sm-section--dark .sm-section-title .elementor-heading-title,
.sm-page-book .sm-section--dark .sm-section-title .elementor-widget-container {
  color: var(--sm-book-white) !important;
}

.sm-page-book .sm-lead,
.sm-page-book .sm-lead.elementor-widget,
.sm-page-book .sm-lead .elementor-widget-container,
.sm-page-book .sm-lead p {
  width: 100% !important;
  max-width: 680px !important;
  margin: 20px 0 0 !important;
  padding: 0 !important;
  font-family: var(--sm-book-sans) !important;
  font-size: var(--sm-fs-lead, 21px) !important;
  line-height: 1.5 !important;
  color: var(--sm-book-slate) !important;
}

.sm-page-book .sm-section--dark .sm-lead,
.sm-page-book .sm-section--dark .sm-lead p,
.sm-page-book .sm-section--dark .sm-lead .elementor-widget-container {
  color: var(--sm-book-on-dark-3) !important;
}

.sm-page-book .sm-max-580,
.sm-page-book .sm-max-580 .elementor-widget-container,
.sm-page-book .sm-max-580 .elementor-heading-title,
.sm-page-book .sm-max-580 p { max-width: 580px !important; }

.sm-page-book .sm-max-680,
.sm-page-book .sm-max-680 .elementor-widget-container,
.sm-page-book .sm-max-680 .elementor-heading-title,
.sm-page-book .sm-max-680 p { max-width: 680px !important; }

.sm-page-book .sm-max-760,
.sm-page-book .sm-max-760 .elementor-widget-container,
.sm-page-book .sm-max-760 .elementor-heading-title,
.sm-page-book .sm-max-760 p { max-width: 760px !important; }

.sm-page-book .sm-max-780,
.sm-page-book .sm-max-780 .elementor-widget-container,
.sm-page-book .sm-max-780 .elementor-heading-title,
.sm-page-book .sm-max-780 p { max-width: 780px !important; }

/* ============================================================
   Button handling — Elementor wrapper stays neutral, anchor is styled
   ============================================================ */

.sm-page-book .sm-button-row,
.sm-page-book .sm-button-row.elementor-element,
.sm-page-book .sm-btn-row,
.sm-page-book .sm-btn-row.elementor-element {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: 14px !important;
  margin: 0 !important;
  padding: 0 !important;
}

.sm-page-book .sm-button-row--centre,
.sm-page-book .sm-button-row--center,
.sm-page-book .sm-btn-row--centre,
.sm-page-book .sm-btn-row--center {
  justify-content: center !important;
}

.sm-page-book .sm-btn,
.sm-page-book .sm-btn.elementor-widget,
.sm-page-book .sm-btn .elementor-widget-container,
.sm-page-book .sm-btn .elementor-button-wrapper {
  background: transparent !important;
  border: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  box-shadow: none !important;
  width: auto !important;
}

.sm-page-book .sm-btn .elementor-button,
.sm-page-book a.sm-btn {
  min-height: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  padding: 16px 36px !important;
  border-radius: var(--sm-book-radius) !important;
  border: 1px solid transparent !important;
  font-family: var(--sm-book-sans) !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  text-decoration: none !important;
  cursor: pointer !important;
  box-shadow: none !important;
  transition: transform 150ms cubic-bezier(0.22, 0.61, 0.36, 1), border-color 250ms cubic-bezier(0.22, 0.61, 0.36, 1), color 250ms cubic-bezier(0.22, 0.61, 0.36, 1) !important;
}

.sm-page-book .sm-btn .elementor-button:hover,
.sm-page-book a.sm-btn:hover {
  transform: translateY(-2px) !important;
}

.sm-page-book .sm-btn .elementor-button:active,
.sm-page-book a.sm-btn:active {
  transform: translateY(0) !important;
}

.sm-page-book .sm-btn--orange .elementor-button,
.sm-page-book a.sm-btn--orange {
  background: var(--sm-book-orange) !important;
  color: var(--sm-book-white) !important;
  border-color: var(--sm-book-orange) !important;
}

.sm-page-book .sm-btn--dark-outline .elementor-button,
.sm-page-book a.sm-btn--dark-outline {
  background: transparent !important;
  color: var(--sm-book-white) !important;
  border-color: rgba(255,255,255,0.30) !important;
  padding: 15px 30px !important;
  font-size: 15px !important;
  font-weight: 600 !important;
}

.sm-page-book .sm-btn--dark-outline .elementor-button:hover,
.sm-page-book a.sm-btn--dark-outline:hover {
  color: var(--sm-book-orange-light) !important;
  border-color: var(--sm-book-orange-light) !important;
}

/* ============================================================
   Section 1 — Hero
   Source: header.hero.dark, 104px top / 64px bottom, book + text grid.
   ============================================================ */

.sm-book-hero,
.sm-book-hero.elementor-element {
  position: relative !important;
  overflow: hidden !important;
  padding-block: 104px 64px !important;
  background: var(--sm-book-navy-deep) !important;
  color: var(--sm-book-white) !important;
}

.sm-book-hero::before {
  content: '' !important;
  position: absolute !important;
  inset: 0 !important;
  background: linear-gradient(125deg, #16233F 0%, #1B2A4E 50%, #243456 100%) !important;
  transform: scale(1.02) !important;
  animation: smBookHeroDrift 22s cubic-bezier(0.22, 0.61, 0.36, 1) infinite alternate !important;
  z-index: 0 !important;
  pointer-events: none !important;
}

@keyframes smBookHeroDrift {
  0% { transform: translate(0,0) scale(1.02); }
  100% { transform: translate(2%,1%) scale(1.05); }
}

.sm-book-hero__inner,
.sm-book-hero__inner.elementor-element,
.sm-book-hero__inner > .e-con-inner {
  position: relative !important;
  z-index: 1 !important;
  display: grid !important;
  grid-template-columns: 0.85fr 1.15fr !important;
  gap: 64px !important;
  align-items: center !important;
}

.sm-book-hero__cover,
.sm-book-hero__cover.elementor-element,
.sm-book-hero__cover > .e-con-inner {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Book image visual styling is intentionally controlled in Elementor. */

.sm-book-hero__content,
.sm-book-hero__content.elementor-element,
.sm-book-hero__content > .e-con-inner {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  text-align: left !important;
}

.sm-book-hero__title,
.sm-book-hero__title.elementor-widget,
.sm-book-hero__title .elementor-widget-container,
.sm-book-hero__title .elementor-heading-title {
  margin: 0 !important;
  padding: 0 !important;
  font-family: var(--sm-book-display) !important;
  font-size: 48px !important;
  font-weight: 700 !important;
  line-height: 1.1 !important;
  letter-spacing: -0.9px !important;
  color: var(--sm-book-white) !important;
}

.sm-book-hero__title .sm-text-orange,
.sm-book-hero__title span.sm-text-orange { color: var(--sm-book-orange-light) !important; }

.sm-book-hero__lead,
.sm-book-hero__lead.elementor-widget,
.sm-book-hero__lead .elementor-widget-container,
.sm-book-hero__lead p {
  width: 100% !important;
  max-width: none !important;
  margin: 24px 0 0 !important;
  padding: 0 !important;
  font-family: var(--sm-book-sans) !important;
  font-size: 18px !important;
  line-height: 1.65 !important;
  color: var(--sm-book-on-dark-2) !important;
}

.sm-book-hero__quote,
.sm-book-hero__quote.elementor-widget,
.sm-book-hero__quote .elementor-widget-container,
.sm-book-hero__quote p {
  width: 100% !important;
  margin: 24px 0 0 !important;
  padding: 0 !important;
  font-family: var(--sm-book-display) !important;
  font-size: 20px !important;
  font-weight: 500 !important;
  font-style: italic !important;
  line-height: 1.35 !important;
  letter-spacing: -0.2px !important;
  color: var(--sm-book-white) !important;
}

.sm-book-hero__buttons,
.sm-book-hero__buttons.elementor-element {
  margin-top: 48px !important;
  justify-content: flex-start !important;
}

.sm-book-hero__note,
.sm-book-hero__note.elementor-widget,
.sm-book-hero__note .elementor-widget-container,
.sm-book-hero__note p {
  width: 100% !important;
  margin: 16px 0 0 !important;
  padding: 0 !important;
  font-family: var(--sm-book-sans) !important;
  font-size: 13px !important;
  line-height: 1.5 !important;
  color: var(--sm-book-muted) !important;
}

/* ============================================================
   Section 2 — Why publish a methodology
   ============================================================ */

.sm-book-why__inner,
.sm-book-why__inner.elementor-element,
.sm-book-why__inner > .e-con-inner {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: 0 !important;
}

.sm-book-why__body,
.sm-book-why__body.elementor-widget,
.sm-book-why__body .elementor-widget-container,
.sm-book-why__body p,
.sm-book-legacy__body,
.sm-book-legacy__body.elementor-widget,
.sm-book-legacy__body .elementor-widget-container,
.sm-book-legacy__body p {
  width: 100% !important;
  margin: 24px 0 0 !important;
  padding: 0 !important;
  font-family: var(--sm-book-sans) !important;
  font-size: 17px !important;
  line-height: 1.7 !important;
  color: var(--sm-book-ink) !important;
}

.sm-book-legacy__body p + p,
.sm-book-legacy__body .elementor-widget-container p + p {
  margin-top: 18px !important;
}

.sm-book-pull-centre,
.sm-book-pull-centre.elementor-widget,
.sm-book-pull-centre .elementor-widget-container,
.sm-book-pull-centre p {
  width: 100% !important;
  margin: 40px 0 0 !important;
  padding: 0 !important;
  text-align: center !important;
  font-family: var(--sm-book-serif) !important;
  font-style: italic !important;
  font-size: 28px !important;
  line-height: 1.35 !important;
  color: var(--sm-book-navy) !important;
}

/* ============================================================
   Section 3 — Inside the book / three parts
   ============================================================ */

.sm-book-parts__inner,
.sm-book-parts__inner.elementor-element,
.sm-book-parts__inner > .e-con-inner,
.sm-book-audience__inner,
.sm-book-audience__inner.elementor-element,
.sm-book-audience__inner > .e-con-inner,
.sm-book-readers__inner,
.sm-book-readers__inner.elementor-element,
.sm-book-readers__inner > .e-con-inner {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: 0 !important;
}

.sm-book-parts-grid,
.sm-book-parts-grid.elementor-element,
.sm-book-parts-grid > .e-con-inner {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 18px !important;
  width: 100% !important;
  margin: 36px 0 0 !important;
  padding: 0 !important;
  align-items: stretch !important;
}

.sm-book-part-card,
.sm-book-part-card.elementor-element,
.sm-book-part-card > .e-con-inner {
  display: flex !important;
  flex-direction: column !important;
  gap: 0 !important;
  width: 100% !important;
  height: 100% !important;
  margin: 0 !important;
  padding: 30px 28px !important;
  background: var(--sm-book-white) !important;
  border: 1px solid var(--sm-book-rule) !important;
  border-radius: var(--sm-book-radius-xl) !important;
  box-shadow: none !important;
}

.sm-book-part-card__label,
.sm-book-part-card__label.elementor-widget,
.sm-book-part-card__label .elementor-widget-container,
.sm-book-part-card__label .elementor-heading-title {
  margin: 0 0 10px !important;
  padding: 0 !important;
  font-family: var(--sm-book-sans) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  letter-spacing: 1.4px !important;
  text-transform: uppercase !important;
  color: var(--sm-book-orange) !important;
}

.sm-book-part-card__title,
.sm-book-part-card__title.elementor-widget,
.sm-book-part-card__title .elementor-widget-container,
.sm-book-part-card__title .elementor-heading-title {
  margin: 0 0 14px !important;
  padding: 0 !important;
  font-family: var(--sm-book-display) !important;
  font-size: 22px !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  letter-spacing: -0.3px !important;
  color: var(--sm-book-navy) !important;
}

.sm-book-part-card__body,
.sm-book-part-card__body.elementor-widget,
.sm-book-part-card__body .elementor-widget-container,
.sm-book-part-card__body p {
  margin: 0 0 14px !important;
  padding: 0 !important;
  font-family: var(--sm-book-sans) !important;
  font-size: 15px !important;
  line-height: 1.65 !important;
  color: var(--sm-book-slate) !important;
}

.sm-book-part-card__list,
.sm-book-part-card__list.elementor-widget,
.sm-book-part-card__list .elementor-widget-container,
.sm-book-part-card__list ul {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

.sm-book-part-card__list li {
  position: relative !important;
  margin: 0 !important;
  padding: 6px 0 6px 22px !important;
  font-family: var(--sm-book-sans) !important;
  font-size: 14.5px !important;
  line-height: 1.55 !important;
  color: var(--sm-book-ink) !important;
}

.sm-book-part-card__list li::before {
  content: '›' !important;
  position: absolute !important;
  left: 0 !important;
  top: 6px !important;
  color: var(--sm-book-orange) !important;
  font-weight: 700 !important;
}

/* ============================================================
   Section 4 — Who it's for
   ============================================================ */

.sm-book-audience-grid,
.sm-book-audience-grid.elementor-element,
.sm-book-audience-grid > .e-con-inner {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 16px !important;
  width: 100% !important;
  margin: 36px 0 0 !important;
  padding: 0 !important;
  align-items: stretch !important;
}

.sm-book-audience-card,
.sm-book-audience-card.elementor-element,
.sm-book-audience-card > .e-con-inner {
  display: flex !important;
  flex-direction: column !important;
  gap: 0 !important;
  height: 100% !important;
  padding: 24px 22px !important;
  background: var(--sm-book-white) !important;
  border: 1px solid var(--sm-book-rule) !important;
  border-radius: var(--sm-book-radius-lg) !important;
}

.sm-book-audience-card__role,
.sm-book-audience-card__role.elementor-widget,
.sm-book-audience-card__role .elementor-widget-container,
.sm-book-audience-card__role .elementor-heading-title {
  margin: 0 0 8px !important;
  padding: 0 !important;
  font-family: var(--sm-book-sans) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  letter-spacing: 1.3px !important;
  text-transform: uppercase !important;
  color: var(--sm-book-orange) !important;
}

.sm-book-audience-card__body,
.sm-book-audience-card__body.elementor-widget,
.sm-book-audience-card__body .elementor-widget-container,
.sm-book-audience-card__body p {
  margin: 0 !important;
  padding: 0 !important;
  font-family: var(--sm-book-sans) !important;
  font-size: 14px !important;
  line-height: 1.55 !important;
  color: var(--sm-book-slate) !important;
}

/* ============================================================
   Section 5 — What readers say
   ============================================================ */

.sm-book-endorsement-grid,
.sm-book-endorsement-grid.elementor-element,
.sm-book-endorsement-grid > .e-con-inner {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 20px !important;
  width: 100% !important;
  margin: 36px 0 0 !important;
  padding: 0 !important;
  align-items: stretch !important;
}

.sm-book-endorsement-card,
.sm-book-endorsement-card.elementor-element,
.sm-book-endorsement-card > .e-con-inner {
  display: flex !important;
  flex-direction: column !important;
  gap: 0 !important;
  height: 100% !important;
  padding: 26px 28px !important;
  background: rgba(255,255,255,0.04) !important;
  border: 1px solid rgba(255,255,255,0.10) !important;
  border-radius: var(--sm-book-radius-lg) !important;
  box-shadow: none !important;
}

.sm-book-endorsement-card__quote,
.sm-book-endorsement-card__quote.elementor-widget,
.sm-book-endorsement-card__quote .elementor-widget-container,
.sm-book-endorsement-card__quote p {
  margin: 0 !important;
  padding: 0 !important;
  font-family: var(--sm-book-serif) !important;
  font-style: italic !important;
  font-size: 18px !important;
  line-height: 1.5 !important;
  color: var(--sm-book-white) !important;
}

.sm-book-endorsement-card__attr,
.sm-book-endorsement-card__attr.elementor-widget,
.sm-book-endorsement-card__attr .elementor-widget-container,
.sm-book-endorsement-card__attr p,
.sm-book-endorsement-card__attr .elementor-heading-title {
  margin: 14px 0 0 !important;
  padding: 0 !important;
  font-family: var(--sm-book-sans) !important;
  font-size: 13.5px !important;
  font-style: normal !important;
  font-weight: 600 !important;
  line-height: 1.5 !important;
  letter-spacing: 0.3px !important;
  color: var(--sm-book-orange-light) !important;
}

/* ============================================================
   Section 6 — Dermot Bradley's original work
   ============================================================ */

.sm-book-legacy__inner,
.sm-book-legacy__inner.elementor-element,
.sm-book-legacy__inner > .e-con-inner {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: 0 !important;
}

/* ============================================================
   Section 7 — CTA
   ============================================================ */

.sm-book-cta,
.sm-book-cta.elementor-element {
  background: var(--sm-book-navy-deep) !important;
}

.sm-book-cta__inner,
.sm-book-cta__inner.elementor-element,
.sm-book-cta__inner > .e-con-inner {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  gap: 0 !important;
  text-align: center !important;
}

.sm-book-cta__body,
.sm-book-cta__body.elementor-widget,
.sm-book-cta__body .elementor-widget-container,
.sm-book-cta__body p {
  width: 100% !important;
  max-width: 580px !important;
  margin: 24px auto 0 !important;
  padding: 0 !important;
  font-family: var(--sm-book-sans) !important;
  font-size: 18px !important;
  line-height: 1.6 !important;
  color: var(--sm-book-on-dark-2) !important;
}

.sm-book-cta__buttons,
.sm-book-cta__buttons.elementor-element {
  margin-top: 32px !important;
}

/* ============================================================
   Responsive behaviour
   ============================================================ */

@media (max-width: 1080px) {
  .sm-book-parts-grid,
  .sm-book-parts-grid.elementor-element,
  .sm-book-parts-grid > .e-con-inner {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 880px) {
  .sm-page-book .sm-section,
  .sm-page-book .sm-section.elementor-element {
    padding-block: var(--sm-book-section-y-mobile) !important;
  }

  .sm-book-hero,
  .sm-book-hero.elementor-element {
    padding-block: 72px 56px !important;
  }

  .sm-book-hero__inner,
  .sm-book-hero__inner.elementor-element,
  .sm-book-hero__inner > .e-con-inner {
    grid-template-columns: 1fr !important;
    gap: 36px !important;
    text-align: center !important;
  }

  .sm-book-hero__content,
  .sm-book-hero__content.elementor-element,
  .sm-book-hero__content > .e-con-inner {
    align-items: center !important;
    text-align: center !important;
  }

  .sm-book-hero__buttons,
  .sm-book-hero__buttons.elementor-element {
    justify-content: center !important;
  }

  .sm-book-hero__title,
  .sm-book-hero__title .elementor-heading-title {
    font-size: 40px !important;
  }

  .sm-book-audience-grid,
  .sm-book-audience-grid.elementor-element,
  .sm-book-audience-grid > .e-con-inner {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .sm-book-endorsement-grid,
  .sm-book-endorsement-grid.elementor-element,
  .sm-book-endorsement-grid > .e-con-inner {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 560px) {
  .sm-page-book .sm-container,
  .sm-page-book .sm-container.elementor-element,
  .sm-page-book .sm-container > .e-con-inner {
    padding-inline: 20px !important;
  }

  .sm-book-hero__title,
  .sm-book-hero__title .elementor-heading-title {
    font-size: 34px !important;
  }

  .sm-page-book .sm-section-title,
  .sm-page-book .sm-section-title .elementor-heading-title {
    font-size: 32px !important;
  }

  .sm-book-audience-grid,
  .sm-book-audience-grid.elementor-element,
  .sm-book-audience-grid > .e-con-inner {
    grid-template-columns: 1fr !important;
  }

  .sm-page-book .sm-btn .elementor-button,
  .sm-page-book a.sm-btn {
    width: 100% !important;
  }

  .sm-book-hero__buttons,
  .sm-book-cta__buttons {
    width: 100% !important;
  }
}

/* ============================================================
   v3 live Elementor source-fidelity lock
   Purpose: match the original Book source more closely when Elementor
   page CSS loads before the shared base CSS, and tolerate minor class
   differences in the live build.
   ============================================================ */

/* Hero rhythm — source: eyebrow bottom 22, lead top 24, quote top 24,
   buttons top 48, note top 16. Margins live on Elementor widgets only;
   inner containers/text are reset to avoid margin collapse/overrides. */
body .sm-page-book .sm-book-hero__content,
body .sm-page-book .sm-book-hero__content.elementor-element,
body .sm-page-book .sm-book-hero__content > .e-con-inner {
  gap: 0 !important;
  row-gap: 0 !important;
  --row-gap: 0 !important;
  --column-gap: 0 !important;
  --gap: 0 !important;
}

body .sm-page-book .sm-book-hero__content > .elementor-widget,
body .sm-page-book .sm-book-hero__content > .e-con,
body .sm-page-book .sm-book-hero__content > .elementor-widget:not(:last-child),
body .sm-page-book .sm-book-hero__content > .e-con:not(:last-child) {
  margin-block-start: 0 !important;
  margin-block-end: 0 !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

body .sm-page-book .sm-book-hero__content > .sm-eyebrow,
body .sm-page-book .sm-book-hero__content > .sm-eyebrow.elementor-widget,
body .sm-page-book .sm-book-hero__content > .sm-eyebrow .elementor-widget-container,
body .sm-page-book .sm-book-hero__content > .sm-eyebrow .elementor-heading-title {
  margin: 0 0 22px !important;
  padding: 0 !important;
  color: #E89B4D !important;
}

body .sm-page-book .sm-book-hero__content > .sm-book-hero__title,
body .sm-page-book .sm-book-hero__title.elementor-widget,
body .sm-page-book .sm-book-hero__title .elementor-widget-container,
body .sm-page-book .sm-book-hero__title .elementor-heading-title {
  margin: 0 !important;
  margin-block-start: 0 !important;
  margin-block-end: 0 !important;
  padding: 0 !important;
  color: #FFFFFF !important;
  font-family: var(--sm-book-display) !important;
  font-size: 48px !important;
  line-height: 1.1 !important;
  letter-spacing: -0.9px !important;
}

body .sm-page-book .sm-book-hero__title .sm-text-orange,
body .sm-page-book .sm-book-hero__title .elementor-heading-title .sm-text-orange {
  color: #E89B4D !important;
}

body .sm-page-book .sm-book-hero__content > .sm-book-hero__lead,
body .sm-page-book .sm-book-hero__content > .sm-book-hero__lead.elementor-widget {
  margin-top: 24px !important;
  margin-block-start: 24px !important;
}

body .sm-page-book .sm-book-hero__lead .elementor-widget-container,
body .sm-page-book .sm-book-hero__lead p {
  margin: 0 !important;
  margin-block-start: 0 !important;
  margin-block-end: 0 !important;
  padding: 0 !important;
  color: #C9D4E8 !important;
  font-family: var(--sm-book-sans) !important;
  font-size: 18px !important;
  line-height: 1.65 !important;
}

body .sm-page-book .sm-book-hero__content > .sm-book-hero__quote,
body .sm-page-book .sm-book-hero__content > .sm-book-hero__quote.elementor-widget {
  margin-top: 24px !important;
  margin-block-start: 24px !important;
}

body .sm-page-book .sm-book-hero__quote,
body .sm-page-book .sm-book-hero__quote.elementor-widget,
body .sm-page-book .sm-book-hero__quote .elementor-widget-container,
body .sm-page-book .sm-book-hero__quote p {
  padding: 0 !important;
  color: #FFFFFF !important;
  font-family: var(--sm-book-display) !important;
  font-size: 20px !important;
  font-style: italic !important;
  font-weight: 500 !important;
  line-height: 1.35 !important;
  letter-spacing: -0.2px !important;
}

body .sm-page-book .sm-book-hero__quote .elementor-widget-container,
body .sm-page-book .sm-book-hero__quote p {
  margin: 0 !important;
}

body .sm-page-book .sm-book-hero__content > .sm-book-hero__buttons,
body .sm-page-book .sm-book-hero__buttons.elementor-element {
  margin-top: 48px !important;
  margin-block-start: 48px !important;
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 14px !important;
  justify-content: flex-start !important;
  align-items: center !important;
}

body .sm-page-book .sm-book-hero__content > .sm-book-hero__note,
body .sm-page-book .sm-book-hero__content > .sm-book-hero__note.elementor-widget {
  margin-top: 16px !important;
  margin-block-start: 16px !important;
}

body .sm-page-book .sm-book-hero__note,
body .sm-page-book .sm-book-hero__note.elementor-widget,
body .sm-page-book .sm-book-hero__note .elementor-widget-container,
body .sm-page-book .sm-book-hero__note p {
  padding: 0 !important;
  color: #94A3B8 !important;
  font-family: var(--sm-book-sans) !important;
  font-size: 13px !important;
  line-height: 1.5 !important;
}

body .sm-page-book .sm-book-hero__note .elementor-widget-container,
body .sm-page-book .sm-book-hero__note p {
  margin: 0 !important;
}

/* Part-card lists — the live page currently uses sm-book-part-card__body on
   the list widgets. Support both the intended list class and the live class. */
body .sm-page-book .sm-book-part-card__list,
body .sm-page-book .sm-book-part-card__list.elementor-widget,
body .sm-page-book .sm-book-part-card__list .elementor-widget-container,
body .sm-page-book .sm-book-part-card__list ul,
body .sm-page-book .sm-book-part-card__body ul {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

body .sm-page-book .sm-book-part-card__body:has(ul),
body .sm-page-book .sm-book-part-card__body.elementor-widget:has(ul),
body .sm-page-book .sm-book-part-card__body:has(ul) .elementor-widget-container {
  margin: 0 !important;
  padding: 0 !important;
}

body .sm-page-book .sm-book-part-card__list li,
body .sm-page-book .sm-book-part-card__body ul li {
  position: relative !important;
  margin: 0 !important;
  padding: 6px 0 6px 22px !important;
  font-family: var(--sm-book-sans) !important;
  font-size: 14.5px !important;
  line-height: 1.55 !important;
  color: var(--sm-book-ink) !important;
}

body .sm-page-book .sm-book-part-card__list li::before,
body .sm-page-book .sm-book-part-card__body ul li::before {
  content: '›' !important;
  position: absolute !important;
  left: 0 !important;
  top: 6px !important;
  color: var(--sm-book-orange) !important;
  font-weight: 700 !important;
}

/* Stronger page-wide section heading and lead rhythm for Elementor output. */
body .sm-page-book .sm-section-title,
body .sm-page-book .sm-section-title.elementor-widget,
body .sm-page-book .sm-section-title .elementor-widget-container,
body .sm-page-book .sm-section-title .elementor-heading-title {
  margin: 0 !important;
  padding: 0 !important;
}

body .sm-page-book .sm-section-title + .sm-lead,
body .sm-page-book .sm-section-title + .sm-lead.elementor-widget,
body .sm-page-book .sm-lead,
body .sm-page-book .sm-lead.elementor-widget {
  margin-top: 20px !important;
  margin-block-start: 20px !important;
}

body .sm-page-book .sm-lead .elementor-widget-container,
body .sm-page-book .sm-lead p {
  margin: 0 !important;
  padding: 0 !important;
}

@media (max-width: 880px) {
  body .sm-page-book .sm-book-hero__title,
  body .sm-page-book .sm-book-hero__title .elementor-heading-title {
    font-size: 40px !important;
  }

  body .sm-page-book .sm-book-hero__buttons.elementor-element {
    justify-content: center !important;
  }
}

@media (max-width: 560px) {
  body .sm-page-book .sm-book-hero__title,
  body .sm-page-book .sm-book-hero__title .elementor-heading-title {
    font-size: 34px !important;
  }}


/* ============================================================
   v4 live hero spacing lock
   The live Elementor source places the quote widget immediately before
   the button-row container. The global row reset can flatten margin on
   the button row, so the gap is now created as top padding on the actual
   hero button container with page/body-level specificity.
   ============================================================ */

body.elementor-page-9121 .sm-page.sm-page-book .sm-book-hero .sm-book-hero__content > .sm-book-hero__quote,
body.elementor-page-9121 .sm-page.sm-page-book .sm-book-hero .sm-book-hero__content > .sm-book-hero__quote.elementor-widget,
body.elementor-page-9121 .sm-page.sm-page-book .sm-book-hero .sm-book-hero__quote.elementor-element-bbb6f39 {
  display: block !important;
  width: 100% !important;
  margin-top: 24px !important;
  margin-bottom: 0 !important;
  margin-block-start: 24px !important;
  margin-block-end: 0 !important;
  padding: 0 !important;
}

body.elementor-page-9121 .sm-page.sm-page-book .sm-book-hero .sm-book-hero__quote,
body.elementor-page-9121 .sm-page.sm-page-book .sm-book-hero .sm-book-hero__quote .elementor-widget-container,
body.elementor-page-9121 .sm-page.sm-page-book .sm-book-hero .sm-book-hero__quote p,
body.elementor-page-9121 .sm-page.sm-page-book .sm-book-hero .sm-book-hero__quote span {
  color: #FFFFFF !important;
  font-family: var(--sm-book-display, Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif) !important;
  font-size: 19px !important;
  line-height: 1.55 !important;
  font-weight: 500 !important;
  font-style: italic !important;
  letter-spacing: -0.2px !important;
}

body.elementor-page-9121 .sm-page.sm-page-book .sm-book-hero .sm-book-hero__quote .elementor-widget-container,
body.elementor-page-9121 .sm-page.sm-page-book .sm-book-hero .sm-book-hero__quote p {
  margin: 0 !important;
  padding: 0 !important;
}

body.elementor-page-9121 .sm-page.sm-page-book .sm-book-hero .sm-book-hero__content > .sm-book-hero__buttons,
body.elementor-page-9121 .sm-page.sm-page-book .sm-book-hero .sm-book-hero__buttons.elementor-element,
body.elementor-page-9121 .sm-page.sm-page-book .sm-book-hero .elementor-element-5b518b8.sm-book-hero__buttons,
body.elementor-page-9121 .sm-page.sm-page-book .sm-book-hero .elementor-element-5b518b8.sm-button-row {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 14px !important;
  width: 100% !important;
  margin: 0 !important;
  margin-top: 0 !important;
  margin-block-start: 0 !important;
  padding: 56px 0 0 0 !important;
  min-height: 0 !important;
  background: transparent !important;
}

body.elementor-page-9121 .sm-page.sm-page-book .sm-book-hero .sm-book-hero__buttons > .sm-btn,
body.elementor-page-9121 .sm-page.sm-page-book .sm-book-hero .elementor-element-5b518b8 > .sm-btn {
  margin: 0 !important;
}

@media (max-width: 920px) {
  body.elementor-page-9121 .sm-page.sm-page-book .sm-book-hero .sm-book-hero__content > .sm-book-hero__buttons,
  body.elementor-page-9121 .sm-page.sm-page-book .sm-book-hero .sm-book-hero__buttons.elementor-element,
  body.elementor-page-9121 .sm-page.sm-page-book .sm-book-hero .elementor-element-5b518b8.sm-book-hero__buttons {
    justify-content: center !important;
    padding-top: 48px !important;
  }
}/* End custom CSS */