.elementor-3603 .elementor-element.elementor-element-683d688{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:center;}.elementor-3603 .elementor-element.elementor-element-683d688:not(.elementor-motion-effects-element-type-background), .elementor-3603 .elementor-element.elementor-element-683d688 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F3EFEA;}.elementor-3603 .elementor-element.elementor-element-856b264{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-3603 .elementor-element.elementor-element-93ac6e9{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-3603 .elementor-element.elementor-element-459e861{--display:flex;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-3603 .elementor-element.elementor-element-eff6558 .svg-wrapper-ee2dfc50{text-align:center;}.elementor-3603 .elementor-element.elementor-element-eff6558 .svg-wrapper-ee2dfc50 svg{width:100px;height:100px;}.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-3603 .elementor-element.elementor-element-93fd55d{text-align:center;}.elementor-3603 .elementor-element.elementor-element-d50401e{--display:flex;}.elementor-widget-form .elementor-field-group > label, .elementor-widget-form .elementor-field-subgroup label{color:var( --e-global-color-text );}.elementor-widget-form .elementor-field-group > label{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .elementor-field-type-html{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-widget-form .elementor-field-group .elementor-field{color:var( --e-global-color-text );}.elementor-widget-form .elementor-field-group .elementor-field, .elementor-widget-form .elementor-field-subgroup label{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .elementor-button{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-form .e-form__buttons__wrapper__button-next{background-color:var( --e-global-color-accent );}.elementor-widget-form .elementor-button[type="submit"]{background-color:var( --e-global-color-accent );}.elementor-widget-form .e-form__buttons__wrapper__button-previous{background-color:var( --e-global-color-accent );}.elementor-widget-form .elementor-message{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .e-form__indicators__indicator, .elementor-widget-form .e-form__indicators__indicator__label{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-form{--e-form-steps-indicator-inactive-primary-color:var( --e-global-color-text );--e-form-steps-indicator-active-primary-color:var( --e-global-color-accent );--e-form-steps-indicator-completed-primary-color:var( --e-global-color-accent );--e-form-steps-indicator-progress-color:var( --e-global-color-accent );--e-form-steps-indicator-progress-background-color:var( --e-global-color-text );--e-form-steps-indicator-progress-meter-color:var( --e-global-color-text );}.elementor-widget-form .e-form__indicators__indicator__progress__meter{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-3603 .elementor-element.elementor-element-f5450be .elementor-field-group{padding-right:calc( 10px/2 );padding-left:calc( 10px/2 );margin-bottom:10px;}.elementor-3603 .elementor-element.elementor-element-f5450be .elementor-form-fields-wrapper{margin-left:calc( -10px/2 );margin-right:calc( -10px/2 );margin-bottom:-10px;}.elementor-3603 .elementor-element.elementor-element-f5450be .elementor-field-group.recaptcha_v3-bottomleft, .elementor-3603 .elementor-element.elementor-element-f5450be .elementor-field-group.recaptcha_v3-bottomright{margin-bottom:0;}body.rtl .elementor-3603 .elementor-element.elementor-element-f5450be .elementor-labels-inline .elementor-field-group > label{padding-left:0px;}body:not(.rtl) .elementor-3603 .elementor-element.elementor-element-f5450be .elementor-labels-inline .elementor-field-group > label{padding-right:0px;}body .elementor-3603 .elementor-element.elementor-element-f5450be .elementor-labels-above .elementor-field-group > label{padding-bottom:0px;}.elementor-3603 .elementor-element.elementor-element-f5450be .elementor-field-type-html{padding-bottom:0px;}.elementor-3603 .elementor-element.elementor-element-f5450be .elementor-field-group .elementor-field:not(.elementor-select-wrapper){background-color:#ffffff;}.elementor-3603 .elementor-element.elementor-element-f5450be .elementor-field-group .elementor-select-wrapper select{background-color:#ffffff;}.elementor-3603 .elementor-element.elementor-element-f5450be .e-form__buttons__wrapper__button-next{color:#ffffff;}.elementor-3603 .elementor-element.elementor-element-f5450be .elementor-button[type="submit"]{color:#ffffff;}.elementor-3603 .elementor-element.elementor-element-f5450be .elementor-button[type="submit"] svg *{fill:#ffffff;}.elementor-3603 .elementor-element.elementor-element-f5450be .e-form__buttons__wrapper__button-previous{color:#ffffff;}.elementor-3603 .elementor-element.elementor-element-f5450be .e-form__buttons__wrapper__button-next:hover{color:#ffffff;}.elementor-3603 .elementor-element.elementor-element-f5450be .elementor-button[type="submit"]:hover{color:#ffffff;}.elementor-3603 .elementor-element.elementor-element-f5450be .elementor-button[type="submit"]:hover svg *{fill:#ffffff;}.elementor-3603 .elementor-element.elementor-element-f5450be .e-form__buttons__wrapper__button-previous:hover{color:#ffffff;}.elementor-3603 .elementor-element.elementor-element-f5450be{--e-form-steps-indicators-spacing:20px;--e-form-steps-indicator-padding:30px;--e-form-steps-indicator-inactive-secondary-color:#ffffff;--e-form-steps-indicator-active-secondary-color:#ffffff;--e-form-steps-indicator-completed-secondary-color:#ffffff;--e-form-steps-divider-width:1px;--e-form-steps-divider-gap:10px;}.elementor-3603 .elementor-element.elementor-element-c9a85de{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-3603 .elementor-element.elementor-element-4c3139a.elementor-element{--align-self:center;}.elementor-widget-nav-menu .elementor-nav-menu .elementor-item{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item{color:var( --e-global-color-text );fill:var( --e-global-color-text );}.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item:hover,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item.elementor-item-active,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item.highlighted,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item:focus{color:var( --e-global-color-accent );fill:var( --e-global-color-accent );}.elementor-widget-nav-menu .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:before,
					.elementor-widget-nav-menu .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:after{background-color:var( --e-global-color-accent );}.elementor-widget-nav-menu .e--pointer-framed .elementor-item:before,
					.elementor-widget-nav-menu .e--pointer-framed .elementor-item:after{border-color:var( --e-global-color-accent );}.elementor-widget-nav-menu{--e-nav-menu-divider-color:var( --e-global-color-text );}.elementor-widget-nav-menu .elementor-nav-menu--dropdown .elementor-item, .elementor-widget-nav-menu .elementor-nav-menu--dropdown  .elementor-sub-item{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-3603 .elementor-element.elementor-element-224ad44 .elementor-nav-menu--main .elementor-item{padding-left:0px;padding-right:0px;padding-top:0px;padding-bottom:0px;}.elementor-3603 .elementor-element.elementor-element-224ad44{--e-nav-menu-horizontal-menu-item-margin:calc( 0px / 2 );}.elementor-3603 .elementor-element.elementor-element-224ad44 .elementor-nav-menu--main:not(.elementor-nav-menu--layout-horizontal) .elementor-nav-menu > li:not(:last-child){margin-bottom:0px;}.elementor-3603 .elementor-element.elementor-element-2aa97f1{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-3603 .elementor-element.elementor-element-72a206a.elementor-element{--align-self:center;}.elementor-3603 .elementor-element.elementor-element-a1520d0 .elementor-nav-menu--main .elementor-item{padding-left:0px;padding-right:0px;padding-top:0px;padding-bottom:0px;}.elementor-3603 .elementor-element.elementor-element-a1520d0{--e-nav-menu-horizontal-menu-item-margin:calc( 0px / 2 );}.elementor-3603 .elementor-element.elementor-element-a1520d0 .elementor-nav-menu--main:not(.elementor-nav-menu--layout-horizontal) .elementor-nav-menu > li:not(:last-child){margin-bottom:0px;}.elementor-3603 .elementor-element.elementor-element-b83d92e{--display:flex;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}@media(min-width:768px){.elementor-3603 .elementor-element.elementor-element-683d688{--content-width:100%;}.elementor-3603 .elementor-element.elementor-element-856b264{--width:80%;}.elementor-3603 .elementor-element.elementor-element-93ac6e9{--width:100%;}.elementor-3603 .elementor-element.elementor-element-b83d92e{--width:80%;}}@media(max-width:1024px){.elementor-3603 .elementor-element.elementor-element-856b264{--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}}@media(max-width:767px){.elementor-3603 .elementor-element.elementor-element-856b264{--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}}/* Start custom CSS for container, class: .elementor-element-683d688 *//* ==========================================================================
   SECOND CRACK — FOOTER

   Styling only: colour, type, borders, form controls.

   This file deliberately sets NO layout. No display, no grid, no flex, no
   widths, no alignment, no ordering, no padding on containers. Position and
   spacing of the columns stay under your control in the Elementor panel —
   earlier versions forced a grid here and kept overriding what you set.
   ========================================================================== */

:root {
  --color-primary: #834227;
  --color-primary-strong: #5D2918;
  --color-subtle: #EECBAE;
  --color-secondary: #6E6862;
  --color-neutral: #F3EFEA;
  --color-surface: #FCFAF6;
  --color-on-surface: #1D1815;
  --color-border: #E2DDD7;

  --font-serif: Newsreader, "Source Serif 4", Georgia, serif;
  --font-sans: "Source Sans 3", "Source Sans Pro", system-ui, sans-serif;

  --radius-md: 8px;

  --space-xs: 4px;
  --space-sm: 8px;
  --space-md: 16px;
  --space-lg: 24px;
}

/* ==========================================================================
   Ground
   ========================================================================== */

.elementor-element-683d688 {
  background-color: var(--color-neutral) !important;
  color: var(--color-neutral) !important;
}

/* DESIGN.md: "No drop shadows anywhere, in either mode." */
.elementor-element-683d688 * {
  box-shadow: none !important;
}

/* ==========================================================================
   Logo
   ========================================================================== */

/* The SVG carries fill="#000000". DESIGN.md allows no pure black anywhere,
   so it is repainted with Roast Ink. */
.elementor-element-eff6558 svg g,
.elementor-element-eff6558 svg path {
  fill: var(--color-on-surface) !important;
}

/* ==========================================================================
   Tagline — the voice face, 400 only
   DESIGN.md: "Don't set Newsreader in bold, ever, at any size."
   ========================================================================== */

.elementor-element-93fd55d .elementor-heading-title {
  font-family: var(--font-serif) !important;
  font-weight: 400 !important;
  font-size: 26px !important;
  line-height: 1.3 !important;
  letter-spacing: -0.01em !important;
  color: var(--color-on-surface) !important;
}

/* ==========================================================================
   Column headings — label-caps
   Uppercase is reserved for chips and eyebrow labels; these are eyebrows.
   The markup uses <h2>, so the size has to come down off the heading scale.
   ========================================================================== */

.elementor-element-4c3139a .elementor-heading-title,
.elementor-element-72a206a .elementor-heading-title {
  font-family: var(--font-sans) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
  letter-spacing: 0.14em !important;
  font-feature-settings: "case" 1 !important;
  text-transform: uppercase !important;
  color: var(--color-secondary) !important;
}

/* ==========================================================================
   Newsletter form
   ========================================================================== */

.elementor-element-f5450be .elementor-field-label {
  font-family: var(--font-sans) !important;
  font-size: 15px !important;
  font-weight: 400 !important;
  line-height: 1.55 !important;
  color: var(--color-secondary) !important;
}

.elementor-element-f5450be input[type="email"] {
  font-family: var(--font-sans) !important;
  font-size: 16px !important;  /* 16px floor: iOS zooms the viewport below it */
  color: var(--color-on-surface) !important;
  background-color: var(--color-surface) !important;
  border: 1px solid var(--color-border) !important;
  border-radius: var(--radius-md) !important;
}

.elementor-element-f5450be input[type="email"]:focus {
  border-color: var(--color-primary) !important;
  outline: 2px solid var(--color-primary) !important;
  outline-offset: 2px !important;
}

/* Consent line is metadata, not body copy — Burlap at the data size. */
.elementor-element-f5450be .elementor-field-type-checkbox label {
  font-family: var(--font-sans) !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  line-height: 1.4 !important;
  letter-spacing: 0.01em !important;
  color: var(--color-secondary) !important;
}

.elementor-element-f5450be input[type="checkbox"] {
  accent-color: var(--color-primary) !important;
}

.elementor-element-f5450be .elementor-button {
  background-color: var(--color-primary) !important;
  color: var(--color-surface) !important;
  font-family: var(--font-sans) !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  letter-spacing: 0.01em !important;
  text-transform: none !important;
  border: none !important;
  border-radius: var(--radius-md) !important;
  transition: background-color 150ms ease-out !important;
}

.elementor-element-f5450be .elementor-button:hover {
  background-color: var(--color-primary-strong) !important;
  transform: none !important;   /* DESIGN.md: no lift, no scale, no shadow */
}

/* ==========================================================================
   Footer link lists
   Body weight here, not the header nav's 600 — a footer list is read, not
   scanned. Underline appears on hover only.
   ========================================================================== */

/* The header stylesheet carries an unscoped `.elementor-nav-menu` rule that
   forces `flex-direction: row`, and it reaches the footer's menus too. Rather
   than edit that file, the direction is set back to column here — two classes
   beat its one, so this wins wherever both are loaded. */
.elementor-element-683d688 .elementor-nav-menu {
  flex-direction: column !important;
  flex-wrap: nowrap !important;

  /* The list was narrower than its column and sat against the left edge, so
     the Alignment setting had nothing to centre against and the links landed
     off-axis from the heading above them. Full width gives that setting the
     room it needs — the alignment itself still comes from Elementor. */
  width: 100% !important;
}

.elementor-element-683d688 .elementor-nav-menu .menu-item {
  width: 100% !important;
}

.elementor-element-683d688 .elementor-nav-menu .elementor-item {
  font-family: var(--font-sans) !important;
  font-size: 15px !important;
  font-weight: 400 !important;
  letter-spacing: 0.02em !important;
  line-height: 1.55 !important;
  color: var(--color-on-surface) !important;
  text-decoration: none !important;
  background-color: transparent !important;
  transition: color 150ms ease-out !important;
}

.elementor-element-683d688 .elementor-nav-menu .elementor-item:hover,
.elementor-element-683d688 .elementor-nav-menu .elementor-item.elementor-item-active {
  color: var(--color-primary) !important;
  background-color: transparent !important;
}

/* ==========================================================================
   Copyright
   The markup makes it an <h2>, which renders at headline size in the serif.
   It is metadata, so it comes back to data-sm in the sans.
   ========================================================================== */

.elementor-element-5d7ea11 .elementor-heading-title {
  font-family: var(--font-sans) !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  line-height: 1.4 !important;
  letter-spacing: 0.01em !important;
  color: var(--color-secondary) !important;
  font-variant-numeric: tabular-nums !important;
}

/* ==========================================================================
   Dark mode — a separate palette, not an inversion.
   ========================================================================== */

@media (prefers-color-scheme: dark) {
  .elementor-element-683d688 {
    background-color: #13100D !important; /* surface-dark */
  }

  .elementor-element-eff6558 svg g,
  .elementor-element-eff6558 svg path {
    fill: #E2DDD5 !important;             /* on-surface-dark */
  }

  .elementor-element-93fd55d .elementor-heading-title,
  .elementor-element-683d688 .elementor-nav-menu .elementor-item {
    color: #E2DDD5 !important;
  }

  .elementor-element-4c3139a .elementor-heading-title,
  .elementor-element-72a206a .elementor-heading-title,
  .elementor-element-5d7ea11 .elementor-heading-title,
  .elementor-element-f5450be .elementor-field-label,
  .elementor-element-f5450be .elementor-field-type-checkbox label {
    color: #97918A !important;            /* secondary-dark */
  }

  .elementor-element-f5450be input[type="email"] {
    background-color: #221D1A !important; /* neutral-dark */
    color: #E2DDD5 !important;
    border-color: #352F2B !important;
  }

  /* The button inverts in dark mode — a dark fill on a dark ground
     disappears. */
  .elementor-element-f5450be .elementor-button {
    background-color: #C88762 !important; /* primary-dark */
    color: #13100D !important;            /* surface-dark */
  }

  .elementor-element-f5450be .elementor-button:hover {
    background-color: #E0AB86 !important; /* primary-strong-dark */
  }

  .elementor-element-683d688 .elementor-nav-menu .elementor-item:hover {
    color: #C88762 !important;
  }
}/* End custom CSS */