<!--
:root {
  --fk-sage: #7a9e87;
  --fk-sage-dark: #4d7060;
  --fk-sage-light: #b4cebb;
  --fk-sage-pale: #eef4f0;
  --fk-cream: #faf8f4;
  --fk-ink: #1e2a22;
  --fk-ink-light: #4a5e52;
}
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;1,300;1,400&family=DM+Sans:wght@300;400;500&display=swap');

.fk-hero { display:grid; grid-template-columns:1fr 1fr; min-height:90vh; align-items:stretch; }
.fk-hero-left { background:var(--fk-cream); padding:80px 60px; display:flex; flex-direction:column; justify-content:center; }
.fk-hero-right { position:relative; background:var(--fk-sage-pale); }
.fk-hero-right img { width:100%; height:100%; object-fit:cover; object-position:center top; display:block; }
.fk-eyebrow { font-family:'DM Sans',sans-serif; font-size:11px; font-weight:500; letter-spacing:4px; text-transform:uppercase; color:var(--fk-sage); margin-bottom:20px; display:block; }
.fk-h1 { font-family:'Cormorant Garamond',serif; font-size:clamp(40px,4.5vw,66px); font-weight:300; line-height:1.1; color:var(--fk-ink); margin-bottom:24px; }
.fk-h1 em { font-style:italic; color:var(--fk-sage-dark); }
.fk-h2 { font-family:'Cormorant Garamond',serif; font-size:clamp(30px,3.5vw,50px); font-weight:300; line-height:1.2; color:var(--fk-ink); margin-bottom:20px; }
.fk-h2 em { font-style:italic; color:var(--fk-sage-dark); }
.fk-h2-white { color:white; }
.fk-sub { font-family:'DM Sans',sans-serif; font-size:17px; font-weight:300; color:var(--fk-ink-light); max-width:440px; margin-bottom:40px; line-height:1.8; }
.fk-btn { display:inline-block; background:var(--fk-sage-dark); color:white !important; padding:16px 36px; font-family:'DM Sans',sans-serif; font-size:12px; font-weight:500; letter-spacing:1.5px; text-transform:uppercase; text-decoration:none !important; border-radius:2px; }
.fk-btn:hover { background:var(--fk-ink); }
.fk-btn-white { background:white; color:var(--fk-sage-dark) !important; }
.fk-btn-white:hover { background:var(--fk-sage-pale); }
.fk-cred-stack { position:absolute; top:40px; right:32px; display:flex; flex-direction:column; gap:8px; align-items:flex-end; z-index:2; }
.fk-cred { background:rgba(255,255,255,0.92); border-left:3px solid var(--fk-sage); padding:8px 14px; font-family:'DM Sans',sans-serif; font-size:11px; color:var(--fk-ink-light); }
.fk-badge { position:absolute; bottom:40px; left:50%; transform:translateX(-50%); background:white; border:1px solid var(--fk-sage-light); padding:18px 28px; text-align:center; min-width:200px; z-index:2; }
.fk-badge-label { font-family:'DM Sans',sans-serif; font-size:10px; letter-spacing:3px; text-transform:uppercase; color:var(--fk-sage); font-weight:500; margin-bottom:4px; }
.fk-badge-date { font-family:'Cormorant Garamond',serif; font-size:20px; color:var(--fk-ink); }

.fk-dark { background:var(--fk-ink) !important; padding:80px 60px; }
.fk-dark .fk-h2 { color:white; }
.fk-dark p { color:rgba(255,255,255,0.75); }
.fk-pale { background:var(--fk-sage-pale) !important; padding:80px 60px; }
.fk-white-section { background:var(--fk-cream); padding:80px 60px; }

.fk-2col { display:grid; grid-template-columns:1fr 1fr; gap:60px; align-items:start; max-width:1100px; margin:0 auto; }
.fk-3col { display:grid; grid-template-columns:repeat(3,1fr); gap:2px; background:var(--fk-sage-light); }
.fk-4col { display:grid; grid-template-columns:repeat(4,1fr); gap:20px; }

.fk-symptom-group-label { font-family:'DM Sans',sans-serif; font-size:11px; font-weight:500; letter-spacing:3px; text-transform:uppercase; color:var(--fk-sage-light); margin-bottom:12px; margin-top:24px; display:block; }
.fk-symptom-grid { display:grid; grid-template-columns:1fr 1fr; gap:10px; margin-bottom:8px; }
.fk-symptom { display:flex; align-items:center; gap:10px; font-family:'DM Sans',sans-serif; font-size:14px; color:rgba(255,255,255,0.85); font-weight:300; }
.fk-dot { width:6px; height:6px; border-radius:50%; background:var(--fk-sage); flex-shrink:0; }
.fk-dot-warm { background:#c8a882; }

.fk-quote { border-left:2px solid var(--fk-sage); padding:24px 0 24px 32px; margin:24px 0; }
.fk-quote p { font-family:'Cormorant Garamond',serif; font-size:24px; font-weight:300; font-style:italic; color:white; line-height:1.5; }
.fk-alert { padding:28px; border:1px solid rgba(122,158,135,0.3); margin-top:20px; }
.fk-alert p { font-family:'DM Sans',sans-serif; font-size:14px; font-weight:300; color:rgba(255,255,255,0.7); line-height:1.8; }
.fk-alert strong { color:var(--fk-sage-light); display:block; margin-top:12px; font-weight:500; }

.fk-result-card { background:var(--fk-cream); padding:36px 32px; }
.fk-result-card-title { font-family:'DM Sans',sans-serif; font-size:15px; font-weight:500; color:var(--fk-ink); margin-bottom:10px; }
.fk-result-card p { font-family:'DM Sans',sans-serif; font-size:14px; font-weight:300; color:var(--fk-ink-light); line-height:1.7; }
.fk-check { font-size:20px; margin-bottom:14px; color:var(--fk-sage); display:block; }

.fk-step-card { background:var(--fk-cream); padding:36px 32px; transition:background 0.2s; }
.fk-step-card:hover { background:var(--fk-sage-pale); }
.fk-step-num { font-family:'Cormorant Garamond',serif; font-size:44px; font-weight:300; color:var(--fk-sage-light); line-height:1; margin-bottom:14px; }
.fk-step-title { font-family:'DM Sans',sans-serif; font-size:14px; font-weight:500; color:var(--fk-ink); margin-bottom:10px; }
.fk-step-desc { font-family:'DM Sans',sans-serif; font-size:14px; font-weight:300; color:var(--fk-ink-light); line-height:1.7; }

.fk-include-card { background:white; border:1px solid rgba(122,158,135,0.2); padding:28px 24px; }
.fk-include-title { font-family:'DM Sans',sans-serif; font-size:15px; font-weight:500; color:var(--fk-ink); margin-bottom:8px; }
.fk-include-desc { font-family:'DM Sans',sans-serif; font-size:13px; font-weight:300; color:var(--fk-ink-light); line-height:1.6; }

.fk-testimonial { border:1px solid var(--fk-sage-light); padding:36px; position:relative; background:white; }
.fk-testimonial::before { content:'"'; font-family:'Cormorant Garamond',serif; font-size:72px; color:var(--fk-sage-light); position:absolute; top:8px; left:24px; line-height:1; }
.fk-testimonial-text { font-family:'DM Sans',sans-serif; font-size:15px; font-weight:300; color:var(--fk-ink-light); line-height:1.8; margin-top:28px; margin-bottom:24px; font-style:italic; }
.fk-testimonial-line { width:20px; height:2px; background:var(--fk-sage); margin-bottom:8px; }
.fk-testimonial-name { font-family:'DM Sans',sans-serif; font-size:12px; font-weight:500; letter-spacing:1px; text-transform:uppercase; color:var(--fk-ink); }

.fk-about-img { width:100%; aspect-ratio:3/4; object-fit:cover; object-position:center top; display:block; }
.fk-about-caption { background:rgba(122,158,135,0.1); border:1px solid rgba(122,158,135,0.2); border-top:none; padding:18px 22px; text-align:center; }
.fk-about-name { font-family:'Cormorant Garamond',serif; font-size:22px; font-weight:300; color:white; margin-bottom:4px; }
.fk-about-role { font-family:'DM Sans',sans-serif; font-size:10px; letter-spacing:2.5px; color:var(--fk-sage); text-transform:uppercase; }
.fk-cred-list { list-style:none; padding:0; display:flex; flex-direction:column; gap:12px; }
.fk-cred-list li { display:flex; gap:12px; font-family:'DM Sans',sans-serif; font-size:14px; font-weight:300; color:rgba(255,255,255,0.8); }
.fk-cred-list li::before { content:'—'; color:var(--fk-sage); flex-shrink:0; }

.fk-price-box { max-width:480px; margin:40px auto; background:rgba(255,255,255,0.08); border:1px solid rgba(255,255,255,0.15); padding:48px; text-align:center; }
.fk-price-was { font-family:'DM Sans',sans-serif; font-size:14px; color:rgba(255,255,255,0.5); text-decoration:line-through; margin-bottom:8px; }
.fk-price-main { font-family:'Cormorant Garamond',serif; font-size:54px; font-weight:300; color:white; line-height:1; margin-bottom:8px; }
.fk-price-or { font-family:'DM Sans',sans-serif; font-size:13px; color:rgba(255,255,255,0.5); margin:14px 0; }
.fk-price-rate { font-family:'DM Sans',sans-serif; font-size:16px; color:rgba(255,255,255,0.85); font-weight:300; }

.fk-divider { height:1px; background:linear-gradient(to right, transparent, var(--fk-sage-light), transparent); margin:0 60px; }

@media(max-width:900px) {
  .fk-hero { grid-template-columns:1fr; }
  .fk-hero-left { padding:60px 24px; }
  .fk-2col,.fk-3col,.fk-4col { grid-template-columns:1fr; }
  .fk-dark,.fk-pale,.fk-white-section { padding:60px 24px; }
}
-->