PageSourceSearch

https://letstalkboaz.lovable.app/assets/index-1SBTWDmY.js

js letstalkboaz.lovable.app collected 2026-10-03 03:35:36 UTC 42,563 bytes, 189 lines download raw bytes

1import{r as a,j as e,L as q}from"./main-DTxwXTdY.js";import{s as K}from"./client-CV-cUzp-.js";const _="/assets/lets-talk-boaz-cover-BB7TeNwz.png",O="/assets/making-of-ruth-journal-C0o3zO0-.png",$="/assets/lets-talk-ruth-cover-DxR1Rgh-.jpg",U=`
2:root {
3  --gold: #C9A84C;
4  --gold-light: #E5C97A;
5  --gold-dark: #8B6914;
6  --black: #0A0A0A;
7  --dark: #111111;
8  --cream: #F5EDD8;
9  --cream-dark: #E8D9BA;
10  --warm-white: #FAF6EE;
11  --text-light: #D4C49A;
12  --pink: #C96B7A;
13  --pink-light: #E8929E;
14}
15.tsw * { margin: 0; padding: 0; box-sizing: border-box; }
16html { scroll-behavior: smooth; }
17.tsw {
18  background: var(--black);
19  color: var(--cream);
20  font-family: 'Lato', sans-serif;
21  overflow-x: hidden;
22  min-height: 100vh;
23}
24.tsw nav {
25  position: fixed; top: 0; width: 100%; z-index: 100;
26  background: rgba(10,10,10,0.92);
27  backdrop-filter: blur(12px);
28  border-bottom: 1px solid rgba(201,168,76,0.2);
29  padding: 18px 40px;
30  display: flex; align-items: center; justify-content: space-between;
31}
32.tsw .nav-logo { font-family: 'Cinzel', serif; font-size: 13px; letter-spacing: 4px; color: var(--gold); text-transform: uppercase; }
33.tsw .nav-logo span { display: block; font-size: 9px; letter-spacing: 6px; color: var(--text-light); margin-top: 2px; }
34.tsw .nav-links { display: flex; gap: 36px; list-style: none; }
35.tsw .nav-links a { font-family: 'Cinzel', serif; font-size: 10px; letter-spacing: 3px; color: var(--text-light); text-decoration: none; text-transform: uppercase; transition: color 0.3s; }
36.tsw .nav-links a:hover { color: var(--gold); }
37.tsw .nav-cta { font-family: 'Cinzel', serif; font-size: 10px; letter-spacing: 2px; border: 1px solid var(--gold); color: var(--gold); padding: 10px 22px; text-decoration: none; text-transform: uppercase; transition: all 0.3s; }
38.tsw .nav-cta:hover { background: var(--gold); color: var(--black); }
39.tsw .hero { min-height: 100vh; background: linear-gradient(160deg, #0A0A0A 0%, #1a1208 40%, #0A0A0A 100%); display: flex; align-items: center; justify-content: center; position: relative; overflow: hidden; padding: 120px 40px 80px; text-align: center; }
40.tsw .hero::before { content: ''; position: absolute; inset: 0; background: radial-gradient(ellipse 80% 60% at 50% 40%, rgba(201,168,76,0.07) 0%, transparent 70%); pointer-events: none; }
41.tsw .hero-crown { font-size: 36px; color: var(--gold); margin-bottom: 20px; display: block; animation: float 4s ease-in-out infinite; }
42@keyframes float { 0%,100%{transform:translateY(0)} 50%{transform:translateY(-8px)} }
43.tsw .hero-label { font-family: 'Cinzel', serif; font-size: 11px; letter-spacing: 8px; color: var(--gold); text-transform: uppercase; margin-bottom: 24px; display: block; }
44.tsw .hero-title { font-family: 'Cinzel', serif; font-size: clamp(52px, 9vw, 110px); font-weight: 900; line-height: 0.92; color: var(--cream); text-transform: uppercase; margin-bottom: 10px; }
45.tsw .hero-title-italic { font-family: 'Cormorant Garamond', serif; font-size: clamp(60px, 10vw, 120px); font-style: italic; font-weight: 300; color: var(--gold); line-height: 0.9; display: block; margin-bottom: 30px; }
46.tsw .hero-divider { width: 120px; height: 1px; background: linear-gradient(90deg, transparent, var(--gold), transparent); margin: 0 auto 30px; }
47.tsw .hero-sub { font-family: 'Cormorant Garamond', serif; font-size: clamp(18px, 2.5vw, 24px); font-style: italic; color: var(--text-light); max-width: 560px; margin: 0 auto 50px; line-height: 1.6; }
48.tsw .hero-pills { display: flex; gap: 16px; justify-content: center; flex-wrap: wrap; margin-bottom: 50px; }
49.tsw .pill { font-family: 'Cinzel', serif; font-size: 10px; letter-spacing: 3px; border: 1px solid rgba(201,168,76,0.4); color: var(--text-light); padding: 10px 20px; text-transform: uppercase; }
50.tsw .hero-btns { display: flex; gap: 20px; justify-content: center; flex-wrap: wrap; }
51.tsw .btn-primary { font-family: 'Cinzel', serif; font-size: 11px; letter-spacing: 3px; background: linear-gradient(135deg, var(--gold-dark), var(--gold), var(--gold-light)); color: var(--black); padding: 18px 40px; text-decoration: none; text-transform: uppercase; font-weight: 700; transition: all 0.3s; display: inline-block; box-shadow: 0 4px 30px rgba(201,168,76,0.3); border: none; cursor: pointer; }
52.tsw .btn-primary:hover { transform: translateY(-2px); box-shadow: 0 8px 40px rgba(201,168,76,0.5); }
53.tsw .btn-outline { font-family: 'Cinzel', serif; font-size: 11px; letter-spacing: 3px; border: 1px solid var(--gold); color: var(--gold); padding: 18px 40px; text-decoration: none; text-transform: uppercase; transition: all 0.3s; display: inline-block; background: transparent; cursor: pointer; }
54.tsw .btn-outline:hover { background: rgba(201,168,76,0.08); }
55.tsw .pillars { background: var(--dark); padding: 100px 40px; position: relative; }
56.tsw .pillars::before { content: ''; position: absolute; top: 0; left: 0; right: 0; height: 1px; background: linear-gradient(90deg, transparent, var(--gold), transparent); }
57.tsw .section-label { font-family: 'Cinzel', serif; font-size: 10px; letter-spacing: 6px; color: var(--gold); text-transform: uppercase; text-align: center; margin-bottom: 16px; display: block; }
58.tsw .section-title { font-family: 'Cinzel', serif; font-size: clamp(30px, 5vw, 50px); font-weight: 900; text-align: center; color: var(--cream); text-transform: uppercase; margin-bottom: 14px; }
59.tsw .section-sub { font-family: 'Cormorant Garamond', serif; font-style: italic; font-size: 20px; color: var(--text-light); text-align: center; max-width: 500px; margin: 0 auto 70px; }
60.tsw .pillars-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 2px; max-width: 1100px; margin: 0 auto; }
61.tsw .pillar-card { background: rgba(201,168,76,0.04); border: 1px solid rgba(201,168,76,0.12); padding: 50px 30px; text-align: center; transition: all 0.4s; position: relative; overflow: hidden; }
62.tsw .pillar-card::after { content: ''; position: absolute; bottom: 0; left: 0; right: 0; height: 2px; background: linear-gradient(90deg, transparent, var(--gold), transparent); transform: scaleX(0); transition: transform 0.4s; }
63.tsw .pillar-card:hover { background: rgba(201,168,76,0.08); }
64.tsw .pillar-card:hover::after { transform: scaleX(1); }
65.tsw .pillar-icon { font-size: 28px; margin-bottom: 20px; display: block; }
66.tsw .pillar-title { font-family: 'Cinzel', serif; font-size: 14px; letter-spacing: 3px; color: var(--gold); text-transform: uppercase; margin-bottom: 14px; }
67.tsw .pillar-text { font-family: 'Cormorant Garamond', serif; font-size: 17px; color: var(--text-light); line-height: 1.7; font-style: italic; }
68.tsw .book-section { padding: 120px 40px; background: linear-gradient(180deg, #0A0A0A 0%, #140f02 50%, #0A0A0A 100%); position: relative; overflow: hidden; }
69.tsw .book-section::before { content: ''; position: absolute; top: -200px; right: -200px; width: 600px; height: 600px; background: radial-gradient(circle, rgba(201,168,76,0.06) 0%, transparent 70%); pointer-events: none; }
70.tsw .book-inner { max-width: 1100px; margin: 0 auto; display: grid; grid-template-columns: 1fr 1fr; gap: 80px; align-items: center; }
71.tsw .book-cover-wrap { position: relative; }
72.tsw .book-cover-shadow { position: absolute; inset: -20px; background: radial-gradient(ellipse at center, rgba(201,168,76,0.15) 0%, transparent 70%); border-radius: 8px; }
73.tsw .book-cover { width: 100%; max-width: 420px; box-shadow: -20px 20px 60px rgba(0,0,0,0.8), 0 0 80px rgba(201,168,76,0.15); position: relative; z-index: 1; border: 1px solid rgba(201,168,76,0.2); display: block; margin: 0 auto; background: linear-gradient(135deg, #1a1208, #0d0d0d); aspect-ratio: 2/3; overflow: hidden; }
74.tsw .book-cover-placeholder { width: 100%; height: 100%; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 40px 30px; background: linear-gradient(160deg, #1a1005 0%, #0d0b07 100%); text-align: center; position: relative; }
75.tsw .book-cover-placeholder::before { content: ''; position: absolute; inset: 12px; border: 1px solid rgba(201,168,76,0.3); pointer-events: none; }
76.tsw .book-cover-top { font-family: 'Cinzel', serif; font-size: 10px; letter-spacing: 4px; color: var(--gold); text-transform: uppercase; margin-bottom: 30px; }
77.tsw .book-cover-main { font-family: 'Cinzel', serif; font-size: 32px; font-weight: 900; color: var(--cream); text-transform: uppercase; line-height: 1; margin-bottom: 8px; }
78.tsw .book-cover-boaz { font-family: 'Cormorant Garamond', serif; font-style: italic; font-size: 72px; font-weight: 300; color: var(--gold); line-height: 0.85; margin-bottom: 20px; }
79.tsw .book-cover-crown { font-size: 24px; color: var(--gold); margin-bottom: 20px; }
80.tsw .book-cover-sub { font-family: 'Cinzel', serif; font-size: 9px; letter-spacing: 3px; color: var(--text-light); text-transform: uppercase; line-height: 2; margin-bottom: 30px; }
81.tsw .book-cover-badge { border: 1px solid rgba(201,168,76,0.5); padding: 14px 16px; font-family: 'Cinzel', serif; font-size: 8px; letter-spacing: 2px; color: var(--gold); text-transform: uppercase; line-height: 2; margin-bottom: 30px; }
82.tsw .book-cover-footer { font-family: 'Cinzel', serif; font-size: 9px; letter-spacing: 4px; color: var(--gold); text-transform: uppercase; border-top: 1px solid rgba(201,168,76,0.3); padding-top: 16px; width: 100%; }
83.tsw .book-label { font-family: 'Cinzel', serif; font-size: 10px; letter-spacing: 5px; color: var(--pink); text-transform: uppercase; margin-bottom: 16px; display: block; }
84.tsw .book-title { font-family: 'Cinzel', serif; font-size: clamp(32px, 4vw, 52px); font-weight: 900; color: var(--cream); text-transform: uppercase; line-height: 1; margin-bottom: 8px; }
85.tsw .book-title-italic { font-family: 'Cormorant Garamond', serif; font-style: italic; font-size: clamp(38px, 5vw, 62px); font-weight: 300; color: var(--gold); display: block; margin-bottom: 30px; }
86.tsw .book-divider { width: 60px; height: 1px; background: linear-gradient(90deg, var(--gold), transparent); margin-bottom: 30px; }
87.tsw .book-desc { font-family: 'Cormorant Garamond', serif; font-size: 19px; color: var(--text-light); line-height: 1.8; margin-bottom: 30px; font-style: italic; }
88.tsw .book-features { list-style: none; margin-bottom: 40px; }
89.tsw .book-features li { font-family: 'Lato', sans-serif; font-size: 13px; letter-spacing: 1px; color: var(--cream); padding: 12px 0; border-bottom: 1px solid rgba(201,168,76,0.1); display: flex; align-items: center; gap: 14px; }
90.tsw .book-features li::before { content: '\\2655'; color: var(--gold); font-size: 11px; flex-shrink: 0; }
91.tsw .song-section { padding: 100px 40px; background: var(--dark); position: relative; }
92.tsw .song-section::before { content: ''; position: absolute; inset: 0; background: radial-gradient(ellipse 60% 60% at 30% 50%, rgba(201,168,76,0.05) 0%, transparent 70%); }
93.tsw .song-inner { max-width: 1100px; margin: 0 auto; display: grid; grid-template-columns: 1fr 1fr; gap: 80px; align-items: center; position: relative; }
94.tsw .song-eyebrow { display: flex; align-items: center; gap: 12px; margin-bottom: 20px; }
95.tsw .song-eyebrow-line { flex: 1; height: 1px; background: rgba(201,168,76,0.3); }
96.tsw .song-eyebrow span { font-family: 'Cinzel', serif; font-size: 10px; letter-spacing: 5px; color: var(--gold); text-transform: uppercase; }
97.tsw .song-title { font-family: 'Cinzel', serif; font-size: clamp(28px, 4vw, 46px); font-weight: 900; color: var(--cream); text-transform: uppercase; line-height: 1; margin-bottom: 6px; }
98.tsw .song-title-boaz { font-family: 'Cormorant Garamond', serif; font-style: italic; font-size: clamp(48px, 7vw, 88px); font-weight: 300; color: var(--gold); display: block; line-height: 0.85; margin-bottom: 10px; }
99.tsw .song-crown { font-size: 22px; color: var(--gold); margin-bottom: 24px; display: block; }
100.tsw .song-tagline { font-family: 'Cinzel', serif; font-size: 11px; letter-spacing: 4px; color: var(--text-light); text-transform: uppercase; margin-bottom: 30px; }
101.tsw .song-points { list-style: none; margin-bottom: 40px; }
102.tsw .song-points li { padding: 14px 0; border-bottom: 1px solid rgba(201,168,76,0.1); display: flex; gap: 16px; }
103.tsw .song-point-label { font-family: 'Cinzel', serif; font-size: 10px; letter-spacing: 2px; color: var(--gold); text-transform: uppercase; flex-shrink: 0; padding-top: 2px; }
104.tsw .song-point-text { font-family: 'Cormorant Garamond', serif; font-style: italic; font-size: 18px; color: var(--text-light); }
105.tsw .song-question { background: rgba(201,168,76,0.06); border: 1px solid rgba(201,168,76,0.2); border-left: 3px solid var(--gold); padding: 24px 28px; margin-bottom: 36px; }
106.tsw .song-question p { font-family: 'Cormorant Garamond', serif; font-style: italic; font-size: 16px; color: var(--text-light); margin-bottom: 8px; }
107.tsw .song-question strong { font-family: 'Cinzel', serif; font-size: 13px; letter-spacing: 2px; color: var(--cream); text-transform: uppercase; }
108.tsw .player-mock { background: rgba(10,10,10,0.8); border: 1px solid rgba(201,168,76,0.2); padding: 28px 32px; display: flex; align-items: center; gap: 20px; }
109.tsw .play-btn { width: 56px; height: 56px; border-radius: 50%; background: linear-gradient(135deg, var(--gold-dark), var(--gold)); display: flex; align-items: center; justify-content: center; font-size: 20px; cursor: pointer; flex-shrink: 0; border: none; transition: transform 0.2s; box-shadow: 0 0 30px rgba(201,168,76,0.4); color: var(--black); }
110.tsw .play-btn:hover { transform: scale(1.08); }
111.tsw .player-title { font-family: 'Cinzel', serif; font-size: 13px; letter-spacing: 2px; color: var(--cream); text-transform: uppercase; margin-bottom: 4px; }
112.tsw .player-sub { font-family: 'Lato', sans-serif; font-size: 11px; color: var(--text-light); letter-spacing: 1px; }
113.tsw .song-card { background: linear-gradient(160deg, #1a1005 0%, #0d0b07 100%); border: 1px solid rgba(201,168,76,0.25); padding: 50px 40px; text-align: center; position: relative; overflow: hidden; box-shadow: 0 20px 80px rgba(0,0,0,0.6), 0 0 60px rgba(201,168,76,0.08); }
114.tsw .song-card::before { content: ''; position: absolute; inset: 8px; border: 1px solid rgba(201,168,76,0.1); pointer-events: none; }
115.tsw .song-card-eyebrow { font-family: 'Cinzel', serif; font-size: 9px; letter-spacing: 5px; color: var(--gold); text-transform: uppercase; margin-bottom: 20px; }
116.tsw .song-card-title-big { font-family: 'Cinzel', serif; font-size: 28px; font-weight: 900; color: var(--cream); text-transform: uppercase; line-height: 1; margin-bottom: 4px; }
117.tsw .song-card-boaz-big { font-family: 'Cormorant Garamond', serif; font-style: italic; font-size: 80px; font-weight: 300; color: var(--gold); line-height: 0.8; margin-bottom: 10px; }
118.tsw .song-card-crown-big { font-size: 26px; color: var(--gold); margin-bottom: 20px; display: block; }
119.tsw .song-card-divider { width: 80px; height: 1px; background: linear-gradient(90deg, transparent, var(--gold), transparent); margin: 0 auto 20px; }
120.tsw .song-card-desc { font-family: 'Cormorant Garamond', serif; font-style: italic; font-size: 15px; color: var(--text-light); line-height: 1.7; margin-bottom: 24px; }
121.tsw .song-card-badge { background: rgba(201,168,76,0.1); border: 1px solid rgba(201,168,76,0.3); padding: 10px 20px; display: inline-block; font-family: 'Cinzel', serif; font-size: 8px; letter-spacing: 3px; color: var(--gold); text-transform: uppercase; }
122.tsw .tags-row { display: flex; flex-wrap: wrap; gap: 8px; justify-content: center; margin-top: 30px; }
123.tsw .tag { font-family: 'Lato', sans-serif; font-size: 10px; letter-spacing: 1px; color: var(--text-light); background: rgba(201,168,76,0.06); border: 1px solid rgba(201,168,76,0.15); padding: 5px 12px; }
124.tsw .seasons-section { padding: 100px 40px; background: linear-gradient(180deg, #0A0A0A, #150e03, #0A0A0A); position: relative; }
125.tsw .seasons-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 3px; max-width: 900px; margin: 0 auto; }
126.tsw .season-card { padding: 60px 50px; position: relative; overflow: hidden; text-align: center; cursor: pointer; transition: all 0.4s; }
127.tsw .season-card.ruth { background: rgba(201,168,76,0.05); border: 1px solid rgba(201,168,76,0.15); }
128.tsw .season-card.restoration { background: rgba(201,100,122,0.05); border: 1px solid rgba(201,100,122,0.15); }
129.tsw .season-card:hover { transform: translateY(-4px); }
130.tsw .season-card.ruth:hover { background: rgba(201,168,76,0.1); }
131.tsw .season-card.restoration:hover { background: rgba(201,100,122,0.1); }
132.tsw .season-icon { font-size: 32px; margin-bottom: 20px; display: block; }
133.tsw .season-name { font-family: 'Cormorant Garamond', serif; font-style: italic; font-size: 42px; font-weight: 300; margin-bottom: 14px; }
134.tsw .season-card.ruth .season-name { color: var(--gold); }
135.tsw .season-card.restoration .season-name { color: var(--pink); }
136.tsw .season-label { font-family: 'Cinzel', serif; font-size: 9px; letter-spacing: 4px; text-transform: uppercase; margin-bottom: 20px; }
137.tsw .season-card.ruth .season-label { color: var(--text-light); }
138.tsw .season-card.restoration .season-label { color: #D4A0AA; }
139.tsw .season-desc { font-family: 'Cormorant Garamond', serif; font-size: 17px; line-height: 1.7; font-style: italic; }
140.tsw .season-card.ruth .season-desc { color: var(--text-light); }
141.tsw .season-card.restoration .season-desc { color: #C4909A; }
142.tsw .seasons-cta { text-align: center; margin-top: 60px; }
143.tsw .seasons-question { font-family: 'Cormorant Garamond', serif; font-style: italic; font-size: 22px; color: var(--text-light); margin-bottom: 30px; }
144.tsw .community-section { padding: 100px 40px; background: var(--dark); position: relative; }
145.tsw .community-section::before { content: ''; position: absolute; inset: 0; background: radial-gradient(ellipse 80% 50% at 50% 100%, rgba(201,168,76,0.04) 0%, transparent 70%); }
146.tsw .community-inner { max-width: 700px; margin: 0 auto; text-align: center; position: relative; }
147.tsw .community-title { font-family: 'Cinzel', serif; font-size: clamp(28px, 4vw, 50px); font-weight: 900; color: var(--cream); text-transform: uppercase; margin-bottom: 8px; }
148.tsw .community-italic { font-family: 'Cormorant Garamond', serif; font-style: italic; font-size: clamp(34px, 5vw, 60px); font-weight: 300; color: var(--gold); display: block; margin-bottom: 30px; }
149.tsw .community-desc { font-family: 'Cormorant Garamond', serif; font-size: 19px; color: var(--text-light); line-height: 1.8; font-style: italic; margin-bottom: 50px; }
150.tsw .email-form { display: flex; gap: 0; max-width: 480px; margin: 0 auto 20px; }
151.tsw .email-input { flex: 1; background: rgba(255,255,255,0.04); border: 1px solid rgba(201,168,76,0.3); border-right: none; padding: 16px 20px; color: var(--cream); font-family: 'Lato', sans-serif; font-size: 13px; outline: none; }
152.tsw .email-input::placeholder { color: rgba(212,196,154,0.4); }
153.tsw .email-input:focus { border-color: var(--gold); }
154.tsw .email-submit { background: linear-gradient(135deg, var(--gold-dark), var(--gold)); border: none; padding: 16px 28px; font-family: 'Cinzel', serif; font-size: 10px; letter-spacing: 2px; color: var(--black); text-transform: uppercase; cursor: pointer; font-weight: 700; transition: all 0.3s; }
155.tsw .email-submit:hover { filter: brightness(1.1); }
156.tsw .email-note { font-family: 'Lato', sans-serif; font-size: 11px; color: var(--text-light); letter-spacing: 1px; opacity: 0.6; }
157.tsw .scripture-band { background: linear-gradient(135deg, var(--gold-dark) 0%, var(--gold) 50%, var(--gold-dark) 100%); padding: 40px; text-align: center; overflow: hidden; position: relative; }
158.tsw .scripture-text { font-family: 'Cormorant Garamond', serif; font-style: italic; font-size: clamp(18px, 3vw, 28px); color: var(--black); font-weight: 600; max-width: 800px; margin: 0 auto 8px; line-height: 1.5; }
159.tsw .scripture-ref { font-family: 'Cinzel', serif; font-size: 11px; letter-spacing: 4px; color: rgba(0,0,0,0.6); text-transform: uppercase; }
160.tsw footer { background: var(--black); border-top: 1px solid rgba(201,168,76,0.15); padding: 60px 40px 40px; }
161.tsw .footer-inner { max-width: 1100px; margin: 0 auto; display: grid; grid-template-columns: 2fr 1fr 1fr; gap: 60px; margin-bottom: 50px; }
162.tsw .footer-brand-name { font-family: 'Cinzel', serif; font-size: 16px; letter-spacing: 4px; color: var(--gold); text-transform: uppercase; margin-bottom: 6px; }
163.tsw .footer-brand-sub { font-family: 'Cinzel', serif; font-size: 9px; letter-spacing: 5px; color: var(--text-light); text-transform: uppercase; margin-bottom: 20px; }
164.tsw .footer-about { font-family: 'Cormorant Garamond', serif; font-style: italic; font-size: 16px; color: var(--text-light); line-height: 1.7; }
165.tsw .footer-col-title { font-family: 'Cinzel', serif; font-size: 10px; letter-spacing: 4px; color: var(--gold); text-transform: uppercase; margin-bottom: 20px; }
166.tsw .footer-links { list-style: none; }
167.tsw .footer-links li { margin-bottom: 12px; }
168.tsw .footer-links a { font-family: 'Lato', sans-serif; font-size: 12px; letter-spacing: 1px; color: var(--text-light); text-decoration: none; transition: color 0.3s; }
169.tsw .footer-links a:hover { color: var(--gold); }
170.tsw .footer-bottom { max-width: 1100px; margin: 0 auto; display: flex; align-items: center; justify-content: space-between; border-top: 1px solid rgba(201,168,76,0.1); padding-top: 30px; flex-wrap: wrap; gap: 16px; }
171.tsw .footer-copy { font-family: 'Lato', sans-serif; font-size: 11px; color: var(--text-light); opacity: 0.5; letter-spacing: 1px; }
172.tsw .footer-tags { font-family: 'Lato', sans-serif; font-size: 10px; color: var(--text-light); opacity: 0.4; letter-spacing: 1px; }
173@media (max-width: 768px) {
174  .tsw nav { padding: 16px 20px; }
175  .tsw .nav-links { display: none; }
176  .tsw .book-inner, .tsw .song-inner, .tsw .seasons-grid, .tsw .footer-inner { grid-template-columns: 1fr; }
177  .tsw .book-inner { gap: 50px; }
178  .tsw .song-inner { gap: 50px; }
179  .tsw .seasons-grid { gap: 2px; }
180  .tsw .season-card { padding: 40px 30px; }
181  .tsw .footer-inner { gap: 40px; }
182  .tsw .email-form { flex-direction: column; }
183  .tsw .email-input { border-right: 1px solid rgba(201,168,76,0.3); border-bottom: none; }
184  .tsw .hero-btns { flex-direction: column; align-items: center; }
185  .tsw .pillars-grid { grid-template-columns: 1fr; }
186}
187.tsw .fade-up { opacity: 0; transform: translateY(30px); transition: opacity 0.7s ease, transform 0.7s ease; }
188.tsw .fade-up.visible { opacity: 1; transform: translateY(0); }
189`;
189function V(){const d=a.useRef(null),[j,p]=a.useState(!1),[k,n]=a.useState("Press play & let's have this conversation."),[N,u]=a.useState(0),[z,C]=a.useState("0:00"),[S,A]=a.useState("--:--"),x=a.useRef(null),[T,g]=a.useState(!1),[R,i]=a.useState("Press play & let's have this conversation."),[L,b]=a.useState(0),[P,B]=a.useState("0:00"),[G,Y]=a.useState("--:--"),[w,m]=a.useState(""),[v,E]=a.useState(""),[l,y]=a.useState(!1),[h,r]=a.useState(null),f=a.useRef(0),F=async t=>{if(t&&t.preventDefault(),l||(r(null),v.trim()!==""))return;if(f.current>0&&Date.now()-f.current<1500){r({type:"error",text:"Please wait a moment and try again."});return}const o=w.trim().toLowerCase();if(!/^[^@\s]+@[^@\s]+\.[^@\s]+$/.test(o)||o.length>254){r({type:"error",text:"Please enter a valid email address."});return}y(!0);try{const{error:s}=await K.from("email_signups").insert({email:o,user_agent:typeof navigator<"u"?navigator.userAgent.slice(0,500):null,source:"community"});if(s){s.code==="23505"?(r({type:"success",text:"You're already on the list — thank you!"}),m("")):r({type:"error",text:"Something went wrong. Please try again."});return}m(""),r({type:"success",text:"Welcome, sister! You're on the list. Watch your inbox."})}catch{r({type:"error",text:"Something went wrong. Please try again."})}finally{y(!1)}};a.useEffect(()=>{typeof window<"u"&&window.location.hash&&history.replaceState(null,"",window.location.pathname+window.location.search),window.scrollTo(0,0),f.current=Date.now();const t=new IntersectionObserver(o=>{o.forEach((s,J)=>{s.isIntersecting&&(setTimeout(()=>s.target.classList.add("visible"),J*120),t.unobserve(s.target))})},{threshold:.1});return document.querySelectorAll(".tsw .fade-up").forEach(o=>t.observe(o)),()=>t.disconnect()},[]);const c=t=>{const o=Math.floor(t/60),s=Math.floor(t%60);return`${o}:${s<10?"0":""}${s}`},I=()=>{const t=d.current;t&&(t.paused?t.play().then(()=>{p(!0),n("Now playing...")}).catch(()=>n("Audio unavailable. Add lets-talk-boaz.mp3 to /public.")):(t.pause(),p(!1),n("Paused. Resume when ready.")))},W=t=>{const o=d.current;if(!o||!o.duration)return;const s=t.currentTarget.getBoundingClientRect();o.currentTime=(t.clientX-s.left)/s.width*o.duration},M=()=>{const t=x.current;t&&(t.paused?t.play().then(()=>{g(!0),i("Now playing...")}).catch(()=>i("Audio unavailable. Add lets-talk-ruth.mp3 to /public.")):(t.pause(),g(!1),i("Paused. Resume when ready.")))},D=t=>{const o=x.current;if(!o||!o.duration)return;const s=t.currentTarget.getBoundingClientRect();o.currentTime=(t.clientX-s.left)/s.width*o.duration};return e.jsxs("div",{className:"tsw",children:[e.jsx("style",{dangerouslySetInnerHTML:{__html:U}}),e.jsxs("nav",{children:[e.jsxs("div",{className:"nav-logo",children:["The Supernatural Woman",e.jsx("span",{children:"Faith · Identity · Purpose · Destiny"})]}),e.jsxs("ul",{className:"nav-links",children:[e.jsx("li",{children:e.jsx("a",{href:"#about",children:"About"})}),e.jsx("li",{children:e.jsx("a",{href:"#journal-ruth",children:"The Books"})}),e.jsx("li",{children:e.jsx("a",{href:"#song-ruth",children:"The Songs"})}),e.jsx("li",{children:e.jsx("a",{href:"#seasons",children:"Your Season"})}),e.jsx("li",{children:e.jsx("a",{href:"#community",children:"Community"})})]}),e.jsx("a",{href:"#community",className:"nav-cta",children:"Join Us"})]}),e.jsx("section",{className:"hero",children:e.jsxs("div",{children:[e.jsx("span",{className:"hero-crown",children:"♛"}),e.jsx("span",{className:"hero-label",children:"The Supernatural Woman"}),e.jsx("h1",{className:"hero-title",children:"You Are Ruth."}),e.jsx("span",{className:"hero-title-italic",children:"Walk Like She Did."}),e.jsx("div",{className:"hero-divider"}),e.jsx("p",{className:"hero-sub",children:"A community for women who walk by faith, know their worth, and are preparing for every promise God has spoken over their lives."}),e.jsxs("div",{className:"hero-pills",children:[e.jsx("span",{className:"pill",children:"Faith"}),e.jsx("span",{className:"pill",children:"Identity"}),e.jsx("span",{className:"pill",children:"Purpose"}),e.jsx("span",{className:"pill",children:"Destiny"})]}),e.jsxs("div",{className:"hero-btns",children:[e.jsx("a",{href:"#journal-ruth",className:"btn-primary",children:"Discover the Books"}),e.jsx("a",{href:"#song-ruth",className:"btn-outline",children:"Listen to the Songs"})]})]})}),e.jsxs("section",{className:"pillars",id:"about",children:[e.jsx("span",{className:"section-label",children:"What We Stand For"}),e.jsx("h2",{className:"section-title",children:"The Kingdom Standard"}),e.jsx("p",{className:"section-sub",children:"Not just a mindset. A movement."}),e.jsx("div",{className:"pillars-grid",children:[{icon:"🛡",title:"Covering & Protection",text:"You deserve a love that covers spiritually and guards your heart with purpose."},{icon:"♛",title:"A Mindset",text:"Boaz is not just a man — he's a standard, a spirit, a Kingdom alignment."},{icon:"🌾",title:"Kingdom Purpose",text:"Every season of your life is writing a love story authored by God."},{icon:"📖",title:"Know Your Worth",text:"Proverbs 31. Ruth 3:11. You were created with intention and crowned with dignity."}].map(t=>e.jsxs("div",{className:"pillar-card fade-up",children:[e.jsx("span",{className:"pillar-icon",children:t.icon}),e.jsx("div",{className:"pillar-title",children:t.title}),e.jsx("p",{className:"pillar-text",children:t.text})]},t.title))})]}),e.jsx("section",{className:"book-section",id:"journal-ruth",children:e.jsxs("div",{className:"book-inner",children:[e.jsxs("div",{className:"book-cover-wrap fade-up",children:[e.jsx("div",{className:"book-cover-shadow"}),e.jsx("div",{className:"book-cover",children:e.jsx("img",{src:O,alt:"The Making of Ruth Journal — cover",style:{width:"100%",height:"100%",objectFit:"cover",display:"block"}})})]}),e.jsxs("div",{className:"book-info fade-up",children:[e.jsx("span",{className:"book-label",children:"Coming Soon · The Journal"}),e.jsx("h2",{className:"book-title",children:"The Making of"}),e.jsx("span",{className:"book-title-italic",children:"Ruth"}),e.jsx("div",{className:"book-divider"}),e.jsx("p",{className:"book-desc",children:"Your Journey of Becoming. More than pages — a sacred space for your story, your growth, and your transformation. Inspired by the life of Ruth, it will guide you to walk in faith, embrace obedience, and position yourself for the favor and purpose God has for you."}),e.jsxs("ul",{className:"book-features",children:[e.jsx("li",{children:"Faith to keep you grounded"}),e.jsx("li",{children:"Obedience to keep you aligned"}),e.jsx("li",{children:"Positioning to prepare you"}),e.jsx("li",{children:"Favor to open new doors"}),e.jsx("li",{children:"Purpose to fulfill your calling"})]}),e.jsx("a",{href:"#community",className:"btn-primary",children:"Be Notified at Launch"})]})]})}),e.jsx("section",{className:"book-section",id:"book",children:e.jsxs("div",{className:"book-inner",children:[e.jsxs("div",{className:"book-cover-wrap fade-up",children:[e.jsx("div",{className:"book-cover-shadow"}),e.jsx("div",{className:"book-cover",children:e.jsx("img",{src:_,alt:"Let's Talk Boaz — book cover",style:{width:"100%",height:"100%",objectFit:"cover",display:"block"}})})]}),e.jsxs("div",{className:"book-info fade-up",children:[e.jsx("span",{className:"book-label",children:"Coming Soon · The Book"}),e.jsx("h2",{className:"book-title",children:"Let's Talk"}),e.jsx("span",{className:"book-title-italic",children:"Boaz"}),e.jsx("div",{className:"book-divider"}),e.jsx("p",{className:"book-desc",children:"A faith-filled conversation about the man God designed, the woman God crowned, and the divine love story that changes everything when you walk in your purpose."}),e.jsxs("ul",{className:"book-features",children:[e.jsx("li",{children:"Not just a man — a mindset rooted in Kingdom values"}),e.jsx("li",{children:"Not just romance — covering, protection, and spiritual alignment"}),e.jsx("li",{children:"Not just a fairytale — a purpose-driven covenant love"}),e.jsx("li",{children:"Inspired by the biblical story of Ruth & Boaz"}),e.jsx("li",{children:"Faith. Identity. Purpose. Destiny."})]}),e.jsx("a",{href:"#community",className:"btn-primary",children:"Be Notified at Launch"})]})]})}),e.jsx("section",{className:"song-section",id:"song-ruth",children:e.jsxs("div",{className:"song-inner",children:[e.jsxs("div",{className:"song-info fade-up",children:[e.jsxs("div",{className:"song-eyebrow",children:[e.jsx("div",{className:"song-eyebrow-line"}),e.jsx("span",{children:"New Release · The Song"}),e.jsx("div",{className:"song-eyebrow-line"})]}),e.jsx("h2",{className:"song-title",children:"Let's Talk"}),e.jsx("span",{className:"song-title-boaz",children:"Ruth!"}),e.jsx("span",{className:"song-crown",children:"♛"}),e.jsx("p",{className:"song-tagline",children:"A Song of Faith. A Story of Obedience. A Life of Purpose."}),e.jsx("p",{className:"song-tagline",style:{fontStyle:"italic",marginTop:12},children:"A song for every woman who chose faith over fear — the story before the Boaz, the strength behind the promise."}),e.jsxs("ul",{className:"song-points",children:[e.jsxs("li",{children:[e.jsx("span",{className:"song-point-label",children:"She Kept Her Faith"}),e.jsx("span",{className:"song-point-text",children:"Even when it was hard."})]}),e.jsxs("li",{children:[e.jsx("span",{className:"song-point-label",children:"She Stayed in Position"}),e.jsx("span",{className:"song-point-text",children:"God saw every step."})]}),e.jsxs("li",{children:[e.jsx("span",{className:"song-point-label",children:"She Walked in Obedience"}),e.jsx("span",{className:"song-point-text",children:"It led her to her purpose."})]}),e.jsxs("li",{children:[e.jsx("span",{className:"song-point-label",children:"She Became"}),e.jsx("span",{className:"song-point-text",children:"What God ordained."})]})]}),e.jsxs("div",{className:"song-question",children:[e.jsx("p",{children:"After you listen, I want to hear from you:"}),e.jsx("strong",{children:"What's Your Ruth Season?"})]}),e.jsxs("div",{className:"player-mock",children:[e.jsx("button",{className:"play-btn",onClick:M,"aria-label":"Play",children:T?"⏸":"▶"}),e.jsxs("div",{style:{flex:1},children:[e.jsx("div",{className:"player-title",children:`"Let's Talk Ruth"`}),e.jsx("div",{className:"player-sub",children:R}),e.jsx("div",{onClick:D,style:{marginTop:14,height:4,background:"rgba(201,168,76,0.2)",borderRadius:4,cursor:"pointer",position:"relative"},children:e.jsx("div",{style:{height:"100%",width:`${L}%`,background:"linear-gradient(90deg,#8B6914,#C9A84C)",borderRadius:4,transition:"width 0.5s linear",pointerEvents:"none"}})}),e.jsxs("div",{style:{display:"flex",justifyContent:"space-between",marginTop:6},children:[e.jsx("span",{style:{fontFamily:"Lato,sans-serif",fontSize:10,
189color:"rgba(212,196,154,0.6)"},children:P}),e.jsx("span",{style:{fontFamily:"Lato,sans-serif",fontSize:10,color:"rgba(212,196,154,0.6)"},children:G})]})]}),e.jsx("audio",{ref:x,src:"/lets-talk-ruth.mp3",preload:"metadata",onLoadedMetadata:t=>Y(c(t.currentTarget.duration)),onTimeUpdate:t=>{const o=t.currentTarget;o.duration&&(b(o.currentTime/o.duration*100),B(c(o.currentTime)))},onEnded:()=>{g(!1),i("Press play & let's have this conversation."),b(0)}})]})]}),e.jsx("div",{className:"song-visual fade-up",children:e.jsx("img",{src:$,alt:"Let's Talk Ruth — new release",style:{width:"100%",height:"auto",display:"block",border:"1px solid rgba(201,168,76,0.25)",boxShadow:"0 20px 80px rgba(0,0,0,0.6), 0 0 60px rgba(201,168,76,0.08)"}})})]})}),e.jsx("section",{className:"song-section",id:"song",children:e.jsxs("div",{className:"song-inner",children:[e.jsxs("div",{className:"song-info fade-up",children:[e.jsxs("div",{className:"song-eyebrow",children:[e.jsx("div",{className:"song-eyebrow-line"}),e.jsx("span",{children:"The Song"}),e.jsx("div",{className:"song-eyebrow-line"})]}),e.jsx("h2",{className:"song-title",children:"Let's Talk"}),e.jsx("span",{className:"song-title-boaz",children:"Boaz"}),e.jsx("span",{className:"song-crown",children:"♛"}),e.jsx("p",{className:"song-tagline",children:"A Song. A Message. A Conversation That Matters."}),e.jsx("p",{className:"song-tagline",style:{fontStyle:"italic",marginTop:12},children:"A faith-filled anthem for the woman who knows her worth and is preparing for every promise God has spoken over her life."}),e.jsxs("ul",{className:"song-points",children:[e.jsxs("li",{children:[e.jsx("span",{className:"song-point-label",children:"Not just a man..."}),e.jsx("span",{className:"song-point-text",children:"A Mindset"})]}),e.jsxs("li",{children:[e.jsx("span",{className:"song-point-label",children:"Not just romance..."}),e.jsx("span",{className:"song-point-text",children:"Covering & Protection"})]}),e.jsxs("li",{children:[e.jsx("span",{className:"song-point-label",children:"Not just a fairytale..."}),e.jsx("span",{className:"song-point-text",children:"Kingdom Purpose"})]})]}),e.jsxs("div",{className:"song-question",children:[e.jsx("p",{children:"Before you press play, ask yourself:"}),e.jsx("strong",{children:"Am I Preparing for What I've Been Praying For?"})]}),e.jsxs("div",{className:"player-mock",children:[e.jsx("button",{className:"play-btn",onClick:I,"aria-label":"Play",children:j?"⏸":"▶"}),e.jsxs("div",{style:{flex:1},children:[e.jsx("div",{className:"player-title",children:`"Let's Talk Boaz"`}),e.jsx("div",{className:"player-sub",children:k}),e.jsx("div",{onClick:W,style:{marginTop:14,height:4,background:"rgba(201,168,76,0.2)",borderRadius:4,cursor:"pointer",position:"relative"},children:e.jsx("div",{style:{height:"100%",width:`${N}%`,background:"linear-gradient(90deg,#8B6914,#C9A84C)",borderRadius:4,transition:"width 0.5s linear",pointerEvents:"none"}})}),e.jsxs("div",{style:{display:"flex",justifyContent:"space-between",marginTop:6},children:[e.jsx("span",{style:{fontFamily:"Lato,sans-serif",fontSize:10,color:"rgba(212,196,154,0.6)"},children:z}),e.jsx("span",{style:{fontFamily:"Lato,sans-serif",fontSize:10,color:"rgba(212,196,154,0.6)"},children:S})]})]}),e.jsx("audio",{ref:d,src:"/lets-talk-boaz.mp3",preload:"metadata",onLoadedMetadata:t=>A(c(t.currentTarget.duration)),onTimeUpdate:t=>{const o=t.currentTarget;o.duration&&(u(o.currentTime/o.duration*100),C(c(o.currentTime)))},onEnded:()=>{p(!1),n("Press play & let's have this conversation."),u(0)}})]})]}),e.jsx("div",{className:"song-visual fade-up",children:e.jsx("video",{src:"/lets-talk-boaz-portrait.mp4",autoPlay:!0,loop:!0,muted:!0,playsInline:!0,style:{width:"100%",height:"auto",display:"block",border:"1px solid rgba(201,168,76,0.25)",boxShadow:"0 20px 80px rgba(0,0,0,0.6), 0 0 60px rgba(201,168,76,0.08)"}})})]})}),e.jsxs("section",{className:"seasons-section",id:"seasons",children:[e.jsx("span",{className:"section-label",children:"Where Are You?"}),e.jsx("h2",{className:"section-title",children:"Which Season Are You In?"}),e.jsx("p",{className:"section-sub",children:"Both are holy. Both are purposeful. Both are preparing you."}),e.jsxs("div",{className:"seasons-grid",children:[e.jsxs("div",{className:"season-card ruth fade-up",children:[e.jsx("span",{className:"season-icon",children:"🌾"}),e.jsx("div",{className:"season-name",children:"Ruth Season"}),e.jsx("div",{className:"season-label",children:"Faithfully Gleaning"}),e.jsx("p",{className:"season-desc",children:"You're working. Trusting. Staying faithful in the field even when no one is watching. Your loyalty is your covering and your harvest is coming."})]}),e.jsxs("div",{className:"season-card restoration fade-up",children:[e.jsx("span",{className:"season-icon",children:"🌸"}),e.jsx("div",{className:"season-name",children:"Restoration Season"}),e.jsx("div",{className:"season-label",children:"Beautifully Healing"}),e.jsx("p",{className:"season-desc",children:"God is rebuilding what was broken. Your story isn't over — it's being rewritten. Restoration is not going backwards. It's starting from a place of wholeness."})]})]}),e.jsxs("div",{className:"seasons-cta",children:[e.jsx("p",{className:"seasons-question",children:`"If you're not sure yet, that's real too. Just say: I'm still learning." ♡`}),e.jsx("a",{href:"#community",className:"btn-primary",children:"Join the Conversation"})]})]}),e.jsxs("div",{className:"scripture-band",children:[e.jsx("p",{className:"scripture-text",children:'"She is clothed with strength and dignity; she can laugh at the days to come."'}),e.jsx("p",{className:"scripture-ref",children:"Proverbs 31:25"})]}),e.jsx("section",{className:"community-section",id:"community",children:e.jsxs("div",{className:"community-inner",children:[e.jsx("span",{className:"section-label",children:"Join the Movement"}),e.jsx("h2",{className:"community-title",children:"You Were Made"}),e.jsx("span",{className:"community-italic",children:"for More"}),e.jsx("p",{className:"community-desc",children:"Join a community of women who are walking in faith, discovering their identity, living in purpose, and stepping into their God-given destiny — together."}),e.jsxs("form",{className:"email-form",onSubmit:F,noValidate:!0,children:[e.jsx("input",{type:"email",required:!0,placeholder:"ENTER YOUR EMAIL",className:"email-input",value:w,onChange:t=>m(t.target.value),disabled:l,maxLength:254,autoComplete:"email"}),e.jsx("input",{name:"company",type:"text",tabIndex:-1,autoComplete:"off",value:v,onCh
189ange:t=>E(t.target.value),style:{position:"absolute",left:"-9999px",width:1,height:1,opacity:0},"aria-hidden":"true"}),e.jsx("button",{type:"submit",className:"email-submit",disabled:l,children:l?"Joining…":"Join Us"})]}),h?e.jsx("p",{className:"email-note",style:{color:h.type==="success"?"var(--gold-light)":"var(--pink-light)",opacity:1,fontSize:14,marginTop:16,fontFamily:"'Cormorant Garamond', serif",fontStyle:"italic"},role:"status","aria-live":"polite",children:h.text}):e.jsx("p",{className:"email-note",children:"Be the first to know when the book and song release."})]})}),e.jsxs("footer",{children:[e.jsxs("div",{className:"footer-inner",children:[e.jsxs("div",{children:[e.jsx("div",{className:"footer-brand-name",children:"The Supernatural Woman"}),e.jsx("div",{className:"footer-brand-sub",children:"Faith · Identity · Purpose · Destiny"}),e.jsx("p",{className:"footer-about",children:"A Kingdom movement for women who walk by faith, know their worth, and are prepared for every promise God has spoken over their lives."})]}),e.jsxs("div",{children:[e.jsx("div",{className:"footer-col-title",children:"Navigate"}),e.jsxs("ul",{className:"footer-links",children:[e.jsx("li",{children:e.jsx("a",{href:"#about",children:"About"})}),e.jsx("li",{children:e.jsx("a",{href:"#book",children:"The Book"})}),e.jsx("li",{children:e.jsx("a",{href:"#song",children:"The Song"})}),e.jsx("li",{children:e.jsx("a",{href:"#seasons",children:"Your Season"})}),e.jsx("li",{children:e.jsx("a",{href:"#community",children:"Community"})})]})]}),e.jsxs("div",{children:[e.jsx("div",{className:"footer-col-title",children:"Connect"}),e.jsxs("ul",{className:"footer-links",children:[e.jsx("li",{children:e.jsx("a",{href:"https://thesupernaturalwoman.com",target:"_blank",rel:"noopener noreferrer",children:"Website"})}),e.jsx("li",{children:e.jsx("a",{href:"https://www.facebook.com/TheSuperNaturalWoman",target:"_blank",rel:"noopener noreferrer",children:"Facebook"})}),e.jsx("li",{children:e.jsx("a",{href:"https://www.youtube.com/teshadcolston",target:"_blank",rel:"noopener noreferrer",children:"YouTube"})}),e.jsx("li",{children:e.jsx("a",{href:"https://p31unfiltered.com",target:"_blank",rel:"noopener noreferrer",children:"Podcast"})})]})]})]}),e.jsxs("div",{className:"footer-bottom",children:[e.jsx("span",{className:"footer-copy",children:"© 2025 The Supernatural Woman · All Rights Reserved"}),e.jsxs("span",{className:"footer-tags",children:["#TheSuperNaturalWoman · #LetsTalkBoaz · #KnowYourWorth",e.jsx(q,{to:"/admin",style:{marginLeft:16,color:"var(--text-light)",opacity:.5,textDecoration:"none",fontSize:11,letterSpacing:1},children:"Admin"})]})]})]})]})}export{V as component};

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.