/* =========================================================================
   Story-scroll homepage — bespoke to the homepage only.
   A passage from a life, through the tradition, into the earth, to rebirth,
   tied together by a single morphing thread down the left.
   ========================================================================= */

.story-main{position:relative;overflow:hidden;}

/* ---------- Scenes ---------- */
.scene{position:relative;overflow:hidden;color:#3c4539;
  padding-top:clamp(60px,10vh,108px);padding-bottom:clamp(60px,10vh,108px);}
.scene .container{position:relative;z-index:2;padding-left:clamp(20px,9vw,130px);}
.scene-copy{max-width:600px;}
.scene .eyebrow{color:var(--accent);font-size:14px;letter-spacing:0.18em;}
.scene h2{font-family:'Cormorant Garamond',serif;font-weight:500;font-size:clamp(30px,4.8vw,46px);line-height:1.12;margin:0 0 20px;color:inherit;}
.scene p{font-family:'Spectral',serif;font-size:clamp(19px,2.3vw,21px);line-height:1.62;font-weight:400;margin:0;color:inherit;}

/* Tone journey (top edge melts from the previous scene, then holds) */
.s1{background:#f3f1e7;}
.s2{background:linear-gradient(#f3f1e7,#f6f4ec 200px);}
.s3{background:linear-gradient(#f6f4ec,#e2d9c6 220px);color:#2c2620;}
.s4{background:linear-gradient(#e2d9c6,#c4ad7e 260px);color:#2c2620;}
.s5{background:linear-gradient(#c4ad7e,#e7ebe0 240px);}
.s6{background:linear-gradient(#e7ebe0,#1f2a20 300px);color:#e9ecdf;}

.s3 .eyebrow{color:var(--accent-d);}
.s4 .eyebrow{color:#5c4a2a;}
.s6 .eyebrow{color:#a9c095;}

/* ---------- Scene backgrounds / washes ---------- */
.scene-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0;transform:scale(1.06);will-change:transform;}
.wash{position:absolute;inset:0;z-index:1;pointer-events:none;}
.wash-light{background:linear-gradient(to right,rgba(243,241,231,0.97) 0%,rgba(243,241,231,0.88) 55%,rgba(243,241,231,0.72) 100%);}
.wash-dark{background:linear-gradient(to top,rgba(28,25,17,0.74) 0%,rgba(28,25,17,0.42) 60%,rgba(28,25,17,0.30) 100%);}

/* ---------- Hero (scene 1) ---------- */
.s1{min-height:clamp(560px,82vh,720px);display:flex;align-items:center;}
.s1 h1{font-family:'Cormorant Garamond',serif;font-weight:500;font-size:clamp(40px,7vw,64px);line-height:1.05;margin:0 0 22px;color:#29352b;}
.s1 .lead{font-family:'Spectral',serif;font-size:clamp(19px,2.4vw,21px);line-height:1.55;font-weight:400;color:#333c31;max-width:640px;margin:0 0 30px;}
.call-btn{display:inline-flex;align-items:center;gap:11px;background:var(--accent);color:#f3f1e7;border-radius:999px;padding:15px 30px;font-family:'Spectral',serif;font-size:17px;min-height:44px;transition:background .25s;}
.call-btn:hover{background:var(--accent-d);}
.call-btn .pip{width:7px;height:7px;border-radius:50%;background:#dfeacd;}
.s1 .container{padding-left:clamp(20px,5vw,72px);}
.s1 .scene-copy{max-width:720px;}
.s1 .eyebrow{font-size:15px;}

/* ---------- Two-part scenes ---------- */
.scene-split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(32px,5vw,64px);align-items:center;}
.scene-split.rev .scene-copy{order:2;}
.scene-img img{width:100%;height:100%;object-fit:cover;border-radius:6px;aspect-ratio:4/5;box-shadow:0 22px 50px rgba(41,53,43,0.14);}

/* ---------- Centered scenes (into earth / rebirth) ---------- */
.s4 .container,.s5 .container{text-align:center;}
.s4 .scene-copy,.s5 .scene-copy{max-width:660px;margin:0 auto;}
.s4 .eyebrow,.s5 .eyebrow{display:block;}
.s4 p,.s5 p{text-align:left;}

/* ---------- Quiet story links ---------- */
.story-link{display:inline-block;margin-top:24px;font-family:ui-monospace,'SFMono-Regular',Menlo,monospace;font-size:14px;letter-spacing:0.16em;text-transform:uppercase;color:var(--accent-d);border-bottom:1px solid transparent;padding-bottom:2px;transition:border-color .2s;}
.story-link:hover{border-color:var(--accent-d);}
.s1 .story-link{color:#26331f;font-size:15px;letter-spacing:0.14em;border-bottom-color:rgba(38,51,31,0.55);}

/* ---------- Rebirth sprout ---------- */
.s5 .seed-svg{width:74px;margin:0 auto 22px;color:var(--accent);}

/* ---------- Closing (scene 6) ---------- */
.s6 .container{text-align:center;}
.s6 .quote{font-family:'Cormorant Garamond',serif;font-size:clamp(30px,4.6vw,38px);line-height:1.2;margin-bottom:14px;color:#f3f1e7;}
.s6 .sub{font-family:'Spectral',serif;font-size:19px;font-weight:300;color:#c7d0bd;margin:0 0 32px;}
.s6 .phone-link{display:inline-flex;align-items:center;gap:12px;border:1px solid rgba(243,241,231,0.5);border-radius:999px;padding:16px 32px;font-family:'Cormorant Garamond',serif;font-size:clamp(22px,3vw,24px);letter-spacing:0.02em;color:#f3f1e7;transition:background .25s;min-height:44px;}
.s6 .phone-link:hover{background:rgba(243,241,231,0.1);}
.s6 .wordmark{margin-top:34px;font-family:ui-monospace,monospace;font-size:11px;letter-spacing:0.16em;color:#9aa78c;}

/* ---------- The thread ---------- */
.thread-wrap{position:absolute;top:0;left:clamp(10px,3.5vw,46px);width:60px;height:100%;z-index:4;pointer-events:none;}
.thread-wrap svg{width:60px;height:100%;display:block;}
.thread-path{stroke-dasharray:1;stroke-dashoffset:1;}
.thread-leaf{opacity:0;transition:opacity 1.1s ease;}
.thread-leaf.show{opacity:1;}

@media (prefers-reduced-motion:reduce){
  .scene-bg{transform:none;}
  .thread-path{stroke-dashoffset:0;}
  .thread-leaf{opacity:1;}
}

/* ---------- Responsive ---------- */
@media (max-width:760px){
  .thread-wrap{display:none;}
  .scene .container{padding-left:clamp(20px,5vw,44px);}
  .scene-split{grid-template-columns:1fr;gap:28px;}
  .scene-split.rev .scene-copy{order:0;}
  .scene-img img{aspect-ratio:16/10;}
}

/* header logo image (index only, trial) */
.brand-logo{height:48px;width:auto;display:block;}

.brand--logo{gap:13px;}
.brand-sub{font-family:'Cormorant Garamond',Georgia,serif;font-weight:500;font-size:23px;letter-spacing:0.04em;color:#29352b;}
@media(max-width:900px){.brand-sub{display:none;}}


/* Reassurance band + hero comfort line */
.hero-comfort{font-family:'Cormorant Garamond',Georgia,serif;font-style:italic;font-weight:500;font-size:clamp(20px,2.6vw,26px);color:#2c3a2b;margin:0 0 16px;line-height:1.25;}
.reassure{background:#edefe6;border-top:1px solid #d9d5c5;border-bottom:1px solid #d9d5c5;padding:clamp(46px,7vw,70px) 0;}
.reassure .container{max-width:1000px;}
.reassure-lead{text-align:center;max-width:660px;margin:0 auto 34px;}
.reassure-lead h2{font-family:'Cormorant Garamond',Georgia,serif;font-weight:500;font-size:clamp(26px,3.6vw,36px);line-height:1.16;color:#29352b;margin:0 0 14px;}
.reassure-lead p{font-family:'Spectral',Georgia,serif;font-size:clamp(17px,2vw,19px);line-height:1.6;color:#3c4539;margin:0 0 24px;font-weight:400;}
.reassure-points{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;border-top:1px solid #d9d5c5;padding-top:32px;}
.reassure-points h3{font-family:'Cormorant Garamond',Georgia,serif;font-weight:600;font-size:21px;color:#29352b;margin:0 0 8px;}
.reassure-points p{font-family:'Spectral',Georgia,serif;font-size:15.5px;line-height:1.62;color:#4c5548;margin:0;font-weight:400;}
@media(max-width:760px){.reassure-points{grid-template-columns:1fr;gap:22px;text-align:center;}}
