.elementor-kit-5{--e-global-color-primary:#F7F4EE;--e-global-color-secondary:#0A0A0A;--e-global-color-text:#F7F4EE;--e-global-color-accent:#F7F4EE;--e-global-color-primary_dark:#0A0A0A;--e-global-color-background:#0A0A0A;--e-global-color-surface:#111111;--e-global-color-text_muted:#A8A49C;--e-global-typography-primary-font-family:"Cormorant Garamond";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Plus Jakarta Sans";--e-global-typography-secondary-font-weight:600;--e-global-typography-text-font-family:"Cormorant Garamond";--e-global-typography-text-font-size:17px;--e-global-typography-text-font-weight:400;--e-global-typography-text-line-height:1.65em;--e-global-typography-accent-font-family:"Plus Jakarta Sans";--e-global-typography-accent-font-weight:600;--e-global-typography-heading-font-family:"Cormorant Garamond";--e-global-typography-heading-font-weight:600;--e-global-typography-heading-line-height:1.2em;--e-global-typography-body-font-family:"Cormorant Garamond";--e-global-typography-body-font-size:17px;--e-global-typography-body-font-weight:400;--e-global-typography-body-line-height:1.65em;--e-global-typography-label-font-family:"Plus Jakarta Sans";--e-global-typography-label-font-size:13px;--e-global-typography-label-font-weight:600;--e-global-typography-label-text-transform:uppercase;--e-global-typography-label-letter-spacing:1.2px;background-color:var( --e-global-color-background );color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-5 button,.elementor-kit-5 input[type="button"],.elementor-kit-5 input[type="submit"],.elementor-kit-5 .elementor-button{background-color:var( --e-global-color-primary );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );color:var( --e-global-color-surface );border-radius:999px 999px 999px 999px;padding:14px 28px 14px 28px;}.elementor-kit-5 button:hover,.elementor-kit-5 button:focus,.elementor-kit-5 input[type="button"]:hover,.elementor-kit-5 input[type="button"]:focus,.elementor-kit-5 input[type="submit"]:hover,.elementor-kit-5 input[type="submit"]:focus,.elementor-kit-5 .elementor-button:hover,.elementor-kit-5 .elementor-button:focus{background-color:var( --e-global-color-primary_dark );}.elementor-kit-5 e-page-transition{background-color:#FFBC7D;}.elementor-kit-5 p{margin-block-end:16px;}.elementor-kit-5 a{color:var( --e-global-color-primary );}.elementor-kit-5 a:hover{color:var( --e-global-color-primary_dark );}.elementor-kit-5 h1{color:var( --e-global-color-primary_dark );font-family:"Cormorant Garamond", Sans-serif;font-size:76px;font-weight:500;}.elementor-kit-5 h2{color:var( --e-global-color-primary_dark );font-family:"Cormorant Garamond", Sans-serif;font-size:47px;font-weight:500;}.elementor-kit-5 h3{color:var( --e-global-color-primary );font-family:"Plus Jakarta Sans", Sans-serif;font-size:26px;font-weight:500;}.elementor-kit-5 h4{color:var( --e-global-color-primary );font-family:"Plus Jakarta Sans", Sans-serif;font-size:22px;font-weight:500;}.elementor-kit-5 h5{color:var( --e-global-color-text );font-family:"Plus Jakarta Sans", Sans-serif;font-size:18px;font-weight:500;}.elementor-kit-5 h6{color:var( --e-global-color-text );font-family:"Plus Jakarta Sans", Sans-serif;font-size:16px;font-weight:500;}.elementor-kit-5 img{border-radius:0px 0px 0px 0px;}.elementor-kit-5 label{color:var( --e-global-color-text );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-kit-5 input:not([type="button"]):not([type="submit"]),.elementor-kit-5 textarea,.elementor-kit-5 .elementor-field-textual{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );color:var( --e-global-color-text );background-color:var( --e-global-color-surface );border-style:solid;border-width:1px 1px 1px 1px;border-color:var( --e-global-color-accent );border-radius:12px 12px 12px 12px;padding:12px 14px 12px 14px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1120px;}.e-con{--container-max-width:1120px;}.elementor-widget:not(:last-child){--kit-widget-spacing:24px;}.elementor-element{--widgets-spacing:24px 24px;--widgets-spacing-row:24px;--widgets-spacing-column:24px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1024px){.elementor-kit-5{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-5 h1{font-size:61px;}.elementor-kit-5 h2{font-size:38px;}.elementor-kit-5 h3{font-size:24px;}.elementor-kit-5 h4{font-size:20px;}.elementor-kit-5 h5{font-size:17px;}.elementor-kit-5 h6{font-size:15px;}.elementor-kit-5 input:not([type="button"]):not([type="submit"]),.elementor-kit-5 textarea,.elementor-kit-5 .elementor-field-textual{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-5{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-5 h1{font-size:46px;}.elementor-kit-5 h2{font-size:28px;}.elementor-kit-5 h3{font-size:22px;}.elementor-kit-5 h4{font-size:18px;}.elementor-kit-5 h5{font-size:16px;}.elementor-kit-5 h6{font-size:14px;}.elementor-kit-5 input:not([type="button"]):not([type="submit"]),.elementor-kit-5 textarea,.elementor-kit-5 .elementor-field-textual{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS *//* Michael Schiff */
.elementor-widget-heading .elementor-heading-title { letter-spacing: -0.01em; }
.elementor-widget-text-editor p { margin-block-end: 1em; }
.elementor-widget-text-editor p:last-child { margin-block-end: 0; }
.elementor-widget-text-editor ul { padding-left: 1.25em; margin-block: 0.75em 1em; }
.elementor-widget-text-editor li { margin-bottom: 0.35em; }
.elementor-button { transition: background-color 0.2s ease, transform 0.15s ease; }
.elementor-button:hover { transform: translateY(-1px); }
.elementor-field-group { margin-bottom: 14px; }
/* Form field radius comes from Kit Site Settings / component tokens — do not !important override */
.elementor-widget-icon-box .elementor-icon-box-title { margin-top: 12px; }
.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item { padding: 6px 10px; }
.elementor-widget-image img { display: block; width: 100%; height: auto; }
.elementor-widget-testimonial .elementor-testimonial-content { font-style: italic; line-height: 1.6; }
.elementor-widget-testimonial .elementor-testimonial-name { font-weight: 700; margin-top: 14px; }
.elementor-widget-social-icons .elementor-grid-item { transition: transform 0.15s ease; }
.elementor-widget-social-icons .elementor-grid-item:hover { transform: translateY(-2px); }
/* Ship safety: entrance animations must never leave content stuck invisible */
.elementor-invisible {
  visibility: visible !important;
  opacity: 1 !important;
}
/* Counter titles: SE gray remapped to cream fails WCAG on white/cream cards */
.elementor-counter-title {
  color: var(--e-global-color-text, #1C2B4B) !important;
}
.elementor-counter-number-wrapper {
  color: var(--e-global-color-primary, #2E4B37);
}
/* On-dark exception: contrast pass stamps wfs-on-dark when it forces surface ink */
.elementor-widget.wfs-on-dark .elementor-counter-title {
  color: var(--e-global-color-surface, #FFFFFF) !important;
}
.elementor-widget.wfs-on-dark .elementor-counter-number-wrapper {
  color: var(--e-global-color-surface, #FFFFFF);
}
/* Dark Theme Builder footer: kit link_normal is primary — green-on-green email links */
.elementor-location-footer a,
.elementor-location-footer a:visited {
  color: var(--e-global-color-surface, #FFFFFF) !important;
}
.elementor-location-footer a:hover,
.elementor-location-footer a:focus {
  color: var(--e-global-color-accent, #C4B07A) !important;
}

/* WFS kit optical polish */
/*
 * WFS kit optical polish — brand-agnostic craft absorbed from SUPER POLISH loops.
 * Accent/primary via Elementor globals (do NOT hardcode client greens / client motifs).
 * Opt-in: kit.include_optical_polish (template default true).
 * Client chrome / motifs → kit.extra_css (prefer wfs-* class names).
 * Ban: do not key kit CSS to Elementor element IDs (e.g. .elementor-element-7f9dc232).
 * QA-polish absorb 2026-08-14: empty states · button :focus-visible · cards · door-face ·
 *   photo-hero eyebrows · form|NAP row · utility secondary hide · optional Learn More arrow.
 */

/* --- Type wrap --- */
.elementor-widget-heading h1.elementor-heading-title,
.elementor-widget-heading h2.elementor-heading-title {
  text-wrap: balance;
}
.elementor-widget-text-editor p {
  text-wrap: pretty;
}

/* --- NAP / tel tabular nums --- */
.wfs-tabular-nums,
.wfs-tabular-nums a,
.wfs-footer-nap .elementor-icon-list-text,
.wfs-footer-nap a[href^="tel:"],
.elementor-location-footer a[href^="tel:"],
.elementor-location-header a[href^="tel:"],
.elementor-icon-list-text {
  font-variant-numeric: tabular-nums;
  font-feature-settings: "tnum" 1;
}

/* --- Heading → content proximity --- */
.elementor-widget-heading {
  margin-block-end: 0 !important;
}
.elementor-widget-heading .elementor-heading-title {
  margin: 0;
}
.e-con.e-flex:has(> .elementor-widget-heading) > .elementor-widget-heading {
  margin-bottom: -4px;
}

/* --- Button icon + label flex center --- */
.elementor-button .elementor-button-content-wrapper {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px;
}
.elementor-button .elementor-button-icon {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  line-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  align-self: center !important;
}
.elementor-button .elementor-button-icon svg,
.elementor-button .elementor-button-icon i {
  transform: translateY(1px);
}

/* --- Focus rings (forms + interactive) --- */
.elementor-form .elementor-field:focus,
.elementor-form .elementor-field:focus-visible,
.elementor-field-group .elementor-field:focus,
.elementor-field-group .elementor-field:focus-visible,
.elementor-field-textual:focus,
.elementor-field-textual:focus-visible {
  outline: 2px solid var(--e-global-color-accent, currentColor) !important;
  outline-offset: 2px !important;
}

/* Buttons: keyboard ring only (no mouse focus ring) */
.elementor-button:focus:not(:focus-visible) {
  outline: none;
}
.elementor-button:focus-visible {
  outline: 2px solid var(--e-global-color-accent, currentColor) !important;
  outline-offset: 3px !important;
}

/* --- Form success / danger messages (left-border craft) --- */
.elementor-message {
  font-size: 15px !important;
  line-height: 1.5 !important;
  border-radius: 4px;
  padding: 12px 16px !important;
}
.elementor-message.elementor-message-danger {
  border-left: 3px solid #C0392B !important;
  background: #FDF2F2 !important;
  color: #5C1F1F !important;
}
.elementor-message.elementor-message-success {
  border-left: 3px solid var(--e-global-color-accent, #2E7D4F) !important;
  background: color-mix(in srgb, var(--e-global-color-accent, #2E7D4F) 8%, #ffffff) !important;
  color: var(--e-global-color-text, #1A1A1A) !important;
}

/* --- Soft Learn More text-link pattern --- */
.wfs-learn-more .elementor-button {
  transition: color 0.2s ease, letter-spacing 0.2s ease;
  box-shadow: none !important;
  background: transparent !important;
  border: none !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}
.wfs-learn-more .elementor-button .elementor-button-text {
  position: relative;
  display: inline-block;
}
.wfs-learn-more .elementor-button .elementor-button-text::after {
  content: "";
  position: absolute;
  left: 0;
  right: 100%;
  bottom: -2px;
  height: 2px;
  background: var(--e-global-color-accent, currentColor);
  transition: right 0.25s ease;
}
.wfs-learn-more .elementor-button:hover .elementor-button-text,
.wfs-learn-more .elementor-button:focus .elementor-button-text {
  color: var(--e-global-color-accent, currentColor) !important;
}
.wfs-learn-more .elementor-button:hover .elementor-button-text::after,
.wfs-learn-more .elementor-button:focus .elementor-button-text::after {
  right: 0;
}

/* Optional trailing arrow — stamp .wfs-learn-more-arrow (accent via token, not client hex) */
.wfs-learn-more.wfs-learn-more-arrow .elementor-button-text::after,
.wfs-learn-more-arrow.wfs-learn-more .elementor-button .elementor-button-text::after {
  content: "\00a0\2192";
  position: static;
  left: auto;
  right: auto;
  bottom: auto;
  height: auto;
  background: none;
  color: var(--e-global-color-accent, currentColor);
  font-weight: 600;
  letter-spacing: 0;
}

/* --- Optional dark-band inset sheen --- */
.wfs-dark-sheen,
.wfs-ground-dark.wfs-dark-sheen {
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08);
  position: relative;
}

/* --- Ghost-grid helper (C48 empty 1fr rows) --- */
.wfs-grid-auto-rows {
  grid-template-rows: auto !important;
}

/* --- Chrome helpers: 44px taps, early hamburger ≤1024 --- */
.elementor-location-header .elementor-button {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
}
.elementor-location-header .elementor-menu-toggle {
  width: 44px;
  height: 44px;
  min-width: 44px;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
}
/* Stamp .wfs-header-early-burger on header when Elementor nav breakpoint is tablet (≤1024). */
@media (max-width: 1024px) {
  .wfs-header-early-burger .elementor-nav-menu--main {
    display: none !important;
  }
  .wfs-header-early-burger .elementor-menu-toggle {
    display: inline-flex !important;
  }
}

/* --- Footer NAP ready styles (prefer one Icon List; stamp .wfs-footer-nap) --- */
.wfs-footer-nap .elementor-icon-list-items {
  list-style: none;
  margin: 0;
  padding: 0;
}
.wfs-footer-nap .elementor-icon-list-item {
  margin: 0;
}
.wfs-footer-nap .elementor-icon-list-item .elementor-icon-list-text {
  line-height: 1.35;
}

/* --- Selection (tokenized accent) --- */
::selection {
  background: color-mix(in srgb, var(--e-global-color-accent, #888888) 28%, transparent);
  color: var(--e-global-color-text, #1A1A1A);
}
.wfs-ground-dark ::selection,
.elementor-location-footer ::selection {
  background: color-mix(in srgb, var(--e-global-color-accent, #888888) 45%, transparent);
  color: var(--e-global-color-surface, #FFFFFF);
}

/* --- Reduced-motion guards (hover / transform craft) --- */
@media (prefers-reduced-motion: reduce) {
  .elementor-button,
  .elementor-widget-image img,
  .wfs-learn-more .elementor-button .elementor-button-text::after {
    transition: none !important;
    transform: none !important;
  }
  .elementor-button:hover {
    transform: none !important;
  }
}

@media (prefers-reduced-motion: no-preference) {
  .elementor-button:active {
    filter: brightness(0.92);
    transform: translateY(1px);
  }
  .wfs-learn-more .elementor-button:active {
    filter: none;
    transform: none;
  }
}

/* --- Empty states (search / loop / archive) --- */
.elementor-loop-container .elementor-posts-nothing-found,
.elementor-grid .elementor-posts-nothing-found,
.e-loop-nothing-found-message,
.elementor-loop-nothing-found-message {
  font-size: 17px;
  line-height: 1.55;
  color: var(--e-global-color-secondary, #555555);
  max-width: 36rem;
  margin-left: auto;
  margin-right: auto;
  padding: 24px 16px 8px;
  text-align: center;
}
.elementor-loop-nothing-found-message strong,
.e-loop-nothing-found-message strong {
  display: block;
  font-weight: 700;
  font-size: 20px;
  color: var(--e-global-color-text, #1A1A1A);
  margin-bottom: 8px;
}

/* --- Service / option cards (stamp .wfs-service-card) --- */
.wfs-service-card {
  border-style: solid !important;
  border-width: 1px !important;
  border-color: color-mix(in srgb, var(--e-global-color-text, #1A1A1A) 12%, transparent) !important;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04), 0 8px 24px rgba(0, 0, 0, 0.06) !important;
  transition: box-shadow 0.25s ease, border-color 0.25s ease, transform 0.25s ease;
  overflow: hidden;
}
.wfs-service-card:hover {
  border-color: color-mix(in srgb, var(--e-global-color-text, #1A1A1A) 18%, transparent) !important;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05), 0 12px 32px rgba(0, 0, 0, 0.09) !important;
  transform: translateY(-2px);
}
@media (prefers-reduced-motion: reduce) {
  .wfs-service-card {
    transition: none !important;
  }
  .wfs-service-card:hover {
    transform: none !important;
  }
}

/* --- Soft secondary phrase in titles (weight only — no third face) --- */
.wfs-title-soft {
  font-weight: 500;
  letter-spacing: -0.01em;
}

/* --- Lined section accent (structure only; motif SVG stays client extra_css) --- */
.wfs-section-accent-lined .elementor-icon-wrapper {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
}
.wfs-section-accent-lined .elementor-icon-wrapper::before,
.wfs-section-accent-lined .elementor-icon-wrapper::after {
  content: "";
  display: block;
  width: 36px;
  height: 1px;
  background: currentColor;
  opacity: 0.35;
}
/* Left-copy stacks: stamp .wfs-accent-start — line extends right only */
.wfs-section-accent-lined.wfs-accent-start .elementor-icon-wrapper {
  justify-content: flex-start !important;
}
.wfs-section-accent-lined.wfs-accent-start .elementor-icon-wrapper::before {
  display: none !important;
}

/* Hairline title rule (stamp .wfs-title-rule on Divider) */
.elementor-widget-divider.wfs-title-rule .elementor-divider-separator {
  width: 56px !important;
  max-width: 56px !important;
  border-top-width: 2px !important;
  border-top-color: var(--e-global-color-accent, currentColor) !important;
  border-radius: 1px;
}

/* --- Door-face / nested wrappers ignore parent flex-gap --- */
/* Stamp .wfs-door-face or .wfs-hero-estimate-card on form cards sitting on photo heroes */
.wfs-hero-estimate-card > .elementor-widget-heading,
.wfs-hero-estimate-card .wfs-door-face > .elementor-widget-heading,
.wfs-door-face > .elementor-widget-heading,
.wfs-contact-form-card > .elementor-widget-heading {
  margin-bottom: 22px !important;
}
.wfs-hero-estimate-card .elementor-heading-title {
  line-height: 1.35 !important;
}

/* Photo-hero eyebrows — stamp .wfs-photo-hero on the band (or hero root) */
.wfs-photo-hero .wfs-eyebrow .elementor-heading-title,
.wfs-photo-hero .elementor-widget-heading.wfs-eyebrow .elementor-heading-title {
  color: #ffffff !important;
}

/* Form | NAP split — stamp .wfs-form-nap-row on the flex row */
.wfs-form-nap-row {
  flex-wrap: nowrap !important;
  align-items: stretch !important;
}
@media (max-width: 767px) {
  .wfs-form-nap-row {
    flex-direction: column !important;
    flex-wrap: wrap !important;
  }
  .wfs-form-nap-row > .e-con {
    width: 100% !important;
    max-width: 100% !important;
  }
}

/* Mobile utility — hide secondary lockup (stamp .wfs-utility-secondary) */
@media (max-width: 767px) {
  .wfs-header-utility .wfs-utility-secondary,
  .elementor-location-header .wfs-utility-secondary {
    display: none !important;
  }
}

/* type0923a — Soft type vs boards + durable chrome locks */
/* type0923a — Soft type vs boards + durable chrome locks */
/* type0923a — Soft type vs boards + durable chrome locks */
/* polish0928a — Soft optical: mobile flip arrows usable @390 (Fail #3); preserves type0923a locks */
/* polish0928a — Soft optical: mobile flip arrows usable @390 (Fail #3); preserves type0923a locks */
/* wash0928a — Soft optical: Michael 9/5 screened constant back-image under flip; preserves polish0928a */
/* frame0928a — Soft optical: Michael 9/5 small-frame full-contrast + screened wash; preserves wash0928a */
/* frame0928a — Soft optical: Michael 9/5 small-frame full-contrast + screened wash; preserves wash0928a */
/* frame0928a — Soft optical: Michael 9/5 small-frame full-contrast + screened wash; preserves wash0928a */
/* frame0928a — Soft optical: Michael 9/5 small-frame full-contrast + screened wash; preserves wash0928a */
/* frame0928a — Soft optical: Michael 9/5 small-frame full-contrast + screened wash; preserves wash0928a */
/* frame0928a — Soft optical: Michael 9/5 small-frame full-contrast + screened wash; preserves wash0928a */
/* frame0928a — Soft optical: Michael 9/5 small-frame full-contrast + screened wash; preserves wash0928a */
/* frame0928a — Soft optical: Michael 9/5 small-frame full-contrast + screened wash; preserves wash0928a */
/* frame0928a — Soft optical: Michael 9/5 small-frame full-contrast + screened wash; preserves wash0928a */
/* frame0928a — Soft optical: Michael 9/5 small-frame full-contrast + screened wash; preserves wash0928a */
/* frame0928a — Soft optical: Michael 9/5 small-frame full-contrast + screened wash; preserves wash0928a */
@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,500&family=DM+Sans:ital,wght@0,400;0,500;0,600;1,400&family=Source+Serif+4:ital,wght@0,400;0,500;1,400;1,500&display=swap");
/* frame0928a — Soft optical: Michael 9/5 small-frame full-contrast + screened wash; preserves wash0928a */
@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,500&family=Plus+Jakarta+Sans:ital,wght@0,400;0,500;0,600;1,400&family=Source+Serif+4:ital,wght@0,400;0,500;1,400;1,500&display=swap");
/* frame0928a — Soft optical: Michael 9/5 small-frame full-contrast + screened wash; preserves wash0928a */
@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=Plus+Jakarta+Sans:ital,wght@0,400;0,500;0,600;1,400&display=swap");
/* frame0928a — Soft optical: Michael 9/5 small-frame full-contrast + screened wash; preserves wash0928a */
@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=Plus+Jakarta+Sans:ital,wght@0,400;0,500;0,600;1,400&display=swap");
/* frame0928a — Soft optical: Michael 9/5 small-frame full-contrast + screened wash; preserves wash0928a */
@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=Plus+Jakarta+Sans:ital,wght@0,400;0,500;0,600;1,400&display=swap");
/* frame0928a — Soft optical: Michael 9/5 small-frame full-contrast + screened wash; preserves wash0928a */
@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=Plus+Jakarta+Sans:ital,wght@0,400;0,500;0,600;1,400&display=swap");
/* frame0928a — Soft optical: Michael 9/5 small-frame full-contrast + screened wash; preserves wash0928a */
@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=Plus+Jakarta+Sans:ital,wght@0,400;0,500;0,600;1,400&display=swap");
/* frame0928a — Soft optical: Michael 9/5 small-frame full-contrast + screened wash; preserves wash0928a */
@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=Plus+Jakarta+Sans:ital,wght@0,400;0,500;0,600;1,400&display=swap");
/* frame0928a — Soft optical: Michael 9/5 small-frame full-contrast + screened wash; preserves wash0928a */
@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=Plus+Jakarta+Sans:ital,wght@0,400;0,500;0,600;1,400&display=swap");
/* frame0928a — Soft optical: Michael 9/5 small-frame full-contrast + screened wash; preserves wash0928a */
@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=Plus+Jakarta+Sans:ital,wght@0,400;0,500;0,600;1,400&display=swap");
/* frame0928a — Soft optical: Michael 9/5 small-frame full-contrast + screened wash; preserves wash0928a */
@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=Plus+Jakarta+Sans:ital,wght@0,400;0,500;0,600;1,400&display=swap");
/* frame0928a — Soft optical: Michael 9/5 small-frame full-contrast + screened wash; preserves wash0928a */
@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=Plus+Jakarta+Sans:ital,wght@0,400;0,500;0,600;1,400&display=swap");
/* frame0928a — Soft optical: Michael 9/5 small-frame full-contrast + screened wash; preserves wash0928a */
@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=Plus+Jakarta+Sans:ital,wght@0,400;0,500;0,600;1,400&display=swap");
/* frame0928a — Soft optical: Michael 9/5 small-frame full-contrast + screened wash; preserves wash0928a */
@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=Plus+Jakarta+Sans:ital,wght@0,400;0,500;0,600;1,400&display=swap");
/* frame0928a — Soft optical: Michael 9/5 small-frame full-contrast + screened wash; preserves wash0928a */
@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=Plus+Jakarta+Sans:ital,wght@0,400;0,500;0,600;1,400&display=swap");
/* frame0928a — Soft optical: Michael 9/5 small-frame full-contrast + screened wash; preserves wash0928a */
@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=Plus+Jakarta+Sans:ital,wght@0,400;0,500;0,600;1,400&display=swap");
/* frame0928a — Soft optical: Michael 9/5 small-frame full-contrast + screened wash; preserves wash0928a */
@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=Plus+Jakarta+Sans:ital,wght@0,400;0,500;0,600;1,400&display=swap");
/* frame0928a — Soft optical: Michael 9/5 small-frame full-contrast + screened wash; preserves wash0928a */
@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=Plus+Jakarta+Sans:ital,wght@0,400;0,500;0,600;1,400&display=swap");
/* frame0928a — Soft optical: Michael 9/5 small-frame full-contrast + screened wash; preserves wash0928a */
@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=Plus+Jakarta+Sans:ital,wght@0,400;0,500;0,600;1,400&display=swap");
/* frame0928a — Soft optical: Michael 9/5 small-frame full-contrast + screened wash; preserves wash0928a */
@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=Plus+Jakarta+Sans:ital,wght@0,400;0,500;0,600;1,400&display=swap");
/* frame0928a — Soft optical: Michael 9/5 small-frame full-contrast + screened wash; preserves wash0928a */
@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=Plus+Jakarta+Sans:ital,wght@0,400;0,500;0,600;1,400&display=swap");
/* frame0928a — Soft optical: Michael 9/5 small-frame full-contrast + screened wash; preserves wash0928a */
@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=Plus+Jakarta+Sans:ital,wght@0,400;0,500;0,600;1,400&display=swap");
/* frame0928a — Soft optical: Michael 9/5 small-frame full-contrast + screened wash; preserves wash0928a */
@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=Plus+Jakarta+Sans:ital,wght@0,400;0,500;0,600;1,400&display=swap");
/* frame0928a — Soft optical: Michael 9/5 small-frame full-contrast + screened wash; preserves wash0928a */
@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=Plus+Jakarta+Sans:ital,wght@0,400;0,500;0,600;1,400&display=swap");
/* frame0928a — Soft optical: Michael 9/5 small-frame full-contrast + screened wash; preserves wash0928a */
@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=Plus+Jakarta+Sans:ital,wght@0,400;0,500;0,600;1,400&display=swap");
/* frame0928a — Soft optical: Michael 9/5 small-frame full-contrast + screened wash; preserves wash0928a */
@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=Plus+Jakarta+Sans:ital,wght@0,400;0,500;0,600;1,400&display=swap");
/* frame0928a — Soft optical: Michael 9/5 small-frame full-contrast + screened wash; preserves wash0928a */
@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=Plus+Jakarta+Sans:ital,wght@0,400;0,500;0,600;1,400&display=swap");
/* frame0928a — Soft optical: Michael 9/5 small-frame full-contrast + screened wash; preserves wash0928a */
@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=Plus+Jakarta+Sans:ital,wght@0,400;0,500;0,600;1,400&display=swap");
/* frame0928a — Soft optical: Michael 9/5 small-frame full-contrast + screened wash; preserves wash0928a */
@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=Plus+Jakarta+Sans:ital,wght@0,400;0,500;0,600;1,400&display=swap");
/* frame0928a — Soft optical: Michael 9/5 small-frame full-contrast + screened wash; preserves wash0928a */
@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=Plus+Jakarta+Sans:ital,wght@0,400;0,500;0,600;1,400&display=swap");
/* frame0928a — Soft optical: Michael 9/5 small-frame full-contrast + screened wash; preserves wash0928a */
@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=Plus+Jakarta+Sans:ital,wght@0,400;0,500;0,600;1,400&display=swap");
/* frame0928a — Soft optical: Michael 9/5 small-frame full-contrast + screened wash; preserves wash0928a */
@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=Plus+Jakarta+Sans:ital,wght@0,400;0,500;0,600;1,400&display=swap");
/* frame0928a — Soft optical: Michael 9/5 small-frame full-contrast + screened wash; preserves wash0928a */
@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=Plus+Jakarta+Sans:ital,wght@0,400;0,500;0,600;1,400&display=swap");
/* frame0928a — Soft optical: Michael 9/5 small-frame full-contrast + screened wash; preserves wash0928a */
@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=Plus+Jakarta+Sans:ital,wght@0,400;0,500;0,600;1,400&display=swap");
/* frame0928a — Soft optical: Michael 9/5 small-frame full-contrast + screened wash; preserves wash0928a */
@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=Plus+Jakarta+Sans:ital,wght@0,400;0,500;0,600;1,400&display=swap");
/* frame0928a — Soft optical: Michael 9/5 small-frame full-contrast + screened wash; preserves wash0928a */
@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=Plus+Jakarta+Sans:ital,wght@0,400;0,500;0,600;1,400&display=swap");
/* frame0928a — Soft optical: Michael 9/5 small-frame full-contrast + screened wash; preserves wash0928a */
@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=Plus+Jakarta+Sans:ital,wght@0,400;0,500;0,600;1,400&display=swap");
/* frame0928a — Soft optical: Michael 9/5 small-frame full-contrast + screened wash; preserves wash0928a */
@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=Plus+Jakarta+Sans:ital,wght@0,400;0,500;0,600;1,400&display=swap");
/* frame0928a — Soft optical: Michael 9/5 small-frame full-contrast + screened wash; preserves wash0928a */
@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=Plus+Jakarta+Sans:ital,wght@0,400;0,500;0,600;1,400&display=swap");
/* frame0928a — Soft optical: Michael 9/5 small-frame full-contrast + screened wash; preserves wash0928a */
@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=Plus+Jakarta+Sans:ital,wght@0,400;0,500;0,600;1,400&display=swap");
/* frame0928a — Soft optical: Michael 9/5 small-frame full-contrast + screened wash; preserves wash0928a */
@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=Plus+Jakarta+Sans:ital,wght@0,400;0,500;0,600;1,400&display=swap");
/* frame0928a — Soft optical: Michael 9/5 small-frame full-contrast + screened wash; preserves wash0928a */
@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=Plus+Jakarta+Sans:ital,wght@0,400;0,500;0,600;1,400&display=swap");
/* frame0928a — Soft optical: Michael 9/5 small-frame full-contrast + screened wash; preserves wash0928a */
@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=Plus+Jakarta+Sans:ital,wght@0,400;0,500;0,600;1,400&display=swap");
/* frame0928a — Soft optical: Michael 9/5 small-frame full-contrast + screened wash; preserves wash0928a */
@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=Plus+Jakarta+Sans:ital,wght@0,400;0,500;0,600;1,400&display=swap");
/* frame0928a — Soft optical: Michael 9/5 small-frame full-contrast + screened wash; preserves wash0928a */
@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=Plus+Jakarta+Sans:ital,wght@0,400;0,500;0,600;1,400&display=swap");
/* frame0928a — Soft optical: Michael 9/5 small-frame full-contrast + screened wash; preserves wash0928a */
@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=Plus+Jakarta+Sans:ital,wght@0,400;0,500;0,600;1,400&display=swap");
/* frame0928a — Soft optical: Michael 9/5 small-frame full-contrast + screened wash; preserves wash0928a */
@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=Plus+Jakarta+Sans:ital,wght@0,400;0,500;0,600;1,400&display=swap");
/* frame0928a — Soft optical: Michael 9/5 small-frame full-contrast + screened wash; preserves wash0928a */
@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=Plus+Jakarta+Sans:ital,wght@0,400;0,500;0,600;1,400&display=swap");
/* frame0928a — Soft optical: Michael 9/5 small-frame full-contrast + screened wash; preserves wash0928a */
@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=Plus+Jakarta+Sans:ital,wght@0,400;0,500;0,600;1,400&display=swap");
/* frame0928a — Soft optical: Michael 9/5 small-frame full-contrast + screened wash; preserves wash0928a */
@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=Plus+Jakarta+Sans:ital,wght@0,400;0,500;0,600;1,400&display=swap");
/* frame0928a — Soft optical: Michael 9/5 small-frame full-contrast + screened wash; preserves wash0928a */
body{background-color:#0A0A0A;color:#F7F4EE;}
.site-footer,.site-header{background:#0A0A0A;}
.wfs-ground-dark{background-color:#0A0A0A;color:#F7F4EE;}
.wfs-brand{display:flex;align-items:center;gap:12px;}
.wfs-brand img{
  width:108px!important;height:auto!important;max-height:32px;object-fit:contain!important;
}
.wfs-mm-bar img{
  width:108px!important;height:auto!important;max-height:32px;object-fit:contain!important;
  border:0!important;background:transparent!important;box-shadow:none!important;
}
.wfs-wordmark{
  font-family:"Plus Jakarta Sans",sans-serif;
  font-size:14px;font-weight:500;letter-spacing:0.14em;text-transform:uppercase;
  color:#F7F4EE;text-decoration:none;white-space:nowrap;line-height:1;
}
.wfs-primary-nav,.wfs-footer-nav,.wfs-popup-nav{
  display:flex;align-items:center;gap:22px;margin:0;padding:0;flex-wrap:nowrap;
}
.wfs-popup-nav{flex-direction:column;align-items:flex-start;gap:2px;padding:36px 20px 24px;}
.wfs-primary-nav a,.wfs-footer-nav a,.wfs-popup-nav a{
  font-family:"Plus Jakarta Sans",sans-serif;
  font-size:12px;font-weight:500;letter-spacing:0.12em;text-transform:uppercase;
  color:#F7F4EE;text-decoration:none;line-height:1.2;
}
.wfs-legal{
  font-family:"Plus Jakarta Sans",sans-serif;
  font-size:12px;font-weight:500;letter-spacing:0.04em;text-transform:none;
  color:#F7F4EE;text-decoration:none;line-height:1.2;
  text-align:center;margin:0;
}
.wfs-popup-nav a{display:flex;align-items:center;min-height:58px;font-size:26px;letter-spacing:.14em;opacity:.72;}
.wfs-popup-nav a[aria-current="page"]{opacity:1;box-shadow:inset 0 -1px 0 #F7F4EE;}
.wfs-menu-open{
  display:none;
  align-items:center;
  min-height:44px;
  padding:0 4px;
  font-family:"Plus Jakarta Sans",sans-serif;
  font-size:12px;
  font-weight:500;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:#F7F4EE;
  text-decoration:none;
}
.wfs-mm{min-height:100dvh;height:100%;display:flex;flex-direction:column;background:#0A0A0A;color:#F7F4EE;}
.wfs-mm-bar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:18px 20px 16px;
  border-bottom:1px solid rgba(247,244,238,.22);
}
.wfs-mm-bar a{line-height:0;border:0;outline:none;background:transparent;}
.wfs-mm-bar img{display:block;height:auto;width:108px;max-height:32px;}
.wfs-mm-close{
  display:inline-flex;
  align-items:center;
  margin-left:auto;
  min-height:44px;
  font-family:"Plus Jakarta Sans",sans-serif;
  font-size:12px;
  font-weight:500;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:#F7F4EE;
  text-decoration:none;
  line-height:1;
}
.wfs-mm-foot{
  margin-top:auto;
  padding:22px 20px 32px;
  border-top:1px solid rgba(247,244,238,.22);
}
.wfs-mm-kicker{
  margin:0 0 10px;
  font-family:"Plus Jakarta Sans",sans-serif;
  font-size:11px;
  font-weight:500;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:rgba(247,244,238,.55);
}
.wfs-mm-foot a{
  display:flex;
  align-items:center;
  min-height:44px;
  margin:0;
  font-family:"Cormorant Garamond",serif;
  font-size:20px;
  font-weight:500;
  letter-spacing:0;
  text-transform:none;
  color:#F7F4EE;
  text-decoration:none;
  line-height:1.3;
}
.wfs-mm-foot a:last-child{margin-bottom:0;}
.elementor-popup-modal .dialog-widget-content{
  width:100vw!important;max-width:100vw!important;
  height:100vh!important;max-height:100vh!important;
  border-radius:0!important;box-shadow:none!important;
  background:#0A0A0A!important;
}
.elementor-popup-modal .dialog-message{padding:0!important;height:100%!important;overflow:auto;}
.elementor-popup-modal .dialog-lightbox-close-button,
.elementor-popup-modal .dialog-close-button{display:none!important;}
/* Hover/focus/active/visited — kit a:hover = primary_dark #0A0A0A (black on black).
   Footer Theme Builder visited = surface #111. Keep cream; opacity drop is the affordance. */
.elementor-kit-5 a:hover,
.elementor-kit-5 a:focus,
.elementor-kit-5 a:focus-visible,
.elementor-kit-5 a:active,
.elementor-kit-5 a:visited,
.wfs-primary-nav a:hover,.wfs-primary-nav a:focus,.wfs-primary-nav a:focus-visible,.wfs-primary-nav a:active,.wfs-primary-nav a:visited,
.wfs-footer-nav a:hover,.wfs-footer-nav a:focus,.wfs-footer-nav a:focus-visible,.wfs-footer-nav a:active,.wfs-footer-nav a:visited,
.wfs-popup-nav a:hover,.wfs-popup-nav a:focus,.wfs-popup-nav a:focus-visible,.wfs-popup-nav a:active,.wfs-popup-nav a:visited,
.wfs-wordmark:hover,.wfs-wordmark:focus,.wfs-wordmark:focus-visible,.wfs-wordmark:active,.wfs-wordmark:visited,
.wfs-menu-open:hover,.wfs-menu-open:focus,.wfs-menu-open:focus-visible,.wfs-menu-open:active,
.wfs-mm-close:hover,.wfs-mm-close:focus,.wfs-mm-close:focus-visible,.wfs-mm-close:active,
.wfs-mm-foot a:hover,.wfs-mm-foot a:focus,.wfs-mm-foot a:focus-visible,.wfs-mm-foot a:active,.wfs-mm-foot a:visited,
.wfs-footer-inquire a:hover,.wfs-footer-inquire a:focus,.wfs-footer-inquire a:focus-visible,.wfs-footer-inquire a:active,.wfs-footer-inquire a:visited,
.wfs-footer-film a:hover,.wfs-footer-film a:focus,.wfs-footer-film a:focus-visible,.wfs-footer-film a:active,.wfs-footer-film a:visited,
.wfs-footer-legal a:hover,.wfs-footer-legal a:focus,.wfs-footer-legal a:focus-visible,.wfs-footer-legal a:active,.wfs-footer-legal a:visited,
.wfs-flip-other a:hover,.wfs-flip-other a:focus,.wfs-flip-other a:focus-visible,.wfs-flip-other a:active,.wfs-flip-other a:visited,
.wfs-flip-inline .wfs-flip-other a:hover,.wfs-flip-inline .wfs-flip-other a:focus,
.elementor-location-header a:hover,.elementor-location-header a:focus,.elementor-location-header a:focus-visible,.elementor-location-header a:active,.elementor-location-header a:visited,
.elementor-location-footer a:hover,.elementor-location-footer a:focus,.elementor-location-footer a:focus-visible,.elementor-location-footer a:active,.elementor-location-footer a:visited{
  color:#F7F4EE!important;
}
.wfs-primary-nav a:hover,.wfs-footer-nav a:hover,.wfs-popup-nav a:hover,
.wfs-wordmark:hover,.wfs-menu-open:hover,.wfs-mm-close:hover,
.wfs-mm-foot a:hover,.wfs-footer-inquire a:hover,.wfs-footer-film a:hover,
.wfs-flip-inline .wfs-flip-other a:hover,.wfs-flip-close:hover{
  opacity:.7;
}
.wfs-flip-other a:hover{opacity:1;}
.wfs-popup-nav a[aria-current="page"]:hover{opacity:1;}
.wfs-primary-nav a[aria-current="page"]{box-shadow:inset 0 -1px 0 #F7F4EE;}
/* Kit button hover bg = primary_dark; Hello paints pink. Keep cream text / transparent chrome. */
.elementor-kit-5 button:hover,
.elementor-kit-5 button:focus,
.elementor-kit-5 button:focus-visible,
.elementor-kit-5 button:active,
.elementor-kit-5 input[type="button"]:hover,
.elementor-kit-5 input[type="button"]:focus,
.elementor-kit-5 input[type="submit"]:hover,
.elementor-kit-5 input[type="submit"]:focus,
.elementor-kit-5 .elementor-button:hover,
.elementor-kit-5 .elementor-button:focus,
.elementor-kit-5 .elementor-button:focus-visible,
.elementor-kit-5 .elementor-button:active,
.wfs-flow-arrow:hover,.wfs-flow-arrow:focus,.wfs-flow-arrow:focus-visible,.wfs-flow-arrow:active,
.wfs-flip button:hover,.wfs-flip button:focus,.wfs-flip button:focus-visible,.wfs-flip button:active{
  color:#F7F4EE!important;
}
.wfs-flow-arrow,
.wfs-flow-arrow:hover,
.wfs-flow-arrow:focus,
.wfs-flow-arrow:active{
  box-shadow:none!important;
}
.wfs-flow-arrow:hover,.wfs-flow-arrow:focus,.wfs-flow-arrow:focus-visible{
  color:#F7F4EE!important;
  opacity:1!important;
  background:rgba(10,10,10,.72)!important;
  background-color:rgba(10,10,10,.72)!important;
  border-color:rgba(247,244,238,.92)!important;
}
.elementor-form .elementor-field-type-submit .elementor-button:hover,
.elementor-form .elementor-field-type-submit .elementor-button:focus,
.elementor-form .elementor-field-type-submit .elementor-button:focus-visible,
.elementor-form .elementor-field-type-submit .elementor-button:active,
.elementor-form .elementor-button[type="submit"]:hover,
.elementor-form .elementor-button[type="submit"]:focus,
.elementor-form .elementor-button[type="submit"]:focus-visible,
.elementor-form .elementor-button[type="submit"]:active,
.wfs-contact-leaf-form .elementor-button:hover,
.wfs-contact-leaf-form .elementor-button:focus,
.wfs-contact-leaf-form .elementor-button:active,
.wfs-contact-leaf-form button[type="submit"]:hover,
.wfs-contact-leaf-form button[type="submit"]:focus,
.wfs-contact-leaf-form button[type="submit"]:active{
  background:rgba(247,244,238,.08)!important;
  background-color:rgba(247,244,238,.08)!important;
  color:#F7F4EE!important;
  border-color:#F7F4EE!important;
}
.wfs-nav-burger{
  display:none;width:44px;height:44px;align-items:center;justify-content:center;
  color:#F7F4EE;text-decoration:none;
}
.wfs-nav-burger i{
  display:block;width:18px;height:1px;background:#F7F4EE;
  box-shadow:0 6px 0 #F7F4EE,0 -6px 0 #F7F4EE;
}
.wfs-chapter-grid .elementor-widget-image img,
.wfs-chapter-grid img{
  width:100%!important;height:auto!important;aspect-ratio:3/2;object-fit:cover;
  transition:filter .35s ease;
}
.wfs-chapter-grid a:hover img{filter:brightness(1.08);}
.wfs-chapter-wash{position:relative;}
.wfs-chapter-wash > .e-con-inner{
  position:relative;
  z-index:1;
}
.wfs-chapter-wash::before{
  content:none!important;
  display:none!important;
}
.wfs-chapter-wash .wfs-chapter-grid{
  position:relative;
  z-index:2;
}
.elementor-form .elementor-field-group{
  margin-bottom:8px!important;
}
.elementor-form .elementor-field-label{
  margin:0 0 2px!important;
  padding:0!important;
  font-family:"Plus Jakarta Sans",sans-serif!important;
  font-size:12px!important;
  letter-spacing:.12em!important;
  text-transform:uppercase!important;
  font-weight:500!important;
  line-height:1.2!important;
}
.wfs-404-break{display:none;}
.wfs-404{text-align:center;max-width:36em;margin:0 auto;color:#F7F4EE!important;}
.wfs-404-band .elementor-widget-html{width:100%!important;}
body.error404 .elementor-location-single > .e-con.e-parent,
.wfs-404-band{
  min-height:calc(100vh - 90px);
  justify-content:center!important;
}
.wfs-404-num{
  font-family:"Cormorant Garamond",serif;font-size:72px;font-weight:500;
  letter-spacing:0;line-height:1;margin:0 0 12px;
  color:#F7F4EE!important;
}
.wfs-404-h{
  font-family:"Cormorant Garamond",serif!important;font-size:32px!important;font-weight:500!important;
  letter-spacing:0!important;text-transform:none!important;line-height:1.2!important;margin:0 0 16px!important;
  color:#F7F4EE!important;
}
.wfs-404-lede{
  font-family:"Cormorant Garamond",serif;font-size:16px;font-weight:400;
  letter-spacing:0;margin:0 0 36px;opacity:.85;
  color:#F7F4EE!important;
}
.wfs-404-home{
  display:inline-flex;align-items:center;justify-content:center;
  min-height:44px;min-width:44px;padding:10px 28px;
  border:1px solid #F7F4EE;letter-spacing:.14em;text-transform:uppercase;
  font:500 12px/1 "Plus Jakarta Sans",sans-serif;color:#F7F4EE!important;
  text-decoration:none;
}
.elementor-form .elementor-field-group .elementor-field-textual:not(textarea),
.elementor-form .elementor-field-textual:not(textarea){
  background:transparent!important;
  border:none!important;
  border-bottom:1px solid rgba(247,244,238,.45)!important;
  border-radius:0!important;
  box-shadow:none!important;
  padding-left:0!important;padding-right:0!important;
  padding-top:2px!important;padding-bottom:4px!important;
  min-height:2.1em!important;
}
.elementor-form .elementor-field-group{
  margin-bottom:12px!important;
}
.elementor-form .elementor-field-label{
  margin:0 0 2px!important;
  padding:0!important;
}
.elementor-form .elementor-field-group.elementor-field-type-submit{
  width:auto!important;
  max-width:max-content!important;
}
.elementor-form .elementor-field-type-submit .elementor-button,
.elementor-form .elementor-button[type="submit"]{
  width:auto!important;min-width:6.25em;padding:10px 26px!important;
  letter-spacing:.14em;font-size:12px;
  min-height:44px;
  align-self:flex-start;
  transition:background-color .25s ease, color .25s ease;
}
/* submit hover/focus/active locked in kit-beat block above */
.elementor-page-13 h1.elementor-heading-title,
.elementor-13 h1.elementor-heading-title{
  font-size:56px!important;
  line-height:1.08!important;
  font-family:"Cormorant Garamond",serif!important;
  font-weight:500!important;
  letter-spacing:0!important;
}
/* Home H1 — boards / COHESION 64 serif */
.elementor-page-10 h1.elementor-heading-title,
.elementor-10 h1.elementor-heading-title,
body.home h1.elementor-heading-title{
  font-family:"Cormorant Garamond",serif!important;
  font-size:64px!important;
  font-weight:500!important;
  letter-spacing:0!important;
  line-height:1.1!important;
  text-transform:none!important;
}
/* Home role line — quieter than the H1, same tracking family as the nav */
body.home .elementor-widget-heading:has(h1) + .elementor-widget-text-editor p,
.elementor-page-10 .elementor-widget-heading:has(h1) + .elementor-widget-text-editor p{
  font-family:"Plus Jakarta Sans",sans-serif!important;
  font-size:15px!important;
  font-weight:500!important;
  letter-spacing:0.08em!important;
  line-height:1.45!important;
  text-transform:none!important;
  text-align:center!important;
  color:rgba(247,244,238,.78)!important;
}
body.home .elementor-widget-heading:has(h1) + .elementor-widget-text-editor p::before,
.elementor-page-10 .elementor-widget-heading:has(h1) + .elementor-widget-text-editor p::before{
  content:"";
  display:block;
  width:48px;
  height:1px;
  margin:14px auto 16px;
  background:rgba(247,244,238,.38);
}
/* Chapter titles — Plus Jakarta, title case, wordmark tracking · pages 9/11/25 */
.elementor-page-9 h1.elementor-heading-title,
.elementor-page-11 h1.elementor-heading-title,
.elementor-page-25 h1.elementor-heading-title,
.elementor-9 h1.elementor-heading-title,
.elementor-11 h1.elementor-heading-title,
.elementor-25 h1.elementor-heading-title{
  font-family:"Plus Jakarta Sans",sans-serif!important;
  font-size:36px!important;
  font-weight:500!important;
  letter-spacing:0.14em!important;
  text-transform:none!important;
  line-height:1.1!important;
  text-align:center!important;
}
/* Chapter brows (ARCHITECTURE) — same face and tracking as the wordmark */
.elementor-page-9 h2.elementor-heading-title,
.elementor-page-11 h2.elementor-heading-title,
.elementor-page-25 h2.elementor-heading-title,
.elementor-9 h2.elementor-heading-title,
.elementor-11 h2.elementor-heading-title,
.elementor-25 h2.elementor-heading-title{
  font-family:"Plus Jakarta Sans",sans-serif!important;
  font-size:12px!important;
  font-weight:500!important;
  letter-spacing:0.14em!important;
  text-transform:uppercase!important;
  line-height:1!important;
  text-align:center!important;
}
.elementor-form .elementor-field-group textarea.elementor-field-textual,
.elementor-form textarea.elementor-field-textual{
  min-height:5.5em;
  resize:none;
  background-color:transparent!important;
  background-image:repeating-linear-gradient(
    to bottom,
    transparent 0,
    transparent 1.35em,
    rgba(247,244,238,.35) 1.35em,
    rgba(247,244,238,.35) calc(1.35em + 1px)
  )!important;
  border:none!important;
  border-radius:0!important;
  box-shadow:none!important;
  line-height:1.35em!important;
  padding:0!important;
}
.wfs-book{
  position:relative!important;
  background:transparent!important;
  border:none!important;
  box-shadow:none!important;
  padding:0!important;
  overflow:visible;
  justify-content:flex-start!important;
}
.wfs-book .e-con-inner{position:relative!important;}
.wfs-book .elementor-widget-heading{
  /* Real scanned covers already carry the title — hide Elementor overlay */
  display:none!important;
}
.wfs-book .elementor-heading-title{
  font-size:12px!important;letter-spacing:.16em!important;
  font-weight:500!important;text-transform:none!important;
  text-align:center!important;
}
.wfs-book .elementor-widget-image{width:100%;margin:0;}
.wfs-book .elementor-widget-image img{
  /* Matched square frames — covers are equal hi-res plates */
  width:100%!important;height:auto!important;aspect-ratio:1/1!important;
  object-fit:contain!important;object-position:center center!important;
  background:#0A0A0A;
  image-rendering:auto;
  box-shadow:
    -2px 0 0 #3a342c,
    -5px 0 0 #1c1914,
    -8px 0 0 #0c0b09,
    1px 0 0 #2a2a2a,
    2px 0 0 #1a1a1a,
    3px 0 0 #111,
    4px 0 0 #0c0c0c,
    8px 14px 28px rgba(0,0,0,.45);
}
/* Trio is already a 3-col grid. Do not /3 again — that made 101px postage stamps. */
.elementor-element:has(> .wfs-book){
  gap:24px!important;
  column-gap:24px!important;
  padding-left:4px!important;
  padding-right:12px!important;
  padding-bottom:28px!important;
  box-sizing:border-box!important;
  /* Soft ground wash under hardcover row — optical depth, no new content */
  background:
    radial-gradient(ellipse 78% 60% at 50% 88%, rgba(247,244,238,.05) 0%, transparent 68%);
}
.wfs-book{
  max-width:none!important;
  width:100%!important;
}
.wfs-book.e-con-boxed,
.wfs-book > .e-con-inner{
  width:100%!important;
  max-width:100%!important;
}
.wfs-book .elementor-widget-image .elementor-widget-container,
.wfs-book .elementor-widget-image a{
  display:block!important;width:100%!important;
}
.wfs-welcome{
  align-items:stretch!important;
  gap:0!important;
  column-gap:0!important;
  /* Soft vs boards — slightly warmer band (paint only) */
  box-shadow:inset 0 0 80px rgba(247,244,238,.025);
}
.wfs-welcome > .elementor-widget-image{
  width:50%!important;
  flex:0 0 50%!important;
  margin:0!important;
}
.wfs-welcome > .e-con{
  justify-content:center!important;
  align-items:flex-start!important;
  align-self:stretch!important;
  padding-left:56px!important;
  padding-right:40px!important;
  box-sizing:border-box;
  max-width:50%;
  min-height:560px;
}
/* Vertically center Welcome copy against the portrait */
.wfs-welcome > .e-con > .e-con-inner{
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  align-items:flex-start!important;
  gap:0!important;
  width:100%!important;
  min-height:100%!important;
  height:100%!important;
  box-sizing:border-box!important;
}
.wfs-welcome .elementor-heading-title{
  margin:0!important;
  font-family:"Cormorant Garamond",serif!important;
  font-size:42px!important;
  font-weight:500!important;
  letter-spacing:0!important;
  line-height:1.05!important;
  text-transform:none!important;
  color:#F7F4EE!important;
}
.wfs-welcome .elementor-heading-title::after{
  content:none!important;
  display:none!important;
}
.wfs-welcome .elementor-widget-divider{
  width:48px!important;
  max-width:48px!important;
  margin:18px 0 22px!important;
  padding:0!important;
}
.wfs-welcome .elementor-widget-divider .elementor-divider-separator,
.wfs-welcome .elementor-widget-divider hr{
  border:0!important;
  border-top:1px solid rgba(247,244,238,.38)!important;
  width:48px!important;
  margin:0!important;
}
.wfs-welcome .elementor-widget-text-editor{
  max-width:30em;
}
.wfs-welcome .elementor-widget-text-editor p:not(.wfs-welcome-sign){
  font-family:"Plus Jakarta Sans",sans-serif!important;
  font-size:16px!important;
  font-weight:500!important;
  letter-spacing:0!important;
  line-height:1.6!important;
  margin:0!important;
  color:rgba(247,244,238,.92)!important;
}
.wfs-welcome .elementor-widget-text-editor p + p{
  margin-top:1.15em!important;
}
/* Signed name + MS mark */
.wfs-welcome .wfs-welcome-sign{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  gap:10px!important;
  margin-top:1.35em!important;
}
.wfs-welcome .wfs-welcome-sign-name{
  font-family:"Plus Jakarta Sans",sans-serif!important;
  font-size:16px!important;
  font-weight:500!important;
  letter-spacing:0!important;
  line-height:1.6!important;
  color:rgba(247,244,238,.92)!important;
  font-style:normal!important;
}
/* Michael 10/28: eliminate the bottom Welcome signature mark; keep the name. */
.wfs-welcome .wfs-welcome-sign-mark{
  display:none!important;
}
.wfs-welcome .elementor-widget-image img,
.wfs-welcome img{
  width:100%!important;
  height:100%!important;
  min-height:560px;
  object-fit:cover!important;
  object-position:50% 28%;
}
.wfs-chapter-grid:not(.wfs-chapter-equal) > .elementor-element:nth-child(8) img,
.wfs-chapter-grid:not(.wfs-chapter-equal) .elementor-widget-image:nth-of-type(8) img{
  width:58%!important;height:auto!important;aspect-ratio:1/1;object-fit:cover;
  margin-inline:auto;display:block;
  outline:1px solid rgba(247,244,238,.55);
}
.wfs-footer-nav a,.elementor-location-footer a,
.elementor-location-footer a:visited,
.elementor-location-header a,
.elementor-location-header a:visited{color:#F7F4EE!important;opacity:1;}
.elementor-location-footer .elementor-widget-text-editor a,
.elementor-location-footer .elementor-widget-text-editor a:visited{color:#F7F4EE!important;}
.elementor-location-footer .e-grid .e-con-inner > .e-con{
  width:100%!important;
  max-width:none!important;
}
.wfs-footer-tagline,
.wfs-footer-tagline-widget p{
  font-family:"Cormorant Garamond",serif!important;
  font-style:italic!important;
  font-size:16px!important;
  font-weight:500!important;
  letter-spacing:0!important;
  text-transform:none!important;
  white-space:nowrap;
  margin:14px 0 0!important;
  line-height:1.3;
  color:rgba(247,244,238,.88)!important;
}
.elementor-location-footer .wfs-footer-row{
  flex-direction:row!important;
  align-items:center!important;
  justify-content:space-between!important;
  flex-wrap:nowrap!important;
}
.elementor-location-footer .wfs-footer-row > .e-con{
  width:auto!important;
  max-width:none!important;
  flex:0 0 auto!important;
}
@media (max-width:900px){
  /* Stack brand → nav → inquiries. Target e-con-inner — Elementor nests columns there. */
  .elementor-location-footer .wfs-footer-row{
    flex-direction:column!important;
    align-items:stretch!important;
    gap:0!important;
    flex-wrap:nowrap!important;
  }
  .elementor-location-footer .wfs-footer-row > .e-con-inner{
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    justify-content:flex-start!important;
    flex-wrap:nowrap!important;
    gap:22px!important;
    width:100%!important;
    max-width:100%!important;
  }
  .elementor-location-footer .wfs-footer-row > .e-con,
  .elementor-location-footer .wfs-footer-row > .e-con-inner > .e-con,
  .elementor-location-footer .wfs-footer-brand,
  .elementor-location-footer .wfs-footer-links,
  .elementor-location-footer .wfs-footer-contact{
    width:100%!important;
    max-width:100%!important;
    flex:0 0 auto!important;
    min-width:0!important;
    margin-left:0!important;
    margin-right:0!important;
  }
  .elementor-location-footer .wfs-footer-brand,
  .elementor-location-footer .wfs-footer-brand > .e-con-inner{
    align-items:flex-start!important;
  }
  .elementor-location-footer .wfs-footer-sign,
  .elementor-location-footer .wfs-footer-sign .elementor-widget-container{
    width:100%!important;
    max-width:100%!important;
    text-align:left!important;
  }
  .elementor-location-footer .wfs-footer-sign img,
  .elementor-location-footer .wfs-footer-brand img{
    width:min(200px,72vw)!important;
    max-width:100%!important;
    height:auto!important;
    margin-left:0!important;
    margin-right:auto!important;
  }
  .wfs-footer-tagline,.wfs-footer-tagline-widget p{
    white-space:normal!important;
    width:100%!important;
    max-width:22em!important;
    margin:12px 0 0!important;
  }
  .elementor-location-footer .wfs-footer-links{
    display:flex!important;
    justify-content:flex-start!important;
  }
  .wfs-footer-nav{
    display:flex!important;
    flex-wrap:wrap!important;
    gap:8px 20px!important;
    width:100%!important;
    max-width:100%!important;
    justify-content:flex-start!important;
    align-items:center!important;
  }
  .elementor-location-footer .wfs-footer-nav a{
    display:inline-flex!important;
    align-items:center!important;
    min-height:44px!important;
    padding:10px 0!important;
    letter-spacing:.12em!important;
  }
  .elementor-location-footer .wfs-footer-contact{
    margin-left:0!important;
    align-items:flex-start!important;
  }
  .wfs-footer-inquire a{
    display:inline-flex!important;
    align-items:center!important;
    min-height:44px!important;
    margin-top:2px;
  }
  .wfs-footer-legal a{
    display:inline-flex!important;
    align-items:center!important;
    min-height:44px!important;
  }
}
.elementor-location-footer .wfs-footer-sign img,
.elementor-location-footer .wfs-footer-brand img{
  width:220px!important;
  max-width:100%!important;
  height:auto!important;
  max-height:none!important;
  object-fit:contain!important;
  object-position:left center!important;
}
.wfs-footer-nav{
  flex-wrap:nowrap!important;
  justify-content:center!important;
  align-items:center!important;
  gap:0 20px!important;
  width:max-content!important;
  max-width:100%;
}
.elementor-location-footer .wfs-footer-links{
  flex:1 1 auto!important;
  display:flex!important;
  justify-content:center!important;
  min-width:0;
}
.elementor-location-footer .wfs-footer-nav a{
  letter-spacing:.12em!important;
}
.elementor-location-footer .wfs-footer-contact{
  margin-left:36px;
}
.wfs-footer-inquire p{margin:0;}
.wfs-footer-kicker{
  margin:0 0 10px!important;
  font-family:"Plus Jakarta Sans",sans-serif!important;
  font-size:11px!important;
  font-weight:500!important;
  letter-spacing:.16em!important;
  text-transform:uppercase!important;
  color:rgba(247,244,238,.72)!important;
}
.wfs-footer-inquire a{
  display:inline-block;
  margin-top:4px;
  font-family:"Cormorant Garamond",serif!important;
  font-size:18px!important;
  font-weight:500!important;
  letter-spacing:0!important;
  text-transform:none!important;
  color:#F7F4EE!important;
  text-decoration:none!important;
}
.wfs-footer-legal{
  border-top:1px solid rgba(247,244,238,.22);
  margin-top:8px;
}
.elementor-slideshow__title{display:none;}
.elementor-form .elementor-field:focus,
.elementor-form .elementor-field:focus-visible,
.elementor-field-textual:focus,
.elementor-field-textual:focus-visible{
  outline:2px solid #F7F4EE!important;outline-offset:2px!important;
}
.elementor-button:focus:not(:focus-visible){outline:none;}
.elementor-button:focus-visible{outline:2px solid #F7F4EE!important;outline-offset:3px!important;}
.wfs-primary-nav a:focus-visible,
.wfs-footer-nav a:focus-visible,
.wfs-popup-nav a:focus-visible,
.wfs-wordmark:focus-visible,
.wfs-menu-open:focus-visible,
.wfs-mm-close:focus-visible,
.wfs-mm-foot a:focus-visible,
.wfs-footer-inquire a:focus-visible,
.wfs-footer-film a:focus-visible,
.wfs-flip-other a:focus-visible,
.wfs-flow-arrow:focus-visible,
.wfs-flip-prev:focus-visible,
.wfs-flip-next:focus-visible,
.wfs-flip-close:focus-visible{
  outline:2px solid #F7F4EE!important;
  outline-offset:3px!important;
}
::selection{background:rgba(247,244,238,.22);color:#F7F4EE;}
@media (prefers-reduced-motion:reduce){
  .wfs-chapter-grid .elementor-widget-image img{transition:none;}
}
@media (max-width:1024px){
  .wfs-primary-nav{display:none!important;}
  .wfs-wordmark{display:none;}
  .wfs-brand .elementor-widget-html{display:none!important;}
  .wfs-menu-open{display:inline-flex!important;}
  .elementor-location-header > .e-con,
  .elementor-location-header .e-con.e-parent{
    padding-left:20px!important;
    padding-right:20px!important;
  }
  .elementor-location-header .e-con-inner{
    flex-direction:row!important;
    flex-wrap:nowrap!important;
    justify-content:space-between!important;
    align-items:center!important;
    padding-left:0!important;
    padding-right:0!important;
  }
  .elementor-location-header .wfs-brand{
    width:auto!important;
    max-width:none!important;
    flex:0 0 auto!important;
  }
  .elementor-location-header .elementor-widget-html{
    width:auto!important;
    flex:0 0 auto!important;
  }
}
.wfs-book{cursor:pointer;isolation:isolate;}
/* Hover/click only when pointer is over that book card (Plays was a weak hit-target). */
.wfs-book .elementor-widget-image,
.wfs-book .elementor-widget-image a,
.wfs-book .elementor-widget-image img{
  pointer-events:auto!important;
}
@media (hover:hover){
  .wfs-book{
    transition:transform .55s cubic-bezier(.22,.61,.36,1);
  }
  .wfs-book:hover,
  .wfs-book:focus-within{transform:translateY(-8px) scale(1.015);}
  .wfs-book:hover .elementor-widget-image img,
  .wfs-book:focus-within .elementor-widget-image img{
    box-shadow:
      -2px 0 0 #3a342c,
      -5px 0 0 #1c1914,
      -8px 0 0 #0c0b09,
      1px 0 0 #2a2a2a,
      2px 0 0 #1a1a1a,
      3px 0 0 #111,
      4px 0 0 #0c0c0c,
      14px 28px 48px rgba(0,0,0,.58);
  }
}
/* Gallery lift before flip chrome settles — home hardcover click */
.wfs-book.is-opening{
  transform:translateY(-14px) scale(1.035) perspective(900px) rotateX(5deg)!important;
  transition:transform .38s cubic-bezier(.22,.61,.36,1)!important;
  z-index:5;
}
.wfs-book.is-opening .elementor-widget-image img{
  box-shadow:
    -2px 0 0 #3a342c,
    -5px 0 0 #1c1914,
    -8px 0 0 #0c0b09,
    1px 0 0 #2a2a2a,
    2px 0 0 #1a1a1a,
    3px 0 0 #111,
    4px 0 0 #0c0c0c,
    18px 36px 64px rgba(0,0,0,.62),
    0 0 40px rgba(247,244,238,.06)!important;
}
.wfs-chapter-reader{width:100%;min-height:auto;}
/* Chapter title + open book read as one composition; keep count in first fold */
body:has(.wfs-chapter-reader) .elementor-location-single > .e-con.e-parent{
  padding-top:28px!important;
  padding-bottom:56px!important;
}
html,body{overflow-x:hidden!important;overflow-y:auto!important;}
html.wfs-flip-lock,html.wfs-flip-lock body{overflow:hidden!important;}
.wfs-flip[hidden]{display:none!important;}
.wfs-flip:not(.wfs-flip-inline){
  position:fixed;inset:0;z-index:100000;
  display:grid;
  grid-template-columns:56px max-content 56px;
  grid-template-rows:auto auto;
  align-items:center;
  justify-content:center;
  justify-items:center;
  background:
    radial-gradient(ellipse 72% 58% at 50% 46%, #14110e 0%, #0A0A0A 72%);
  color:#F7F4EE;
  padding:56px 40px 48px;
}
.wfs-flip-inline{
  position:relative !important;
  inset:auto !important;
  top:auto !important;
  right:auto !important;
  bottom:auto !important;
  left:auto !important;
  z-index:1;
  width:100%;
  min-height:0;
  padding:0 24px 28px;
  background:transparent;
  display:grid;
  grid-template-columns:48px max-content 48px;
  grid-template-rows:auto auto;
  align-items:center;
  justify-content:center;
  justify-items:center;
  color:#F7F4EE;
}

/* Michael 9/5 — per-book screened wash under flip (almost invisible; constant while pages turn) */
.wfs-flip .wfs-book-wash{
  display:none!important;
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
  background-repeat:no-repeat;
  background-position:center center;
  background-size:cover;
  opacity:0.15;
  mix-blend-mode:soft-light;
  filter:grayscale(1) contrast(0.92) brightness(0.85);
}
.wfs-flip-inline .wfs-book-wash{
  /* Chapter reader: ghost the ground around/under the book — not full-bleed fighting plates */
  opacity:0.18;
  border-radius:2px;
}
.wfs-flip:not(.wfs-flip-inline) .wfs-book-wash{
  /* Modal overlay: slightly quieter on full-viewport veil */
  opacity:0.12;
}

/* Michael 9/5 — SMALL FRAME full-contrast (soft-small-frame-01)
   2026-10-06 comments: remove small photo on each page — hide + JS no longer injects. */
.wfs-wash-frame{display:none!important;}
/* Same per-book wash as .wfs-book-wash, normal contrast in a small open frame.
   Placed in the flip gutter (right of next arrow) so it stays in ATF and does not fight leaf plates. */
.wfs-wash-frame{
  position:absolute;
  z-index:3;
  display:block;
  width:132px;
  margin:0;
  padding:0;
  border:0;
  background:transparent;
  pointer-events:none;
  right:18px;
  top:auto;
  bottom:96px; /* above folio within flip; gutter clear of stage */
}
.wfs-wash-frame-mat{
  position:relative;
  padding:6px;
  background:#0A0A0A;
  border:1px solid rgba(247,244,238,0.55);
  box-shadow:
    inset 0 0 0 1px rgba(247,244,238,0.16),
    0 0 0 1px rgba(10,10,10,0.85);
}
.wfs-wash-frame-mat::after{
  content:"";
  position:absolute;
  inset:10px;
  border:1px solid rgba(247,244,238,0.22);
  pointer-events:none;
}
.wfs-wash-frame img{
  display:block;
  width:100%;
  height:auto;
  aspect-ratio:16 / 10;
  object-fit:cover;
  object-position:center;
  filter:none;
  opacity:1;
  mix-blend-mode:normal;
  border-radius:0;
}
.wfs-flip-inline .wfs-wash-frame{
  width:132px;
  right:18px;
  bottom:92px;
}
.wfs-flip:not(.wfs-flip-inline) .wfs-wash-frame{
  width:120px;
  right:28px;
  bottom:72px;
}
@media (max-width:1100px){
  .wfs-flip-inline .wfs-wash-frame{
    /* narrow: park under folio, still small */
    position:relative;
    right:auto;
    bottom:auto;
    width:min(148px,42vw);
    margin:12px auto 4px;
  }
}
@media (max-width:480px){
  .wfs-wash-frame{width:min(132px,44vw);}
}


/* Same per-book wash image as .wfs-book-wash, but normal contrast in a small open frame — not fighting flip plates. */

.wfs-flip-inline > .wfs-flip-prev,
.wfs-flip-inline > .wfs-flip-next,
.wfs-flip-inline > .wfs-flip-stage,
.wfs-flip-inline > .wfs-flip-count,
.wfs-flip:not(.wfs-flip-inline) > .wfs-flip-toolbar,
.wfs-flip:not(.wfs-flip-inline) > .wfs-flip-prev,
.wfs-flip:not(.wfs-flip-inline) > .wfs-flip-next,
.wfs-flip:not(.wfs-flip-inline) > .wfs-flip-stage,
.wfs-flip:not(.wfs-flip-inline) > .wfs-flip-count{
  position:relative;
  z-index:1;
}
.wfs-flip:not(.wfs-flip-inline) > .wfs-flip-toolbar{
  position:absolute;
  z-index:6;
}
/* Michael 10/6 — Close + other-books stay visible on chapter pages too */
.wfs-flip-inline .wfs-flip-close{display:inline-flex!important;}
.wfs-flip-inline .wfs-flip-toolbar{display:flex!important;}
.wfs-flip-inline .wfs-flip-count{
  position:relative;
  bottom:auto;
  width:100%;
  margin-top:4px;
  margin-bottom:0;
}
.wfs-flip-inline .wfs-book-well{margin-bottom:6px;}
.wfs-flip-inline .wfs-book-shell::after{bottom:-14px;height:22px;}
.wfs-flip-stage{
  position:relative;
  z-index:1;
  grid-column:2;
  grid-row:1;
  width:auto;
  height:auto;
  max-width:100%;
}
/* Soft elliptical ground under open book — cherry depth */
.wfs-flip-stage::after{
  content:"";
  position:absolute;
  left:8%;
  right:8%;
  bottom:-18px;
  height:36px;
  border-radius:50%;
  background:radial-gradient(ellipse at center, rgba(0,0,0,.55) 0%, transparent 72%);
  pointer-events:none;
  z-index:0;
}
.wfs-flip.is-cover .wfs-flip-stage::after{
  left:18%;
  right:18%;
  bottom:-14px;
  height:28px;
  background:radial-gradient(ellipse at center, rgba(0,0,0,.48) 0%, transparent 70%);
}
.wfs-flip-stage > .wfs-stpage-shell{position:relative;z-index:1;}
/* StPageFlip host — soft page curl + gallery depth */
.wfs-stpage-shell{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  width:min(1100px, calc(100vw - 100px), calc((100vh - 140px) * 1.92));
  max-width:100%;
  perspective:1600px;
  transform:perspective(1600px) rotateX(2.2deg);
  transform-style:preserve-3d;
  box-shadow:
    0 30px 60px rgba(0,0,0,.66),
    0 10px 22px rgba(0,0,0,.38),
    0 0 0 1px rgba(255,255,255,.05),
    0 0 0 1px rgba(247,244,238,.03) inset;
  transition:
    transform .72s cubic-bezier(.22,.61,.36,1),
    opacity .72s cubic-bezier(.22,.61,.36,1),
    box-shadow .72s cubic-bezier(.22,.61,.36,1);
}
.wfs-flip-inline .wfs-stpage-shell{
  width:min(1000px, calc(100vw - 48px), calc((100vh - 220px) * 1.92));
  transform:perspective(1600px) rotateX(1.6deg);
  box-shadow:
    0 22px 44px rgba(0,0,0,.58),
    0 6px 14px rgba(0,0,0,.32),
    0 0 0 1px rgba(255,255,255,.04);
}
.wfs-stpage-host{
  width:100%;
  max-width:100%;
  margin:0 auto;
  position:relative;
}
/* Spine / gutter depth on open spreads (not closed cover) */
.wfs-flip:not(.is-cover) .wfs-stpage-host::before{
  content:"";
  position:absolute;
  left:50%;
  top:2%;
  bottom:2%;
  width:2px;
  transform:translateX(-50%);
  background:linear-gradient(
    180deg,
    transparent 0%,
    rgba(0,0,0,.55) 12%,
    rgba(0,0,0,.72) 50%,
    rgba(0,0,0,.55) 88%,
    transparent 100%
  );
  box-shadow:
    -6px 0 14px rgba(0,0,0,.35),
    6px 0 14px rgba(0,0,0,.28);
  pointer-events:none;
  z-index:6;
  opacity:.85;
}
.wfs-flip.is-cover .wfs-stpage-host::before{display:none;}
/* Classy overlay enter — animate STAGE, not shell (scale on shell collapses cover metrics). */
.wfs-flip:not(.wfs-flip-inline){
  opacity:1;
}
.wfs-flip:not(.wfs-flip-inline).is-entering{
  opacity:0;
}
.wfs-flip:not(.wfs-flip-inline).is-entering .wfs-flip-stage{
  opacity:.5;
  transform:perspective(1400px) translateY(28px) scale(.94);
  filter:blur(0.2px);
}
.wfs-flip:not(.wfs-flip-inline).is-entered{
  opacity:1;
  transition:opacity .6s cubic-bezier(.22,.61,.36,1);
}
.wfs-flip:not(.wfs-flip-inline) .wfs-flip-stage{
  transition:
    transform .72s cubic-bezier(.22,.61,.36,1),
    opacity .72s cubic-bezier(.22,.61,.36,1),
    filter .72s cubic-bezier(.22,.61,.36,1);
  transform-origin:50% 60%;
}
.wfs-flip:not(.wfs-flip-inline).is-entered .wfs-flip-stage{
  opacity:1;
  transform:perspective(1400px) translateY(0) scale(1);
  filter:none;
}
.wfs-flip:not(.wfs-flip-inline).is-entered .wfs-stpage-shell{
  box-shadow:
    0 32px 64px rgba(0,0,0,.66),
    0 10px 22px rgba(0,0,0,.38),
    0 0 0 1px rgba(255,255,255,.045);
}
@media (prefers-reduced-motion:reduce){
  .wfs-book.is-opening,
  .wfs-flip:not(.wfs-flip-inline).is-entering,
  .wfs-flip:not(.wfs-flip-inline) .wfs-flip-stage,
  .wfs-stpage-shell{
    transition:none!important;
    filter:none!important;
    opacity:1!important;
  }
  .wfs-flip:not(.wfs-flip-inline).is-entering .wfs-flip-stage,
  .wfs-flip:not(.wfs-flip-inline).is-entered .wfs-flip-stage{
    transform:none!important;
  }
  .wfs-book.is-opening{transform:none!important;}
}
.wfs-stpage-host .stf__parent,
.wfs-stpage-host .stf__block,
.wfs-stpage-host .stf__item{
  box-sizing:border-box;
}
.wfs-stpage-host canvas,
.wfs-stpage-host img{
  image-rendering:auto;
  -webkit-user-drag:none;
  user-select:none;
}
/* One leaf = left or right half of a letterboxed spread plate.
   Plate lives on a child <img> — StPageFlip wipes inline styles on .stf__item. */
.wfs-stpage-leaf{
  overflow:hidden;
  background-color:#14110e; /* warm dark paper fallback — not pure void */
  -webkit-user-drag:none;
  user-select:none;
  position:relative;
}
.wfs-stpage-leaf[data-kind="plate"] > img{
  display:block;
  width:200%;
  height:100%;
  max-width:none;
  object-fit:fill;
  pointer-events:none;
  user-select:none;
  -webkit-user-drag:none;
}
.wfs-stpage-leaf[data-kind="plate"][data-side="left"] > img{transform:translateX(0);}
.wfs-stpage-leaf[data-kind="plate"][data-side="right"] > img{transform:translateX(-50%);}
/* Last content as one page (WORKS/PLAYS) — full plate, not L|R crop */
.wfs-stpage-leaf-full[data-kind="plate"] > img,
.wfs-stpage-leaf[data-kind="plate"][data-side="full"] > img{
  width:100%!important;
  height:100%!important;
  max-width:none;
  object-fit:cover!important;
  object-position:center center!important;
  transform:none!important;
  background:#0A0A0A;
}
.wfs-stpage-leaf[data-kind="endpaper"]{
  background-color:#14110e;
}
/* PLAYS opener (pages 1–2): white gutter sits ~13px into the right page of the scan */
.wfs-flip[data-book="plays"] .wfs-stpage-leaf[data-spread="0"][data-side="right"]::after{
  content:"";
  position:absolute;
  left:0;top:0;bottom:0;
  width:28px;
  background:#0B0909;
  z-index:6;
  pointer-events:none;
}
.wfs-flip[data-book="plays"] .wfs-stpage-leaf[data-spread="0"][data-side="right"]::before{
  box-shadow:inset 0 0 22px rgba(0,0,0,.14)!important;
}
/* paint0923a — page atmosphere: gutter vignette + cream edge catch (all plate leaves) */
.wfs-stpage-leaf[data-kind="plate"]::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  z-index:2;
  box-shadow:
    inset 0 0 0 1px rgba(247,244,238,.09), /* page edge hairline / bevel */
    inset 0 0 22px rgba(0,0,0,.14);
}
.wfs-stpage-leaf[data-kind="plate"][data-side="left"]::before{
  background:
    linear-gradient(90deg, rgba(247,244,238,.07) 0%, transparent 11%),
    linear-gradient(270deg, rgba(0,0,0,.36) 0%, rgba(0,0,0,.12) 12%, transparent 24%),
    radial-gradient(ellipse 90% 80% at 48% 46%, transparent 55%, rgba(0,0,0,.18) 100%);
}
.wfs-stpage-leaf[data-kind="plate"][data-side="right"]::before{
  background:
    linear-gradient(270deg, rgba(247,244,238,.07) 0%, transparent 11%),
    linear-gradient(90deg, rgba(0,0,0,.36) 0%, rgba(0,0,0,.12) 12%, transparent 24%),
    radial-gradient(ellipse 90% 80% at 52% 46%, transparent 55%, rgba(0,0,0,.18) 100%);
}
/* Opener blank: drop heavy vignette so warm wash can read */
.wfs-stpage-leaf.wfs-opener-verso::before{
  background:
    linear-gradient(90deg, rgba(247,244,238,.08) 0%, transparent 12%),
    linear-gradient(270deg, rgba(0,0,0,.28) 0%, transparent 18%) !important;
  box-shadow:
    inset 0 0 0 1px rgba(247,244,238,.1),
    inset 0 0 36px rgba(247,244,238,.03);
}
/* Blank opener verso — warm paper wash + grain over black plate void */
.wfs-stpage-leaf.wfs-opener-verso .wfs-verso-wash{
  position:absolute;
  inset:0;
  pointer-events:none;
  z-index:2;
  /* Warm paper lift over black plate — readable, still dark-luxury */
  background-color:rgba(247,244,238,.13);
  background-image:
    radial-gradient(ellipse 70% 60% at 48% 44%, rgba(255,248,235,.10) 0%, transparent 70%),
    linear-gradient(165deg, rgba(247,244,238,.08) 0%, rgba(232,220,198,.04) 55%, transparent 100%),
    url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%27160%27%20height%3D%27160%27%3E%3Cfilter%20id%3D%27n%27%3E%3CfeTurbulence%20type%3D%27fractalNoise%27%20baseFrequency%3D%270.85%27%20numOctaves%3D%274%27%20stitchTiles%3D%27stitch%27%2F%3E%3CfeColorMatrix%20values%3D%270%200%200%200%200.97%200%200%200%200%200.95%200%200%200%200%200.90%200%200%200%200.55%200%27%2F%3E%3C%2Ffilter%3E%3Crect%20width%3D%27100%25%27%20height%3D%27100%25%27%20filter%3D%27url%28%2523n%29%27%2F%3E%3C%2Fsvg%3E");
  background-size:auto, auto, 120px 120px;
  background-repeat:no-repeat, no-repeat, repeat;
  background-blend-mode:normal, normal, soft-light;
  opacity:1;
}
/* Michael 11/9: remove cream hairline under signature on opener verso (all books). */
.wfs-stpage-leaf.wfs-opener-verso .wfs-verso-folio,
.wfs-stpage-leaf .wfs-verso-folio{
  display:none!important;
}
/* Michael 10/28: drop corner flourish (ghosting bottom-left on signature page). */
.wfs-stpage-leaf.wfs-opener-verso .wfs-verso-flourish,
.wfs-stpage-leaf .wfs-verso-flourish{
  display:none!important;
}
/* Soft MS signature watermark — blank opener verso only (paint0923a ~0.25) */
.wfs-stpage-leaf.wfs-opener-verso .wfs-verso-mark,
.wfs-stpage-leaf[data-kind="plate"][data-spread="0"][data-side="left"] .wfs-verso-mark{
  position:absolute;
  left:50%;
  top:48%;
  width:70%;
  max-width:240px;
  aspect-ratio:220 / 64;
  transform:translate(-50%,-50%);
  background-repeat:no-repeat;
  background-position:center;
  background-size:contain;
  opacity:0.28;
  pointer-events:none;
  z-index:4;
  /* Mark asset is already cream #F7F4EE on transparent */
  filter:none;
}
.wfs-stpage-leaf[data-kind="cover"],
.wfs-stpage-cover{
  background-color:#111!important;
  box-shadow:inset 1px 0 0 rgba(255,255,255,.06);
}
.wfs-stpage-leaf[data-kind="cover"] img{
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
  object-position:center;
  pointer-events:none;
  user-select:none;
  -webkit-user-drag:none;
}
/* Contact Inquiries → open book (form | photo) via same StPageFlip engine */
.wfs-contact-book{
  display:grid!important;
  grid-template-columns:auto 1fr auto;
  grid-template-rows:auto auto;
  align-items:center;
  justify-items:center;
  gap:12px 8px;
  width:100%;
  max-width:100%;
}
.wfs-contact-book .wfs-flip-stage{grid-column:2;grid-row:1;width:100%;}
.wfs-contact-book .wfs-flip-prev{grid-column:1;grid-row:1;}
.wfs-contact-book .wfs-flip-next{grid-column:3;grid-row:1;}
.wfs-contact-book .wfs-flip-count{grid-column:1/-1;grid-row:2;}
.wfs-contact-book .wfs-stpage-shell{
  width:min(1120px, calc(100vw - 48px));
}
.wfs-contact-leaf{
  background:#0A0A0A;
  box-sizing:border-box;
  overflow:auto;
  -webkit-overflow-scrolling:touch;
}
.wfs-contact-leaf-form{
  padding:28px 26px 32px;
  user-select:text;
}
.wfs-contact-leaf-form .elementor-button,
.wfs-contact-leaf-form button[type="submit"]{
  border:1px solid #F7F4EE!important;
  background:transparent!important;
  color:#F7F4EE!important;
  border-radius:0!important;
}
.wfs-contact-leaf-form .e-con,
.wfs-contact-leaf-form .elementor-widget{
  width:100%!important;
  max-width:100%!important;
}
.wfs-contact-leaf-photo{
  padding:0;
  overflow:hidden;
}
.wfs-contact-leaf-photo .e-con,
.wfs-contact-leaf-photo .elementor-widget,
.wfs-contact-leaf-photo .elementor-widget-container{
  height:100%!important;
  margin:0!important;
  padding:0!important;
}
.wfs-contact-leaf-photo img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  object-fit:cover!important;
  transform:none!important;
  pointer-events:none;
}
@media (max-width:767px){
  .wfs-contact-book{
    grid-template-columns:1fr;
    grid-template-rows:auto auto auto;
  }
  .wfs-contact-book .wfs-flip-prev,
  .wfs-contact-book .wfs-flip-next{display:none;}
  .wfs-contact-book .wfs-flip-stage{grid-column:1;grid-row:1;}
  .wfs-contact-book .wfs-flip-count{grid-column:1;grid-row:2;}
  .wfs-contact-leaf-form{padding:20px 16px 24px;}
}
@media (max-width:767px){
  .wfs-stpage-shell{
    width:min(100%, calc(100vw - 24px));
    box-shadow:0 14px 28px rgba(0,0,0,.5);
  }
}

/* contact0928a — Soft mobile form-first stack (no StPageFlip @<=767) */
.wfs-contact-book.wfs-contact-stack{
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  gap:16px!important;
  width:100%!important;
  max-width:100%!important;
  padding:0 12px 8px!important;
  box-sizing:border-box!important;
}
.wfs-contact-stack-inner{
  display:flex;
  flex-direction:column;
  gap:20px;
  width:100%;
}
.wfs-contact-book.wfs-contact-stack .wfs-contact-leaf-form{
  padding:8px 4px 12px!important;
  width:100%!important;
  overflow:visible!important;
}
.wfs-contact-book.wfs-contact-stack .wfs-contact-leaf-photo{
  width:100%!important;
  max-height:420px;
  overflow:hidden;
  border-radius:0;
}
.wfs-contact-book.wfs-contact-stack .wfs-contact-leaf-photo img{
  width:100%!important;
  height:auto!important;
  max-height:420px;
  object-fit:cover!important;
}
.wfs-contact-book.wfs-contact-stack .wfs-flip-count{
  text-align:center;
  font-size:11px;
  letter-spacing:.14em;
  opacity:.75;
  padding-bottom:8px;
}
@media (max-width:767px){
  .wfs-contact-book:not(.wfs-contact-stack) .wfs-stpage-shell{
    width:min(100%, calc(100vw - 24px))!important;
    max-width:100%!important;
  }
}

.wfs-book-shell{
  --wfs-stack-left:4px;
  --wfs-stack-right:18px;
  position:relative;
  display:flex;
  align-items:stretch;
  justify-content:center;
  transform:rotateX(3.5deg);
  transform-origin:50% 88%;
  transform-style:preserve-3d;
  /* Prefer box-shadow — CSS filter on the shell softens page pixels */
  box-shadow:
    0 28px 50px rgba(0,0,0,.62),
    0 2px 0 rgba(20,16,10,.85);
}
.wfs-book-shell::after{
  content:"";
  position:absolute;
  left:10%;right:10%;
  bottom:-22px;
  height:32px;
  z-index:-1;
  pointer-events:none;
  background:radial-gradient(ellipse at center, rgba(0,0,0,.55), transparent 72%);
}
.wfs-book-board{
  width:18px;
  flex:0 0 18px;
  background:
    linear-gradient(90deg, #4a4338, #1c1914 42%, #12100c);
  box-shadow:
    inset 0 0 10px rgba(0,0,0,.5),
    inset -1px 0 0 rgba(247,244,238,.14);
}
.wfs-book-board-left{
  border-radius:3px 0 0 3px;
  background:linear-gradient(90deg, #5a5246 0%, #2a261f 38%, #141210 100%);
  box-shadow:
    inset 1px 0 0 rgba(247,244,238,.2),
    inset 0 0 12px rgba(0,0,0,.45);
}
.wfs-book-board-right{
  border-radius:0 3px 3px 0;
  background:linear-gradient(90deg, #141210, #2a261f 62%, #5a5246);
  box-shadow:
    inset -1px 0 0 rgba(247,244,238,.2),
    inset 0 0 12px rgba(0,0,0,.45);
}
.wfs-book-stack{
  margin:8px 0;
  background:repeating-linear-gradient(
    to right,
    #f7f4ee 0 1px,
    #ebe3d4 1px 2px,
    #d8cfbc 2px 3px
  );
  box-shadow:
    inset 0 0 6px rgba(0,0,0,.28),
    0 1px 0 rgba(247,244,238,.2);
}
.wfs-book-stack-left{width:var(--wfs-stack-left);flex:0 0 var(--wfs-stack-left);}
.wfs-book-stack-right{width:var(--wfs-stack-right);flex:0 0 var(--wfs-stack-right);}
.wfs-book-well{
  position:relative;
  margin:8px 0 12px;
  background:#1a1713;
  box-shadow:
    inset 0 0 0 1px rgba(0,0,0,.55),
    0 0 0 1px rgba(247,244,238,.06);
}
.wfs-book-well::after{
  content:"";
  position:absolute;
  left:2px;right:2px;
  bottom:-6px;
  height:6px;
  pointer-events:none;
  background:repeating-linear-gradient(
    to bottom,
    #f7f4ee 0 1px,
    #e6dcc8 1px 2px
  );
  opacity:.85;
  box-shadow:0 1px 0 rgba(0,0,0,.35);
}
.wfs-spread-plate{
  position:relative;
  display:block;
  width:min(1180px, calc(100vw - 220px), calc((100vh - 140px) * 1.92));
  max-width:100%;
  aspect-ratio:1.92 / 1;
  height:auto;
  background:#1a1713;
  overflow:visible;
  perspective:2000px;
  transform-style:preserve-3d;
}
.wfs-flip-page{
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
  visibility:hidden;
  pointer-events:none;
}
.wfs-spread-fold{
  position:absolute;
  inset:0;
  display:flex;
  perspective:2000px;
  transform-style:preserve-3d;
}
.wfs-page{
  position:relative;
  flex:1 1 50%;
  overflow:hidden;
  background:#111;
  transform-style:preserve-3d;
}
.wfs-page img{
  position:absolute;
  top:0;
  height:100%;
  width:200%;
  max-width:none;
  object-fit:fill;
  display:block;
  image-rendering:auto;
  -webkit-backface-visibility:hidden;
  backface-visibility:hidden;
}
.wfs-page-left{
  transform-origin:right center;
  transform:rotateY(5deg) translateZ(0);
  box-shadow:10px 0 28px rgba(0,0,0,.38);
}
.wfs-page-left img{left:0;}
.wfs-page-right{
  transform-origin:left center;
  transform:rotateY(-5deg) translateZ(0);
  box-shadow:-10px 0 28px rgba(0,0,0,.38);
}
.wfs-page-right img{right:0;left:auto;}
.wfs-page::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  z-index:1;
}
.wfs-page-left::after{
  background:linear-gradient(90deg, rgba(247,244,238,.05), transparent 36%, rgba(0,0,0,.22));
}
.wfs-page-right::after{
  background:linear-gradient(90deg, rgba(0,0,0,.22), transparent 64%, rgba(247,244,238,.07));
}
.wfs-page-spine{
  position:absolute;
  top:0;bottom:0;left:50%;
  width:4px;
  transform:translateX(-50%);
  z-index:3;
  pointer-events:none;
  background:linear-gradient(180deg, #2a261f, #0c0b09 18%, #111 82%, #2a261f);
  box-shadow:0 0 14px rgba(0,0,0,.55);
}
.wfs-flip-inline .wfs-spread-plate{
  width:min(1100px, calc(100vw - 220px), calc((100vh - 260px) * 1.92));
}
.wfs-gutter{
  position:absolute;
  top:0;bottom:0;left:50%;
  width:56px;
  transform:translateX(-50%);
  pointer-events:none;
  z-index:2;
  background:linear-gradient(90deg,
    rgba(0,0,0,0) 0%,
    rgba(0,0,0,.18) 34%,
    rgba(0,0,0,.42) 50%,
    rgba(0,0,0,.18) 66%,
    rgba(0,0,0,0) 100%);
}
.wfs-curl{
  position:absolute;
  top:0;right:0;bottom:0;
  width:22%;
  pointer-events:none;
  z-index:2;
  background:linear-gradient(90deg, rgba(255,255,255,0) 0%, rgba(247,244,238,.08) 58%, rgba(0,0,0,.2) 100%);
}
.wfs-leaf{
  position:absolute;
  top:0;
  width:50%;
  height:100%;
  transform-style:preserve-3d;
  pointer-events:none;
  z-index:6;
  visibility:hidden;
  will-change:transform;
}
.wfs-leaf.is-fwd,
.wfs-leaf.is-back{
  visibility:visible;
  box-shadow:
    -22px 8px 36px rgba(0,0,0,.62),
    0 0 0 1px rgba(20,16,10,.45);
}
.wfs-leaf.is-fwd::after,
.wfs-leaf.is-back::after{
  content:"";
  position:absolute;
  top:0;bottom:0;
  width:8px;
  z-index:3;
  pointer-events:none;
  background:linear-gradient(90deg, #f7f4ee, #e6dcc8 42%, #2a261f);
  box-shadow:2px 0 10px rgba(0,0,0,.4);
}
.wfs-leaf.is-fwd::after{left:0;}
.wfs-leaf.is-back::after{right:0;transform:scaleX(-1);}
.wfs-leaf.is-fwd{
  right:0;
  transform-origin:left center;
  animation:wfs-leaf-fwd .8s cubic-bezier(.37,.02,.18,1) forwards;
}
.wfs-leaf.is-back{
  left:0;
  transform-origin:right center;
  animation:wfs-leaf-back .8s cubic-bezier(.37,.02,.18,1) forwards;
}
.wfs-leaf-face{
  position:absolute;
  inset:0;
  overflow:hidden;
  backface-visibility:hidden;
  -webkit-backface-visibility:hidden;
  background:#111;
}
.wfs-leaf-back{transform:rotateY(180deg);}
.wfs-leaf-front img,
.wfs-leaf-back img{
  position:absolute;
  top:0;
  height:100%;
  width:200%;
  max-width:none;
  object-fit:fill;
  background:#111;
}
.wfs-leaf.is-fwd .wfs-leaf-front img{right:0;left:auto;}
.wfs-leaf.is-fwd .wfs-leaf-back img{left:0;right:auto;}
.wfs-leaf.is-back .wfs-leaf-front img{left:0;right:auto;}
.wfs-leaf.is-back .wfs-leaf-back img{right:0;left:auto;}
@keyframes wfs-leaf-fwd{
  from{transform:rotateY(0deg) translateZ(2px);}
  38%{transform:rotateY(-68deg) translateZ(42px);}
  to{transform:rotateY(-180deg) translateZ(2px);}
}
@keyframes wfs-leaf-back{
  from{transform:rotateY(0deg) translateZ(2px);}
  38%{transform:rotateY(68deg) translateZ(42px);}
  to{transform:rotateY(180deg) translateZ(2px);}
}
.wfs-flip button{
  z-index:5;
  background:transparent!important;
  color:#F7F4EE!important;
  border:none!important;
  border-radius:0!important;
  box-shadow:none!important;
  appearance:none!important;
  letter-spacing:.12em;text-transform:uppercase;
  font:500 12px/1 "Plus Jakarta Sans",sans-serif;
  min-width:44px;min-height:44px;padding:0;cursor:pointer;
}
/* Other books + Close — top bar (Michael 10/6) */
.wfs-flip-toolbar{
  position:absolute;
  top:12px;
  left:50%;
  right:auto;
  transform:translateX(-50%);
  z-index:6;
  display:flex;
  align-items:center;
  gap:12px;
  flex-wrap:wrap;
  justify-content:center;
  width:max-content;
  max-width:calc(100% - 24px);
}
.wfs-flip-other{
  display:flex;
  align-items:center;
  margin:0;
  padding:0;
  gap:22px;
  min-height:44px;
  border:0;
  background:transparent;
  font:500 12px/1 "Plus Jakarta Sans",sans-serif;
  letter-spacing:0.12em;
  text-transform:uppercase;
}
.wfs-flip-other a{
  color:#F7F4EE!important;
  text-decoration:none!important;
  opacity:.88;
  padding:8px 2px;
}
.wfs-flip-other a:hover{opacity:1;}
.wfs-flip-other-sep{display:none;}
.wfs-flip-close{
  position:relative;
  top:auto;right:auto;
  width:auto !important;
  min-width:0 !important;
  border:0!important;
  background:transparent!important;
  padding:8px 0 !important;
  letter-spacing:0.12em;
  transition:border-color .25s ease, background-color .25s ease;
  display:inline-flex!important;
  align-items:center;
  justify-content:center;
}
.wfs-flip-close:hover{
  border:0!important;
  background:transparent!important;
  opacity:.7;
}
.wfs-flip-inline .wfs-flip-toolbar{
  position:relative;
  top:auto;
  left:auto;
  right:auto;
  transform:none;
  width:100%;
  max-width:none;
  justify-content:center!important;
  margin:0 0 8px;
  grid-column:1 / -1;
}
.wfs-flip .wfs-flip-prev,
.wfs-flip .wfs-flip-next{
  position:relative;
  top:auto;left:auto;right:auto;
  transform:none;
  grid-row:1;
  align-self:center;
  font-size:48px;
  line-height:1;
  min-width:56px;
  min-height:56px;
  opacity:1;
  color:#F7F4EE!important;
  text-shadow:0 1px 0 rgba(0,0,0,.45), 0 0 18px rgba(247,244,238,.12);
  transition:opacity .2s ease, text-shadow .2s ease;
}
.wfs-flip-prev{grid-column:1;}
.wfs-flip-next{grid-column:3;}
.wfs-flip-prev:hover,
.wfs-flip-next:hover{
  opacity:1;
  text-shadow:0 1px 0 rgba(0,0,0,.45), 0 0 22px rgba(247,244,238,.22);
}
/* Closed hardcover: single centered board (host shrinks to pageW in JS). */
.wfs-flip.is-cover .wfs-stpage-shell,
.wfs-flip-inline.is-cover .wfs-stpage-shell{
  width:auto;
  max-width:min(560px, calc(100vw - 120px), calc((100vh - 160px) * 0.96));
  transform:perspective(1600px) rotateX(1.4deg);
  box-shadow:
    0 26px 52px rgba(0,0,0,.6),
    0 8px 18px rgba(0,0,0,.34),
    0 0 0 1px rgba(255,255,255,.04);
}
.wfs-flip.is-cover .wfs-stpage-host,
.wfs-flip-inline.is-cover .wfs-stpage-host{
  margin-left:auto;
  margin-right:auto;
}
.wfs-flip-count{
  grid-column:1 / -1;
  grid-row:2;
  position:relative;
  width:100%;
  margin:20px 0 0;
  text-align:center;font:500 12px/1.2 "Plus Jakarta Sans",sans-serif;
  letter-spacing:.16em;
  color:rgba(247,244,238,.9);
}
.wfs-flip-count::before{
  content:"";
  display:block;
  width:36px;
  height:1px;
  margin:0 auto 10px;
  background:linear-gradient(90deg, transparent, rgba(247,244,238,.35), transparent);
}
.wfs-flip.is-cover .wfs-flip-count{
  letter-spacing:.16em;
  color:rgba(247,244,238,.92);
}
.wfs-flip:not(.wfs-flip-inline) .wfs-flip-count{
  position:relative;bottom:auto;left:auto;right:auto;margin:18px 0 0;
}
@media (max-width:767px){
  .elementor-element:has(> .wfs-book){
    grid-template-columns:minmax(0,280px)!important;
    justify-content:center!important;
    justify-items:center!important;
    row-gap:28px!important;
    column-gap:0!important;
  }
  .wfs-book{
    width:min(280px,100%)!important;
    max-width:280px!important;
  }
}
@media (max-width:768px){
  /* Welcome: full-width stack — desktop 50% max-width was crushing copy to ~175px */
  .wfs-welcome{
    flex-direction:column!important;
    align-items:stretch!important;
  }
  .wfs-welcome > .elementor-widget-image{
    width:100%!important;
    max-width:100%!important;
    flex:0 0 auto!important;
  }
  .wfs-welcome > .e-con{
    width:100%!important;
    max-width:100%!important;
    flex:0 0 auto!important;
    min-height:0!important;
    padding-left:0!important;
    padding-right:0!important;
    padding-top:28px!important;
  }
  .wfs-welcome > .e-con > .e-con-inner{
    min-height:0!important;
    height:auto!important;
    justify-content:flex-start!important;
  }
  .wfs-welcome > .elementor-widget-image img{
    min-height:0!important;
    height:auto!important;
    max-height:none!important;
    aspect-ratio:3 / 4;
    object-fit:cover!important;
  }
  .wfs-welcome .elementor-heading-title{font-size:34px!important;}
  .wfs-welcome .elementor-widget-text-editor{max-width:none!important;width:100%!important;}
  .wfs-welcome .wfs-welcome-sign-mark{
    width:min(200px,70vw)!important;
    max-width:100%!important;
    height:auto!important;
    aspect-ratio:auto!important;
    object-fit:contain!important;
    object-position:left center!important;
  }
  .wfs-footer-tagline,.wfs-footer-tagline-widget p{white-space:normal;}
  .elementor-location-footer .e-con.e-parent{
    padding-left:20px!important;
    padding-right:20px!important;
  }
  .elementor-form .elementor-field-group.elementor-field-type-submit{
    width:auto!important;
    max-width:max-content!important;
  }
  .elementor-form .elementor-field-type-submit .elementor-button{
    width:310px!important;
    max-width:100%!important;
  }
  .wfs-404{text-align:left;max-width:none;margin:0;}
  .wfs-404-break{display:block;}
  .wfs-404-num{display:none;}
  .wfs-404-h{
    font-size:48px!important;
    line-height:1.1!important;
    margin:0 0 36px!important;
  }
  .elementor-page-13 h1.elementor-heading-title,
  .elementor-13 h1.elementor-heading-title{
    font-size:48px!important;
  }
  .wfs-404-lede{display:none;}
  .wfs-404-home{
    border:none!important;
    padding:0!important;
    min-width:0!important;
    justify-content:flex-start;
    text-decoration:underline !important;
    text-underline-offset:8px;
    font-size:14px!important;
    letter-spacing:.16em!important;
    opacity:.88;
  }
  body.error404 .elementor-location-single > .e-con.e-parent,
  .wfs-404-band{
    justify-content:flex-start!important;
    align-items:stretch!important;
    padding-left:20px!important;
    padding-right:20px!important;
  }
  .wfs-404-band > .e-con-inner{
    padding-left:0!important;
    padding-right:0!important;
  }
  .wfs-ground-dark > .e-con-inner{
    padding-left:20px!important;
    padding-right:20px!important;
  }
  /* polish0928a — Fail #3: arrows/page-count usable @390 (44px hit). Contact stays swipe-only (.wfs-contact-book @767). */
  .wfs-flip:not(.wfs-flip-inline),
  .wfs-flip-inline{
    grid-template-columns:44px minmax(0,1fr) 44px;
    padding:48px 6px 40px;
    column-gap:0;
  }
  .wfs-flip-inline{padding:8px 2px 36px;}
  .wfs-flip-stage{grid-column:2;grid-row:1;}
  .wfs-flip-count{grid-column:1 / -1;grid-row:2;}
  .wfs-flip .wfs-flip-prev,
  .wfs-flip .wfs-flip-next{
    display:flex;
    align-items:center;
    justify-content:center;
    min-width:52px;
    min-height:52px;
    opacity:1;
    font-size:44px;
  }
  .wfs-flip.is-cover .wfs-stpage-shell,
  .wfs-flip-inline.is-cover .wfs-stpage-shell{
    max-width:min(560px, calc(100vw - 96px), calc((100vh - 160px) * 0.96));
  }
  .wfs-spread-plate,
  .wfs-flip-inline .wfs-spread-plate{
    width:min(100%, calc((100vh - 200px) * 1.92));
  }
  .wfs-book-board{width:10px;flex-basis:10px;}
  .wfs-gutter{width:36px;}
  .wfs-book-shell{transform:rotateX(2deg);}
  .wfs-page-left{transform:rotateY(4deg);}
  .wfs-page-right{transform:rotateY(-4deg);}
}
@media (prefers-reduced-motion:reduce){
  .wfs-book{transition:none;}
  .wfs-book:hover{transform:none;}
  .wfs-leaf.is-fwd,
  .wfs-leaf.is-back{animation:none;visibility:hidden;}
}
/* Book field — page, header, footer, and inner columns.
   The chapter document is .elementor-{id} directly under body (no .elementor-location-single),
   so the old single-only rule left .wfs-ground-dark at #0A0A0A. */
html:has(body.elementor-page-9){background-color:#454B54!important;}
body.elementor-page-9,
body.elementor-page-9 .elementor-9 .e-con,
body.elementor-page-9 .elementor-9 .e-con-inner,
body.elementor-page-9 .wfs-ground-dark,
body.elementor-page-9 .elementor-location-single,
body.elementor-page-9 .elementor-location-single .e-con,
body.elementor-page-9 .elementor-location-single .e-con-inner,
body.elementor-page-9 .elementor-location-header,
body.elementor-page-9 .elementor-location-header .e-con,
body.elementor-page-9 .elementor-location-header .e-con-inner,
body.elementor-page-9 .elementor-location-footer,
body.elementor-page-9 .elementor-location-footer .e-con,
body.elementor-page-9 .elementor-location-footer .e-con-inner{background-color:#454B54!important;background-image:none!important;}
html:has(body.elementor-page-11){background-color:#3E3450!important;}
body.elementor-page-11,
body.elementor-page-11 .elementor-11 .e-con,
body.elementor-page-11 .elementor-11 .e-con-inner,
body.elementor-page-11 .wfs-ground-dark,
body.elementor-page-11 .elementor-location-single,
body.elementor-page-11 .elementor-location-single .e-con,
body.elementor-page-11 .elementor-location-single .e-con-inner,
body.elementor-page-11 .elementor-location-header,
body.elementor-page-11 .elementor-location-header .e-con,
body.elementor-page-11 .elementor-location-header .e-con-inner,
body.elementor-page-11 .elementor-location-footer,
body.elementor-page-11 .elementor-location-footer .e-con,
body.elementor-page-11 .elementor-location-footer .e-con-inner{background-color:#3E3450!important;background-image:none!important;}
html:has(body.elementor-page-25){background-color:#2C3D52!important;}
body.elementor-page-25,
body.elementor-page-25 .elementor-25 .e-con,
body.elementor-page-25 .elementor-25 .e-con-inner,
body.elementor-page-25 .wfs-ground-dark,
body.elementor-page-25 .elementor-location-single,
body.elementor-page-25 .elementor-location-single .e-con,
body.elementor-page-25 .elementor-location-single .e-con-inner,
body.elementor-page-25 .elementor-location-header,
body.elementor-page-25 .elementor-location-header .e-con,
body.elementor-page-25 .elementor-location-header .e-con-inner,
body.elementor-page-25 .elementor-location-footer,
body.elementor-page-25 .elementor-location-footer .e-con,
body.elementor-page-25 .elementor-location-footer .e-con-inner{background-color:#2C3D52!important;background-image:none!important;}
.wfs-flip[data-book="works"]:not(.wfs-flip-inline){background:#454B54;}
.wfs-flip[data-book="draws"]:not(.wfs-flip-inline){background:#3E3450;}
.wfs-flip[data-book="plays"]:not(.wfs-flip-inline){background:#2C3D52;}
.wfs-footer-film{
  margin:22px 0 12px;
  text-align:center;
}
.wfs-footer-film a{
  font-family:"Plus Jakarta Sans",sans-serif;
  font-size:12px;
  font-weight:500;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:rgba(247,244,238,.82)!important;
  text-decoration:none;
}
/* film hover color locked in kit-beat block above */
.wfs-legal{color:rgba(247,244,238,.55)!important;}
.wfs-flip-hint{
  display:none;
  grid-column:1 / -1;
  margin:8px 0 0;
  text-align:center;
  font:500 11px/1.4 "Plus Jakarta Sans",sans-serif;
  letter-spacing:.04em;
  color:rgba(247,244,238,.72);
}
@media (max-width:768px) and (orientation:portrait){
  .wfs-flip-hint{display:block;}
  .wfs-flip:not(.is-cover) .wfs-stpage-host::before,
  .wfs-page-spine,
  .wfs-flip .stf__outerShadow,
  .wfs-flip .stf__innerShadow,
  .wfs-flip .stf__hardShadow,
  .wfs-flip .stf__hardInnerShadow{display:none!important;}
}
/* Phone enlarge: scale the painted book (do not reflow StPageFlip width — that went blank). */
.wfs-flip.is-reading .wfs-flip-stage{
  overflow:auto;
  max-height:78vh;
  -webkit-overflow-scrolling:touch;
  touch-action:pan-x pan-y;
  overscroll-behavior:contain;
}
.wfs-flip.is-reading .wfs-stpage-shell,
.wfs-flip.is-reading.is-cover .wfs-stpage-shell,
.wfs-flip-inline.is-reading.is-cover .wfs-stpage-shell{
  transform:scale(1.85);
  transform-origin:top center;
  margin-bottom:42%;
  pointer-events:auto;
  background:transparent;
}
.wfs-flip.is-reading .stf__parent,
.wfs-flip.is-reading .stf__block,
.wfs-flip.is-reading .wfs-stpage-host{
  pointer-events:none;
}
/* Home covers — coverflow. Center book faces forward; the other two angle off the sides. */
.elementor-element-8fa0d4c3,
.elementor-element-f3423b6c{
  overflow:visible!important;
}
.elementor-element.elementor-element-f3423b6c{
  /* Center book ~500 and wings ~340 apart on a ~1120 stage (1200–1440). Caps keep the row inside the box. */
  --flow-size:min(500px, max(240px, 42vw));
  --flow-shift:min(340px, max(150px, 28vw));
  display:block!important;
  position:relative!important;
  height:auto!important;
  min-height:0!important;
  margin:8px auto 8px!important;
  padding-top:var(--flow-size)!important;
  padding-bottom:96px!important;
  perspective:1800px;
  overflow-x:clip!important;
}
.elementor-element-f3423b6c > .wfs-book{
  position:absolute!important;
  left:50%!important;
  top:0!important;
  width:var(--flow-size)!important;
  max-width:var(--flow-size)!important;
  margin:0!important;
  transition:transform .6s cubic-bezier(.22,.61,.36,1), opacity .6s ease, filter .6s ease;
}
.elementor-element-f3423b6c > .wfs-book:nth-child(1){
  z-index:1;
  opacity:.5;
  filter:brightness(.72);
  transform:translateX(calc(-50% - var(--flow-shift))) rotateY(46deg) scale(.8);
}
.elementor-element-f3423b6c > .wfs-book:nth-child(2){
  z-index:3;
  opacity:1;
  filter:none;
  transform:translateX(-50%) rotateY(0deg) scale(1);
}
.elementor-element-f3423b6c > .wfs-book:nth-child(3){
  z-index:1;
  opacity:.5;
  filter:brightness(.72);
  transform:translateX(calc(-50% + var(--flow-shift))) rotateY(-46deg) scale(.8);
}
.elementor-element-f3423b6c > .wfs-book[data-flow="left"]{
  z-index:1;
  opacity:.5;
  filter:brightness(.72);
  transform:translateX(calc(-50% - var(--flow-shift))) rotateY(46deg) scale(.8);
}
.elementor-element-f3423b6c > .wfs-book[data-flow="center"]{
  z-index:3;
  opacity:1;
  filter:none;
  transform:translateX(-50%) rotateY(0deg) scale(1);
}
.elementor-element-f3423b6c > .wfs-book[data-flow="right"]{
  z-index:1;
  opacity:.5;
  filter:brightness(.72);
  transform:translateX(calc(-50% + var(--flow-shift))) rotateY(-46deg) scale(.8);
}
.elementor-element-f3423b6c > .wfs-book.is-opening{
  z-index:4;
  transform:translateX(-50%) translateY(-14px) scale(1.035) perspective(900px) rotateX(5deg)!important;
}
.wfs-flow-arrow,
.wfs-flow-dot{
  appearance:none!important;
  -webkit-appearance:none!important;
  background:transparent!important;
  color:#F7F4EE!important;
  box-shadow:none!important;
  padding:0!important;
  min-width:0!important;
  min-height:0!important;
}
.wfs-flow-arrow{
  position:absolute;
  /* Sit on the black field beside the books, not over the side covers. */
  top:calc(var(--flow-size) * .42);
  z-index:8;
  box-sizing:border-box!important;
  width:48px!important;
  height:48px!important;
  aspect-ratio:1 / 1;
  /* Half of height — keep in sync with width/height above (not translateY; leaves transform free). */
  margin-top:-24px;
  margin-left:0;
  margin-right:0;
  margin-bottom:0;
  cursor:pointer;
  opacity:1;
  color:#F7F4EE!important;
  background:rgba(10,10,10,.55)!important;
  background-color:rgba(10,10,10,.55)!important;
  border:1px solid rgba(247,244,238,.72)!important;
  border-radius:50%!important;
  line-height:0!important;
  font-size:0!important;
  display:flex!important;
  align-items:center;
  justify-content:center;
  overflow:visible;
}
.wfs-flow-prev{left:12px;right:auto;}
.wfs-flow-next{right:12px;left:auto;}
.wfs-flow-arrow span{
  display:flex!important;
  align-items:center;
  justify-content:center;
  box-sizing:border-box;
  width:16px;
  height:16px;
  margin:0!important;
  padding:0;
  border:0!important;
  flex-shrink:0;
  line-height:0;
  transform:none!important;
}
.wfs-flow-arrow span svg{
  display:block;
  width:14px;
  height:14px;
  flex-shrink:0;
  overflow:visible;
}
/* flow arrow hover color locked above (cream, not Hello pink / kit dark) */
.wfs-flow-hint{
  position:absolute;
  left:50%;
  bottom:52px;
  z-index:6;
  margin:0;
  padding:0 16px;
  width:max-content;
  max-width:min(92%, 420px);
  transform:translateX(-50%);
  text-align:center;
  font:400 13px/1.35 "Plus Jakarta Sans",sans-serif;
  letter-spacing:0.04em;
  color:#F7F4EE;
  opacity:.7;
  pointer-events:none;
}
.wfs-flow-dots{
  position:absolute;
  left:50%;
  bottom:0;
  z-index:6;
  display:flex;
  gap:14px;
  align-items:flex-start;
  transform:translateX(-50%);
}
.wfs-flow-dot{
  width:auto!important;
  height:auto!important;
  min-width:44px!important;
  min-height:44px!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  opacity:.7;
  cursor:pointer;
  overflow:visible;
  display:flex!important;
  flex-direction:column;
  align-items:center;
  gap:6px;
  line-height:1!important;
}
.wfs-flow-dot img{
  width:36px!important;
  height:36px!important;
  object-fit:cover!important;
  display:block;
  pointer-events:none;
  border:1px solid transparent;
  box-sizing:border-box;
}
.wfs-flow-dot-label{
  font:500 9px/1 "Plus Jakarta Sans",sans-serif;
  letter-spacing:0.14em;
  text-transform:uppercase;
  color:#F7F4EE;
  opacity:.55;
  white-space:nowrap;
  pointer-events:none;
}
.wfs-flow-dot.is-on{
  opacity:1;
}
.wfs-flow-dot.is-on img{
  border-color:#F7F4EE!important;
}
.wfs-flow-dot.is-on .wfs-flow-dot-label{
  opacity:.9;
}
/* Added after first paint by schiff-flip.js. The same object-fit/transform pair in the
   first-paint stylesheet stays a black slab; a later class change uploads the bitmap.
   Covers are square, so fill matches contain. Do not add height:100%, cover, or translateZ here. */
.elementor-element-f3423b6c > .wfs-book img.wfs-cover-live{
  object-fit:fill!important;
  transform:none!important;
}
@media (max-width:720px){
  .elementor-element.elementor-element-f3423b6c{
    --flow-size:min(210px, 54vw);
    --flow-shift:min(92px, 24vw);
    padding-bottom:112px!important;
  }
  /* Phone: arrows sit under the books on black, not over the side covers. */
  .wfs-flow-prev{left:4px;right:auto;}
  .wfs-flow-next{right:4px;left:auto;}
  .wfs-flow-arrow{
    box-sizing:border-box!important;
    width:44px!important;
    height:44px!important;
    aspect-ratio:1 / 1;
    top:auto;
    bottom:40px;
    margin-top:0;
    margin-left:0;
    margin-right:0;
    margin-bottom:0;
  }
  .wfs-flow-arrow span{
    width:14px;
    height:14px;
  }
  .wfs-flow-arrow span svg{
    width:12px;
    height:12px;
  }
  .wfs-flow-hint{
    bottom:52px;
    left:50%;
    width:auto;
    max-width:min(70%, 260px);
    font-size:11.5px;
    opacity:.72;
  }
  .wfs-flow-dots{gap:10px; bottom:2px;}
  .wfs-flow-dot-label{font-size:8px;letter-spacing:0.12em;}
}
@media (prefers-reduced-motion:reduce){
  .elementor-element-f3423b6c > .wfs-book{transition:none!important;}
}
/* Chapter pages — homepage chrome on the book field.
   Title tracking matches the wordmark. The switcher sits above the book
   like the nav, not as a black chip under the cover. The hairline is centered. */
body.elementor-page-9 .elementor-9 > .e-con > .e-con-inner,
body.elementor-page-11 .elementor-11 > .e-con > .e-con-inner,
body.elementor-page-25 .elementor-25 > .e-con > .e-con-inner{
  padding-top:56px!important;
  padding-bottom:64px!important;
}
body.elementor-page-9 .elementor-widget-divider .elementor-divider,
body.elementor-page-11 .elementor-widget-divider .elementor-divider,
body.elementor-page-25 .elementor-widget-divider .elementor-divider{
  justify-content:center!important;
}
body.elementor-page-9 .elementor-divider-separator,
body.elementor-page-11 .elementor-divider-separator,
body.elementor-page-25 .elementor-divider-separator{
  margin-left:auto!important;
  margin-right:auto!important;
}
.wfs-flip-inline{
  grid-template-rows:auto auto auto;
  row-gap:22px;
  padding-top:18px;
  padding-bottom:8px;
}
.wfs-flip-inline > .wfs-flip-toolbar{grid-row:1!important;}
.wfs-flip-inline > .wfs-flip-prev,
.wfs-flip-inline > .wfs-flip-stage,
.wfs-flip-inline > .wfs-flip-next{grid-row:2!important;}
.wfs-flip-inline > .wfs-flip-count{grid-row:3!important;margin-top:0;}
.wfs-flip-inline > .wfs-flip-hint{grid-row:4!important;}
.wfs-flip-inline .wfs-flip-toolbar{
  gap:22px;
  margin:0;
}
.wfs-flip-inline .wfs-flip-other{
  background:transparent!important;
  border:0!important;
  padding:0;
  gap:22px;
  min-height:44px;
  font:500 12px/1 "Plus Jakarta Sans",sans-serif;
  letter-spacing:0.12em;
  text-transform:uppercase;
}
.wfs-flip-inline .wfs-flip-other a{
  opacity:1;
  padding:8px 0;
  letter-spacing:0.12em;
  font-size:12px;
  font-weight:500;
}
.wfs-flip-inline .wfs-flip-other a:hover{opacity:.7;}
.wfs-flip-inline .wfs-flip-other-sep{display:none;}
.wfs-flip-inline .wfs-flip-close{
  background:transparent!important;
  border:0!important;
  min-width:0!important;
  padding:8px 0!important;
  letter-spacing:0.12em;
  font-size:12px;
  font-weight:500;
}
.wfs-flip-inline .wfs-flip-close:hover{
  background:transparent!important;
  border:0!important;
  opacity:.7;
}
@media (max-width:768px){
  body.elementor-page-9 .elementor-9 > .e-con > .e-con-inner,
  body.elementor-page-11 .elementor-11 > .e-con > .e-con-inner,
  body.elementor-page-25 .elementor-25 > .e-con > .e-con-inner{
    padding-top:36px!important;
    padding-bottom:40px!important;
  }
  .wfs-flip-inline .wfs-flip-toolbar,
  .wfs-flip-inline .wfs-flip-other{gap:16px;}
  .elementor-page-9 h1.elementor-heading-title,
  .elementor-page-11 h1.elementor-heading-title,
  .elementor-page-25 h1.elementor-heading-title,
  .elementor-9 h1.elementor-heading-title,
  .elementor-11 h1.elementor-heading-title,
  .elementor-25 h1.elementor-heading-title{
    font-size:28px!important;
    letter-spacing:0.12em!important;
  }
}
/* type1026m — kicker, hairline, nav tracking, overlay chip */
/* wfs-schiff-chrome-end *//* End custom CSS */