
*{box-sizing:border-box}
html,body{
  margin:0;padding:0;background:#F8F6F2;color:#0E1111;
  font-family:Inter, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Arial, sans-serif;
  line-height:1.6;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
  font-kerning: normal;
}
a{color:#6C8A78;text-decoration:none}
.container{max-width:1200px;margin:0 auto;padding:0 24px}
.topbar{border-bottom:1px solid #EDEDED;font-size:14px;background:#F8F6F2}
.topbar .container{display:flex;gap:16px;justify-content:flex-end;padding:10px 24px}
.nav{position:sticky;top:0;background:#F8F6F2;z-index:50;border-bottom:1px solid #EDEDED}
.nav .container{display:flex;align-items:center;justify-content:space-between;padding:14px 0}
.brand img{height:53px}
.navlinks a{margin-left:20px;font-weight:500;letter-spacing:.2px}
.btn{display:inline-block;padding:12px 18px;border-radius:12px;border:1px solid #6C8A78;}
.btn.fill{background:#6C8A78;color:white;border-color:#6C8A78}
.btn.ghost{background:transparent;color:#6C8A78}

.hero{
  position:relative;overflow:hidden;
  min-height:78vh;display:grid;place-items:center;text-align:center;padding:80px 0;
  background:
    radial-gradient(1200px 400px at 20% 5%, #DDE8E140, transparent 70%),
    radial-gradient(1200px 400px at 80% 0%, #DDE8E130, transparent 70%),
    linear-gradient(180deg, #F8F6F2 0%, #F8F6F2 65%, #DDE8E1 100%);
}
.hero::before{
  content:"";position:absolute;inset:-12%;
  background: conic-gradient(from 120deg at 50% 30%, #F8F6F2, #DDE8E1, #F8F6F2);
  mix-blend-mode:soft-light;opacity:.38;animation: hue 16s ease-in-out infinite alternate;filter: blur(34px);
}
@keyframes hue{0%{transform:rotate(0deg) scale(1.05)}100%{transform:rotate(12deg) scale(1.12)}}

.hero h1{font-size:56px;letter-spacing:0.01em;font-weight:400;margin:0 0 16px}
.hero p.sub{max-width:720px;margin:0 auto 28px;font-size:18px;opacity:.9}
.cta-row{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}

.hero .wave-wrap{position:absolute;left:0;right:0;bottom:0;height:120px;pointer-events:none;opacity:.6}
.hero .wave{width:100%;height:100%;display:block;stroke-dasharray:6 6;animation: wave 12s linear infinite; filter: blur(.2px);}
@keyframes wave{to{stroke-dashoffset:-120}}

.section{padding:80px 0;border-top:1px solid #EDEDED;background:#F8F6F2}
.section h2{font-size:40px;font-weight:300;letter-spacing:.02em;margin:0 0 12px}
.section p.lead{max-width:800px;opacity:.9;margin:0 0 28px}
.grid-tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:24px}
.tile{background:#DDE8E1;padding:22px;border-radius:18px;box-shadow:0 1px 0 #EDEDED;transition:transform .2s ease, box-shadow .2s ease}
.tile:hover{transform:translateY(-2px);box-shadow:0 6px 18px rgba(0,0,0,.06)}
.split{display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:center}
.split .pic{height:320px;border-radius:16px;background:linear-gradient(135deg,#F8F6F2,#DDE8E1);box-shadow:inset 0 0 0 1px #EDEDED}
.team{background:#DDE8E1}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.card{background:white;border:1px solid #EDEDED;border-radius:16px;padding:18px;box-shadow:0 1px 0 #EDEDED}
.card .photo{height:220px;border-radius:12px;background:linear-gradient(180deg,#fff,#DDE8E1);margin-bottom:12px;border:1px solid #EDEDED}
.card h4{margin:0 0 6px;letter-spacing:.2px}
.card .role{opacity:.8;margin:0 0 8px}
.testimonials .wrap{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.quote{background:white;border:1px solid #EDEDED;border-radius:16px;padding:18px;font-style:italic}
.quote .who{margin-top:12px;opacity:.7;font-style:normal}
.contact .panel{background:linear-gradient(180deg,#DDE8E1,#F8F6F2);border:1px solid #EDEDED;border-radius:16px;padding:24px;display:grid;grid-template-columns:1fr 1fr;gap:24px}
.contact form input,.contact form select,.contact form textarea{width:100%;padding:12px 14px;border:1px solid #EDEDED;border-radius:12px;background:white}
.contact form button{margin-top:6px}
.footer{border-top:1px solid #EDEDED;padding:28px 0;text-align:center;font-size:14px;background:#F8F6F2}
.float-cta{position:fixed;right:18px;bottom:18px;display:flex;align-items:center;gap:10px;z-index:99}
.float-cta .label{background:rgba(255,255,255,.92);border:1px solid #EDEDED;padding:10px 12px;border-radius:12px;backdrop-filter:blur(6px)}
.float-cta .fab{width:60px;height:60px;border-radius:999px;border:1px solid #6C8A78;display:grid;place-items:center;background:white;box-shadow:0 6px 18px rgba(0,0,0,.08)}
@media (max-width:940px){.grid-tiles{grid-template-columns:1fr 1fr}.split{grid-template-columns:1fr}.cards{grid-template-columns:1fr 1fr}.testimonials .wrap{grid-template-columns:1fr 1fr}.hero h1{font-size:42px}}
@media (max-width:540px){.grid-tiles{grid-template-columns:1fr}.cards{grid-template-columns:1fr}.testimonials .wrap{grid-template-columns:1fr}.float-cta .label{display:none}.hero h1{font-size:36px}}
