:root{
    --blush:#e9d3c8; --blush-soft:#f4e7e0; --blush-deep:#cf9f8c;
    --sage:#a9b8a2; --sage-soft:#eef2ea; --sage-deep:#7d8f75;
    --taupe:#b8a996; --taupe-deep:#6f6355;
    --ink:#4a423b; --cream:#fbf8f4;
  }
  *{margin:0;padding:0;box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  body{font-family:'Jost',sans-serif;font-weight:300;color:var(--ink);background:var(--cream);line-height:1.7;}
  h1,h2,h3{font-family:'Cormorant Garamond',serif;font-weight:500;line-height:1.2;color:var(--taupe-deep);}
  img{max-width:100%;display:block;}
  .wrap{max-width:1120px;margin:0 auto;padding:0 32px;}
  section{padding:96px 0;}
  .eyebrow{font-size:13px;letter-spacing:.28em;text-transform:uppercase;color:var(--sage-deep);margin-bottom:18px;font-weight:400;}
  .btn{display:inline-block;padding:15px 34px;border-radius:999px;text-decoration:none;font-size:15px;letter-spacing:.12em;text-transform:uppercase;font-weight:400;transition:all .3s ease;}
  .btn-primary{background:var(--taupe-deep);color:#fff;}
  .btn-primary:hover{background:var(--ink);}
  .btn-outline{border:1px solid var(--taupe-deep);color:var(--taupe-deep);}
  .btn-outline:hover{background:var(--taupe-deep);color:#fff;}

  /* nav */
  nav{position:sticky;top:0;background:rgba(251,248,244,.92);backdrop-filter:blur(8px);z-index:10;border-bottom:1px solid #eee3da;}
  nav .wrap{display:flex;align-items:center;justify-content:space-between;padding-top:16px;padding-bottom:16px;}
  .brand{display:flex;align-items:center;gap:12px;text-decoration:none;}
  .brand img{height:64px;width:auto;}
  .brand span{font-family:'Cormorant Garamond',serif;font-size:21px;color:var(--taupe-deep);}
  .nav-links{display:flex;gap:30px;align-items:center;}
  .nav-links a{color:var(--ink);text-decoration:none;font-size:15px;letter-spacing:.08em;text-transform:uppercase;}
  .nav-links a:hover{color:var(--sage-deep);}
  .nav-links .btn{padding:11px 24px;font-size:13px;}
  .nav-links a.btn-primary{color:#fff;}
  .nav-links a.btn-primary:hover{background:var(--ink);color:#fff;}

  /* hero */
  .hero{background:linear-gradient(160deg,rgba(246,232,227,.82) 0%,rgba(251,248,244,.78) 55%,rgba(232,238,228,.82) 100%),url("painting.jpg") center 62%/cover no-repeat;text-align:center;padding:110px 0 100px;}
  .hero-mark{position:relative;display:inline-block;margin:0 auto 52px;}
  .hero-mark::before{content:"";position:absolute;left:50%;top:36%;transform:translate(-50%,-50%);width:470px;height:470px;border-radius:50%;background:radial-gradient(circle,rgba(251,248,244,.9) 0%,rgba(251,248,244,.5) 45%,rgba(251,248,244,0) 72%);pointer-events:none;}
  .hero-emblem{position:relative;width:210px;margin:0 auto 20px;}
  .hero-wordmark{position:relative;width:400px;margin:0 auto;}
  .hero h1{font-size:78px;font-weight:700;max-width:920px;margin:0 auto 24px;text-shadow:0 1px 16px rgba(251,248,244,.9);}
  .sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;}
  .hero .tagline{font-size:24px;color:#5f5347;font-weight:500;max-width:660px;margin:0 auto 16px;text-shadow:0 1px 12px rgba(251,248,244,.85);}
  .hero .subline{font-size:20px;color:#6f6355;font-weight:500;max-width:580px;margin:0 auto 40px;text-shadow:0 1px 12px rgba(251,248,244,.9);}
  .hero .dots{margin-top:70px;color:var(--blush-deep);letter-spacing:14px;font-size:19px;}

  /* welcome */
  .welcome{text-align:center;background:#fff;}
  .welcome h2{font-size:44px;max-width:760px;margin:0 auto 26px;}
  .welcome p{font-size:19px;max-width:640px;margin:0 auto 38px;color:#6f6355;}
  .leaf-divider{width:56px;height:2px;background:var(--sage);margin:0 auto 30px;}

  /* about */
  .about{background:var(--sage-soft);}
  .about .grid{display:grid;grid-template-columns:1fr 1.15fr;gap:70px;align-items:center;}
  .about .grid.single{grid-template-columns:1fr;max-width:680px;margin:0 auto;}
  .about .photo{border-radius:200px 200px 18px 18px;overflow:hidden;box-shadow:0 24px 50px rgba(111,99,85,.16);}
  .about h2{font-size:42px;margin-bottom:24px;}
  .about p{margin-bottom:18px;font-size:18px;}
  .founder{margin-top:34px;background:var(--cream);border:1px solid #efe5dc;border-radius:22px;padding:40px 44px;display:flex;gap:32px;align-items:center;}
  .founder-photo{width:128px;height:128px;border-radius:50%;object-fit:cover;flex-shrink:0;box-shadow:0 12px 26px rgba(111,99,85,.18);}
  .founder h3{font-size:27px;margin-bottom:4px;}
  .founder .role{font-size:13px;letter-spacing:.22em;text-transform:uppercase;color:var(--sage-deep);margin-bottom:14px;}
  .founder p{font-size:17px;font-style:normal;}

  /* team */
  .team{background:#fff;text-align:center;}
  .team h2{font-size:42px;margin-bottom:14px;}
  .team .intro{max-width:520px;margin:0 auto 54px;color:#6f6355;}
  .team-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:38px;max-width:1080px;margin:0 auto;}
  .team-card{background:var(--cream);border:1px solid #efe5dc;border-radius:22px;padding:72px 48px 64px;}
  .team-card .initial{width:128px;height:128px;border-radius:50%;margin:0 auto 30px;display:flex;align-items:center;justify-content:center;font-family:'Cormorant Garamond',serif;font-size:52px;color:#fff;}
  .team-card:nth-child(1) .initial{background:var(--blush-deep);}
  .team-card:nth-child(2) .initial{background:var(--sage);}
  .team-card:nth-child(3) .initial{background:var(--taupe);}
  .team-card:nth-child(4) .initial{background:var(--sage-deep);}
  .team-card h3{font-size:34px;margin-bottom:12px;}
  .team-card p{font-size:18px;color:#8a7c6e;font-style:italic;}

  /* services */
  .services{background:linear-gradient(180deg,var(--blush-soft),var(--cream));}
  .services h2{font-size:42px;text-align:center;margin-bottom:14px;}
  .services .intro{text-align:center;max-width:560px;margin:0 auto 56px;color:#6f6355;}
  .svc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;}
  .svc{background:#fff;border-radius:20px;padding:44px 42px;box-shadow:0 14px 34px rgba(111,99,85,.07);}
  .svc h3{font-size:28px;margin-bottom:14px;padding-bottom:14px;border-bottom:1px solid var(--blush);}
  .svc ul{list-style:none;}
  .svc li{padding:7px 0 7px 26px;position:relative;font-size:17px;color:#5d5348;}
  .svc li::before{content:"";position:absolute;left:0;top:17px;width:9px;height:9px;border-radius:50%;background:var(--sage);}
  .consult{text-align:center;margin-top:60px;}
  .consult p{font-family:'Cormorant Garamond',serif;font-size:32px;color:#5f5347;margin-bottom:30px;}

  /* contact */
  .contact{background:#fff;}
  .contact .grid{display:grid;grid-template-columns:1fr 1.2fr;gap:70px;}
  .contact h2{font-size:42px;margin-bottom:26px;}
  .c-line{margin-bottom:20px;font-size:18px;}
  .c-line .label{font-size:13px;letter-spacing:.22em;text-transform:uppercase;color:var(--sage-deep);margin-bottom:2px;}
  .c-line a{color:var(--taupe-deep);text-decoration:none;border-bottom:1px solid var(--blush);}
  .response-note{margin-top:30px;font-style:italic;font-family:'Cormorant Garamond',serif;font-size:21px;color:var(--sage-deep);}
  form{background:var(--cream);border:1px solid #efe5dc;border-radius:20px;padding:44px;}
  form label{display:block;font-size:13px;letter-spacing:.18em;text-transform:uppercase;color:var(--taupe-deep);margin:0 0 8px;}
  form input,form textarea{width:100%;border:1px solid #e4d8cd;border-radius:10px;background:#fff;padding:13px 16px;font-family:'Jost',sans-serif;font-size:17px;color:var(--ink);margin-bottom:22px;}
  form textarea{min-height:120px;resize:vertical;}
  form input:focus,form textarea:focus{outline:none;border-color:var(--sage);}
  form .btn{border:none;cursor:pointer;font-family:'Jost',sans-serif;}

  footer{background:var(--taupe-deep);color:#e8ded4;text-align:center;padding:52px 0;}
  footer img{width:100px;margin:0 auto 18px;}
  footer .f-name{font-family:'Cormorant Garamond',serif;font-size:23px;color:#fff;margin-bottom:6px;}
  footer p{font-size:15px;color:#c9bcab;}

  @media (max-width:760px){
    section{padding:64px 0;}
    .wrap{padding:0 22px;}
    .nav-links a:not(.btn){display:none;}.brand span{display:none;}.brand img{height:52px;}
    .hero{padding:70px 0 64px;}
    .hero h1{font-size:48px;}
    .hero-mark::before{width:340px;height:340px;}
    .hero-emblem{width:160px;margin-bottom:14px;}
    .hero-wordmark{width:300px;}
    .sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;}
  .hero .tagline{font-size:21px;}
    .welcome h2,.about h2,.team h2,.services h2,.contact h2{font-size:32px;}
    .about .grid,.contact .grid{grid-template-columns:1fr;gap:44px;}
    .team-grid{grid-template-columns:1fr;gap:18px;}
    .svc-grid{grid-template-columns:1fr;}
    form{padding:30px 24px;}
  }

  /* clickable team cards + founder link */
  a.team-card{text-decoration:none;display:block;transition:transform .3s ease,box-shadow .3s ease;}
  a.team-card:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(111,99,85,.12);}
  .more-link{display:inline-block;margin-top:16px;font-size:14px;letter-spacing:.16em;text-transform:uppercase;color:var(--sage-deep);text-decoration:none;border-bottom:1px solid transparent;}
  .more-link:hover{border-bottom-color:var(--sage-deep);}

  /* bio page */
  .bio-hero{padding:80px 0 70px;text-align:center;}
  .bio-photo{width:230px;height:290px;margin:0 auto 34px;border-radius:160px 160px 16px 16px;overflow:hidden;box-shadow:0 24px 50px rgba(111,99,85,.16);background:var(--blush-soft);display:flex;align-items:center;justify-content:center;}
  .bio-photo img{width:100%;height:100%;object-fit:cover;}
  .bio-photo .big-initial{font-family:'Cormorant Garamond',serif;font-size:86px;color:var(--blush-deep);}
  .bio-hero h1{font-size:46px;margin-bottom:6px;}
  .bio-hero .cred{font-size:14px;letter-spacing:.26em;text-transform:uppercase;color:var(--sage-deep);margin-bottom:30px;}
  .bio-body{max-width:620px;margin:0 auto;text-align:center;}
  .bio-body p{font-size:18px;color:#6f6355;margin-bottom:18px;}
  .bio-body .placeholder{font-style:italic;color:#a4958a;}
  .bio-direct{margin:36px auto 0;padding:26px 34px;background:#fff;border:1px solid #efe5dc;border-radius:16px;max-width:420px;}
  .bio-direct .label{font-size:13px;letter-spacing:.22em;text-transform:uppercase;color:var(--sage-deep);margin-bottom:4px;}
  .bio-direct a{font-family:'Cormorant Garamond',serif;font-size:27px;color:var(--taupe-deep);text-decoration:none;}
  .bio-back{margin-top:44px;}
  @media (max-width:760px){.founder{flex-direction:column;align-items:center;text-align:center;}.bio-hero h1{font-size:35px;}.bio-photo{width:190px;height:240px;}}

/* team card bio + phone placeholders */
.team-card .bio-note{font-size:18px;color:#8a7c6e;font-style:italic;margin-bottom:20px;}
.team-card .phone-note{font-size:17px;letter-spacing:.06em;color:var(--taupe-deep);font-style:normal;}
.team-card .phone-note span{color:#b3a493;font-size:15px;font-style:italic;}

/* founder photo card */
.team-card .photo-circle{width:128px;height:128px;border-radius:50%;margin:0 auto 22px;overflow:hidden;}
.team-card .photo-circle img{width:100%;height:100%;object-fit:cover;}
.team-card .role{font-size:15px;letter-spacing:.22em;text-transform:uppercase;color:var(--sage-deep);margin-top:8px;}


/* founder card inside team section */
.team .founder{margin:0 auto 54px;max-width:860px;text-align:left;}
@media (max-width:760px){.team .founder{margin:0 auto 40px;text-align:center;}}
