:root{
    --bg:#FAF6EE;
    --bg-2:#FFFFFF;
    --bg-3:#F2ECDD;
    --bg-footer:#F0E9D8;
    --border:#E6DCC4;
    --ink:#221F1A;
    --text-soft:#756B5A;
    --green:#3E8B4A;
    --green-deep:#2F6E39;
    --green-soft:#E3F1E5;
    --display:'Plus Jakarta Sans', sans-serif;
    --serif:'Instrument Serif', serif;
    --mono:'Space Mono', monospace;
    --body:'Inter', sans-serif;
  }
  *{box-sizing:border-box; margin:0; padding:0;}
  body{background:var(--bg); color:var(--ink); font-family:var(--body); line-height:1.6;}
  a{color:inherit; text-decoration:none;}
  img{max-width:100%; display:block;}
  .wrap{max-width:1180px; margin:0 auto; padding:0 32px;}

  /* NAV */
  header{position:sticky; top:0; z-index:50; background:rgba(250,246,238,.9); backdrop-filter:blur(10px); border-bottom:1px solid var(--border);}
  .nav{display:flex; align-items:center; justify-content:space-between; padding:18px 0;}
  .brand-name{font-family:var(--display); font-weight:700; font-size:19px;}
  nav.links{display:flex; gap:26px;}
  nav.links a{font-family:var(--mono); font-size:12px; color:var(--text-soft);}
  nav.links a:hover{color:var(--ink);}
  .btn{display:inline-flex; align-items:center; gap:8px; font-family:var(--display); font-weight:700; font-size:14.5px; padding:12px 22px; border-radius:10px; border:1px solid transparent;}
  .btn-primary{background:var(--green); color:#fff;}
  .btn-primary:hover{background:var(--green-deep);}
  .btn-ghost{border-color:var(--border); color:var(--ink); background:var(--bg-2);}
  .btn-ghost:hover{border-color:var(--green);}

  /* HERO */
  .hero{padding:70px 0 0;}
  .hero-grid{display:grid; grid-template-columns:1fr .8fr; gap:50px; align-items:center;}
  .eyebrow{font-family:var(--mono); font-size:12px; letter-spacing:2px; text-transform:uppercase; color:var(--green-deep); display:flex; align-items:center; gap:10px; margin-bottom:22px;}
  .eyebrow::before{content:''; width:8px; height:8px; border-radius:50%; background:var(--green);}
  h1{font-family:var(--display); font-weight:700; font-size:clamp(2.2rem, 4.6vw, 3.4rem); line-height:1.14; letter-spacing:-.5px;}
  .pill{background:var(--green-soft); color:var(--green-deep); padding:2px 14px 5px; border-radius:8px; font-weight:800;}
  .quote-under{
    margin-top:24px; padding:16px 18px; border-left:2px solid var(--green);
    background:var(--bg-2); border-radius:0 12px 12px 0; max-width:460px;
    box-shadow:0 1px 3px rgba(34,31,26,.05);
  }
  .quote-under p{font-family:var(--serif); font-style:italic; font-size:18px; color:var(--ink);}
  .quote-under span{display:block; margin-top:8px; font-family:var(--mono); font-size:11.5px; color:var(--text-soft);}
  .hero-cta{display:flex; gap:14px; margin-top:30px; flex-wrap:wrap;}

  .portrait-wrap{position:relative; display:flex; justify-content:center;}
  .portrait-wrap img{max-width:300px; filter:drop-shadow(0 24px 36px rgba(34,31,26,.16));}
  .tool-badge{
    position:absolute; background:var(--bg-2); border:1px solid var(--border);
    padding:8px 14px; border-radius:100px; font-family:var(--mono); font-size:11px; letter-spacing:.5px; color:var(--text-soft);
    box-shadow:0 8px 18px rgba(34,31,26,.08); animation:float 5s ease-in-out infinite;
  }
  .tool-badge.b1{top:2%; left:0; animation-delay:0s;}
  .tool-badge.b2{top:18%; right:-4%; animation-delay:.6s;}
  .tool-badge.b3{bottom:26%; left:-8%; animation-delay:1.2s;}
  .tool-badge.b4{bottom:10%; right:2%; animation-delay:1.8s;}
  .tool-badge.b5{top:48%; left:-14%; animation-delay:2.4s;}
  @keyframes float{0%,100%{transform:translateY(0);}50%{transform:translateY(-8px);}}
  @media (prefers-reduced-motion: reduce){.tool-badge{animation:none;}}

  /* STATS BAR */
  .stats-bar{border-top:1px solid var(--border); border-bottom:1px solid var(--border); margin-top:60px;}
  .stats-inner{display:flex; justify-content:space-between; padding:28px 0; flex-wrap:wrap; gap:20px;}
  .stats-inner div{text-align:center; flex:1; min-width:120px;}
  .stats-inner b{display:block; font-family:var(--display); font-weight:700; font-size:26px; color:var(--green-deep);}
  .stats-inner span{font-family:var(--mono); font-size:11px; text-transform:uppercase; letter-spacing:.5px; color:var(--text-soft);}

  /* TRUSTED BY */
  .trusted{padding:40px 0; text-align:center;}
  .trusted .tagnum{font-family:var(--mono); font-size:11px; color:var(--text-soft); letter-spacing:1px; text-transform:uppercase; margin-bottom:20px; display:block;}
  .logo-row{display:flex; justify-content:center; gap:34px; flex-wrap:wrap;}
  .logo-chip{border:1px dashed var(--border); border-radius:10px; padding:10px 18px; font-family:var(--mono); font-size:12px; color:var(--text-soft); background:var(--bg-2);}

  /* SECTIONS GENERIC */
  section{padding:90px 0;}
  .section-head{max-width:600px; margin-bottom:44px;}
  h2{font-family:var(--display); font-weight:700; font-size:clamp(1.8rem, 3.2vw, 2.4rem); letter-spacing:-.3px;}
  .section-head p{color:var(--text-soft); margin-top:12px;}

  /* FORMAT / SERVICES CARDS */
  .format-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:22px;}
  .format-card{background:var(--bg-2); border:1px solid var(--border); border-radius:16px; padding:28px; transition:transform .25s, border-color .25s, box-shadow .25s; box-shadow:0 1px 2px rgba(34,31,26,.04);}
  .format-card:hover{transform:translateY(-5px); border-color:var(--green); box-shadow:0 14px 28px rgba(34,31,26,.08);}
  .format-card .tagnum{font-family:var(--mono); font-size:11px; color:var(--green-deep); text-transform:uppercase; letter-spacing:.5px;}
  .format-card h3{font-family:var(--display); font-weight:700; font-size:19px; margin:12px 0 10px;}
  .format-card p{color:var(--text-soft); font-size:14.5px; margin-bottom:18px;}
  .format-card a{font-family:var(--mono); font-size:11.5px; text-transform:uppercase; letter-spacing:.5px; border-bottom:1px solid var(--green); padding-bottom:3px;}

  .offer-row{display:grid; grid-template-columns:repeat(3,1fr); gap:20px; margin-top:60px;}
  .offer-card{background:var(--bg-3); border:1px solid var(--border); border-radius:14px; padding:24px;}
  .offer-card .tagnum{font-family:var(--mono); font-size:10.5px; color:var(--text-soft); text-transform:uppercase;}
  .offer-card h4{font-family:var(--display); font-weight:700; font-size:17px; margin:8px 0 8px;}
  .offer-card p{font-size:13.5px; color:var(--text-soft); margin-bottom:14px;}
  .offer-card a{font-family:var(--mono); font-size:11px; text-transform:uppercase; color:var(--green-deep);}

  /* SPOTLIGHT TESTIMONIAL */
  .spotlight{
    background:var(--bg-2); border:1px solid var(--border); border-radius:18px; padding:52px;
    display:grid; grid-template-columns:auto 1fr; gap:30px; align-items:center;
    box-shadow:0 1px 3px rgba(34,31,26,.05);
  }
  .spotlight .mark{font-family:var(--serif); font-size:60px; color:var(--green); line-height:1;}
  .spotlight p{font-family:var(--serif); font-style:italic; font-size:22px; max-width:640px; line-height:1.4; color:var(--ink);}
  .spotlight .who{margin-top:16px; font-family:var(--mono); font-size:12px; color:var(--text-soft);}

  /* ARTICLES */
  .articles-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:22px;}
  .article-card{border:1px solid var(--border); border-radius:14px; padding:24px; background:var(--bg-2); box-shadow:0 1px 2px rgba(34,31,26,.04);}
  .article-card .tagnum{font-family:var(--mono); font-size:11px; color:var(--text-soft);}
  .article-card h4{font-family:var(--display); font-weight:600; font-size:17px; margin:10px 0 12px; line-height:1.3;}
  .article-card a{font-family:var(--mono); font-size:11px; text-transform:uppercase; color:var(--green-deep);}

  /* CTA BAND */
  .cta-panel{
    background:var(--bg-3); border:1px solid var(--border); border-radius:18px; padding:52px;
    display:grid; grid-template-columns:1fr auto; align-items:center; gap:30px;
  }
  .cta-panel p{color:var(--text-soft); margin-top:10px; max-width:460px;}

  /* FOOTER */
  footer{background:var(--bg-footer); padding:60px 0 30px; border-top:1px solid var(--border);}
  .foot-cols{display:grid; grid-template-columns:1.4fr 1fr 1fr 1fr; gap:30px; margin-bottom:40px;}
  .foot-brand p{color:var(--text-soft); font-size:14px; margin-top:10px; max-width:260px;}
  .foot-cols h5{font-family:var(--mono); font-size:11px; text-transform:uppercase; letter-spacing:1px; color:var(--text-soft); margin-bottom:14px;}
  .foot-cols ul{list-style:none;}
  .foot-cols li{margin-bottom:9px;}
  .foot-cols a{font-size:14px; color:var(--ink);}
  .foot-cols a:hover{color:var(--green-deep);}
  .foot-bottom{border-top:1px solid var(--border); padding-top:22px; font-family:var(--mono); font-size:11px; color:var(--text-soft);}

  @media (max-width:880px){
    .hero-grid{grid-template-columns:1fr;}
    .portrait-wrap{order:-1; margin-bottom:30px;}
    .format-grid, .offer-row, .articles-grid{grid-template-columns:1fr;}
    .cta-panel, .spotlight{grid-template-columns:1fr; text-align:left;}
    .foot-cols{grid-template-columns:1fr 1fr;}
    nav.links{display:none;}
    .tool-badge{display:none;}
  }
