:root{
    --cream:#FAF9F6;
    --cream-2:#F5F5F5;
    --white:#FFFFFF;
    --paper:#F5F5F5;
    --charcoal:#3A3A3A;
    --ink:#2E2E2E;
    --body-text:#4A4A4A;
    --muted:#8C8C8C;
    --blue:#06C7B2;
    --line:#E4E0D6;
    --btn-dark:#383838;
  }

  *{box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  body{
    margin:0;
    font-family:'Lora', Georgia, serif;
    color:var(--body-text);
    background:var(--white);
    line-height:1.65;
  }
  h1,h2,h3,.nav-link,.eyebrow,.btn,.logo{
    font-family:'Montserrat', sans-serif;
  }
  a{color:var(--blue); text-decoration:none;}
  img{max-width:100%; display:block;}

  .container{
    max-width:1240px;
    margin:0 auto;
    padding:0 60px;
  }

  /* ---------- NAV ---------- */
  header{
    position:sticky;
    top:0;
    background:var(--white);
    z-index:100;
    border-bottom:1px solid var(--line);
  }
  .nav-inner{
    display:flex;
    align-items:center;
    justify-content:space-between;
    padding:22px 60px;
    max-width:1240px;
    margin:0 auto;
  }
  .logo{
    font-weight:700;
    font-size:1.25rem;
    color:var(--ink);
    letter-spacing:.2px;
  }
  .logo span{font-weight:500;}
  nav ul{
    list-style:none;
    display:flex;
    gap:26px;
    margin:0;
    padding:0;
  }
  nav a{
    color:var(--muted);
    font-size:.8rem;
    letter-spacing:1px;
    font-weight:500;
    text-transform:uppercase;
    white-space:nowrap;
    transition:color .2s ease;
  }
  nav a:hover{color:var(--ink);}
  .nav-cta{
    border:1.5px solid var(--ink);
    padding:13px 22px;
    font-size:.78rem;
    letter-spacing:1.2px;
    font-weight:600;
    text-transform:uppercase;
    color:var(--ink);
    white-space:nowrap;
  }
  .nav-cta:hover{background:var(--ink); color:var(--white);}
  .nav-toggle{
    display:none;
    flex-direction:column;
    justify-content:center;
    gap:5px;
    width:32px;
    height:32px;
    background:none;
    border:none;
    cursor:pointer;
    padding:0;
  }
  .nav-toggle span{
    display:block;
    width:100%;
    height:2px;
    background:var(--ink);
  }

  /* ---------- GENERIC ---------- */
  .eyebrow{
    color:var(--blue);
    font-size:.85rem;
    letter-spacing:2.5px;
    font-weight:600;
    text-transform:uppercase;
    margin-bottom:18px;
    display:block;
  }
  section{padding:110px 0;}
  .bg-cream{background:var(--cream);}
  .bg-paper{background:var(--paper);}
  .bg-white{background:var(--white);}

  h1{
    font-size:2.6rem;
    line-height:1.2;
    color:var(--ink);
    font-weight:500;
    margin:0 0 28px;
  }
  h2{
    font-size:2.1rem;
    color:var(--ink);
    font-weight:500;
    line-height:1.25;
    margin:0 0 24px;
  }
  .lede{
    font-size:1.2rem;
    color:var(--body-text);
  }
  .quote-italic{
    font-style:italic;
    color:var(--muted);
    font-size:1.15rem;
  }
  .btn{
    display:inline-block;
    background:var(--btn-dark);
    color:var(--white);
    padding:18px 30px;
    font-size:.8rem;
    letter-spacing:1.5px;
    font-weight:600;
    text-transform:uppercase;
    border:none;
    cursor:pointer;
  }
  .btn:hover{background:var(--ink);}

  /* ---------- HERO ---------- */
  .hero{
    display:grid;
    grid-template-columns:1fr 1fr;
    align-items:stretch;
    padding:0;
    min-height:680px;
  }
  .hero-text{
    background:var(--cream);
    display:flex;
    flex-direction:column;
    justify-content:center;
    padding:90px 80px;
  }
  .hero-text h1{max-width:560px;}
  .hero-text p{max-width:520px; margin:0 0 18px;}
  .hero-visual{
    position:relative;
    overflow:hidden;
    background:
      radial-gradient(circle at 70% 35%, rgba(255,255,255,.55), transparent 55%),
      linear-gradient(135deg, #cdbfa3 0%, #efe7d8 45%, #f7f3ea 100%);
  }
  .hero-visual svg{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
  }

  /* ---------- QUOTE BAND ---------- */
  .quote-band{
    text-align:center;
    padding:130px 0;
  }
  .quote-band blockquote{
    font-style:italic;
    font-size:2rem;
    line-height:1.8;
    color:var(--ink);
    max-width:900px;
    margin:0 auto;
  }
  .quote-band p{
    max-width:680px;
    margin:0 auto;
    color:var(--muted);
    font-size:1.05rem;
  }

  /* ---------- TWO COL (paradox / about) ---------- */
  .split{
    display:grid;
    grid-template-columns:0.95fr 1.05fr;
    gap:80px;
    align-items:center;
  }
  .split.reverse{grid-template-columns:1.05fr 0.95fr;}
  .split.reverse .split-visual{order:2;}
  .split-visual{
    aspect-ratio:4/5;
    border-radius:2px;
    overflow:hidden;
    position:relative;
  }
  .split-visual svg{width:100%; height:100%; display:block;}
  .split-text p{margin:0 0 20px;}

  .visual-paradox{
    background:linear-gradient(160deg,#2c3142 0%, #6f7a93 50%, #f1ead9 100%);
    aspect-ratio:0.52;
    max-height:1060px;
  }
  .visual-research{
    background:linear-gradient(150deg,#aab6c4 0%, #dfe4ea 60%, #f4f1e9 100%);
    aspect-ratio:16/7;
  }
  .visual-journal{
    background:linear-gradient(150deg,#e7dcc3 0%, #cdbb95 60%, #efe6d2 100%);
    aspect-ratio:1.5;
    max-height:400px;
  }

  /* ---------- ABOUT ---------- */
  .about-wrap{
    display:grid;
    grid-template-columns:1fr 220px;
    gap:60px;
    align-items:start;
  }
  .about-photo{
    width:220px;
    height:220px;
    border-radius:50%;
    background:linear-gradient(160deg,#9aa3b0,#dfe1e6);
    border:8px solid #fff;
    box-shadow:0 0 0 1px var(--line);
  }
  .about-wrap p{margin:0 0 20px;}
  .about-text p{font-size:1.15rem; line-height:1.7;}

  /* ---------- FIELD MOMENTS / SUBSCRIBE ---------- */
  .fm-wrap{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:70px;
    align-items:center;
  }
  .subscribe-form{
    display:flex;
    flex-direction:column;
    gap:16px;
    max-width:480px;
    margin-top:30px;
  }
  .subscribe-form input[type="email"]{
    padding:18px 20px;
    border:1px solid #d8d4c8;
    background:var(--white);
    font-family:'Lora', serif;
    font-size:1rem;
    color:var(--ink);
  }
  .subscribe-form input[type="email"]::placeholder{color:var(--muted);}
  .subscribe-form button{width:100%;}
  .form-note{font-size:.9rem; color:var(--muted); margin-top:4px; text-align:center;}

  /* ---------- RESEARCH ---------- */
  .research-head{text-align:center; max-width:760px; margin:0 auto 60px;}
  .research-head h2{font-size:2.2rem;}
  .research-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:60px 80px;
    margin-top:70px;
  }
  .research-item{
    background:var(--white);
    padding:36px 32px;
    transition:transform .25s ease, box-shadow .25s ease;
    cursor:pointer;
  }
  .research-item:hover{
    transform:translateY(-8px);
    box-shadow:0 14px 34px rgba(0,0,0,0.10);
  }
  .research-item h3{
    font-family:'Montserrat', sans-serif;
    font-size:1.05rem;
    letter-spacing:1px;
    text-transform:uppercase;
    color:var(--ink);
    font-weight:600;
    margin:0 0 14px;
  }
  .research-item p{margin:0; color:var(--body-text);}

  /* ---------- WORK TOGETHER ---------- */
  .wt-intro{
    max-width:820px;
    margin:0 auto 70px;
    text-align:center;
  }
  .wt-intro h2{font-size:2.2rem;}
  .wt-grid{
    display:grid;
    grid-template-columns:repeat(3, 1fr);
    gap:40px;
  }
  .wt-card{
    background:var(--white);
    padding-bottom:28px;
    transition:transform .25s ease, box-shadow .25s ease;
    cursor:pointer;
  }
  .wt-card:hover{
    transform:translateY(-8px);
    box-shadow:0 14px 34px rgba(0,0,0,0.10);
  }
  .wt-card-visual{
    aspect-ratio:4/3;
    margin-bottom:24px;
  }
  .wt-card h3{
    font-family:'Montserrat', sans-serif;
    font-size:1.3rem;
    font-weight:500;
    color:var(--ink);
    margin:0 0 14px;
    line-height:1.4;
    min-height:2.8em;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:flex-start;
    text-align:center;
  }
  .wt-card p{margin:0 0 14px; font-size:1.08rem;}
  .wt-card h3, .wt-card p{padding:0 4px;}
  .wt-cta{text-align:center; margin-top:70px;}

  .v-chairs{background:linear-gradient(150deg,#bba47e 0%, #e7dcc4 50%, #f6f1e4 100%);}
  .v-mic{background:linear-gradient(150deg,#1c1c1c 0%, #4a3a2a 60%, #8a6f4d 100%);}
  .v-path{background:linear-gradient(150deg,#3c4a36 0%, #7a8f6a 55%, #cdd9bd 100%);}

  /* ---------- FOOTER ---------- */
  footer{
    background:var(--ink);
    color:#cfcfcf;
    padding:60px 0 36px;
  }
  .footer-inner{
    display:flex;
    justify-content:space-between;
    align-items:center;
    flex-wrap:wrap;
    gap:24px;
  }
  footer .logo{color:#fff;}
  footer nav ul{gap:26px;}
  footer nav a{color:var(--muted);}
  footer nav a:hover{color:#fff;}
  .footer-bottom{
    margin-top:40px;
    padding-top:24px;
    border-top:1px solid #444;
    font-size:.8rem;
    color:var(--muted);
    display:flex;
    justify-content:space-between;
    flex-wrap:wrap;
    gap:10px;
  }

  /* ---------- RESPONSIVE ---------- */
  @media (max-width: 980px){
    .container{padding:0 28px;}
    .nav-inner{padding:18px 24px;}
    .nav-toggle{display:flex;}
    nav ul{
      display:none;
      position:absolute;
      top:100%;
      left:0;
      right:0;
      flex-direction:column;
      gap:0;
      background:var(--white);
      border-top:1px solid var(--line);
      border-bottom:1px solid var(--line);
      padding:10px 24px;
    }
    nav.open ul{display:flex;}
    nav ul li{padding:14px 0; border-bottom:1px solid var(--line);}
    nav ul li:last-child{border-bottom:none;}
    header{position:sticky;}
    .nav-inner{position:relative; flex-wrap:wrap;}
    .hero{grid-template-columns:1fr;}
    .hero-text{padding:60px 32px;}
    .hero-visual{min-height:340px;}
    h1{font-size:1.9rem;}
    h2{font-size:1.6rem;}
    .split, .split.reverse{grid-template-columns:1fr;}
    .split.reverse .split-visual{order:0;}
    .about-wrap{grid-template-columns:1fr; }
    .about-photo{order:-1;}
    .fm-wrap{grid-template-columns:1fr;}
    .research-grid{grid-template-columns:1fr;}
    .wt-grid{grid-template-columns:1fr;}
    section{padding:70px 0;}
    .quote-band blockquote{font-size:1.4rem;}
  }

/* ---------- JOIN (final CTA before footer) ---------- */
.join-section{
  text-align:center;
  padding:100px 0;
}
.join-section h2{font-size:2.2rem; margin-bottom:36px;}
.join-form{
  max-width:620px;
  margin:0 auto;
  display:flex;
  flex-direction:column;
  gap:18px;
}
.join-form input{
  padding:20px 22px;
  border:1px solid #d8d4c8;
  background:var(--white);
  font-family:'Lora', serif;
  font-size:1rem;
  color:var(--ink);
  width:100%;
}
.join-form input::placeholder{color:var(--muted);}
.join-form button{width:100%; padding:20px 30px;}

/* ---------- FOOTER SOCIAL ---------- */
.footer-social{
  display:flex;
  justify-content:center;
  gap:18px;
  margin:30px 0 26px;
}
.footer-social a{
  width:38px;
  height:38px;
  border-radius:50%;
  border:1px solid #5a5a5a;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#cfcfcf;
}
.footer-social a:hover{border-color:#fff; color:#fff;}
.footer-social svg{width:16px; height:16px; fill:currentColor;}
.footer-email{
  text-align:center;
  font-family:'Montserrat', sans-serif;
  font-weight:600;
  font-size:.95rem;
  color:#fff;
  letter-spacing:.3px;
}
.footer-copy{
  text-align:center;
  font-size:.82rem;
  color:var(--muted);
  margin-top:18px;
  padding-top:0;
  border-top:none;
}
footer .footer-inner.stacked{
  flex-direction:column;
  text-align:center;
  gap:10px;
}

/* ====================================================== */
/* ===============  WORKSHOP / MOMENT PAGE  ============== */
/* ====================================================== */
.moment-hero{
  background:
    linear-gradient(165deg, rgba(20,20,18,.72), rgba(20,20,18,.55)),
    url('images/hero-neuron.jpg') center/cover no-repeat;
  color:#fff;
  text-align:center;
  padding:160px 40px 130px;
}
.moment-hero .eyebrow{color:#cfd6f0;}
.moment-hero h1{
  color:#fff;
  font-size:3.1rem;
  max-width:840px;
  margin:0 auto 18px;
}
.moment-hero .subtitle{
  font-family:'Montserrat', sans-serif;
  font-size:1rem;
  letter-spacing:1px;
  color:#e7e2cf;
  text-transform:uppercase;
  margin-bottom:0;
}

.moment-intro{
  max-width:760px;
  margin:0 auto;
  padding:100px 40px 20px;
  text-align:center;
}
.moment-intro p{font-size:1.15rem; margin:0 0 20px;}
.moment-intro .quote-italic{font-size:1.3rem; margin-top:30px;}

.moment-block{
  max-width:760px;
  margin:0 auto;
  padding:70px 40px;
  border-top:1px solid var(--line);
}
.moment-block .block-eyebrow{
  font-family:'Montserrat', sans-serif;
  font-size:1.4rem;
  font-weight:600;
  color:var(--ink);
  margin:0 0 24px;
  display:flex;
  align-items:center;
  gap:12px;
}
.moment-block p{margin:0 0 20px; font-size:1.08rem;}
.moment-block ul{
  margin:0 0 24px;
  padding-left:22px;
}
.moment-block li{
  margin-bottom:12px;
  font-size:1.08rem;
}
.moment-block .emphasis{
  font-style:italic;
  color:var(--ink);
  font-size:1.15rem;
}
.moment-block .question{
  font-style:italic;
  color:var(--muted);
  font-size:1.1rem;
  margin-top:26px;
}

.moment-cta{
  text-align:center;
  padding:100px 40px 140px;
  max-width:700px;
  margin:0 auto;
}
.moment-cta p{font-size:1.1rem; margin-bottom:36px;}

@media (max-width: 980px){
  .moment-hero{padding:90px 24px 70px;}
  .moment-hero h1{font-size:2.1rem;}
  .moment-block, .moment-intro, .moment-cta{padding-left:24px; padding-right:24px;}
}

/* ---------- LOGO IMAGE ---------- */
.logo-img{height:24px; width:auto; display:block;}
footer .logo-img{height:26px; filter:brightness(0) invert(1);}

/* ---------- REAL PHOTO FILLS (override placeholder gradients) ---------- */
.hero-visual, .visual-paradox, .visual-research, .visual-journal{
  background:none;
}
.hero-visual img, .visual-paradox img, .visual-research img, .visual-journal img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

/* ---------- WORK TOGETHER REAL PHOTOS ---------- */
.v-chairs, .v-mic, .v-path{background:none;}
.wt-card-visual img{width:100%; height:100%; object-fit:cover; display:block;}

/* ---------- ABOUT PHOTO (real image) ---------- */
.about-photo{
  overflow:hidden;
  background:none;
}
.about-photo img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

/* ---------- Paradox heading size tweak ---------- */
#paradox h2{font-size:1.85rem;}

/* ---------- Hero text size overrides ---------- */
.hero-title-sm{font-size:2.85rem;}
.hero-question-lg{font-size:1.55rem;}
.hero-text .lede{font-size:1.45rem;}

/* ---------- Paradox follow-up question (bordered quote style) ---------- */
.paradox-followup{
  font-size:1.8rem;
  color:var(--blue);
  border-left:3px solid var(--blue);
  padding-left:18px;
  margin:0 0 28px;
}

/* ---------- Field Moments paragraph size ---------- */
.fm-text{font-size:1.15rem; line-height:1.7;}

/* ---------- Paradox section paragraph size ---------- */
#paradox .split-text p{font-size:1.15rem; line-height:1.7;}
#paradox .paradox-followup{font-size:1.8rem;}

/* ---------- Vibe Shifter list ---------- */
.fm-list{
  margin:0 0 20px;
  padding-left:22px;
  font-size:1.15rem;
  line-height:1.7;
}
.fm-list li{margin-bottom:10px;}

/* ---------- Quote attribution ---------- */
.quote-source{
  display:block;
  margin-top:22px;
  font-size:1rem;
  font-style:normal;
  color:var(--muted);
}

/* ---------- Hero subline (same size as hero title) ---------- */
.hero-subline{
  font-size:2.25rem;
  line-height:1.3;
  color:var(--body-text);
  margin:1.4em 0 18px;
}

/* ====================================================== */
/* ===============  REFINEMENT PASS  ==================== */
/* ====================================================== */

/* ---------- Scroll reveal ---------- */
.reveal{
  opacity:0;
  transform:translateY(24px);
  transition:opacity .7s cubic-bezier(.22,.61,.36,1), transform .7s cubic-bezier(.22,.61,.36,1);
  will-change:opacity, transform;
}
.reveal.is-visible{
  opacity:1;
  transform:none;
}
@media (prefers-reduced-motion: reduce){
  .reveal{opacity:1; transform:none; transition:none;}
}

/* ---------- Subpage top spacing (pages with no hero) ---------- */
.subpage-top{padding-top:90px;}

.about-title{
  font-family:'Montserrat', sans-serif;
  font-size:2.6rem;
  font-weight:600;
  color:var(--ink);
  line-height:1.15;
  margin:6px 0 26px;
}

/* ---------- Vibe Shifter two-column ---------- */
.vs-wrap{
  display:grid;
  grid-template-columns:0.82fr 1.18fr;
  gap:0;
  align-items:stretch;
  border:1px solid var(--line);
  border-radius:4px;
  overflow:hidden;
  background:var(--white);
  box-shadow:0 24px 60px rgba(40,40,40,0.06);
}
.vs-intro{
  background:var(--cream);
  padding:56px 44px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  border-right:1px solid var(--line);
}
.vs-eyebrow{
  font-family:'Montserrat', sans-serif;
  font-size:.72rem;
  letter-spacing:2.5px;
  text-transform:uppercase;
  color:var(--teal, #06C7B2);
  font-weight:600;
  margin-bottom:22px;
  display:block;
}
.vs-portrait{
  width:96px;
  height:96px;
  border-radius:50%;
  overflow:hidden;
  margin-bottom:24px;
  box-shadow:0 0 0 1px var(--line);
}
.vs-portrait img{width:100%; height:100%; object-fit:cover; display:block;}
.vs-bio{
  font-size:0.98rem;
  line-height:1.7;
  color:var(--body-text);
  margin:0 0 22px;
}
.vs-link{
  font-family:'Montserrat', sans-serif;
  font-size:.9rem;
  font-weight:600;
  letter-spacing:.3px;
  color:var(--teal, #06C7B2);
}
.vs-link:hover{opacity:.72;}
.vs-panel{
  padding:56px 52px;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.vs-panel h2{margin-top:0;}

/* ---------- Speaking page ---------- */
.visual-speaking{aspect-ratio:4/3; max-height:520px;}
.speaking-cta{text-align:center;}
.speaking-cta h2{margin-bottom:16px;}
.speaking-cta .lede{max-width:560px; margin:0 auto 34px;}

/* ---------- Work Together card as link ---------- */
.wt-card-link{
  text-decoration:none;
  color:inherit;
  display:block;
}
.wt-card-link h3{color:var(--ink);}

/* ---------- Teal accent token ---------- */
:root{ --teal:#06C7B2; }

/* ---------- Responsive ---------- */
@media (max-width: 980px){
  .vs-wrap{grid-template-columns:1fr;}
  .vs-intro{border-right:none; border-bottom:1px solid var(--line); padding:40px 28px;}
  .vs-panel{padding:40px 28px;}
  .subpage-top{padding-top:60px;}
  .about-title{font-size:2rem;}
}

/* ---------- Vibe Shifter refinements (portrait removed) ---------- */
.vs-highlight{
  color:var(--teal, #06C7B2);
  font-weight:600;
  border-bottom:2px solid var(--teal, #06C7B2);
  padding-bottom:1px;
}
.vs-highlight:hover{opacity:.72;}
.vs-bio{margin:0 0 18px;}
.vs-bio:last-child{margin-bottom:0;}
.vs-intro{justify-content:center;}

/* ====================================================== */
/* ===============  VIBE POSTER + NOTES + WORKSHOP  ===== */
/* ====================================================== */

/* Vibe Shifter left panel as full-bleed image */
.vs-intro-image{
  padding:0;
  background:none;
}
.vs-intro-image img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

/* Past-issue note boxes */
.note-grid{
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:32px;
  margin-top:44px;
}
.note-card{
  background:var(--white);
  border:1px solid var(--line);
  border-radius:4px;
  padding:30px 28px;
  transition:transform .25s ease, box-shadow .25s ease;
  cursor:pointer;
}
.note-card:hover{
  transform:translateY(-8px);
  box-shadow:0 14px 34px rgba(0,0,0,0.10);
}
.note-date{
  font-family:'Montserrat', sans-serif;
  font-size:.75rem;
  font-weight:600;
  letter-spacing:1.5px;
  text-transform:uppercase;
  color:var(--teal, #06C7B2);
  display:block;
  margin-bottom:14px;
}
.note-card h3{
  font-family:'Montserrat', sans-serif;
  font-size:1.1rem;
  font-weight:600;
  color:var(--ink);
  margin:0 0 12px;
  line-height:1.4;
}
.note-card p{
  margin:0;
  font-size:.98rem;
  color:var(--body-text);
}

/* Long nav CTA */
.nav-cta{
  font-size:.7rem;
  letter-spacing:.6px;
  padding:10px 16px;
  max-width:280px;
  text-align:center;
  line-height:1.5;
  white-space:normal;
}

/* Workshop page */
.container-narrow{
  max-width:760px;
  margin:0 auto;
  padding:0 32px;
}
.ws-body{padding:90px 0 60px;}
.ws-title{
  font-family:'Montserrat', sans-serif;
  font-size:1.3rem;
  font-weight:700;
  color:var(--ink);
  text-align:center;
  line-height:1.3;
  margin:0 0 44px;
}
.ws-copy{margin-bottom:54px;}
.ws-copy p{
  font-family:'Lora', serif;
  font-size:1.15rem;
  line-height:1.75;
  margin:0 0 20px;
}
.ws-subhead{
  font-family:'Montserrat', sans-serif;
  font-size:1.35rem;
  font-weight:700;
  color:var(--ink);
  margin:0 0 18px;
}
.ws-lead-in{margin-bottom:10px;}
.ws-list{
  margin:0 0 22px;
  padding-left:24px;
  font-family:'Lora', serif;
  font-size:1.15rem;
  line-height:1.75;
}
.ws-list li{margin-bottom:10px;}
.ws-join{
  text-align:center;
  padding-top:20px;
}
.ws-join .ws-title{margin-bottom:30px;}
.ws-join .btn{
  max-width:520px;
  white-space:normal;
  line-height:1.5;
}

@media (max-width: 980px){
  .note-grid{grid-template-columns:1fr;}
  .nav-cta{display:none;}
  .ws-title{font-size:1.6rem;}
}

/* ---------- Round of adjustments ---------- */
.ws-title-sm{font-size:1.0rem;}
.wt-intro .lede{font-size:2.05rem; font-weight:600; font-family:'Montserrat', sans-serif; line-height:1.4;}
.note-head{margin-top:70px; text-align:center;}
.note-head .vs-eyebrow{margin-bottom:0;}
@media (max-width:980px){
  .ws-title-sm{font-size:1.0rem;}
}

/* ====================================================== */
/* ===============  HOSTINGER REACH EMBED  ============== */
/* ====================================================== */
/* Wrapper keeps the Reach form aligned with the old Kit
   form footprint. If Reach renders inline (not in an
   iframe), the rules below also restyle its inputs and
   button to match the site. If it renders in an iframe,
   adjust colors/fonts inside the Reach editor instead. */
.reach-embed{
  max-width:480px;
  margin-top:30px;
}
.reach-embed-center{
  margin-left:auto;
  margin-right:auto;
}
.reach-embed input[type="email"],
.reach-embed input[type="text"]{
  width:100%;
  padding:18px 20px;
  border:1px solid #d8d4c8;
  border-radius:0;
  background:var(--white);
  font-family:'Lora', serif;
  font-size:1rem;
  color:var(--ink);
}
.reach-embed input::placeholder{color:var(--muted);}
.reach-embed button,
.reach-embed [type="submit"]{
  width:100%;
  background:var(--btn-dark);
  color:var(--white);
  padding:18px 30px;
  font-family:'Montserrat', sans-serif;
  font-size:.8rem;
  letter-spacing:1.5px;
  font-weight:600;
  text-transform:uppercase;
  border:none;
  border-radius:0;
  cursor:pointer;
}
.reach-embed button:hover,
.reach-embed [type="submit"]:hover{background:var(--ink);}
.reach-embed label{
  font-family:'Montserrat', sans-serif;
  font-size:.8rem;
  letter-spacing:1px;
  color:var(--muted);
}

/* ---------- Fine-tune round ---------- */
/* 1. Tighter gap below the opening Vibe Shifter line (home + vibeshifter pages) */
.vs-panel .fm-text:first-of-type{margin-bottom:6px;}
/* 2. HELLO eyebrow +1 size (home left column only) */
.vs-intro .vs-eyebrow{font-size:.85rem;}
/* 4. ABOUT eyebrow +1 size, now serving as the page heading */
#about .vs-eyebrow{font-size:.9rem; margin-bottom:26px;}
