/* ─── MISSION ────────────────────────────────────────────────── */
#mission { background:var(--petal); padding:110px 0; }
.mission-block { max-width:720px; }
.mission-block .label { display:block; margin-bottom:20px; color:var(--gold); }
.mission-block h2 { font-family:var(--fd); font-size:clamp(30px,3.8vw,52px); font-weight:300; line-height:1.15; color:var(--espresso); margin-bottom:28px; }
.mission-block h2 em { color:var(--gold); font-style:italic; }
.mission-block p { font-family:var(--fd); font-size:1.05rem; line-height:1.9; color:var(--cocoa); }
.mission-manifesto { display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:rgba(184,104,90,.12); border:1px solid rgba(184,104,90,.12); margin-top:64px; }
.manifesto-item { background:var(--petal); padding:28px 24px; }
.manifesto-num { font-family:var(--fd); font-size:2.4rem; font-weight:300; color:rgba(184,104,90,.2); line-height:1; margin-bottom:10px; }
.manifesto-text { font-family:var(--fd); font-size:.93rem; line-height:1.7; color:var(--cocoa); }

/* ─── OFFERINGS ──────────────────────────────────────────────── */
#offerings { background:var(--blush); padding:110px 0; }
.section-header { margin-bottom:56px; }
.section-header .label { display:block; margin-bottom:16px; color:var(--gold); }
.section-header h2 { font-family:var(--fd); font-size:clamp(30px,3.8vw,52px); font-weight:300; line-height:1.15; color:var(--espresso); }
.section-header h2 em { color:var(--gold); font-style:italic; }

/* featured offering */
.offering-featured { background:var(--rose-deep); padding:52px 48px; margin-bottom:2px; }
.offering-featured-inner { max-width:560px; }
.offering-tag { font-family:var(--fs); font-size:.58rem; letter-spacing:.22em; text-transform:uppercase; color:var(--gold); margin-bottom:14px; }
.offering-featured .offering-title { font-family:var(--fd); font-size:clamp(24px,2.8vw,38px); font-weight:400; color:var(--cream); margin-bottom:12px; line-height:1.15; }
.offering-featured p { font-family:var(--fd); font-size:.97rem; line-height:1.85; color:rgba(250,245,242,.6); margin-bottom:24px; }
.offering-featured .offering-cta { color:var(--gold); }

/* offering cards — light, open */
.offerings-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:rgba(184,104,90,.12); }
.offering-card { background:rgba(255,255,255,.7); padding:40px 32px; position:relative; transition:background .3s; }
.offering-card:hover { background:rgba(255,255,255,.92); }
.offering-card .offering-title { font-family:var(--fd); font-size:1.3rem; font-weight:500; color:var(--espresso); margin-bottom:5px; line-height:1.2; }
.offering-sub { font-size:.58rem; letter-spacing:.16em; text-transform:uppercase; color:var(--gold); margin-bottom:18px; }
.offering-body { font-family:var(--fd); font-size:.9rem; line-height:1.82; color:var(--cocoa); margin-bottom:24px; }
.offering-cta { font-size:.58rem; letter-spacing:.18em; text-transform:uppercase; color:var(--gold); text-decoration:none; display:inline-flex; align-items:center; gap:8px; transition:gap .3s; }
.offering-cta:hover { gap:14px; }
.offering-cta::after { content:'\2192'; }

/* mission CTA */
.mission-cta { margin-top:48px; }

/* path cards */
.path-label { font-family:var(--fs); font-size:.52rem; letter-spacing:.26em; text-transform:uppercase; color:var(--gold); margin-bottom:10px; }
.path-affirmation { font-family:var(--fd); font-size:.93rem; font-style:italic; font-weight:300; line-height:1.65; color:var(--espresso); border-left:2px solid var(--gold); padding-left:14px; margin:22px 0 18px; }
.path-practice { background:rgba(201,169,110,.07); border-radius:2px; padding:16px 18px; margin-bottom:24px; }
.path-practice-label { font-family:var(--fs); font-size:.5rem; letter-spacing:.2em; text-transform:uppercase; color:var(--gold); margin-bottom:8px; }
.path-practice p { font-family:var(--fd); font-size:.86rem; line-height:1.78; color:var(--cocoa); margin:0; }
.path-practice p em { color:var(--espresso); }

/* clarity button inside featured card */
.offering-clarity-btn { display:inline-block; margin-top:18px; background:transparent !important; color:rgba(251,247,244,.55) !important; border-color:rgba(251,247,244,.25) !important; font-size:.55rem !important; padding:10px 20px !important; }
.offering-clarity-btn:hover { background:rgba(255,255,255,.1) !important; color:rgba(201,169,110,.9) !important; border-color:rgba(201,169,110,.45) !important; }

/* workshop block */
.offering-workshop { background:var(--petal); padding:40px 48px; margin-top:1px; }
.offering-workshop-inner { max-width:640px; }
.offering-workshop .offering-title { font-family:var(--fd); font-size:clamp(18px,2vw,26px); font-weight:400; color:var(--espresso); margin-bottom:6px; }
.offering-workshop p { font-family:var(--fd); font-size:.92rem; line-height:1.82; color:var(--cocoa); margin:12px 0 20px; }

/* contact resonance line */
.contact-resonance { font-family:var(--fd); font-size:.9rem; font-style:italic; color:rgba(201,169,110,.7) !important; margin-bottom:8px !important; }
.contact-clarity-link { display:inline-block; margin-top:22px; font-family:var(--fs); font-size:.58rem; letter-spacing:.16em; text-transform:uppercase; color:rgba(251,247,244,.3); text-decoration:none; transition:color .3s; }
.contact-clarity-link:hover { color:rgba(201,169,110,.65); }

/* ─── ABOUT ──────────────────────────────────────────────────── */
#about { display:grid; grid-template-columns:1fr 1fr; min-height:80vh; }
.about-image { position:relative; overflow:hidden; min-height:480px; }
.about-image img { width:100%; height:100%; object-fit:cover; object-position:center top; filter:saturate(.45) sepia(.2) hue-rotate(-8deg); transition:transform 8s ease; }
.about-image:hover img { transform:scale(1.04); }
.about-image-overlay { position:absolute; inset:0; background:linear-gradient(to right,rgba(184,104,90,.3) 0%,rgba(184,104,90,.1) 60%),linear-gradient(to top,rgba(184,104,90,.42) 0%,transparent 40%); }
.about-content { background:var(--petal); padding:88px 60px; display:flex; flex-direction:column; justify-content:center; }
.about-content .label { display:block; margin-bottom:16px; color:var(--gold); }
.about-content h2 { font-family:var(--fd); font-size:clamp(28px,3.2vw,46px); font-weight:300; line-height:1.15; color:var(--espresso); margin-bottom:26px; }
.about-content h2 em { color:var(--gold); font-style:italic; }
.about-content p { font-family:var(--fd); font-size:.97rem; line-height:1.9; color:var(--cocoa); margin-bottom:16px; }
.about-credentials { display:flex; flex-direction:column; gap:9px; margin-top:24px; }
.credential { display:flex; align-items:center; gap:12px; font-size:.68rem; letter-spacing:.1em; color:var(--cocoa); }
.credential::before { content:''; width:5px; height:5px; border-radius:50%; background:var(--gold); flex-shrink:0; }

/* ─── AFFIRMATION TEASER ────────────────────────────────────── */
#affirmation-teaser { background:var(--blush); padding:96px 0; }
.aff-teaser { text-align:center; max-width:640px; margin:0 auto; }
.aff-teaser-symbol { display:block; font-size:1.4rem; color:var(--gold); margin-bottom:22px; letter-spacing:.5em; }
.aff-teaser h2 { font-family:var(--fd); font-size:clamp(28px,3.4vw,46px); font-weight:300; line-height:1.15; color:var(--espresso); margin-bottom:28px; }
.aff-teaser h2 em { color:var(--gold); font-style:italic; }
.aff-teaser-quote { font-family:var(--fd); font-size:clamp(1.05rem,1.8vw,1.3rem); font-style:italic; font-weight:300; line-height:1.7; color:var(--cocoa); margin-bottom:36px; }
.aff-teaser .btn { background:var(--espresso); color:var(--cream); border-color:var(--espresso); }
.aff-teaser .btn:hover { background:transparent; color:var(--espresso); }

/* ─── TESTIMONIALS ───────────────────────────────────────────── */
#testimonials { background:linear-gradient(180deg,#C0786A 0%,#C88878 50%,#D09888 100%); padding:110px 0; }
#testimonials .label { display:block; margin-bottom:16px; color:rgba(251,247,244,.5); }
#testimonials h2 { font-family:var(--fd); font-size:clamp(30px,3.8vw,52px); font-weight:300; line-height:1.15; color:var(--cream); margin-bottom:56px; }
#testimonials h2 em { color:rgba(255,235,220,.7); font-style:italic; }
.testimonials-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1px; }
.testimonial-card { background:rgba(255,255,255,.1); padding:36px 32px; transition:background .3s; }
.testimonial-card:hover { background:rgba(255,255,255,.17); }
.testimonial-text { font-family:var(--fd); font-size:.95rem; line-height:1.85; color:rgba(251,247,244,.85); margin-bottom:24px; font-style:italic; }
.testimonial-author { display:flex; align-items:center; gap:8px; }
.author-name { font-family:var(--fs); font-size:.65rem; font-weight:500; letter-spacing:.1em; text-transform:uppercase; color:rgba(251,247,244,.7); }
.author-loc { font-size:.6rem; letter-spacing:.08em; color:rgba(251,247,244,.4); }

/* ─── CONTACT (preserved gradient) ──────────────────────────── */
#contact { background:linear-gradient(160deg,#3D1A14 0%,#8B4A42 50%,#C08878 100%); padding:140px 0 100px; position:relative; overflow:hidden; }
.contact-glow { position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); width:680px; height:680px; background:radial-gradient(ellipse,rgba(238,180,160,.12) 0%,transparent 65%); pointer-events:none; }
.contact-inner { position:relative; z-index:2; text-align:center; max-width:620px; margin:0 auto; padding:0 28px; }
#contact h2 { font-family:var(--fd); font-size:clamp(42px,6vw,80px); font-weight:300; line-height:1.05; margin-bottom:20px; color:var(--cream); }
#contact h2 em { color:var(--gold); font-style:italic; display:block; }
#contact p { font-family:var(--fd); font-size:1rem; font-style:italic; color:rgba(251,247,244,.5); line-height:1.75; margin-bottom:44px; }
.contact-ctas { display:flex; gap:14px; justify-content:center; flex-wrap:wrap; }

/* ─── RESPONSIVE ─────────────────────────────────────────────── */
@media (max-width:900px) {
  .section-inner { padding:0 24px; }
  #mission { padding:72px 0; }
  .mission-manifesto { grid-template-columns:1fr; }

  #offerings { padding:72px 0; }
  .offering-featured { padding:36px 28px; }
  .offerings-grid { grid-template-columns:1fr; }
  .offering-card { padding:32px 24px; }

  #about { grid-template-columns:1fr; }
  .about-image { height:62vw; min-height:260px; }
  .about-content { padding:52px 28px; }

  #affirmation-teaser { padding:64px 0; }

  #testimonials { padding:72px 0; }
  .testimonials-grid { grid-template-columns:1fr; gap:1px; }

  .offering-workshop { padding:32px 24px; }

  #contact { padding:80px 0 56px; }

}
@media (max-width:480px) {
  #contact h2 { font-size:clamp(34px,10vw,56px); }
}
