.elementor-3373 .elementor-element.elementor-element-405c1d5{--display:flex;}:root{--page-title-display:none;}/* Start custom CSS *//* === Google Fonts (auto-detected) === */
@import url('https://fonts.googleapis.com/css2?family=Heebo:wght@300;400;500;600;700;800;900&family=Almoni+DL:wght@300;400;500;600;700;800;900&display=swap');

/* ════════════════════════════════════════════════════════
   Rova V2 CSS — Normalized version
   Heading styles consolidated to single base rules per tag,
   with section-specific color overrides only where needed.
   ════════════════════════════════════════════════════════ */

@font-face{
  font-family:"Almoni DL";
  src:url("fonts/almoni-dl-aaa-black.otf") format("opentype");
  font-weight:900; font-display:swap;
}

:root {
  --ink-900:#0E0E10; --ink-800:#161618; --ink-700:#1F1F22;
  --cream-50:#F5EFE6; --cream-100:#EDE4D3; --cream-200:#E2D5BC;
  --gold-300:#D9B97A; --gold-400:#C8A05A; --gold-500:#B0863F;
  --paper:#F5EFE6; --paper-2:#EBE3D2;
  --on-paper-1:#1A1A1C;
  --on-paper-2:rgba(26,26,28,0.72);
  --on-paper-3:rgba(26,26,28,0.5);
  --on-paper-rule:rgba(26,26,28,0.16);
  --fg-1:#F5EFE6;
  --fg-2:rgba(245,239,230,0.72);
  --fg-3:rgba(245,239,230,0.48);
  --fg-rule:rgba(245,239,230,0.18);
  --serif:"Almoni DL","Heebo","Arial Hebrew",sans-serif;
  --display:"Almoni DL","Heebo","Arial Hebrew",sans-serif;
  --text:"Heebo","Arial Hebrew",sans-serif;
  --max-w:1240px;
  --ease:cubic-bezier(0.16,1,0.3,1);
}

*, body *::before, body *::after {box-sizing:border-box !important}

html {direction:rtl !important; scroll-behavior:smooth !important}

body {
  margin:0 !important; background:var(--paper) !important; color:var(--on-paper-1) !important;
  font-family:var(--text) !important; font-size:18px !important; line-height:1.7 !important;
  -webkit-font-smoothing:antialiased !important; overflow-x:hidden !important;
  padding-bottom:72px !important;
}

body a {color:inherit !important; text-decoration:none !important}

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

body em {font-style:normal !important; color:var(--gold-500) !important; font-weight:900 !important}

body .wrap {max-width:var(--max-w) !important; margin:0 auto !important; padding:0 32px !important}

/* ══════════════════════════════════════════════════
   HEADINGS — base rules per tag
   Override per-section only for color / max-width.
   ══════════════════════════════════════════════════ */

body h1 {
  font-family:var(--serif) !important; font-weight:900 !important;
  font-size:clamp(48px,7vw,108px) !important; line-height:1.0 !important;
  letter-spacing:-0.015em !important;
  margin:0 0 28px !important; color:var(--on-paper-1) !important;
}

body h2 {
  font-family:var(--display) !important; font-weight:900 !important;
  font-size:clamp(32px,3.4vw,48px) !important; line-height:1 !important;
  letter-spacing:-0.015em !important;
  margin:64px 0 8px !important; color:var(--on-paper-1) !important;
}

body h3 {
  font-family:var(--display) !important; font-weight:900 !important;
  font-size:24px !important; line-height:1.1 !important;
  margin:36px 0 12px !important; color:var(--on-paper-1) !important;
}

body h4 {
  font-family:var(--display) !important; font-weight:900 !important;
  font-size:22px !important; line-height:1.1 !important;
  letter-spacing:-0.005em !important;
  margin:8px 0 10px !important; color:var(--on-paper-1) !important;
}

/* H2 size overrides for prominent sections (band, final CTA) */

body .band h2 {font-size:clamp(36px,4.4vw,64px) !important; margin:0 0 48px !important; text-align:center !important}

body .final h2 {font-size:clamp(48px,5.8vw,84px) !important; line-height:0.95 !important; margin:18px 0 22px !important}

/* H3 size override for inline-form headlines */

body .inline-form h3 {font-size:32px !important; line-height:1 !important; margin:0 0 14px !important; letter-spacing:-0.01em !important}

/* H4 size override for ad block (article aside) */

body .article__aside .ad h4 {font-size:30px !important; line-height:1 !important; margin:0 0 14px !important; letter-spacing:-0.01em !important}

/* Color overrides for headings on dark backgrounds */

body .band h2, body .final h2, body .inline-form h3, body footer h2 {color:var(--cream-50) !important}

/* Hero-specific: max-width and gold accents */

body .hero h1 {max-width:1100px !important}

body .hero h1 em, body .hero h1 .quote {color:var(--gold-500) !important; font-weight:900 !important; font-style:normal !important}

body .final h2 em {color:var(--gold-400) !important; font-style:normal !important}

/* H1 kicker / number-prefix label */

body .hero__kicker, body .h2-num {
  font-family:var(--text) !important; font-weight:600 !important;
  font-size:13px !important; letter-spacing:0.18em !important;
  color:var(--gold-500) !important; text-transform:uppercase !important;
  margin-bottom:18px !important; display:block !important;
}

body .h2-num {font-size:12px !important; letter-spacing:0.16em !important; margin-bottom:10px !important}

/* ══════════════════════════════════════════════════
   EYEBROW & LABELS
   ══════════════════════════════════════════════════ */

body .eyebrow {
  display:inline-flex !important; align-items:center !important; gap:10px !important;
  font-family:var(--text) !important;
  font-size:12px !important; font-weight:600 !important; letter-spacing:0.16em !important;
  color:var(--gold-500) !important; text-transform:uppercase !important;
}

body .eyebrow::before {content:"" !important; width:24px !important; height:1px !important; background:var(--gold-500) !important}

body .eyebrow.center {justify-content:center !important}

body .eyebrow.light {color:var(--gold-400) !important}

body .eyebrow.light::before {background:var(--gold-400) !important}

/* ══════════════════════════════════════════════════
   BUTTONS
   ══════════════════════════════════════════════════ */

body .btn {
  display:inline-flex !important; align-items:center !important; justify-content:center !important; gap:10px !important;
  height:54px !important; padding:0 32px !important;
  font-family:var(--text) !important; font-size:15px !important; font-weight:600 !important; letter-spacing:0.02em !important;
  border:1px solid var(--on-paper-1) !important; background:transparent !important; color:var(--on-paper-1) !important;
  cursor:pointer !important; transition:background .25s var(--ease), color .25s var(--ease), transform .12s var(--ease) !important;
  border-radius:0 !important;
}

body .btn:hover {background:var(--on-paper-1) !important; color:var(--paper) !important}

body .btn:active {transform:translateY(1px) !important}

body .btn--solid {background:var(--on-paper-1) !important; color:var(--paper) !important; border-color:var(--on-paper-1) !important}

body .btn--solid:hover {background:#000 !important}

body .btn--gold {background:var(--gold-400) !important; color:var(--ink-900) !important; border-color:var(--gold-400) !important}

body .btn--gold:hover {background:var(--gold-300) !important; color:var(--ink-900) !important}

body .btn--lg {height:62px !important; padding:0 40px !important; font-size:16px !important}

/* ══════════════════════════════════════════════════
   HEADER
   ══════════════════════════════════════════════════ */

body header.site {
  position:fixed !important; top:0 !important; right:0 !important; left:0 !important; z-index:50 !important;
  display:flex !important; align-items:center !important; justify-content:space-between !important;
  padding:14px 40px !important; height:72px !important;
  background:rgba(245,239,230,0.85) !important;
  backdrop-filter:blur(14px) !important; -webkit-backdrop-filter:blur(14px) !important;
  border-bottom:1px solid var(--on-paper-rule) !important;
  transition:background .25s var(--ease) !important;
}

body header.site.scrolled {background:rgba(245,239,230,0.97) !important}

body header.site .logo-h {
  font-family:var(--display) !important; font-weight:900 !important; font-size:22px !important;
  color:var(--on-paper-1) !important; letter-spacing:-0.005em !important;
}

body header.site nav {display:flex !important; gap:28px !important}

body header.site nav a {font-size:14px !important; color:var(--on-paper-2) !important; transition:color .15s ease !important}

body header.site nav a:hover {color:var(--gold-500) !important}

body header.site .right {display:flex !important; gap:12px !important; align-items:center !important}

body .pill {
  display:inline-flex !important; align-items:center !important; gap:8px !important;
  border:1px solid var(--on-paper-1) !important; border-radius:999px !important;
  height:38px !important; padding:0 16px !important; font-size:13px !important; direction:ltr !important;
  letter-spacing:0.04em !important; transition:background .25s var(--ease), color .25s var(--ease) !important;
  color:var(--on-paper-1) !important;
}

body .pill:hover {background:var(--on-paper-1) !important; color:var(--paper) !important}

body .pill:hover svg {color:var(--paper) !important}

/* ══════════════════════════════════════════════════
   HERO
   ══════════════════════════════════════════════════ */

body .hero {position:relative !important; padding:140px 0 80px !important; overflow:hidden !important}

body .hero__top {
  display:flex !important; justify-content:space-between !important; align-items:flex-end !important;
  border-bottom:2px solid var(--on-paper-1) !important;
  padding-bottom:14px !important; margin-bottom:42px !important;
  font-family:var(--text) !important;
  font-size:13px !important; font-weight:500 !important; letter-spacing:0.06em !important;
  text-transform:uppercase !important; color:var(--on-paper-2) !important;
}

body .hero__top .meta {display:flex !important; gap:24px !important}

body .hero__deck {
  font-family:var(--text) !important; font-weight:400 !important;
  font-size:clamp(20px,2.1vw,28px) !important; line-height:1.55 !important;
  color:var(--on-paper-2) !important; max-width:780px !important; margin:0 0 36px !important;
}

body .hero__byline {
  display:flex !important; align-items:center !important; gap:18px !important;
  border-top:1px solid var(--on-paper-rule) !important;
  border-bottom:1px solid var(--on-paper-rule) !important;
  padding:14px 0 !important;
  font-family:var(--text) !important;
  font-size:13px !important; font-weight:600 !important; letter-spacing:0.04em !important;
  color:var(--on-paper-2) !important;
}

body .hero__byline .sep {width:4px !important; height:4px !important; background:var(--gold-500) !important; border-radius:50% !important}

body .hero__photo {
  margin:48px 0 0 !important; aspect-ratio:21/9 !important; overflow:hidden !important;
  position:relative !important; border:1px solid var(--on-paper-rule) !important;
}

body .hero__photo img {width:100% !important; height:100% !important; object-fit:cover !important; filter:saturate(0.92) !important}

body .hero__photo figcaption {
  position:absolute !important; bottom:14px !important; right:18px !important;
  font-family:var(--text) !important; font-size:12px !important;
  background:rgba(14,14,16,0.7) !important; color:var(--cream-50) !important;
  padding:6px 14px !important; letter-spacing:0.02em !important;
}

/* ══════════════════════════════════════════════════
   ARTICLE
   ══════════════════════════════════════════════════ */

body .article {padding:80px 0 !important}

body .article__shell {
  display:grid !important; grid-template-columns:1fr 4fr 2fr !important;
  /*                                rail body aside  ← all fluid, scales with viewport */
  gap:48px !important; max-width:var(--max-w) !important; margin:0 auto !important; padding:0 32px !important;
}

body .article__rail {
  position:sticky !important; top:96px !important; align-self:start !important;
  font-family:var(--text) !important;
  font-size:12px !important; font-weight:600 !important; letter-spacing:0.16em !important;
  text-transform:uppercase !important; color:var(--on-paper-3) !important;
}

body .article__rail .rail-title {color:var(--gold-500) !important; margin-bottom:14px !important}

body .article__rail ol {list-style:none !important; padding:0 !important; margin:0 !important; counter-reset:r !important}

body .article__rail li {counter-increment:r !important; padding:8px 0 !important; border-top:1px solid var(--on-paper-rule) !important}

body .article__rail li::before {content:counter(r,decimal-leading-zero) "  " !important; color:var(--gold-500) !important; font-weight:700 !important}

body .article__rail a {color:var(--on-paper-2) !important}

body .article__rail a:hover {color:var(--gold-500) !important}

body .article__body {width:100% !important}

body .article__body p {
  font-family:var(--text) !important; font-weight:400 !important;
  font-size:19px !important; line-height:1.8 !important;
  color:var(--on-paper-1) !important; margin:0 0 24px !important;
}

body .article__body p.lede::first-letter {
  font-family:var(--display) !important; font-weight:900 !important;
  font-size:84px !important; line-height:0.8 !important;
  float:right !important; margin-left:14px !important; margin-top:6px !important;
  color:var(--gold-500) !important;
}

body .article__body strong {color:var(--on-paper-1) !important; font-weight:700 !important}

body .article__body blockquote {
  margin:36px 0 !important; padding:24px 28px !important;
  border-right:3px solid var(--gold-500) !important;
  background:var(--paper-2) !important;
  font-family:var(--display) !important; font-weight:900 !important;
  font-size:24px !important; line-height:1.35 !important; color:var(--on-paper-1) !important;
  letter-spacing:-0.005em !important;
}

body .article__body blockquote cite {
  display:block !important; margin-top:14px !important;
  font-family:var(--text) !important; font-style:normal !important; font-weight:600 !important;
  font-size:13px !important; letter-spacing:0.06em !important; text-transform:uppercase !important;
  color:var(--on-paper-2) !important;
}

body .article__body ul {padding:0 22px 0 0 !important; margin:0 0 28px !important}

body .article__body ul li {
  font-family:var(--text) !important; font-weight:400 !important;
  font-size:18px !important; line-height:1.7 !important;
  margin-bottom:10px !important; padding-right:8px !important;
}

body .article__body ul li::marker {color:var(--gold-500) !important}

/* Pull quote */

body .pull {
  margin:48px -8px !important; padding:28px 0 !important;
  font-family:var(--display) !important; font-weight:900 !important;
  font-size:clamp(28px,3.4vw,44px) !important; line-height:1.15 !important;
  color:var(--on-paper-1) !important;
  border-top:1px solid var(--on-paper-1) !important;
  border-bottom:1px solid var(--on-paper-1) !important;
}

body .pull .q {color:var(--gold-500) !important}

/* Sidebar inline figures */

body .sidefig {
  margin:42px 0 !important; border:1px solid var(--on-paper-rule) !important;
  background:var(--paper-2) !important; padding:28px !important;
}

body .sidefig .stat {
  font-family:var(--display) !important; font-weight:900 !important;
  font-size:64px !important; line-height:0.95 !important; color:var(--gold-500) !important;
  letter-spacing:-0.02em !important; margin:6px 0 10px !important;
}

body .sidefig p {font-family:var(--text) !important; font-size:15px !important; line-height:1.55 !important; color:var(--on-paper-2) !important; margin:0 !important}

/* Steps timeline */

body .steps {
  display:grid !important; grid-template-columns:1fr 1fr 1fr !important; gap:0 !important;
  margin:36px 0 48px !important;
  border:1px solid var(--on-paper-1) !important;
}

body .steps .step {padding:28px 22px !important; border-left:1px solid var(--on-paper-rule) !important}

body .steps .step:last-child {border-left:0 !important}

body .steps .step .n {
  font-family:var(--text) !important; font-weight:600 !important;
  color:var(--gold-500) !important; font-size:11px !important; letter-spacing:0.14em !important;
  text-transform:uppercase !important; margin-bottom:10px !important;
}

body .steps .step .what {
  font-family:var(--display) !important; font-weight:900 !important;
  font-size:22px !important; line-height:1.1 !important; margin:0 0 12px !important;
  letter-spacing:-0.005em !important;
}

body .steps .step .pay {
  font-family:var(--display) !important; font-weight:900 !important;
  font-size:32px !important; line-height:1 !important; color:var(--on-paper-1) !important;
  letter-spacing:-0.02em !important; margin-bottom:8px !important;
}

body .steps .step.win .pay {color:var(--gold-500) !important}

body .steps .step .when {
  font-family:var(--text) !important; font-size:12px !important; letter-spacing:0.08em !important;
  text-transform:uppercase !important; color:var(--on-paper-3) !important;
}

/* ══════════════════════════════════════════════════
   INLINE FORM (mid article — dark)
   ══════════════════════════════════════════════════ */

body .inline-form {
  margin:64px -16px !important; padding:40px 36px !important;
  background:var(--ink-900) !important; color:var(--cream-50) !important;
  border:1px solid var(--ink-900) !important;
}

body .inline-form .label {
  font-family:var(--text) !important;
  font-size:12px !important; font-weight:600 !important; letter-spacing:0.16em !important;
  color:var(--gold-400) !important; text-transform:uppercase !important; margin-bottom:10px !important;
}

body .inline-form p {
  font-family:var(--text) !important; font-size:15px !important; line-height:1.6 !important;
  color:var(--fg-2) !important; margin:0 0 20px !important; max-width:520px !important;
}

/* Form layout: block, not grid — the Elementor form widget that renders here
   has its own internal column layout via per-field width settings. Forcing
   grid here would just put the entire form widget into a single grid cell. */

body .inline-form form {display:block !important}

body .inline-form input {
  height:48px !important; padding:0 14px !important;
  background:transparent !important; color:var(--cream-50) !important;
  border:1px solid var(--fg-rule) !important;
  font-family:inherit !important; font-size:14px !important; outline:none !important;
  border-radius:0 !important;
}

body .inline-form input:focus {border-color:var(--gold-400) !important}

body .inline-form .btn {height:48px !important}

body .inline-form .legal-mini {font-size:11px !important; color:var(--fg-3) !important; margin-top:10px !important}

/* ══════════════════════════════════════════════════
   ARTICLE ASIDE (sticky right rail with form)
   ══════════════════════════════════════════════════ */

body .article__aside {position:sticky !important; top:96px !important; align-self:start !important; width:100% !important}

body .article__aside .ad {
  border:1px solid var(--on-paper-1) !important; padding:28px !important;
  background:var(--paper-2) !important;
}

body .article__aside .ad .label {
  font-family:var(--text) !important;
  font-size:11px !important; font-weight:600 !important; letter-spacing:0.18em !important;
  color:var(--gold-500) !important; text-transform:uppercase !important; margin-bottom:14px !important;
}

body .article__aside .ad .price {
  font-family:var(--display) !important; font-weight:900 !important;
  font-size:48px !important; line-height:1 !important; color:var(--gold-500) !important;
  letter-spacing:-0.02em !important; margin:14px 0 4px !important;
}

body .article__aside .ad .price-sub {font-size:12px !important; color:var(--on-paper-2) !important; margin-bottom:18px !important}

body .article__aside form {display:flex !important; flex-direction:column !important; gap:10px !important}

body .article__aside input {
  height:42px !important; padding:0 12px !important; background:#fff !important;
  border:1px solid var(--on-paper-1) !important; color:var(--on-paper-1) !important;
  font-family:inherit !important; font-size:14px !important; outline:none !important;
  border-radius:0 !important;
}

body .article__aside input:focus {border-color:var(--gold-500) !important}

body .article__aside .btn {height:46px !important; width:100% !important}

body .article__aside .ad .legal-mini {font-size:10.5px !important; color:var(--on-paper-3) !important; margin-top:8px !important; line-height:1.5 !important}

/* ══════════════════════════════════════════════════
   STATS BAND (dark interlude)
   ══════════════════════════════════════════════════ */

body .band {background:var(--ink-900) !important; color:var(--cream-50) !important; padding:80px 0 !important}

body .band-grid {
  display:grid !important; grid-template-columns:repeat(4,1fr) !important; gap:0 !important;
  border-top:1px solid var(--fg-rule) !important; border-bottom:1px solid var(--fg-rule) !important;
}

body .band-grid .cell {
  padding:36px 24px !important; text-align:center !important;
  border-left:1px solid var(--fg-rule) !important;
}

body .band-grid .cell:last-child {border-left:0 !important}

body .band-grid .num {
  font-family:var(--display) !important; font-weight:900 !important;
  font-size:clamp(40px,5vw,68px) !important; line-height:1 !important; color:var(--gold-400) !important;
  letter-spacing:-0.02em !important; margin-bottom:8px !important;
}

body .band-grid .lbl {
  font-family:var(--text) !important;
  font-size:12px !important; letter-spacing:0.1em !important; text-transform:uppercase !important; color:var(--fg-2) !important;
}

/* ══════════════════════════════════════════════════
   FINAL CTA / form (dark)
   ══════════════════════════════════════════════════ */

body .final {background:var(--ink-900) !important; color:var(--cream-50) !important; padding:120px 0 !important}

body .final-shell {
  display:grid !important; grid-template-columns:1.05fr 1fr !important; gap:80px !important; align-items:start !important;
  max-width:1100px !important; margin:0 auto !important;
}

body .final .lede {font-size:18px !important; line-height:1.7 !important; color:var(--fg-2) !important; margin-bottom:28px !important; max-width:480px !important}

body .final .promise {
  border:1px solid var(--gold-400) !important; padding:18px 22px !important;
  font-size:14px !important; line-height:1.6 !important; color:var(--cream-50) !important;
  background:rgba(200,160,90,0.05) !important; max-width:480px !important;
}

body .final .promise b {color:var(--gold-400) !important}

body .final form {display:flex !important; flex-direction:column !important; gap:20px !important}

body .final form .field {display:flex !important; flex-direction:column !important; gap:6px !important}

body .final form label {font-size:13px !important; color:var(--fg-2) !important}

body .final form input {
  background:transparent !important; border:0 !important;
  border-bottom:1px solid var(--fg-rule) !important;
  color:var(--cream-50) !important; padding:12px 0 !important;
  font-family:inherit !important; font-size:18px !important; outline:none !important;
  border-radius:0 !important;
}

body .final form input:focus {border-bottom-color:var(--gold-400) !important}

body .final form .check {
  display:flex !important; gap:10px !important; align-items:flex-start !important;
  font-size:12px !important; color:var(--fg-2) !important; line-height:1.55 !important; margin-top:6px !important;
}

body .final form .check input {width:16px !important; height:16px !important; accent-color:var(--gold-400) !important; margin-top:2px !important}

body .final form .btn {align-self:flex-start !important; margin-top:6px !important}

/* ══════════════════════════════════════════════════
   FOOTER
   ══════════════════════════════════════════════════ */

body footer.site {
  padding:60px 0 30px !important; background:var(--ink-900) !important; color:var(--fg-1) !important;
  border-top:1px solid var(--fg-rule) !important;
}

body footer.site .row {display:flex !important; justify-content:space-between !important; align-items:flex-start !important; gap:32px !important; flex-wrap:wrap !important}

body footer.site .links {display:flex !important; gap:24px !important}

body footer.site .links a {font-size:13px !important; color:var(--fg-2) !important}

body footer.site .links a:hover {color:var(--gold-400) !important}

body footer.site .stamp {
  display:inline-block !important; padding:8px 14px !important; border:1px solid var(--gold-400) !important;
  color:var(--gold-400) !important; font-size:12px !important; letter-spacing:0.04em !important; margin-top:18px !important;
}

body footer.site .legal {
  font-size:11px !important; line-height:1.7 !important; color:var(--fg-3) !important;
  max-width:880px !important; margin-top:24px !important; text-align:justify !important;
}

/* ══════════════════════════════════════════════════
   STICKY CTA
   ══════════════════════════════════════════════════ */

body .sticky {
  position:fixed !important; bottom:0 !important; left:0 !important; right:0 !important; z-index:60 !important;
  display:flex !important; align-items:center !important; justify-content:center !important; gap:14px !important;
  padding:14px 20px !important;
  background:var(--ink-900) !important; color:var(--cream-50) !important;
  border-top:1px solid var(--gold-400) !important;
  font-family:var(--text) !important;
  font-size:14px !important; letter-spacing:0.02em !important;
}

body .sticky b {color:var(--gold-400) !important; font-weight:700 !important}

body .sticky .ldot {
  display:inline-block !important; width:8px !important; height:8px !important; border-radius:50% !important;
  background:var(--gold-400) !important; margin-left:6px !important;
  box-shadow:0 0 0 0 rgba(200,160,90,0.7) !important; animation:pulse 2s infinite !important;
}

@keyframes pulse{
  0%{box-shadow:0 0 0 0 rgba(200,160,90,0.55)}
  70%{box-shadow:0 0 0 12px rgba(200,160,90,0)}
  100%{box-shadow:0 0 0 0 rgba(200,160,90,0)}
}

body .sticky .btn {height:38px !important; padding:0 18px !important; font-size:13px !important; border-color:var(--gold-400) !important; color:var(--cream-50) !important}

body .sticky .btn:hover {background:var(--gold-400) !important; color:var(--ink-900) !important}

/* ══════════════════════════════════════════════════
   REVEAL & TOAST
   ══════════════════════════════════════════════════ */

body .reveal {opacity:0 !important; transform:translateY(24px) !important; transition:opacity .8s var(--ease), transform .8s var(--ease) !important}

body .reveal.on {opacity:1 !important; transform:none !important}

body .toast {
  position:fixed !important; bottom:80px !important; left:50% !important; transform:translateX(-50%) translateY(20px) !important;
  background:var(--ink-700) !important; color:var(--cream-50) !important;
  border:1px solid var(--gold-400) !important; padding:14px 22px !important;
  font-size:14px !important; opacity:0 !important; pointer-events:none !important; z-index:100 !important;
  transition:opacity .25s ease, transform .25s ease !important;
}

body .toast.on {opacity:1 !important; transform:translateX(-50%) translateY(0) !important}

/* ══════════════════════════════════════════════════
   RESPONSIVE
   ══════════════════════════════════════════════════ */

@media (max-width:1100px) {
body .article__shell {grid-template-columns:1fr !important; gap:32px !important}

body .article__rail {position:static !important}

body .article__aside {position:static !important; max-width:100% !important; margin:0 auto !important}

body .final-shell {grid-template-columns:1fr !important; gap:36px !important}

body .band-grid {grid-template-columns:repeat(2,1fr) !important}

body .band-grid .cell:nth-child(2) {border-left:0 !important}

body .band-grid .cell:nth-child(-n+2) {border-bottom:1px solid var(--fg-rule) !important}
}

@media (max-width:760px) {
body .inline-form form {grid-template-columns:1fr !important}
}

@media (max-width:640px) {
body header.site {padding:12px 18px !important}

body header.site nav {display:none !important}

body .wrap {padding:0 20px !important}

body .article__shell {padding:0 20px !important}

body .hero {padding:120px 0 60px !important}

body .article__body p {font-size:18px !important}

body .article__body ul li {font-size:17px !important}

body .steps {grid-template-columns:1fr !important}

body .steps .step {border-left:0 !important; border-bottom:1px solid var(--on-paper-rule) !important}

body .steps .step:last-child {border-bottom:0 !important}

body .band-grid {grid-template-columns:1fr !important}

body .band-grid .cell {border-left:0 !important; border-bottom:1px solid var(--fg-rule) !important}

body .band-grid .cell:last-child {border-bottom:0 !important}

body .pull {margin:32px 0 !important; font-size:24px !important}

body .inline-form {margin:40px 0 !important; padding:28px 22px !important}
}

/* ════════════════════════════════════════════════════════ */
/*  EDITS — appended by Rova Editor on 2026-04-29T12:55:06  */
/* ════════════════════════════════════════════════════════ */

/* === Edits (auto-generated) === */

body .rova-edit-3.rova-edit-3 {
  padding-top: 100px !important;
}

body .rova-edit-13.rova-edit-13 {
  padding-top: 0px !important;
}

body .rova-edit-40.rova-edit-40 {
  width: 200px !important;
}

body .rova-edit-52.rova-edit-52 {
  width: 200px !important;
}

@media (max-width: 640px) {
body .rova-edit-2.rova-edit-2 {
  display: none !important;
}

body .rova-edit-3.rova-edit-3 {
  padding-top: 43px !important;
}

body .rova-edit-12.rova-edit-12 {
  display: none !important;
}

body .rova-edit-13.rova-edit-13 {
  padding-top: 20px !important;
}

body .rova-edit-14.rova-edit-14 {
  display: none !important;
}

body .rova-edit-15.rova-edit-15 {
  display: none !important;
}

body .rova-edit-18.rova-edit-18 {
  display: none !important;
}

body .rova-edit-19.rova-edit-19 {
  padding-top: 20px !important;
}

body .rova-edit-37.rova-edit-37 {
  font-size: 41px !important;
}

body .rova-edit-40.rova-edit-40 {
  width: 173px !important;
}

body .rova-edit-42.rova-edit-42 {
  position: relative !important;
}

body .rova-edit-52.rova-edit-52 {
  width: 180px !important;
}
}



/* === Force font everywhere (Site Defaults toggle) === */
:root {
  --serif: 'Almoni Neue Regular', sans-serif !important;
  --text: 'Almoni Neue Regular', sans-serif !important;
  --display: 'Almoni Neue Regular', sans-serif !important;
  --font: 'Almoni Neue Regular', sans-serif !important;
  --body-font: 'Almoni Neue Regular', sans-serif !important;
  --heading-font: 'Almoni Neue Regular', sans-serif !important;
  --font-body: 'Almoni Neue Regular', sans-serif !important;
  --font-heading: 'Almoni Neue Regular', sans-serif !important;
  --font-display: 'Almoni Neue Regular', sans-serif !important;
  --font-family: 'Almoni Neue Regular', sans-serif !important;
  --e-global-typography-primary-font-family: 'Almoni Neue Regular' !important;
  --e-global-typography-secondary-font-family: 'Almoni Neue Regular' !important;
  --e-global-typography-text-font-family: 'Almoni Neue Regular' !important;
  --e-global-typography-accent-font-family: 'Almoni Neue Regular' !important;
}
body,
body p, body li, body span, body div, body a, body em, body strong, body small, body cite, body blockquote,
body h1, body h2, body h3, body h4, body h5, body h6,
body button, body input, body textarea, body select, body label,
body figcaption, body th, body td, body dt, body dd, body code, body pre {
  font-family: 'Almoni Neue Regular', sans-serif !important;
}


/* === Form helpers (always on) === */
body .consent-label, body .legal-mini, body .form-legal {
  display: inline !important;
  font-size: 12px !important;
  line-height: 1.5 !important;
  font-weight: 400 !important;
  color: inherit !important;
}
body .check, body .checkbox-row, body label.check {
  display: flex !important;
  align-items: flex-start !important;
  gap: 10px !important;
  font-size: 12px !important;
  line-height: 1.5 !important;
}
body .check input[type="checkbox"], body .checkbox-row input[type="checkbox"] {
  width: 16px !important;
  height: 16px !important;
  flex-shrink: 0 !important;
  margin-top: 2px !important;
}
/* When a <form> is replaced by an Elementor [elementor-template] shortcode,
   the rendered form widget becomes a single child element. If the original
   form had grid-template-columns set (e.g. 1fr 1fr 1fr auto for a 4-cell row),
   the Elementor widget would only fill one cell. Force any form to a single-
   column block so the Elementor widget gets the full width.
   Selectors here are intentionally specific (multiple classes / attribute
   body.elementor-page-3373s) to beat .inline-form form, .article__aside form, etc. */
body form, body form[class], body[class] form,
body .inline-form form, body .article__aside form, body .final form, body .hero form,
body [class] form[class] {
  display: block !important;
  grid-template-columns: none !important;
  flex-direction: column !important;
  width: 100% !important;
  max-width: 100% !important;
}
body form > *, body form > .elementor-form-fields-wrapper {
  width: 100% !important;
}

/* === Force tablet responsive (≤1100px) — collapse grids === */
@media (max-width: 1100px) {
  body .final-shell, body .article__shell {
    grid-template-columns: 1fr !important;
    gap: 36px !important;
  }
  body .article__rail, body .article__aside {
    position: static !important;
    max-width: 100% !important;
  }
}

/* === Elementor form widget — make it cooperate === */
/* Container that holds the form widget should be full-width */
body .elementor-widget-form,
body .elementor-element[data-widget_type^="form"] {
  width: 100% !important;
  max-width: 100% !important;
}
/* Form fields wrapper — let Elementor's column settings work, but cap to viewport */
body .elementor-form,
body .elementor-form .elementor-form-fields-wrapper {
  max-width: 100% !important;
}
/* Form description / acceptance / paragraph tighten — Elementor wraps each text
   line in a <p> with default block margins which causes line-per-line spacing */
body .elementor-form p,
body .elementor-field-type-acceptance p,
body .elementor-field-type-html p,
body .e-form__buttons p {
  margin: 0 0 6px !important;
  line-height: 1.5 !important;
}

/* === Force mobile responsive (Site Defaults toggle) === */
@media (max-width: 640px) {
  body [class*="__shell"],
  body [class*="__grid"],
  body [class*="__row"],
  body .grid, body .row, body .cols, body .columns,
  body .article, body .article__shell, body .article__body, body .article__rail,
  body .wrap, body .container, body .section, body section,
  body .hero, body .hero__shell, body .hero__top,
  body .final, body .final-shell {
    grid-template-columns: 1fr !important;
    flex-direction: column !important;
    max-width: 100% !important;
    width: 100% !important;
    box-sizing: border-box !important;
  }
  /* Elementor form on mobile — collapse internal column splits to 1 */
  body .elementor-form .elementor-field-group {
    width: 100% !important;
    flex: 0 0 100% !important;
    max-width: 100% !important;
  }
  body .wrap, body .article__shell, body .container {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }
  body img, body video, body picture {
    max-width: 100% !important;
    height: auto !important;
  }
  /* Form fields full-width on mobile (excluding checkbox/radio/buttons) */
  body input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]):not([type="reset"]):not([type="image"]):not([type="hidden"]),
  body textarea, body select {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }
  /* Consent labels and small inline form text — keep small + readable */
  body .consent-label, body .legal-mini, body .form-legal,
  body label .consent-label, body .check label, body .check span {
    display: inline !important;
    font-size: 12px !important;
    line-height: 1.5 !important;
    font-weight: 400 !important;
    text-align: right !important;
  }
}/* End custom CSS */