

  /* ---------- HERO ---------- */
  .hero{
    padding:90px 0 70px;
    position:relative;
    overflow:hidden;
  }
  .hero .wrap{
    display:grid;
    grid-template-columns:1.05fr .95fr;
    gap:64px;
    align-items:center;
  }
  .hero h1{
    font-size:clamp(2.4rem, 4.4vw, 3.6rem);
    max-width:12ch;
  }
  .hero .lede{
    font-size:1.08rem;
    color:var(--ink-soft);
    max-width:46ch;
    margin-bottom:30px;
  }
  .hero-ctas{display:flex; gap:16px; flex-wrap:wrap; margin-bottom:34px;}
  .hero-note{
    display:flex; gap:10px; align-items:center;
    font-size:.82rem; color:var(--ink-soft);
  }
  .hero-note .dot{width:6px; height:6px; border-radius:50%; background:var(--clay);}

  /* signature compass */
  .compass-wrap{
    position:relative;
    aspect-ratio:1/1;
    display:flex; align-items:center; justify-content:center;
  }
  .compass{
    position:relative;
    width:100%;
    max-width:440px;
    aspect-ratio:1/1;
  }
  .ring{
    position:absolute; inset:0;
    border-radius:50%;
    border:1px solid var(--line);
  }
  .ring.r2{inset:14%;}
  .ring.r3{inset:30%; border-color:var(--sage-pale);}
  .compass-core{
    position:absolute; inset:38%;
    border-radius:50%;
    background:radial-gradient(circle at 35% 30%, var(--card), var(--cream-deep));
    box-shadow:0 12px 30px rgba(76,90,69,0.18), inset 0 0 0 1px var(--line);
    display:flex; align-items:center; justify-content:center;
    text-align:center;
    padding:10%;
  }
  .compass-core span{
    font-family:'Fraunces', serif;
    font-style:italic;
    font-size:.92rem;
    color:var(--sage-deep);
    line-height:1.3;
  }
  .compass-node{
    position:absolute;
    width:118px;
    background:var(--card);
    border:1px solid var(--line);
    border-radius:var(--radius);
    padding:14px 16px;
    text-align:center;
    box-shadow:0 8px 20px rgba(43,42,36,0.06);
    animation:float 7s ease-in-out infinite;
  }
  .compass-node .n-label{
    font-family:'Fraunces', serif;
    font-size:.94rem;
    color:var(--ink);
    margin-bottom:2px;
  }
  .compass-node .n-sub{font-size:.68rem; letter-spacing:.08em; text-transform:uppercase; color:var(--sage-soft);}
  .n-body{top:-4%; left:50%; transform:translateX(-50%);}
  .n-mind{top:50%; right:-8%; transform:translateY(-50%); animation-delay:1.6s;}
  .n-emotions{bottom:-4%; left:50%; transform:translateX(-50%); animation-delay:3.2s;}
  .n-life{top:50%; left:-8%; transform:translateY(-50%); animation-delay:4.8s;}

  @keyframes float{
    0%,100%{transform:translate(0,0) translateX(-50%);}
    50%{transform:translate(0,-8px) translateX(-50%);}
  }
  .n-mind{animation-name:floatSide;}
  .n-life{animation-name:floatSide;}
  @keyframes floatSide{
    0%,100%{transform:translateY(-50%) translateX(0);}
    50%{transform:translateY(-50%) translateX(-6px);}
  }

  @media (max-width:900px){
    .hero .wrap{grid-template-columns:1fr; gap:56px;}
    .compass-wrap{order:-1;}
    .compass-node{width:98px; padding:10px 12px;}
  }

  /* ---------- SECTION SCAFFOLDING ---------- */
  section{padding:100px 0;}
  .section-head{max-width:640px; margin-bottom:56px;}
  .section-head.center{margin-left:auto; margin-right:auto; text-align:center;}
  .section-head h2{font-size:clamp(1.9rem, 3vw, 2.5rem);}
  .section-head p{color:var(--ink-soft); font-size:1.02rem;}

  .band-sage{background:var(--sage-deep); color:var(--cream);}
  .band-sage h2, .band-sage h3, .band-sage h4{color:var(--cream);}
  .band-sage .section-head p{color:rgba(244,240,228,0.78);}

  /* ---------- FOUR PILLARS ---------- */
  .pillars{
    display:grid;
    grid-template-columns:repeat(4, 1fr);
    gap:1px;
    background:var(--line);
    border:1px solid var(--line);
  }
  .pillar{
    background:var(--card);
    padding:38px 28px;
    transition:background .3s ease;    text-align: center;
  }
  .pillar:hover{background:var(--cream-deep);}
  .pillar .p-num{
    font-family:'Fraunces', serif;
    font-style:italic;
    color:var(--clay);
    font-size:.85rem;
    margin-bottom:18px;
    display:block;
  }
  .pillar h3{font-size:1.15rem; margin-bottom:10px;}
  .pillar p{font-size:.9rem; color:var(--ink-soft); margin:0;}

  @media (max-width:900px){
    .pillars{grid-template-columns:1fr 1fr;}
  }
  @media (max-width:560px){
    .pillars{grid-template-columns:1fr;}
  }

  /* ---------- PROFILE OFFER ---------- */
  .offer{
    display:grid;
    grid-template-columns:.9fr 1.1fr;
    gap:70px;
    align-items:center;
  }
  .offer-visual{
    background:var(--card);
    border:1px solid var(--line);
    border-radius:var(--radius);
    padding:44px;
    position:relative;
  }
  .offer-visual .tag{
    position:absolute; top:-14px; left:44px;
    background:var(--clay); color:var(--cream);
    font-size:.72rem; letter-spacing:.1em; text-transform:uppercase;
    padding:6px 14px; border-radius:var(--radius);
  }
  .offer-list{list-style:none; margin:0 0 30px 0; padding:0;}
  .offer-list li{
    display:flex; gap:14px; padding:13px 0;
    border-bottom:1px solid var(--line);
    font-size:.96rem;
  }
  .offer-list li:last-child{border-bottom:none;}
  .offer-list li::before{
    content:'';
    flex:none;
    width:7px; height:7px; margin-top:8px;
    border-radius:50%;
    background:var(--sage-soft);
  }
  .price-row{display:flex; align-items:baseline; gap:10px; margin-bottom:26px;}
  .price-row .price{font-family:'Fraunces', serif; font-size:2.4rem;}
  .price-row .price-note{color:var(--ink-soft); font-size:.85rem;}

  @media (max-width:900px){
    .offer{grid-template-columns:1fr; gap:48px;}
  }

  /* ---------- JOURNEY TIMELINE ---------- */
  .journey{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:24px;
    counter-reset:step;
  }
  .step{
    background:var(--card);
    border:1px solid var(--line);
    border-radius:var(--radius);
    padding:30px 22px;
    position:relative;
  }
  .step .s-index{
    font-family:'Fraunces', serif;
    font-style:italic;
    font-size:.8rem;
    color:var(--sage-soft);
    display:block;
    margin-bottom:22px;
  }
  .step h4{font-size:1.05rem; margin-bottom:8px;}
  .step p{font-size:.85rem; color:var(--ink-soft); margin-bottom:16px;}
  .step .s-price{font-family:'Fraunces', serif; color:var(--clay); font-size:1.15rem;}
  .step:not(:last-child)::after{
    content:'';
    position:absolute;
    top:44px; right:-24px;
    width:24px; height:1px;
    background:var(--sage-pale);
  }
  @media (max-width:1000px){
    .journey{grid-template-columns:repeat(2,1fr);}
    .step:not(:last-child)::after{display:none;}
  }
  @media (max-width:560px){
    .journey{grid-template-columns:1fr;}
  }

  /* ---------- ABOUT ---------- */
  .about{
    display:grid;
    grid-template-columns:.85fr 1.15fr;
    gap:70px;
    align-items:center;
  }
  .about-photo{
    aspect-ratio:4/5;
    background:linear-gradient(160deg, var(--sage-pale), var(--cream-deep));
    border-radius:var(--radius);
    position:relative;
    overflow:hidden;
  }
  .about-photo::after{
    content:'“ Health is the connection between Body, Mind, Emotions and Life Force. ”';
    position:absolute; bottom:0; left:0; right:0;
    padding:26px 24px;
    font-family:'Fraunces', serif;
    font-style:italic;
    font-size:.95rem;
    color:var(--ink);
    background:linear-gradient(180deg, transparent, rgba(244,240,228,0.9) 40%);
  }
  .about blockquote{
    margin:0 0 24px 0;
    padding-left:22px;
    border-left:2px solid var(--clay);
    font-family:'Fraunces', serif;
    font-style:italic;
    font-size:1.2rem;
    color:var(--ink);
  }
  @media (max-width:900px){
    .about{grid-template-columns:1fr; gap:40px;}
  }

  /* ---------- TESTIMONIALS ---------- */
  .testimonials{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:28px;
  }
  .t-card{
    background:var(--card);
    border:1px solid var(--line);
    border-radius:var(--radius);
    padding:32px 28px;
  }
  .t-stars{color:var(--clay); letter-spacing:2px; margin-bottom:16px; font-size:.9rem;}
  .t-card p.t-quote{font-size:.98rem; color:var(--ink); margin-bottom:20px;}
  .t-who{font-size:.82rem; color:var(--ink-soft);}
  .t-who strong{color:var(--ink); font-weight:500;}
  @media (max-width:900px){
    .testimonials{grid-template-columns:1fr; }
  }

  /* ---------- FAQ ---------- */
  .faq-list{max-width:800px; margin:0 auto;}
  details{
    border-bottom:1px solid var(--line);
    padding:22px 0;
  }
  details summary{
    list-style:none;
    cursor:pointer;
    display:flex;
    justify-content:space-between;
    align-items:center;
    font-family:'Fraunces', serif;
    font-size:1.08rem;
    color:var(--ink);
  }
  details summary::-webkit-details-marker{display:none;}
  details summary .plus{
    font-family:'Work Sans', sans-serif;
    font-size:1.4rem;
    color:var(--clay);
    transition:transform .3s ease;
    flex:none;
    margin-left:20px;
  }
  details[open] summary .plus{transform:rotate(45deg);}
  details .faq-a{
    padding-top:14px;
    color:var(--ink-soft);
    font-size:.94rem;
    max-width:64ch;
  }

  /* ---------- FINAL CTA ---------- */
  .final-cta{
    text-align:center;
  }
  .final-cta h2{
    font-size:clamp(2rem,3.6vw,2.9rem);
    max-width:16ch;
    margin:0 auto 20px;
  }
  .final-cta p{
    max-width:52ch; margin:0 auto 34px; color:rgba(244,240,228,0.8);
  }
  .final-cta .hero-ctas{justify-content:center;}


  @media (max-width:640px){
    section{padding:68px 0;}
    .hero{padding:56px 0 40px;}
  }

  /* ---------- AUTH MODAL ---------- */
  .auth-overlay{
    position:fixed; inset:0; z-index:200;
    background:rgba(43,42,36,0.55);
    display:none;
    align-items:center; justify-content:center;
    padding:24px;
    backdrop-filter:blur(3px);
  }
  .auth-overlay.open{display:flex;}
  .auth-modal{
    background:var(--card);
    border:1px solid var(--line);
    border-radius:var(--radius);
    width:100%; max-width:420px;
    max-height:90vh;
    overflow-y:auto;
    position:relative;
    padding:44px 40px 40px;
    box-shadow:0 24px 60px rgba(43,42,36,0.25);
    animation:authIn .3s ease;
  }
  @keyframes authIn{
    from{opacity:0; transform:translateY(10px) scale(.98);}
    to{opacity:1; transform:translateY(0) scale(1);}
  }
  .auth-close{
    position:absolute; top:16px; right:16px;
    width:34px; height:34px;
    border:none; background:transparent;
    font-size:1.3rem; line-height:1;
    color:var(--ink-soft);
    cursor:pointer;
    border-radius:50%;
    display:flex; align-items:center; justify-content:center;
    transition:background .2s ease, color .2s ease;
  }
  .auth-close:hover{background:var(--cream-deep); color:var(--ink);}
  .auth-tabs{
    display:flex; gap:4px;
    background:var(--cream-deep);
    border-radius:var(--radius);
    padding:4px;
    margin-bottom:30px;
  }
  .auth-tab{
    flex:1;
    text-align:center;
    padding:10px 12px;
    font-family:'Work Sans', sans-serif;
    font-size:.88rem;
    font-weight:500;
    color:var(--ink-soft);
    background:transparent;
    border:none;
    border-radius:var(--radius);
    cursor:pointer;
    transition:background .25s ease, color .25s ease;
  }
  .auth-tab.active{
    background:var(--sage-deep);
    color:var(--cream);
  }
  .auth-head{margin-bottom:26px;}
  .auth-head h3{font-size:1.5rem; margin-bottom:6px;}
  .auth-head p{font-size:.88rem; color:var(--ink-soft); margin:0;}
  .auth-panel{display:none;}
  .auth-panel.active{display:block;}
  .auth-field{margin-bottom:18px;}
  .auth-field label{
    display:block;
    font-size:.78rem;
    letter-spacing:.04em;
    text-transform:uppercase;
    color:var(--ink-soft);
    margin-bottom:8px;
    font-weight:600;
  }
  .auth-field input{
    width:100%;
    padding:13px 14px;
    border:1px solid var(--line);
    border-radius:var(--radius);
    background:var(--cream);
    font-family:'Work Sans', sans-serif;
    font-size:.94rem;
    color:var(--ink);
    transition:border-color .2s ease;
  }
  .auth-field input:focus{
    outline:none;
    border-color:var(--sage-soft);
  }
  .auth-row-between{
    display:flex; align-items:center; justify-content:space-between;
    margin-bottom:24px;
    font-size:.84rem;
  }
  .auth-remember{display:flex; align-items:center; gap:8px; color:var(--ink-soft);}
  .auth-remember input{accent-color:var(--sage-deep);}
  .auth-forgot{color:var(--clay); font-weight:500;}
  .auth-forgot:hover{text-decoration:underline;}
  .auth-submit{
    width:100%;
    justify-content:center;
    margin-bottom:20px;
  }
  .auth-switch{
    text-align:center;
    font-size:.88rem;
    color:var(--ink-soft);
  }
  .auth-switch button{
    background:none; border:none; padding:0;
    color:var(--clay); font-weight:600; cursor:pointer;
    font-family:'Work Sans', sans-serif; font-size:inherit;
  }
  .auth-switch button:hover{text-decoration:underline;}
  .auth-divider{
    display:flex; align-items:center; gap:14px;
    margin:22px 0;
    color:var(--ink-soft);
    font-size:.78rem;
    text-transform:uppercase;
    letter-spacing:.06em;
  }
  .auth-divider::before, .auth-divider::after{
    content:''; flex:1; height:1px; background:var(--line);
  }
  .auth-terms{
    font-size:.78rem;
    color:var(--ink-soft);
    margin-bottom:20px;
    line-height:1.5;
  }
  .auth-terms a{color:var(--clay); font-weight:500;}

  /* ---------- IMAGE PLACEHOLDERS ---------- */
  .ph{
    background:linear-gradient(160deg, var(--sage-pale), var(--cream-deep));
    border:1px dashed var(--sage-soft);
    border-radius:var(--radius);
    display:flex; flex-direction:column; align-items:center; justify-content:center;
    text-align:center; color:var(--sage-deep); gap:8px; padding:18px;
    font-family:'Work Sans', sans-serif;
  }
  .ph .ph-icon{font-size:1.5rem; opacity:.7;}
  .ph .ph-label{font-size:.72rem; letter-spacing:.05em; text-transform:uppercase; font-weight:600; opacity:.75;}
  .ph.ph-tall{aspect-ratio:1/0;}
  .ph.ph-wide{aspect-ratio:5/4;}
  .ph.ph-square{aspect-ratio:1/0;}
  .ph.ph-card{aspect-ratio:3/2;}

  /* ---------- HERO (3-col: image / copy / image) ---------- */
  .hero .wrap{grid-template-columns:.62fr 1.5fr .62fr; gap:40px;}
  .hero-side{display:flex; flex-direction:column; gap:16px;}
  .hero-side .ph{min-height:230px;}
  .hero-side .side-cap{text-align:center;}
  .hero-side .side-tag{
    font-family:'Work Sans', sans-serif; text-transform:uppercase; letter-spacing:.1em;
    font-size:.72rem; font-weight:600; color:var(--clay); margin-bottom:6px; display:block;
  }
  .hero-side .side-sub{font-size:.8rem; color:var(--ink-soft); margin-bottom:8px;}
  .hero-side .side-strong{font-family:'Fraunces', serif; font-size:.98rem; color:var(--ink);}
  .hero-copy{text-align:center;}
  .hero-copy .hero-ctas{justify-content:center;}
  .hero-copy h1{max-width:none; font-size:clamp(2rem, 3.4vw, 2.9rem);}
  .hero-copy .lede{max-width:52ch; margin-left:auto; margin-right:auto;}
  .hero-extra{max-width:56ch; margin:26px auto 0; color:var(--ink-soft); font-size:.95rem;}
  .hero-extra p{margin-bottom:14px;}
  .hero-extra .tagline{font-family:'Fraunces', serif; font-style:italic; color:var(--sage-deep); font-size:1.05rem; margin-top:20px;}

  @media (max-width:1050px){
    .hero .wrap{grid-template-columns:1fr; gap:40px;}
    .hero-side{flex-direction:row;}
    .hero-side .ph{flex:1; min-height:180px;}
  }
  @media (max-width:640px){
    .hero-side{flex-direction:column;}
  }

  /* ---------- PROBLEM GRID ---------- */
  .problem-grid{
    display:grid;
    grid-template-columns:repeat(6,1fr);
    gap:18px;
    margin-bottom:56px;
  }
  .problem-card{text-align:center;}
  .problem-card .ph{min-height:120px; margin-bottom:12px;}
  .problem-card .p-cap{font-size:.82rem; color:var(--ink-soft); font-weight:500;}
  @media (max-width:900px){
    .problem-grid{grid-template-columns:repeat(3,1fr);}
  }
  @media (max-width:560px){
    .problem-grid{grid-template-columns:repeat(2,1fr);}
  }
  .problem-tagline{text-align:center; max-width:640px; margin:0 auto;}
  .problem-tagline h3{font-size:clamp(1.4rem,2.6vw,1.9rem); color:var(--clay);}
  .problem-tagline p{color:var(--ink-soft);}

  /* ---------- SHIFT BANNER ---------- */
  .shift-banner{
    display:grid;
    grid-template-columns:1.1fr .9fr;
    gap:0;
    background:var(--clay);
    border-radius:var(--radius);
    overflow:hidden;
  }
  .shift-copy{padding:56px 52px; color:var(--cream);}
  .shift-copy .eyebrow{color:var(--cream);}
  .shift-copy h3{color:var(--cream); font-size:clamp(1.3rem,2.4vw,1.7rem); margin-bottom:6px;}
  .shift-copy h3.to-line{color:var(--sage-pale);}
  .shift-copy p{color:rgba(244,240,228,0.85); margin:18px 0 26px;}
  .shift-visual{position:relative; min-height:340px;}
  .shift-visual .ph{position:absolute; inset:0; border-radius:0; border:none; min-height:100%;
    background:linear-gradient(160deg, rgba(244,240,228,0.25), rgba(76,90,69,0.35));}
  @media (max-width:900px){
    .shift-banner{grid-template-columns:1fr;}
    .shift-visual{min-height:220px;}
  }

  /* ---------- DIMENSIONS (dark) ---------- */
  .dims-intro{max-width:720px; margin:0 auto 56px; text-align:center;}
  .dims-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:1px;
    background:rgba(244,240,228,0.14);
    border:1px solid rgba(244,240,228,0.14);
  }
  .dim-card{
    position:relative;
    background:rgba(43,42,36,0.18);
    background-size:cover;
    background-position:center;
    padding:36px 26px;
    text-align:center;
    overflow:hidden;
    isolation:isolate;
    transition:background-size .6s ease;
  }
  .dim-card::before{
    content:'';
    position:absolute; inset:0;
    background:linear-gradient(180deg, rgba(43,42,36,0.55) 0%, rgba(43,42,36,0.72) 55%, rgba(43,42,36,0.88) 100%);
    z-index:-1;
  }
  .dim-card:hover{background-size:112%;}
 
  .dim-card .dim-icon{
    width:52px; height:52px; margin:0 auto 18px;
    border-radius:50%; border:1px solid var(--clay-soft);
    display:flex; align-items:center; justify-content:center;
    font-family:'Fraunces', serif; font-style:italic; color:var(--clay-soft);
    background:rgba(43,42,36,0.35);
    backdrop-filter:blur(2px);
  }
  .dim-card h3{font-size:1.1rem; margin-bottom:8px;}
  .dim-card .dim-sub{
    font-size:.78rem; color:var(--clay-soft); margin-bottom:14px;
    line-height:1.4; min-height:2.6em;
  }
  .dim-card p{font-size:.86rem; color:rgba(244,240,228,0.85); margin:0;}
  @media (max-width:900px){ .dims-grid{grid-template-columns:1fr 1fr;} }
  @media (max-width:560px){ .dims-grid{grid-template-columns:1fr;} }

  /* ---------- BEFORE/UNDERSTAND (image + copy) ---------- */
  .understand{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:70px;
    align-items:center;
  }
  .understand .ph{min-height:380px;}
  @media (max-width:900px){
    .understand{grid-template-columns:1fr; gap:40px;}
    .understand .img-col{order:-1;}
  }

  /* ---------- METHOD STEPS ---------- */
  .method-intro{text-align:center; max-width:620px; margin:0 auto 56px;}
  .method-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:32px;
    margin-bottom:50px;
  }
  .method-card .ph{min-height:190px; margin-bottom:22px;}
  .method-card .m-index{
    font-family:'Work Sans', sans-serif; letter-spacing:.12em; font-size:.75rem;
    font-weight:600; color:var(--clay); display:block; margin-bottom:10px;
  }
  .method-card h4{font-size:1.15rem; margin-bottom:10px;}
  .method-card p{font-size:.88rem; color:var(--ink-soft);}
  .method-card .m-callout{
    font-size:.72rem; letter-spacing:.06em; text-transform:uppercase; font-weight:600;
    color:var(--sage-deep); margin:14px 0 10px;
  }
  .method-card blockquote{
    font-family:'Fraunces', serif; font-style:italic; color:var(--ink);
    border-left:2px solid var(--clay); padding-left:14px; margin:14px 0; font-size:.95rem;
  }
  .method-card .m-note{font-size:.76rem; color:var(--sage-deep); font-weight:600; margin-top:14px;}
  @media (max-width:900px){ .method-grid{grid-template-columns:1fr;} }
  .method-cta{text-align:center;}

  /* ---------- DUA TAGLINE BAND ---------- */
  .band-tagline{padding:44px 0; text-align:center;}
  .band-tagline .wrap > span{
    display:block; font-size:.82rem; letter-spacing:.06em; text-transform:uppercase;
    color:var(--clay-soft); margin-bottom:10px;
  }
  .band-tagline h3{
    font-size:clamp(1.2rem,2.4vw,1.7rem); margin-bottom:14px; color:var(--cream);
  }
  .band-tagline p{color:rgba(244,240,228,0.75); max-width:640px; margin:0 auto 6px; font-size:.94rem;}

  /* ---------- HEALTH PATHWAYS GRID ---------- */
  .pathway-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:22px 20px;
    margin-bottom:50px;
  }
  .pathway-card{text-align:center;}
  .pathway-card .ph{min-height:120px; margin-bottom:10px;}
  .pathway-card .pw-cap{font-size:.78rem; letter-spacing:.02em; font-weight:600; color:var(--sage-deep);}
  @media (max-width:900px){ .pathway-grid{grid-template-columns:repeat(2,1fr);} }

  .pathway-cta{
    display:grid;
    grid-template-columns:1.1fr .9fr;
    gap:60px;
    align-items:center;
    padding-top:20px;
    border-top:1px solid var(--line);
  }
  .pathway-cta .ph{min-height:220px;}
  @media (max-width:900px){
    .pathway-cta{grid-template-columns:1fr; gap:32px;}
    .pathway-cta .img-col{order:-1;}
  }

  /* ---------- PROFILE STARTS-HERE SECTION ---------- */
  .starts-head{text-align:center; margin-bottom:50px;}
  .starts-grid{
    display:grid;
    grid-template-columns:.85fr 1.15fr;
    gap:60px;
    align-items:center;
  }
  .starts-grid .ph{min-height:300px;}
  .starts-cols{display:grid; grid-template-columns:1fr 1fr; gap:44px;}
  .starts-cols h4{font-size:1.05rem; margin-bottom:10px;}
  .starts-cols p{font-size:.9rem; color:var(--ink-soft);}
  .receive-list{list-style:none; margin:0 0 16px 0; padding:0;}
  .receive-list li{display:flex; gap:10px; font-size:.9rem; padding:8px 0; color:var(--ink);}
  .receive-list li::before{content:'✓'; color:var(--sage-deep); font-weight:700;}
  .receive-note{font-size:.8rem; color:var(--ink-soft); font-style:italic;}
  .starts-note{font-size:.8rem; color:var(--ink-soft); margin-top:18px;}
  @media (max-width:900px){
    .starts-grid{grid-template-columns:1fr; gap:36px;}
    .starts-cols{grid-template-columns:1fr; gap:28px;}
  }

  /* ---------- MESSAGE FROM CANDICE ---------- */
  .candice-grid{
    display:grid;
    grid-template-columns:.7fr 1fr .85fr;
    gap:50px;
    align-items:center;
  }
  .candice-grid .ph{min-height:340px;}
  .candice-copy h3{font-size:clamp(1.3rem,2.4vw,1.7rem); margin-bottom:16px;}
  .candice-copy p{font-size:.92rem; color:var(--ink-soft);}
  .candice-quote{
    background:var(--ink); color:var(--cream);
    padding:40px 34px; border-radius:var(--radius);
    text-align:center;
  }
  .candice-quote blockquote{
    font-family:'Fraunces', serif; font-style:italic; font-size:1.2rem;
    margin:0 0 16px; color:var(--cream);
  }
  .candice-quote p{color:rgba(244,240,228,0.72); font-size:.86rem; margin-bottom:22px;}
  @media (max-width:900px){
    .candice-grid{grid-template-columns:1fr; gap:32px; text-align:center;}
    .candice-grid .ph{max-width:280px; margin:0 auto;}
  }

  /* ---------- FINAL CLAY BAND ---------- */
  .final-clay{background:var(--clay); text-align:center;}
  .final-clay h2{color:var(--cream); font-size:clamp(1.6rem,3vw,2.2rem); max-width:20ch; margin:0 auto 22px;}

  /* ---------- METHOD PAGE ---------- */
  .nav-links a.current{color:var(--ink);}
  .nav-links a.current::after{width:100%;}

  .method-hero{padding:90px 0 80px; position:relative; overflow:hidden;}
  .method-hero .wrap{ grid-template-columns:1.1fr .9fr; gap:70px; align-items:center;}
  .method-hero h1{font-size:clamp(2.4rem,4.6vw,3.8rem); margin-bottom:22px;}
  .method-hero .hero-sub{
    font-family:'Fraunces', serif; font-size:clamp(1.15rem,1.9vw,1.4rem);
    line-height:1.4; color:var(--sage-deep); font-weight:450; margin:0;
    padding-left:22px; border-left:2px solid var(--clay);
  }
  .method-hero .compass-wrap{max-width:440px; margin:0 auto; width:100%; padding:7%;}
  @media (max-width:900px){
    .method-hero{padding:56px 0 50px;}
    .method-hero .wrap{grid-template-columns:1fr; gap:48px;}
    .method-hero .compass-wrap{max-width:360px;}
  }

  .statement-band{background:var(--cream-deep); padding:80px 0;}
  .statement{
    max-width:860px; margin:0 auto; text-align:center;
    font-family:'Fraunces', serif; font-size:clamp(1.25rem,2.3vw,1.7rem);
    line-height:1.45; color:var(--ink); font-weight:450;
  }
  .statement em{color:var(--clay);}

  .dims-intro .lead-line{font-family:'Fraunces', serif; font-size:1.2rem; color:var(--cream); margin-bottom:14px;}

  /* three steps */
  .tier-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:28px; align-items:stretch;}
  .tier{
    background:var(--card); border:1px solid var(--line); border-top:3px solid var(--clay);
    border-radius:var(--radius); padding:40px 32px 34px;
    display:flex; flex-direction:column;
  }
  .tier .t-num{font-family:'Fraunces', serif; font-style:italic; font-size:3rem; line-height:1; color:var(--clay); margin-bottom:14px;}
  .tier .t-tag{
    font-size:.74rem; letter-spacing:.16em; text-transform:uppercase; font-weight:600;
    color:var(--sage-deep); margin-bottom:16px; display:block;
  }
  .tier h3{font-size:1.4rem; margin-bottom:12px;}
  .tier .t-kicker{
    font-size:.78rem; letter-spacing:.1em; text-transform:uppercase; font-weight:600;
    color:var(--clay); margin-bottom:18px;
  }
  .tier .receive-list{flex:1; margin-bottom:26px; border-top:1px solid var(--line); padding-top:12px;}
  .tier .receive-list li{padding:9px 0; font-size:.93rem;}
  .tier .t-price{font-family:'Fraunces', serif; font-size:2.4rem; line-height:1; margin-bottom:18px; color:var(--ink);}
  .tier .btn{width:100%; justify-content:center; text-align:center;}
  .tier.featured{background:var(--sage-deep); border-color:var(--sage-deep); border-top-color:var(--clay);}
  .tier.featured h3, .tier.featured .t-price{color:var(--cream);}
  .tier.featured .t-tag{color:var(--sage-pale);}
  .tier.featured .t-kicker{color:var(--clay-soft);}
  .tier.featured .receive-list{border-top-color:rgba(244,240,228,0.2);}
  .tier.featured .receive-list li{color:rgba(244,240,228,0.92);}
  .tier.featured .receive-list li::before{color:var(--clay-soft);}
  @media (max-width:1000px){ .tier-grid{grid-template-columns:1fr; max-width:560px; margin:0 auto;} }

  /* six-week program */
  .phase-grid{display:grid; grid-template-columns:repeat(6,1fr); gap:0 14px; margin-bottom:34px;}
  .phase{padding:24px 20px; border-radius:var(--radius); text-align:center;}
  .phase .ph-icon2{font-size:1.4rem; display:block; margin-bottom:6px;}
  .phase h4{font-size:1.15rem; margin-bottom:4px; letter-spacing:.04em; text-transform:uppercase;}
  .phase .ph-weeks{font-size:.72rem; letter-spacing:.12em; text-transform:uppercase; font-weight:600; display:block; margin-bottom:6px;}
  .phase p{font-size:.84rem; margin:0; line-height:1.4;}
  .phase.p-awaken{grid-column:span 4; background:var(--sage-deep); color:var(--cream);}
  .phase.p-awaken h4{color:var(--cream);}
  .phase.p-awaken .ph-weeks{color:var(--sage-pale);}
  .phase.p-reconnect{background:var(--sage-pale); color:var(--ink);}
  .phase.p-activate{background:var(--clay); color:var(--cream);}
  .phase.p-activate h4{color:var(--cream);}

  .week-grid{display:grid; grid-template-columns:repeat(6,1fr); gap:0 14px; position:relative; padding-top:22px;}
  .week-grid::before{
    content:''; position:absolute; top:22px; left:calc(100%/12); right:calc(100%/12);
    height:1px; background:var(--sage-soft);
  }
  .week{position:relative; text-align:center;}
  .week .wk-num{
    position:relative; z-index:1;
    width:34px; height:34px; margin:-17px auto 18px;
    border-radius:50%; display:flex; align-items:center; justify-content:center;
    font-family:'Fraunces', serif; font-size:.95rem; color:var(--cream);
    background:var(--sage-deep); box-shadow:0 0 0 6px var(--cream-deep);
  }
  .week.w-reconnect .wk-num{background:var(--sage-soft);}
  .week.w-activate .wk-num{background:var(--clay);}
  .wk-card{background:var(--card); border:1px solid var(--line); border-radius:var(--radius); padding:22px 16px; height:calc(100% - 52px);}
  .wk-card .wk-dim{display:block; font-size:.7rem; letter-spacing:.14em; text-transform:uppercase; font-weight:600; color:var(--clay); margin-bottom:10px;}
  .wk-card h4{font-size:.98rem; margin:0; line-height:1.3;}
  @media (max-width:1000px){
    .phase-grid{grid-template-columns:1fr; gap:12px;}
    .phase.p-awaken{grid-column:auto;}
    .week-grid{grid-template-columns:repeat(3,1fr); gap:34px 14px;}
    .week-grid::before{display:none;}
    .week .wk-num{margin:0 auto 14px; box-shadow:none;}
    .wk-card{height:auto;}
  }
  @media (max-width:560px){ .week-grid{grid-template-columns:repeat(2,1fr);} }

  .program-cta{
    margin-top:56px; background:var(--ink); color:var(--cream);
    border-radius:var(--radius); padding:48px 52px;
    display:flex; align-items:center; justify-content:space-between; gap:36px; flex-wrap:wrap;
  }
  .program-cta h3{color:var(--cream); font-size:clamp(1.4rem,2.6vw,1.9rem); margin-bottom:6px;}
  .program-cta p{margin:0; color:rgba(244,240,228,0.78);}
  @media (max-width:640px){ .program-cta{padding:36px 26px;} .program-cta .btn{width:100%; justify-content:center; text-align:center;} }

  /* cost of waiting */
  .band-ink{background:var(--ink); color:var(--cream);}
  .band-ink h2{color:var(--cream);}
  .band-ink .section-head p{color:rgba(244,240,228,0.78);}
  .cost-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:1px; background:rgba(244,240,228,0.14); border:1px solid rgba(244,240,228,0.14);}
  .cost-card{background:var(--ink); padding:40px 26px; text-align:center; transition:background .3s ease;}
  .cost-card:hover{background:rgba(244,240,228,0.05);}
  .cost-card .cost-icon{
    width:56px; height:56px; margin:0 auto 20px; border-radius:50%;
    border:1px solid var(--clay-soft); color:var(--clay-soft);
    display:flex; align-items:center; justify-content:center; font-size:1.3rem;
  }
  .cost-card h4{font-family:'Work Sans', sans-serif; font-size:.82rem; letter-spacing:.16em; text-transform:uppercase; font-weight:600; color:var(--cream); margin-bottom:12px;}
  .cost-card p{font-size:.92rem; color:rgba(244,240,228,0.75); margin:0;}
  @media (max-width:900px){ .cost-grid{grid-template-columns:1fr 1fr;} }
  @media (max-width:560px){ .cost-grid{grid-template-columns:1fr;} }

  /* ---------- METHOD PAGE: banner + split final CTA ---------- */
  .journey-banner{padding:0 0 80px;}
  .journey-banner img{width:100%; height:auto; border-radius:var(--radius); box-shadow:0 18px 40px rgba(43,42,36,0.14);}
  @media (max-width:640px){ .journey-banner{padding-bottom:50px;} .journey-banner .wrap{padding:0 16px;} }

  .final-split .wrap{display:grid; grid-template-columns:1.1fr .9fr; gap:64px; align-items:center; text-align:left;}
  .final-split h2{max-width:none; margin:0 0 26px; text-align:left;}
  .final-split .hero-ctas{justify-content:flex-start; margin:0;}
  .final-figure{margin:0;}
  .final-figure img{width:100%; height:auto; border-radius:var(--radius); box-shadow:0 14px 34px rgba(43,42,36,0.22);}
  .final-figure figcaption{margin-top:14px; text-align:center; font-family:'Fraunces', serif; font-style:italic; color:var(--clay-dark); font-size:1.02rem;}
  @media (max-width:900px){
    .final-split .wrap{grid-template-columns:1fr; gap:40px;}
  }

  /* ---------- METHOD PAGE: card images ---------- */
  .tier .t-img{margin:-40px -32px 28px; overflow:hidden; background:var(--sage-pale);}
  .tier .t-img img{width:100%; height:100%; display:block; transition:transform .6s ease;}
  .tier:hover .t-img img{transform:scale(1.04);}
  @media (min-width:1001px){
    .tier h3{min-height:3.4em;}
    .tier .t-kicker{min-height:2.9em;}
  }

  .wk-img{
    width:112px; height:112px; margin:0 auto 18px;
    border-radius:50%; overflow:hidden;
    border:3px solid var(--sage-soft);
    box-shadow:0 8px 18px rgba(43,42,36,0.12);
  }
  .wk-img img{width:100%; height:100%; object-fit:cover; display:block; transform:scale(1.06);}
  .week.w-reconnect .wk-img{border-color:var(--sage-deep);}
  .week.w-activate .wk-img{border-color:var(--clay);}
  @media (max-width:1180px) and (min-width:1001px){ .wk-img{width:88px; height:88px;} }
  @media (max-width:560px){ .wk-img{width:96px; height:96px;} }



/* top banner image: full width */
.journey-banner{padding:0;}
.journey-banner .wrap{max-width:none; padding:0;}
.journey-banner img{display:block; width:100%; height:auto; border-radius:0; box-shadow:none;}
.statement-band{background:var(--beige); padding:80px 0;}
.statement{font-size:clamp(1.3rem,2.4vw,1.75rem); line-height:1.5;}

/* founded-on-the-principle section (same as index) */
.band-sage{background:var(--sage-light); color:var(--ink);}
.band-sage h2,.band-sage h3,.band-sage h4{color:var(--ink);}
.band-sage .section-head p{color:var(--ink-soft);}
#dimensions{padding:112px 0;}
.dims-intro{max-width:760px; margin-bottom:64px;}
.dims-intro .eyebrow{font-size:.85rem; margin-bottom:18px;}
.dims-intro h2{font-size:clamp(2.1rem,3.6vw,3rem); margin-bottom:.7em;}
.dims-intro p{font-size:1.1rem; color:var(--ink-soft); font-weight:400;}
.dims-intro p.lead-line{color:var(--ink); font-size:1.18rem;}
#dimensions .dims-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:0; border-radius:var(--r-img); overflow:hidden; box-shadow:var(--shadow-soft); border:1px solid var(--img-line); background:none;}
#dimensions .dim-card,#dimensions .dim-card.dim-body,#dimensions .dim-card.dim-mind,#dimensions .dim-card.dim-emotions,#dimensions .dim-card.dim-life{
  background-image:none; border:none; border-radius:0; box-shadow:none; min-height:0; padding:30px 22px 38px; display:flex; flex-direction:column; align-items:center; text-align:center;}
#dimensions .dim-card::before{display:none;}
#dimensions .dim-card.dim-body{background-color:#DCE6D3;}
#dimensions .dim-card.dim-mind{background-color:#F6DFD2;}
#dimensions .dim-card.dim-emotions{background-color:#F2D2C3;}
#dimensions .dim-card.dim-life{background-color:#E3E9CF;}
.dim-photo{width:80%; aspect-ratio:1/.92; border-radius:50% 50% 0 0 / 55% 55% 0 0; overflow:hidden; background:#fff;}
.dim-photo img{width:100%; height:100%; object-fit:cover; display:block;}
#dimensions .dim-card .dim-icon{width:64px; height:64px; margin:-32px auto 18px; position:relative; z-index:1; background:#FBF8F1; border:1px solid var(--img-line); box-shadow:0 4px 12px rgba(43,42,36,.08); color:var(--clay-dark); backdrop-filter:none; display:flex; align-items:center; justify-content:center; border-radius:50%;}
#dimensions .dim-card h3{font-size:1.5rem; letter-spacing:.02em; color:var(--ink); margin-bottom:10px;}
#dimensions .dim-card .dim-sub{font-size:1rem; line-height:1.5; color:var(--ink-soft); min-height:4.5em;}
#dimensions .dim-card p{font-size:1rem; color:var(--ink); font-weight:500;}
@media (max-width:1000px){#dimensions .dims-grid{grid-template-columns:1fr 1fr;}}
@media (max-width:560px){#dimensions .dims-grid{grid-template-columns:1fr;} .dim-photo{width:62%;} #dimensions .dim-card .dim-sub{min-height:0;}}

/* dark blocks -> light */
.tier.featured{background:var(--sage-light); border-color:var(--img-line); border-top-color:var(--clay);}
.tier.featured h3,.tier.featured .t-price{color:var(--ink);}
.tier.featured .t-tag{color:var(--ink-soft);}
.tier.featured .t-kicker{color:var(--clay-dark);}
.tier.featured .receive-list{border-top-color:var(--img-line);}
.tier.featured .receive-list li{color:var(--ink);}
.tier.featured .receive-list li::before{color:var(--clay-dark);}
.phase.p-awaken{background:var(--sage-light); color:var(--ink);}
.phase.p-awaken h4{color:var(--ink);}
.phase.p-awaken .ph-weeks{color:var(--ink-soft);}
.phase.p-reconnect{background:var(--sage-mist); color:var(--ink);}
.phase.p-activate{background:var(--terra-light); color:var(--ink);}
.phase.p-activate h4{color:var(--ink);}
.phase p{font-size:.95rem;}
.program-cta{background:var(--sage-light); color:var(--ink); border:1px solid var(--img-line); box-shadow:var(--shadow-soft); border-radius:var(--r-img);}
.program-cta h3{color:var(--ink);}
.program-cta p{color:var(--ink-soft); font-size:1.05rem;}
.band-ink{background:var(--beige); color:var(--ink);}
.band-ink h2{color:var(--ink);}
.band-ink .section-head p{color:var(--ink-soft);}
.cost-grid{gap:24px; background:none; border:none;}
.cost-card{background:#FFFDF8; border:1px solid var(--img-line); border-radius:var(--r-img); box-shadow:var(--shadow-soft);}
.cost-card:hover{background:#FFFDF8;}
.cost-card .cost-icon{border-color:var(--clay); color:var(--clay-dark); background:var(--terra-light);}
.cost-card h4{color:var(--ink); font-size:.85rem;}
.cost-card p{color:var(--ink-soft); font-size:1rem;}
.final-clay{background:var(--terra-light);}
.final-clay h2{color:var(--ink); font-size:clamp(2rem,3.6vw,2.8rem);}
.final-cta p{color:var(--ink-soft);}
.final-split img{border-radius:var(--r-img); border:1px solid var(--img-line); box-shadow:var(--shadow-soft);}

/* footer stays dark, just larger text */

@media (max-width:640px){html{font-size:106.25%;} section{padding:64px 0;} #dimensions{padding:80px 0;}}