:root{
    --cream:#FBFAF5;
    --cream-alt:#F6F2E8;
    --sage-dark:#414738;
    --sage-dark-2:#363b2e;
    --sage-tint:#E7E4D5;
    --sage-tint-2:#EFEDE2;
    --gold:#8A6A22;
    --gold-soft:#B4934C;
    --text-dark:#2A2C23;
    --text-body:#5C5F52;
    --border-light:#E2DECF;
    --white:#FFFFFF;
  }

  *{margin:0;padding:0;box-sizing:border-box;}
  html{scroll-behavior:smooth;}

  body{
    font-family:'Jost', sans-serif;
    color:var(--text-body);
    background:var(--cream);
    line-height:1.5;
    -webkit-font-smoothing:antialiased;
  }

  h1,h2,h3,.serif{
    font-family:'Cormorant Garamond', serif;
    color:var(--text-dark);
    font-weight:600;
    line-height:1.15;
  }

  a{text-decoration:none;color:inherit;}
  ul{list-style:none;}
  img{max-width:100%;display:block;}
  button{font-family:inherit;cursor:pointer;border:none;}

  .eyebrow{
    font-family:'Jost',sans-serif;
    font-size:14px;
    letter-spacing:2px;
    text-transform:uppercase;
    color:var(--gold);
    font-weight:500;
  }

  .btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    padding:13px 26px;
    border-radius:4px;
    font-size:15px;
    letter-spacing:0.3px;
    font-weight:500;
    transition:all 0.2s ease;
    white-space:nowrap;
  }
  .btn-primary{background:var(--sage-dark);color:var(--cream);}
  .btn-primary:hover{background:var(--sage-dark-2);}
  .btn-outline{background:transparent;border:1px solid var(--sage-dark);color:var(--sage-dark);}
  .btn-outline:hover{background:var(--sage-dark);color:var(--cream);}
  .btn-outline-light{background:transparent;border:1px solid rgba(251,250,245,0.6);color:var(--cream);}
  .btn-outline-light:hover{background:var(--cream);color:var(--sage-dark);}
  .btn-small{padding:10px 20px;font-size:14px;}

  /* ---------- HEADER ---------- */
  header{
    background:var(--cream-alt);
    border-bottom:1px solid var(--border-light);
    position:sticky;
    top:0;
    z-index:100;
  }
  .header-inner{
    display:flex;
    align-items:center;
    justify-content:space-between;
    padding:10px 48px;
    max-width:1320px;
    margin:0 auto;
  }
  .logo{display:flex;flex-direction:column;align-items:center;gap:2px;}
  .logo-icon{height:46px;width:auto;display:block;}
  .logo-text{display:flex;flex-direction:column;align-items:center;text-align:center;}
  .logo-text .name{font-family:'Cormorant Garamond',serif;font-size:24px;font-weight:600;color:var(--text-dark);line-height:1;}
  .logo-text .tagline{font-size:10.5px;letter-spacing:1.3px;color:var(--gold);text-transform:uppercase;margin-top:3px;white-space:nowrap;}
  nav ul{display:flex;gap:28px;}
  nav a{font-size:15.5px;color:var(--text-dark);padding-bottom:5px;border-bottom:2px solid transparent;transition:color 0.2s;}
  nav a.active{color:var(--gold);border-color:var(--gold);}
  nav a:hover{color:var(--gold);}

  /* ---------- HERO ---------- */
  .hero{position:relative;background:var(--cream-alt);overflow:hidden;padding:0 48px;box-sizing:border-box;}
  .hero-inner{
    display:grid;
    grid-template-columns:380px 1fr;
    gap:32px;
    align-items:end;
    max-width:1224px;
    margin:0 auto;
    padding:36px 0 20px;
    position:relative;
  }
  .hero-copy h1{font-size:43px;line-height:1.15;margin-bottom:14px;max-width:400px;}
  .hero-copy h1 em{font-style:italic;color:var(--gold);}
  .hero-copy p{font-size:15.5px;max-width:480px;margin-bottom:8px;color:var(--text-body);line-height:1.5;}
  .hero-actions{display:flex;align-items:center;gap:14px;margin-top:14px;}
  .hero-image{border-radius:6px;overflow:hidden;aspect-ratio:16/12;max-height:328px;width:100%;}
  .hero-photo{
    width:100%;height:100%;object-fit:cover;object-position:center 18%;display:block;
    -webkit-mask-image:linear-gradient(to right, transparent 0%, black 10%);
    mask-image:linear-gradient(to right, transparent 0%, black 10%);
  }

  /* ---------- TRUST STRIP ---------- */
  .trust-strip{background:var(--cream);border-bottom:1px solid var(--border-light);}
  .trust-inner{
    display:flex;
    flex-direction:row;
    justify-content:space-between;
    align-items:flex-start;
    padding:16px 48px;
    max-width:1320px;
    margin:0 auto;
    gap:16px;
  }
  .trust-item{display:flex;align-items:flex-start;gap:10px;flex:1;min-width:0;}
  .trust-item svg{width:24px;height:24px;min-width:24px;max-width:24px;flex-shrink:0;color:var(--gold);}
  .trust-item h4{font-family:'Jost',sans-serif;font-size:14.5px;font-weight:600;color:var(--text-dark);margin-bottom:2px;}
  .trust-item p{font-size:12.5px;color:var(--text-body);line-height:1.3;}

  /* ---------- INFO ROW (Welcome / Trimester / Founder Message) ---------- */
.info-row{background:var(--cream-alt);padding:40px 48px;box-sizing:border-box;}
.info-row-inner{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    grid-template-rows:auto auto;
    gap:20px 32px;
    max-width:1224px;
    margin:0 auto;
    width:100%;
    align-items:start;
  }
.info-col-founder{
    grid-column:3;
    grid-row:1 / 3;
    background:var(--sage-tint-2);
    border-radius:8px;
    padding:0 0 24px;
    margin-top:20px;
  }
  .info-col-founder h3,
  .info-col-founder .quote-mark-small,
  .info-col-founder .fm-quote,
  .info-col-founder .fm-author{
    padding-left:24px;
    padding-right:24px;
  }
  .info-gallery{
    grid-column:1 / 3;
    grid-row:2;
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:24px;
  }
.info-gallery-photo{
    position:relative;
    aspect-ratio:3/2;
    border-radius:8px;
    overflow:hidden;
    margin-bottom:20px;
  }
  .info-gallery-photo img{width:100%;height:100%;object-fit:cover;display:block;}
  .info-gallery-icon{
    position:absolute;
    bottom:-20px;
    left:16px;
    width:44px;height:44px;
    border-radius:50%;
    background:var(--sage-tint);
    display:flex;align-items:center;justify-content:center;
    box-shadow:0 2px 8px rgba(42,44,35,0.12);
  }
  .info-gallery-icon svg{width:20px;height:20px;min-width:20px;color:var(--sage-dark);}
  .info-gallery-item h4{
    font-family:'Cormorant Garamond',serif;
    font-weight:600;
    font-size:18px;
    color:var(--text-dark);
    margin-bottom:6px;
  }
  .info-gallery-item p{
    font-size:13.5px;
    line-height:1.5;
    color:var(--text-body);
  }
  .info-icon{
    width:44px;height:44px;
    min-width:44px;
    border-radius:50%;
    background:var(--sage-tint);
    display:flex;align-items:center;justify-content:center;
    margin-bottom:14px;
  }
    .info-icon svg{width:20px;height:20px;min-width:20px;max-width:20px;color:var(--sage-dark);}
  .story-copy .info-icon{background:var(--sage-dark);}
  .story-copy .info-icon svg{color:var(--cream);}
  .info-icon svg{width:20px;height:20px;min-width:20px;max-width:20px;color:var(--sage-dark);}
.fm-photo{
    width:100%;
    aspect-ratio:16/9;
    border-radius:6px;
    margin-bottom:14px;
    overflow:hidden;
  }
.fm-photo img{
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center 15%;
    display:block;
    -webkit-mask-image:linear-gradient(to right, transparent 0%, black 25%);
    mask-image:linear-gradient(to right, transparent 0%, black 25%);
  }
  .info-col h3{font-size:19px;margin-bottom:10px;}
  .info-col p{font-size:14px;line-height:1.5;color:var(--text-body);margin-bottom:8px;}
  .quote-mark-small{font-family:'Cormorant Garamond',serif;font-size:32px;color:var(--gold);line-height:1;display:block;margin-bottom:2px;}
  .fm-quote{font-style:italic;}
  .fm-author{font-size:13px;color:var(--text-dark);font-weight:600;margin-top:8px;}
  .fm-author span{display:block;font-size:12px;color:var(--text-body);font-weight:400;margin-top:2px;}

  /* ---------- SERVICES ---------- */
  .services-block{background:var(--cream);padding:28px 48px;}
  .services-inner{max-width:1320px;margin:0 auto;}
  .services-inner .eyebrow{display:block;margin-bottom:8px;}
  .services-inner h2{font-size:26px;margin-bottom:20px;}
  .services-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:10px;}
  .service-card{border:1px solid var(--border-light);border-radius:6px;padding:14px 10px;text-align:left;}
  .service-card svg{width:22px;height:22px;min-width:22px;max-width:22px;color:var(--gold);margin-bottom:8px;}
  .service-card h4{font-family:'Jost',sans-serif;font-size:13px;font-weight:600;color:var(--text-dark);margin-bottom:4px;line-height:1.25;}
  .service-card p{font-size:11.5px;line-height:1.35;}

  /* ---------- MOTHERWELL DIFFERENCE ---------- */
  .difference-block{background:var(--sage-tint-2);padding:28px 48px;}
  .difference-inner{
    display:grid;
    grid-template-columns:1.2fr 1fr;
    gap:36px;
    align-items:center;
    max-width:1320px;
    margin:0 auto;
  }
  .difference-copy .eyebrow{display:block;margin-bottom:8px;}
  .difference-copy h2{font-size:28px;margin-bottom:18px;}
  .difference-grid{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:10px;
  }
  .difference-item{
    display:flex;
    align-items:center;
    gap:8px;
    background:var(--white);
    border:1px solid var(--border-light);
    border-radius:6px;
    padding:12px 14px;
    font-size:13.5px;
    font-weight:500;
    color:var(--text-dark);
  }
  .difference-item .check{color:var(--gold);font-weight:700;flex-shrink:0;}
  .difference-photo{
    border-radius:6px;overflow:hidden;aspect-ratio:4/3;
  }
  .difference-photo img{width:100%;height:100%;object-fit:cover;display:block;}

  /* ---------- KIND WORDS ---------- */
  .kind-words-block{background:var(--cream);padding:20px 48px;}
  .kind-words-inner{max-width:1320px;margin:0 auto;text-align:center;}
  .kind-words-inner .eyebrow{display:block;margin-bottom:6px;}
  .kind-words-inner h2{font-size:26px;margin-bottom:16px;}
  .kw-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;text-align:left;}
  .kw-card{background:var(--cream-alt);border:1px solid var(--border-light);border-radius:6px;padding:18px 16px;}
  .kw-card .quote-mark{font-family:'Cormorant Garamond',serif;font-size:28px;color:var(--gold);line-height:1;margin-bottom:6px;display:block;}
  .kw-card p{font-size:13.5px;line-height:1.5;margin-bottom:12px;color:var(--text-body);}
  .kw-card .author{font-size:13px;font-weight:600;color:var(--text-dark);}
  .kw-card .author-role{font-size:12px;color:var(--text-body);}

  /* ---------- CLOSING BANNER ---------- */
.closing-banner{background:var(--sage-dark);padding:22px 48px;text-align:center;position:relative;overflow:hidden;margin-top:28px;}
  .closing-banner-photo{
    position:absolute;
    top:0; left:0;
    width:45%;
    height:100%;
    overflow:hidden;
  }
  .closing-banner-photo img{
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center 30%;
    display:block;
    -webkit-mask-image:linear-gradient(to right, black 0%, black 40%, transparent 100%);
    mask-image:linear-gradient(to right, black 0%, black 40%, transparent 100%);
    opacity:0.55;
  }
  .closing-banner-inner{max-width:640px;margin:0 auto;position:relative;z-index:1;}
  .closing-banner h2{color:var(--cream);font-size:28px;margin-bottom:8px;}
  .closing-banner p{color:rgba(251,250,245,0.8);font-size:15px;margin-bottom:14px;}
  .closing-actions{display:flex;justify-content:center;gap:14px;}

  /* ---------- PRIORITY LIST ---------- */
  .priority{background:var(--sage-tint);position:relative;overflow:hidden;}
  .priority-inner{
    display:grid;
    grid-template-columns:0.78fr 1.15fr 0.55fr;
    gap:28px;
    align-items:start;
    max-width:1320px;
    margin:0 auto;
    padding:14px 48px 18px;
    position:relative;
  }
  .priority-copy h2{font-size:24px;margin:56px 0 8px;}
  .priority-copy p{font-size:14.5px;margin-bottom:10px;}
  .privacy-note{display:flex;align-items:flex-start;gap:7px;font-size:12px;color:var(--text-body);}
  .privacy-note svg{width:14px;height:14px;flex-shrink:0;margin-top:2px;color:var(--gold);}
  .priority-form{padding-top:56px;}
  .form-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:10px;}
  .priority-form input,.priority-form select{
    width:100%;padding:12px 14px;border:1px solid var(--border-light);border-radius:4px;
    background:var(--white);font-family:'Jost',sans-serif;font-size:14px;color:var(--text-dark);appearance:none;
  }
  .priority-form select{
    background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='8'><path d='M1 1l5 5 5-5' stroke='%238A6A22' stroke-width='1.5' fill='none'/></svg>");
    background-repeat:no-repeat;background-position:right 14px center;
  }
  .priority-form input::placeholder{color:#9C9C8E;}
  .priority-form .btn-primary{width:100%;padding:13px;font-size:14.5px;}
  .priority-image{
    border-radius:6px;overflow:hidden;height:342px;
  }
  .priority-image img{width:100%;height:100%;object-fit:cover;display:block;}

/* ---------- FOOTER ---------- */
  footer{background:var(--cream-alt);border-top:1px solid var(--border-light);padding:16px 48px 8px;}
  .footer-inner{display:grid;grid-template-columns:1.3fr 0.8fr 1fr 1fr 0.9fr;gap:20px;max-width:1320px;margin:0 auto;padding-bottom:10px;align-items:start;}
  .footer-logo{display:flex;align-items:center;gap:8px;margin-bottom:4px;}
  .footer-logo-icon{height:34px;width:auto;display:block;}
  .footer-logo-text{display:flex;flex-direction:column;}
  .footer-logo-text .name{font-family:'Cormorant Garamond',serif;font-size:19px;font-weight:600;color:var(--text-dark);line-height:1;}
  .footer-logo-text .tag{font-size:8px;letter-spacing:1.1px;color:var(--gold);text-transform:uppercase;margin-top:2px;}
  .footer-blurb{font-size:13px;max-width:240px;color:var(--text-body);line-height:1.45;}
  .footer-col h5{font-size:13.5px;font-weight:600;color:var(--text-dark);margin-bottom:6px;}
  .footer-col ul li{margin-bottom:4px;}
  .footer-col a{font-size:13.5px;color:var(--text-body);}
  .footer-col a:hover{color:var(--gold);}
  .contact-list li{display:flex;align-items:center;gap:7px;font-size:13px;color:var(--text-body);margin-bottom:5px;}
  .contact-list svg{width:14px;height:14px;min-width:14px;color:var(--gold);flex-shrink:0;}
  .socials{display:flex;gap:8px;margin-top:6px;}
  .socials a{width:28px;height:28px;border-radius:50%;background:var(--sage-dark);display:flex;align-items:center;justify-content:center;color:var(--cream);}
  .socials svg{width:12px;height:12px;min-width:12px;}
  .footer-cta p{font-size:12.5px;margin-bottom:6px;}
  .footer-bottom{max-width:1320px;margin:0 auto;padding-top:8px;border-top:1px solid var(--border-light);font-size:12px;color:var(--text-body);}
  @media (max-width:960px){
    .hero-inner,.priority-inner,.footer-inner,.difference-inner{grid-template-columns:1fr;}
    .trust-inner{flex-wrap:wrap;}
    .trust-item{min-width:45%;}
    nav{display:none;}
    .info-row-inner{grid-template-columns:1fr;}
    .services-grid{grid-template-columns:repeat(2,1fr);}
    .difference-grid{grid-template-columns:1fr;}
    .kw-grid{grid-template-columns:1fr;}
  }
/* ================= ABOUT PAGE ================= */

/* --- About Hero --- */
.about-hero{background:var(--cream-alt);padding:0 48px;box-sizing:border-box;}
.about-hero-inner{
    display:grid;
    grid-template-columns:420px 1fr;
    gap:32px;
    align-items:center;
    max-width:1224px;
    margin:0 auto;
    padding:24px 0;
  }
.about-hero-copy h1{font-size:43px;line-height:1.15;margin:8px 0 12px;}
  .about-hero-copy h1 em{font-style:italic;color:var(--gold);}
.about-hero-copy p{font-size:15.5px;color:var(--text-body);line-height:1.55;margin-bottom:8px;max-width:480px;}
.about-hero-image{
    border-radius:8px;
    aspect-ratio:16/7;
    overflow:hidden;
  }
.about-hero-photo{
    width:100%;height:100%;object-fit:cover;object-position:center 30%;display:block;
    -webkit-mask-image:linear-gradient(to right, transparent 0%, black 25%);
    mask-image:linear-gradient(to right, transparent 0%, black 25%);
  }
  .about-hero-photo{
    width:100%;height:100%;object-fit:cover;object-position:center 30%;display:block;
    -webkit-mask-image:linear-gradient(to right, transparent 0%, black 10%);
    mask-image:linear-gradient(to right, transparent 0%, black 10%);
  }

/* --- Our Story / Why We Exist --- */
.story-row{background:var(--cream);padding:24px 48px;}
.story-row-inner{max-width:1224px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:0;}
.story-block{display:grid;grid-template-columns:1.1fr 1fr;gap:16px;align-items:stretch;padding:0 24px;}
.story-block-reverse{grid-template-columns:1.1fr 1fr;}
.story-block:first-child{border-right:1px solid var(--border-light);padding-left:0;}
.story-block:last-child{padding-right:0;}
.story-photo{
    border-radius:8px;
    overflow:hidden;
    aspect-ratio:3/2;
    align-self:center;
    background:
      radial-gradient(circle at 30% 20%, rgba(255,255,255,0.4), transparent 50%),
      linear-gradient(160deg,#EADFCB 0%,#C9BFA3 55%,#8E9678 100%);
  }
  .story-photo-img{
    width:100%;height:100%;object-fit:cover;display:block;
    -webkit-mask-image:linear-gradient(to right, transparent 0%, black 20%);
    mask-image:linear-gradient(to right, transparent 0%, black 20%);
  }
.story-copy h2{font-size:24px;line-height:1.2;margin:6px 0 8px;}
.story-copy h2 em{font-style:italic;color:var(--gold);}
.story-copy p{font-size:14.5px;line-height:1.5;color:var(--text-body);margin-bottom:7px;}

/* --- Our Values --- */
.values-block{background:var(--sage-tint-2);padding:24px 48px;}
.values-inner{max-width:1224px;margin:0 auto;}
.values-eyebrow{display:block;text-align:center;margin-bottom:14px;}
.values-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:12px;}
.value-item{text-align:center;padding:0 4px;}
.value-item svg{width:24px;height:24px;color:var(--gold);margin:0 auto 8px;}
.value-item h4{font-family:'Jost',sans-serif;font-size:14px;font-weight:600;color:var(--text-dark);margin-bottom:4px;}
.value-item p{font-size:12.5px;line-height:1.4;color:var(--text-body);}

/* --- Founder Letter --- */
.founder-letter-block{background:var(--cream);padding:26px 48px;}
.founder-letter-inner{max-width:1024px;margin:0 auto;text-align:center;}
.founder-letter-inner h2{font-size:32px;margin:6px 0 18px;}
.founder-letter-grid{display:grid;grid-template-columns:300px 1fr;gap:32px;text-align:left;align-items:stretch;}
.founder-letter-photo{
    border-radius:8px;
    overflow:hidden;
    width:100%;
    height:100%;
  }
.founder-letter-copy p{font-size:14.5px;line-height:1.5;color:var(--text-body);margin-bottom:16px;}
.founding-belief{
    background:var(--sage-tint-2);
    border-left:3px solid var(--gold);
    border-radius:4px;
    padding:12px 16px;
    margin:12px 0;
  }
.founding-belief h5{font-size:13px;letter-spacing:1px;text-transform:uppercase;color:var(--gold);font-weight:600;margin-bottom:3px;}
.founding-belief p{margin:0;font-style:italic;color:var(--text-dark);font-size:15.5px;}
.founder-signoff{font-style:italic;color:var(--text-dark);font-weight:500;margin-top:12px;margin-bottom:14px;}

@media (max-width:960px){
  .about-hero-inner,.story-block,.founder-letter-grid{grid-template-columns:1fr;}
  .story-block-reverse .story-copy,.story-block-reverse .story-photo{order:initial;}
  .values-grid{grid-template-columns:repeat(3,1fr);}
}
/* ================= SERVICES PAGE ================= */

/* --- Services Hero --- */
.services-hero{background:var(--cream-alt);padding:0 48px;position:relative;overflow:hidden;box-sizing:border-box;}
.services-hero-leaf{position:absolute;left:0;top:0;width:120px;height:100%;opacity:0.5;pointer-events:none;}
.services-hero-inner{
    display:grid;
    grid-template-columns:420px 1fr;
    gap:32px;
    align-items:center;
    max-width:1224px;
    margin:0 auto;
    padding:28px 0;
    position:relative;
  }
.services-hero-copy h1{font-size:43px;line-height:1.15;margin:8px 0 12px;}
.services-hero-copy h1 em{font-style:italic;color:var(--gold);}
.services-hero-copy p{font-size:15.5px;color:var(--text-body);line-height:1.55;max-width:440px;}
.services-hero-image{
    aspect-ratio:16/7;
    overflow:hidden;
  }
.services-hero-photo{
    width:100%;height:100%;object-fit:cover;display:block;
    -webkit-mask-image:linear-gradient(to right, transparent 0%, black 22%);
    mask-image:linear-gradient(to right, transparent 0%, black 22%);
  }
/* --- Our Services (category cards) --- */
.service-cat-block{background:var(--cream);padding:28px 48px;}
.service-cat-inner{max-width:1320px;margin:0 auto;}
.service-cat-eyebrow{display:block;text-align:center;margin-bottom:16px;}
.service-cat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;}
.service-cat-card{border:1px solid var(--border-light);border-radius:8px;padding:18px 16px;background:var(--white);}
.service-cat-card svg{width:24px;height:24px;color:var(--gold);margin-bottom:10px;}
.service-cat-card h4{font-family:'Cormorant Garamond',serif;font-size:18px;font-weight:600;color:var(--text-dark);margin-bottom:6px;}
.service-cat-card p{font-size:13.5px;line-height:1.5;color:var(--text-body);margin-bottom:10px;}
.service-cat-meta{font-size:12px;font-weight:600;color:var(--sage-dark);}

/* --- Signature Packages --- */
.packages-block{background:var(--sage-tint-2);padding:28px 48px;}
.packages-inner{max-width:1320px;margin:0 auto;}
.packages-eyebrow{display:block;text-align:center;margin-bottom:16px;}
.packages-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;}
.package-card{
    background:var(--white);
    border:1px solid var(--border-light);
    border-radius:10px;
    padding:22px 20px;
    position:relative;
  }
.package-card-featured{border:2px solid var(--sage-dark);}
.package-badge{
    position:absolute;top:-12px;right:20px;
    background:var(--sage-dark);color:var(--cream);
    font-size:10.5px;font-weight:600;letter-spacing:0.5px;text-transform:uppercase;
    padding:5px 12px;border-radius:20px;
  }
.package-card h3{font-size:19px;margin-bottom:6px;}
.package-visits{font-size:12.5px;color:var(--text-body);margin-bottom:10px;}
.package-price{font-family:'Cormorant Garamond',serif;font-size:42px;font-weight:700;color:var(--sage-dark);margin-bottom:16px;line-height:1;}
.package-list li{
    font-size:12.5px;color:var(--text-dark);
    padding-left:18px;position:relative;margin-bottom:8px;line-height:1.4;
  }
.package-list li::before{content:'\2713';position:absolute;left:0;color:var(--gold);font-weight:700;}
.packages-note{
    display:flex;align-items:center;justify-content:center;gap:8px;
    margin-top:20px;font-size:12.5px;color:var(--text-body);
  }
.packages-note svg{width:16px;height:16px;color:var(--gold);flex-shrink:0;}

/* --- Optional Add-Ons --- */
.addons-block{background:var(--cream);padding:28px 48px;}
.addons-inner{max-width:1320px;margin:0 auto;text-align:center;}
.addons-inner .eyebrow{display:block;margin-bottom:6px;}
.addons-inner h2{font-size:26px;margin-bottom:18px;}
.addons-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;text-align:left;}
.addon-item{background:var(--cream-alt);border:1px solid var(--border-light);border-radius:8px;padding:16px 18px;}
.addon-item h5{font-size:14px;font-weight:600;color:var(--text-dark);margin-bottom:5px;}
.addon-item p{font-size:12.5px;color:var(--text-body);line-height:1.4;}

/* --- How It Works Preview --- */
.hiw-preview-block{background:var(--sage-dark);padding:28px 48px;}
.hiw-preview-inner{max-width:1320px;margin:0 auto;}
.hiw-preview-inner > .eyebrow{display:block;text-align:center;margin-bottom:18px;color:var(--gold-soft);}
.hiw-preview-steps{display:flex;align-items:flex-start;gap:14px;}
.hiw-step{display:flex;align-items:flex-start;gap:10px;flex:1;}
.hiw-num{
    width:26px;height:26px;min-width:26px;
    border-radius:50%;background:var(--cream);color:var(--sage-dark);
    display:flex;align-items:center;justify-content:center;
    font-size:12.5px;font-weight:600;
  }
.hiw-step h5{font-size:14px;font-weight:600;color:var(--cream);margin-bottom:4px;}
.hiw-step p,.hiw-step p a{font-size:12px;color:rgba(251,250,245,0.75) !important;line-height:1.4;}
.hiw-arrow{width:16px;height:16px;color:var(--gold-soft);flex-shrink:0;margin-top:6px;}

@media (max-width:960px){
  .services-hero-inner{grid-template-columns:1fr;}
  .service-cat-grid,.packages-grid,.addons-grid{grid-template-columns:1fr;}
  .hiw-preview-steps{flex-direction:column;}
  .hiw-arrow{transform:rotate(90deg);}
}
/* ---------- OUR PROMISE (Services page) ---------- */
.promise-block{background:var(--cream);padding:26px 48px;text-align:center;}
.promise-inner{max-width:820px;margin:0 auto;}
.promise-inner > .eyebrow{display:block;margin-bottom:8px;}
.promise-inner > p{font-size:14.5px;color:var(--text-body);line-height:1.55;margin-bottom:16px;}
.promise-quote{text-align:left;margin-bottom:18px;}
.promise-grid{grid-template-columns:repeat(4,1fr);gap:8px;text-align:left;margin-bottom:16px;}
.promise-grid .difference-item{font-size:12px;padding:9px 12px;}
.promise-closing{font-style:italic;font-size:13.5px;color:var(--text-dark);line-height:1.55;}

@media (max-width:960px){
  .promise-grid{grid-template-columns:repeat(2,1fr);}
}
/* ================= HOW IT WORKS PAGE ================= */

/* --- Hero --- */
.hiw-hero{background:var(--cream-alt);padding:0 48px;position:relative;overflow:hidden;box-sizing:border-box;}
.hiw-hero-leaf{position:absolute;left:0;top:0;width:120px;height:100%;opacity:0.5;pointer-events:none;}
.hiw-hero-inner{
    display:grid;
    grid-template-columns:420px 1fr;
    gap:32px;
    align-items:center;
    max-width:1224px;
    margin:0 auto;
    padding:28px 0;
    position:relative;
  }
.hiw-hero-copy h1{font-size:43px;line-height:1.15;margin:8px 0 12px;}
.hiw-hero-copy h1 em{font-style:italic;color:var(--gold);}
.hiw-hero-copy p{font-size:15.5px;color:var(--text-body);line-height:1.55;max-width:440px;}
.hiw-hero-image{
    aspect-ratio:16/7;
    overflow:hidden;
  }
  .hiw-hero-photo{
    width:100%;height:100%;object-fit:cover;display:block;
    -webkit-mask-image:linear-gradient(to right, transparent 0%, black 25%);
    mask-image:linear-gradient(to right, transparent 0%, black 25%);
  }

/* --- 4-Step Process --- */
.process-block{background:var(--cream);padding:28px 48px;}
.process-inner{max-width:1320px;margin:0 auto;text-align:center;}
.process-eyebrow{display:block;margin-bottom:8px;}
.process-heading{font-size:26px;margin-bottom:22px;}
.process-heading em{font-style:italic;color:var(--gold);}
.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;text-align:left;}
.process-card{
    background:var(--cream-alt);
    border:1px solid var(--border-light);
    border-radius:10px;
    padding:20px 18px;
    position:relative;
  }
.process-num{
    position:absolute;top:-12px;left:16px;
    width:26px;height:26px;
    border-radius:50%;background:var(--sage-dark);color:var(--cream);
    display:flex;align-items:center;justify-content:center;
    font-size:12.5px;font-weight:600;
  }
.process-card svg{width:38px;height:38px;color:var(--sage-dark);margin:6px 0 12px;}
  .process-card h4{font-family:'Cormorant Garamond',serif;font-size:18px;font-weight:600;color:var(--text-dark);margin-bottom:6px;}
.process-card p{font-size:13.5px;line-height:1.5;color:var(--text-body);}
/* --- Trust Row --- */
.hiw-trust-block{background:var(--sage-tint-2);padding:22px 48px;}
.hiw-trust-inner{
    display:flex;
    justify-content:space-between;
    max-width:1320px;
    margin:0 auto;
    gap:16px;
  }
.hiw-trust-item{flex:1;text-align:center;padding:0 6px;}
.hiw-trust-item svg{width:30px;height:30px;color:var(--sage-dark);margin:0 auto 10px;}
.hiw-trust-item h5{font-size:13.5px;font-weight:600;color:var(--text-dark);margin-bottom:4px;}
.hiw-trust-item p{font-size:13px;line-height:1.4;color:var(--text-body);}
/* --- Typical Visit Flow --- */
.visit-flow-block{background:var(--cream);padding:28px 48px;}
.visit-flow-inner{max-width:1320px;margin:0 auto;text-align:center;}
.visit-flow-eyebrow{display:block;margin-bottom:18px;}
.visit-flow-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;text-align:left;}
.visit-flow-item{
    background:var(--cream-alt);
    border:1px solid var(--border-light);
    border-radius:8px;
    padding:16px 18px;
    position:relative;
  }
.visit-flow-num{
    display:inline-flex;align-items:center;justify-content:center;
    width:22px;height:22px;border-radius:50%;
    background:var(--sage-tint);color:var(--sage-dark);
    font-size:11px;font-weight:700;margin-bottom:8px;
  }
.visit-flow-item h5{font-size:14px;font-weight:600;color:var(--text-dark);margin-bottom:4px;}
.visit-flow-item p{font-size:13.5px;line-height:1.45;color:var(--text-body);}
.visit-flow-note{
    display:flex;align-items:center;justify-content:center;gap:8px;
    margin-top:18px;font-size:13.5px;color:var(--text-body);font-style:italic;
  }
.visit-flow-note svg{width:16px;height:16px;color:var(--gold);flex-shrink:0;}

@media (max-width:960px){
  .hiw-hero-inner{grid-template-columns:1fr;}
  .process-grid,.visit-flow-grid{grid-template-columns:1fr;}
  .hiw-trust-inner{flex-wrap:wrap;}
  .hiw-trust-item{min-width:45%;}
}
/* ================= OUR PROMISE PAGE ================= */

/* --- Hero --- */
.promise-hero{background:var(--cream-alt);padding:0 48px;position:relative;overflow:hidden;box-sizing:border-box;}
.promise-hero-leaf{position:absolute;left:0;top:0;width:120px;height:100%;opacity:0.5;pointer-events:none;}
.promise-hero-inner{
    display:grid;
    grid-template-columns:420px 1fr;
    gap:32px;
    align-items:center;
    max-width:1224px;
    margin:0 auto;
    padding:28px 0;
    position:relative;
  }
.promise-hero-copy h1{font-size:43px;line-height:1.15;margin:8px 0 12px;}
.promise-hero-copy h1 em{font-style:italic;color:var(--gold);}
.promise-hero-copy p{font-size:15.5px;color:var(--text-body);line-height:1.55;max-width:460px;}
.promise-hero-image{
    aspect-ratio:16/7;
    overflow:hidden;
  }
  .promise-hero-photo{
    width:100%;height:100%;object-fit:cover;display:block;
    -webkit-mask-image:linear-gradient(to right, transparent 0%, black 20%);
    mask-image:linear-gradient(to right, transparent 0%, black 20%);
  }

/* --- Quote --- */
.promise-quote-block{background:var(--cream);padding:22px 48px 6px;text-align:center;}
.promise-quote-inner{max-width:720px;margin:0 auto;}
.promise-quote-inner .quote-mark-small{font-size:36px;}
.promise-quote-inner p{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:22px;color:var(--text-dark);line-height:1.4;}

/* --- Commitment Grid --- */
.commitment-block{background:var(--cream);padding:24px 48px 28px;}
.commitment-inner{max-width:1320px;margin:0 auto;text-align:center;}
.commitment-eyebrow{display:block;margin-bottom:8px;}
.commitment-heading{font-size:26px;margin-bottom:22px;}
.commitment-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;text-align:left;}
.commitment-card{border:1px solid var(--border-light);border-radius:8px;padding:18px 16px;background:var(--white);}
.commitment-card svg{width:26px;height:26px;color:var(--sage-dark);margin-bottom:10px;}
.commitment-card h4{font-family:'Cormorant Garamond',serif;font-size:18px;font-weight:600;color:var(--text-dark);margin-bottom:6px;}
.commitment-card p{font-size:13.5px;line-height:1.5;color:var(--text-body);}

/* --- Every Step Band --- */
.every-step-block{background:var(--cream-alt);padding:0;border-top:1px solid var(--border-light);overflow:hidden;}
.every-step-inner{
    display:grid;
    grid-template-columns:300px 330px 1fr;
    align-items:stretch;
    max-width:1400px;
    margin:0 auto;
    min-height:132px;
  }
.every-step-photo{height:100%;overflow:hidden;}
.every-step-photo img{
    width:100%;height:100%;object-fit:cover;object-position:center 30%;display:block;
    -webkit-mask-image:linear-gradient(to right, transparent 0%, black 15%);
    mask-image:linear-gradient(to right, transparent 0%, black 15%);
  }
.every-step-message{display:flex;align-items:center;gap:14px;padding:0 32px;}
.every-step-icon{
    width:52px;height:52px;min-width:52px;
    border-radius:50%;background:var(--sage-dark);
    display:flex;align-items:center;justify-content:center;
  }
.every-step-icon svg{width:26px;height:26px;color:var(--cream);}
.every-step-message h3{font-size:19px;line-height:1.3;}
.every-step-message h3 em{font-style:italic;color:var(--gold);}
.every-step-text{
    position:relative;
    border-left:1px solid var(--border-light);
    padding:0 60px 0 30px;
    display:flex;
    flex-direction:column;
    justify-content:center;
    height:100%;
  }
.every-step-text p{font-size:13px;line-height:1.5;color:var(--text-body);margin-bottom:6px;max-width:420px;position:relative;z-index:1;}
.every-step-closing{font-weight:600;color:var(--text-dark);margin-bottom:0;}
.every-step-leaf{position:absolute;right:16px;top:50%;transform:translateY(-50%);width:64px;height:96px;opacity:0.35;pointer-events:none;}

@media (max-width:960px){
  .every-step-inner{grid-template-columns:1fr;min-height:0;}
  .every-step-photo{height:200px;}
  .every-step-photo img{mask-image:none;-webkit-mask-image:none;}
  .every-step-message{padding:16px 24px 0;}
  .every-step-text{border-left:none;border-top:1px solid var(--border-light);padding:16px 24px;margin-top:12px;}
  .every-step-leaf{display:none;}
}

@media (max-width:960px){
  .promise-hero-inner{grid-template-columns:1fr;}
  .commitment-grid{grid-template-columns:repeat(2,1fr);}
  .every-step-inner{grid-template-columns:1fr;}
}
/* ================= RESOURCES PAGE ================= */

/* --- Hero --- */
.resources-hero{background:var(--cream-alt);padding:0 48px;position:relative;overflow:hidden;box-sizing:border-box;}
.resources-hero-leaf{position:absolute;left:0;top:0;width:120px;height:100%;opacity:0.5;pointer-events:none;}
.resources-hero-inner{
    display:grid;
    grid-template-columns:420px 1fr;
    gap:32px;
    align-items:center;
    max-width:1224px;
    margin:0 auto;
    padding:28px 0;
    position:relative;
  }
.resources-hero-copy h1{font-size:43px;line-height:1.15;margin:8px 0 12px;}
.resources-hero-copy h1 em{font-style:italic;color:var(--gold);}
.resources-hero-copy p{font-size:15.5px;color:var(--text-body);line-height:1.55;max-width:460px;}
.resources-hero-image{
    aspect-ratio:16/7;
    overflow:hidden;
  }
.resources-hero-photo{
    width:100%;height:100%;object-fit:cover;display:block;
    -webkit-mask-image:linear-gradient(to right, transparent 0%, black 18%);
    mask-image:linear-gradient(to right, transparent 0%, black 18%);
  }

/* --- Article Category Blocks --- */
.resource-cat-block{background:var(--cream);padding:26px 48px;}
.resource-cat-block-alt{background:var(--sage-tint-2);}
.resource-cat-inner{max-width:1320px;margin:0 auto;}
.resource-cat-inner .eyebrow{display:block;margin-bottom:4px;}
.resource-cat-inner h2{font-size:26px;margin-bottom:18px;}
.resource-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;}
.resource-card{
    background:var(--white);
    border:1px solid var(--border-light);
    border-radius:8px;
    padding:20px 18px;
  }
.resource-cat-block-alt .resource-card{background:var(--cream);}
.resource-card-icon{
    width:44px;height:44px;min-width:44px;
    border-radius:50%;background:var(--sage-tint);
    display:flex;align-items:center;justify-content:center;
    margin-bottom:12px;
  }
.resource-card-icon svg{width:20px;height:20px;color:var(--sage-dark);}
.resource-card h4{font-family:'Cormorant Garamond',serif;font-size:18px;font-weight:600;color:var(--text-dark);margin-bottom:8px;}
.resource-card p{font-size:13.5px;line-height:1.5;color:var(--text-body);margin-bottom:14px;}
.resource-card-badge{
    display:inline-flex;align-items:center;gap:5px;
    font-size:11px;font-weight:600;letter-spacing:0.4px;text-transform:uppercase;
    color:var(--gold);
  }
.resource-card-badge svg{width:12px;height:12px;}

/* --- Ask a Question CTA strip --- */
.resource-ask-block{background:var(--sage-dark);padding:22px 48px;}
.resource-ask-inner{
    max-width:1320px;margin:0 auto;
    display:flex;align-items:center;justify-content:space-between;gap:20px;
  }
.resource-ask-copy h3{color:var(--cream);font-size:20px;margin-bottom:4px;}
.resource-ask-copy p{color:rgba(251,250,245,0.75);font-size:13.5px;}

@media (max-width:960px){
  .resources-hero-inner{grid-template-columns:1fr;}
  .resource-grid{grid-template-columns:1fr;}
  .resource-ask-inner{flex-direction:column;align-items:flex-start;}
}

/* ================= FAQ PAGE ================= */

/* --- Hero (solid color, no photo) --- */
.faq-hero{
    background-image:linear-gradient(rgba(65,71,56,0.85), rgba(65,71,56,0.85)), url('../assets/images/faq-hero-bg.jpg');
    background-size:cover;
    background-position:center 55%;
    padding:56px 48px;
    text-align:center;
  }
.faq-hero-inner{max-width:640px;margin:0 auto;}
.faq-hero-inner .eyebrow{color:var(--gold-soft);display:block;margin-bottom:8px;}
.faq-hero-inner h1{color:var(--cream);font-size:38px;margin-bottom:10px;}
.faq-hero-inner p{color:rgba(251,250,245,0.75);font-size:15px;line-height:1.5;}

/* --- Intro --- */
.faq-intro-block{background:var(--cream);padding:32px 48px 8px;text-align:center;}
.faq-intro-inner{max-width:640px;margin:0 auto;}
.faq-intro-inner .eyebrow{display:block;margin-bottom:8px;}
.faq-intro-inner h2{font-size:30px;margin-bottom:10px;}
.faq-intro-inner p{font-size:14.5px;color:var(--text-body);line-height:1.5;}

/* --- Category Grid --- */
.faq-categories-block{background:var(--cream);padding:20px 48px 40px;}
.faq-categories-inner{
    max-width:1224px;
    margin:0 auto;
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:44px;
  }
.faq-category h3{font-size:20px;margin-bottom:14px;}
.faq-list{display:flex;flex-direction:column;gap:10px;}

.faq-item{
    border-radius:8px;
    overflow:hidden;
    border:1px solid var(--border-light);
    background:var(--cream-alt);
  }
.faq-item summary{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    padding:14px 18px;
    font-family:'Jost',sans-serif;
    font-size:15px;
    font-weight:600;
    color:var(--text-dark);
    cursor:pointer;
    list-style:none;
  }
.faq-item summary::-webkit-details-marker{display:none;}
.faq-item summary::after{
    content:'+';
    font-size:18px;
    font-weight:400;
    color:var(--gold);
    flex-shrink:0;
  }
.faq-item p{
    font-size:13.5px;
    line-height:1.55;
    color:var(--text-body);
    padding:0 18px 16px;
  }

.faq-item[open]{background:var(--sage-dark);border-color:var(--sage-dark);}
.faq-item[open] summary{color:var(--cream);}
.faq-item[open] summary::after{content:'\2191';color:var(--gold-soft);}
.faq-item[open] p{color:rgba(251,250,245,0.8);}

/* --- Still Have Questions strip --- */
.faq-ask-block{background:var(--sage-tint-2);padding:22px 48px;}
.faq-ask-inner{max-width:820px;margin:0 auto;text-align:center;}
.faq-ask-inner h3{font-size:20px;margin-bottom:6px;}
.faq-ask-inner p{font-size:13.5px;color:var(--text-body);margin-bottom:14px;}

@media (max-width:960px){
  .faq-categories-inner{grid-template-columns:1fr;}
}
/* ================= CONTACT PAGE ================= */

/* --- Hero (solid color) --- */
.contact-hero{background:var(--sage-dark);padding:56px 48px;text-align:center;}
.contact-hero-inner{max-width:640px;margin:0 auto;}
.contact-hero-inner .eyebrow{color:var(--gold-soft);display:block;margin-bottom:8px;}
.contact-hero-inner h1{
    color:var(--cream);font-size:38px;margin-bottom:10px;
    animation:gentle-pulse 3.5s ease-in-out infinite;
  }

@keyframes gentle-pulse{
  0%, 100%{opacity:1;}
  50%{opacity:0.6;color:var(--gold-soft);}
}
.contact-hero-inner p{color:rgba(251,250,245,0.75);font-size:15px;line-height:1.5;}

/* --- Contact + Form Grid --- */
.contact-block{
    background-image:linear-gradient(rgba(251,250,245,0.75), rgba(251,250,245,0.75)), url('../assets/images/contact-bg-full.jpg');
    background-size:cover;
    background-position:center 25%;
    padding:40px 48px;
  }
.contact-inner{
    max-width:1224px;
    margin:0 auto;
    display:grid;
    grid-template-columns:0.85fr 1.15fr;
    gap:48px;
    align-items:start;
    position:relative;
    z-index:1;
  }

/* --- Left: Contact details --- */
.contact-details h2{font-size:26px;margin-bottom:8px;}
.contact-details > p{font-size:14.5px;color:var(--text-body);line-height:1.55;margin-bottom:22px;}
.contact-info-list{display:flex;flex-direction:column;gap:16px;margin-bottom:22px;}
.contact-info-item{display:flex;align-items:flex-start;gap:12px;}
.contact-info-icon{
    width:40px;height:40px;min-width:40px;
    border-radius:50%;background:var(--sage-tint);
    display:flex;align-items:center;justify-content:center;
  }
.contact-info-icon svg{width:18px;height:18px;color:var(--sage-dark);}
.contact-info-item h5{font-size:14px;font-weight:600;color:var(--text-dark);margin-bottom:2px;}
.contact-info-item p,.contact-info-item a{font-size:13.5px;color:var(--text-body);}
.contact-info-item a:hover{color:var(--gold);}

.safety-note{
    background:var(--sage-tint-2);
    border-left:3px solid var(--gold);
    border-radius:4px;
    padding:14px 16px;
    margin-top:8px;
  }
.safety-note h5{font-size:12.5px;letter-spacing:0.6px;text-transform:uppercase;color:var(--gold);font-weight:600;margin-bottom:5px;}
.safety-note p{margin:0;font-size:13px;line-height:1.5;color:var(--text-dark);}

/* --- Middle: Enquiry form --- */
.contact-form-card{
    background:var(--cream-alt);
    border:1px solid var(--border-light);
    border-radius:10px;
    padding:28px;
  }
.contact-form-card h3{font-size:19px;margin-bottom:4px;}
.contact-form-card > p{font-size:13.5px;color:var(--text-body);margin-bottom:18px;}
.contact-form .form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px;}
.contact-form input,.contact-form select,.contact-form textarea{
    width:100%;padding:12px 14px;border:1px solid var(--border-light);border-radius:4px;
    background:var(--white);font-family:'Jost',sans-serif;font-size:14px;color:var(--text-dark);
    appearance:none;margin-bottom:12px;
  }
.contact-form select{
    background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='8'><path d='M1 1l5 5 5-5' stroke='%238A6A22' stroke-width='1.5' fill='none'/></svg>");
    background-repeat:no-repeat;background-position:right 14px center;
  }
.contact-form textarea{resize:vertical;min-height:90px;font-family:'Jost',sans-serif;}
.contact-form input::placeholder,.contact-form textarea::placeholder{color:#9C9C8E;}
.contact-consent{display:flex;align-items:flex-start;gap:8px;margin-bottom:16px;}
.contact-consent input[type="checkbox"]{
    width:16px;height:16px;
    min-width:16px;
    margin:2px 0 0;
    flex-shrink:0;
    appearance:auto;
    -webkit-appearance:auto;
    padding:0;
    accent-color:var(--sage-dark);
    cursor:pointer;
  }
.contact-consent label{font-size:12.5px;color:var(--text-body);line-height:1.45;}
.contact-form .btn-primary{width:100%;padding:13px;font-size:14.5px;}

/* --- Right: Photo (pure CSS background, no img tag) --- */

@media (max-width:960px){
  .contact-inner{grid-template-columns:1fr;}
  .contact-form .form-grid{grid-template-columns:1fr;}
}

/* ================= MEET THE FOUNDER PAGE ================= */
.founder-hero{background:var(--sage-dark);padding:56px 48px;text-align:center;}
.founder-hero-inner{max-width:640px;margin:0 auto;}
.founder-hero-inner .eyebrow{color:var(--gold-soft);display:block;margin-bottom:8px;}
.founder-hero-inner h1{color:var(--cream);font-size:38px;margin-bottom:10px;}
.founder-hero-inner p{color:rgba(251,250,245,0.75);font-size:15px;line-height:1.5;}

.founder-philosophy-block{background:var(--sage-tint-2);padding:32px 48px;}
.founder-philosophy-inner{max-width:1024px;margin:0 auto;text-align:center;}
.founder-philosophy-inner .eyebrow{display:block;margin-bottom:14px;}

/* ================= KIND WORDS PAGE ================= */
.kw-hero{background:var(--sage-dark);padding:56px 48px;text-align:center;}
.kw-hero-inner{max-width:640px;margin:0 auto;}
.kw-hero-inner .eyebrow{color:var(--gold-soft);display:block;margin-bottom:8px;}
.kw-hero-inner h1{color:var(--cream);font-size:38px;margin-bottom:10px;}
.kw-hero-inner p{color:rgba(251,250,245,0.75);font-size:15px;line-height:1.5;}

.kw-full-block{background:var(--cream);padding:36px 48px;}
.kw-full-inner{max-width:1224px;margin:0 auto;}
.kw-full-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;}

@media (max-width:960px){
  .kw-full-grid{grid-template-columns:1fr;}
}
/* ================= PRIVACY POLICY PAGE ================= */
.policy-hero{background:var(--sage-dark);padding:56px 48px;text-align:center;}
.policy-hero-inner{max-width:640px;margin:0 auto;}
.policy-hero-inner .eyebrow{color:var(--gold-soft);display:block;margin-bottom:8px;}
.policy-hero-inner h1{color:var(--cream);font-size:38px;margin-bottom:10px;}
.policy-hero-inner p{color:rgba(251,250,245,0.75);font-size:15px;line-height:1.5;}

.policy-block{background:var(--cream);padding:40px 48px;}
.policy-inner{max-width:820px;margin:0 auto;}
.policy-updated{font-size:12.5px;color:var(--text-body);margin-bottom:28px;font-style:italic;}
.policy-inner h2{font-size:21px;margin:32px 0 10px;}
.policy-inner h2:first-of-type{margin-top:0;}
.policy-inner p{font-size:14.5px;line-height:1.65;color:var(--text-body);margin-bottom:12px;}
.policy-inner ul{margin:0 0 12px 0;}
.policy-inner ul li{
    font-size:14.5px;line-height:1.6;color:var(--text-body);
    padding-left:18px;position:relative;margin-bottom:6px;
  }
.policy-inner ul li::before{content:'\2013';position:absolute;left:0;color:var(--gold);}
.policy-note{
    background:var(--sage-tint-2);
    border-left:3px solid var(--gold);
    border-radius:4px;
    padding:14px 16px;
    margin:18px 0;
  }
.policy-note p{margin:0;font-size:13px;color:var(--text-dark);}

/* ================= CHATBOT WIDGET ================= */
.chatbot-toggle-wrap{
    position:fixed;
    bottom:24px;right:24px;
    display:flex;
    align-items:center;
    gap:10px;
    z-index:999;
  }
.chatbot-toggle-label{
    background:var(--white);
    border:1px solid var(--border-light);
    border-radius:20px;
    padding:8px 14px;
    font-size:12.5px;
    font-weight:500;
    color:var(--text-dark);
    box-shadow:0 2px 10px rgba(42,44,35,0.15);
    white-space:nowrap;
    font-family:'Jost',sans-serif;
  }
.chatbot-toggle{
    width:58px;height:58px;
    min-width:58px;
    border-radius:50%;
    background:var(--sage-dark);
    display:flex;align-items:center;justify-content:center;
    box-shadow:0 4px 16px rgba(42,44,35,0.25);
    cursor:pointer;
    transition:transform 0.2s ease;
  }
.chatbot-toggle:hover{transform:scale(1.06);}
.chatbot-toggle.bounce{animation:chatbot-bounce 0.9s ease-in-out;}
@keyframes chatbot-bounce{
  0%, 100%{transform:translateY(0);}
  25%{transform:translateY(-10px);}
  50%{transform:translateY(0);}
  70%{transform:translateY(-5px);}
  85%{transform:translateY(0);}
}
.chatbot-toggle svg{width:26px;height:26px;color:var(--cream);}
.chatbot-toggle .chatbot-close-icon{display:none;}
.chatbot-toggle.open .chatbot-chat-icon{display:none;}
.chatbot-toggle.open .chatbot-close-icon{display:block;}

.chatbot-panel{
    position:fixed;
    bottom:92px;right:24px;
    width:340px;
    max-height:480px;
    background:var(--cream);
    border:1px solid var(--border-light);
    border-radius:12px;
    box-shadow:0 8px 32px rgba(42,44,35,0.2);
    display:none;
    flex-direction:column;
    overflow:hidden;
    z-index:999;
  }
.chatbot-panel.open{display:flex;}
.chatbot-header{
    background:var(--sage-dark);
    padding:14px 18px;
    display:flex;align-items:center;gap:10px;
  }
.chatbot-header-icon{
    width:32px;height:32px;min-width:32px;
    border-radius:50%;background:var(--gold-soft);
    display:flex;align-items:center;justify-content:center;
  }
.chatbot-header-icon svg{width:16px;height:16px;color:var(--sage-dark);}
.chatbot-header h5{color:var(--cream);font-size:14px;font-weight:600;margin-bottom:1px;}
.chatbot-header p{color:rgba(251,250,245,0.7);font-size:11px;}

.chatbot-messages{
    flex:1;
    overflow-y:auto;
    padding:14px;
    display:flex;flex-direction:column;gap:10px;
    max-height:300px;
  }
.chatbot-msg{
    max-width:85%;
    padding:9px 12px;
    border-radius:10px;
    font-size:13px;
    line-height:1.45;
  }
.chatbot-msg-bot{
    background:var(--cream-alt);
    color:var(--text-dark);
    align-self:flex-start;
    border-bottom-left-radius:2px;
  }
.chatbot-msg-user{
    background:var(--sage-dark);
    color:var(--cream);
    align-self:flex-end;
    border-bottom-right-radius:2px;
  }
.chatbot-suggestions{display:flex;flex-direction:column;gap:6px;margin-top:4px;}
.chatbot-suggestion-btn{
    text-align:left;
    background:var(--white);
    border:1px solid var(--border-light);
    border-radius:8px;
    padding:8px 10px;
    font-size:12px;
    color:var(--text-dark);
    cursor:pointer;
    font-family:'Jost',sans-serif;
    transition:border-color 0.15s;
  }
.chatbot-suggestion-btn:hover{border-color:var(--gold);color:var(--gold);}

.chatbot-input-row{
    display:flex;
    border-top:1px solid var(--border-light);
    padding:10px;
    gap:8px;
  }
.chatbot-input-row input{
    flex:1;
    border:1px solid var(--border-light);
    border-radius:20px;
    padding:8px 14px;
    font-size:13px;
    font-family:'Jost',sans-serif;
    color:var(--text-dark);
  }
.chatbot-input-row input::placeholder{color:#9C9C8E;}
.chatbot-send-btn{
    width:36px;height:36px;min-width:36px;
    border-radius:50%;
    background:var(--sage-dark);
    display:flex;align-items:center;justify-content:center;
    cursor:pointer;
  }
.chatbot-send-btn svg{width:15px;height:15px;color:var(--cream);}

.chatbot-fallback-form{padding:4px 2px;display:flex;flex-direction:column;gap:8px;}
.chatbot-fallback-form input{
    border:1px solid var(--border-light);
    border-radius:6px;
    padding:8px 10px;
    font-size:12.5px;
    font-family:'Jost',sans-serif;
  }
.chatbot-fallback-form button{
    background:var(--sage-dark);
    color:var(--cream);
    border-radius:6px;
    padding:9px;
    font-size:12.5px;
    font-weight:500;
    font-family:'Jost',sans-serif;
    cursor:pointer;
  }

@media (max-width:480px){
  .chatbot-panel{width:calc(100vw - 32px);right:16px;bottom:82px;}
  .chatbot-toggle{right:16px;bottom:16px;}
}
/* ================= TERMS & CONDITIONS PAGE ================= */
.policy-inner ol{margin:0 0 12px 18px;}
.policy-inner ol li{font-size:14.5px;line-height:1.65;color:var(--text-body);margin-bottom:8px;padding-left:4px;}

/* ================= MOBILE NAV ================= */
.mobile-nav-toggle{
    display:none;
    width:40px;height:40px;
    align-items:center;justify-content:center;
    background:transparent;
    cursor:pointer;
    flex-shrink:0;
  }
.mobile-nav-toggle svg{width:24px;height:24px;color:var(--text-dark);}

.mobile-nav-overlay{
    display:none;
    position:fixed;
    top:0;left:0;right:0;bottom:0;
    background:var(--cream);
    z-index:998;
    flex-direction:column;
    padding:24px;
    overflow-y:auto;
  }
.mobile-nav-overlay.open{display:flex;}
.mobile-nav-close{
    align-self:flex-end;
    width:40px;height:40px;
    display:flex;align-items:center;justify-content:center;
    cursor:pointer;
    margin-bottom:20px;
  }
.mobile-nav-close svg{width:22px;height:22px;color:var(--text-dark);}
.mobile-nav-links{display:flex;flex-direction:column;gap:4px;}
.mobile-nav-links a{
    font-family:'Cormorant Garamond',serif;
    font-size:24px;
    font-weight:600;
    color:var(--text-dark);
    padding:14px 4px;
    border-bottom:1px solid var(--border-light);
  }
.mobile-nav-links a.active{color:var(--gold);}
.mobile-nav-cta{margin-top:24px;}
.mobile-nav-cta .btn{width:100%;justify-content:center;}

@media (max-width:960px){
  .mobile-nav-toggle{display:flex;}
}

/* Landscape phones: show the full nav bar instead of the hamburger */
@media (max-width:960px) and (orientation:landscape){
  nav{display:block !important;}
  .mobile-nav-toggle{display:none !important;}
  nav ul{gap:14px;flex-wrap:wrap;justify-content:center;}
  nav a{font-size:13px;}
}