@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&family=Playfair+Display:ital,wght@1,500;1,600&display=swap');
:root{--forest:#244c3f;--deep:#203a33;--ink:#21342f;--moss:#a5b56b;--sage:#c1d693;--mist:#edf1e7;--cloud:#f0f2e9;--ivory:#faf9f6;--stone:#728076;--line:#dae3d8;--max:1220px;--radius:2px}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:110px}
body{margin:0;font-family:'DM Sans',sans-serif;color:var(--ink);background:var(--ivory);font-size:15px;line-height:1.7;-webkit-font-smoothing:antialiased;overflow-x:hidden}
a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{cursor:pointer}img{max-width:100%;display:block}figure{margin:0}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Manrope,sans-serif;letter-spacing:-.055em}h1{font-size:clamp(43px,5.8vw,78px);line-height:1.13;font-weight:800}h2{font-size:clamp(32px,3.6vw,52px);line-height:1.23;font-weight:800}h3{font-size:clamp(19px,1.7vw,23px);line-height:1.4}em,.serif{font-family:'Playfair Display',serif;font-weight:500;color:var(--moss);letter-spacing:-.025em}::selection{background:#dce8ae;color:var(--deep)}:focus-visible{outline:3px solid var(--moss);outline-offset:4px}.wrap{width:min(var(--max),calc(100% - 96px));margin-inline:auto}
.skip-link{position:fixed;top:-60px;left:12px;background:white;color:var(--deep);padding:12px;z-index:100}.skip-link:focus{top:8px}
.site-header{height:84px;position:sticky;top:0;z-index:50;background:rgba(250,249,246,.97);backdrop-filter:blur(12px);border-bottom:1px solid #e8e9e1}.header-inner{height:100%;display:flex;align-items:center;justify-content:space-between;gap:26px}.brand{display:inline-flex;align-items:center;gap:15px;flex-shrink:0}.brand-mark{display:inline-flex;align-items:baseline;white-space:nowrap;font:bold 53px/.92 Georgia,serif;letter-spacing:-.08em}.brand-dot{display:inline-block;color:var(--moss);margin-left:-.18em;font-size:.9em;transform:translateY(.02em)}.brand-type{display:flex;flex-direction:column;line-height:1.3;letter-spacing:.17em}.brand-type strong{font:800 12px Manrope,sans-serif;letter-spacing:.15em}.brand-type small{font-size:8px;letter-spacing:.23em;margin-top:5px}.desktop-nav{display:flex;align-items:center;gap:26px}.desktop-nav a{font-size:12px;font-weight:700;color:#52675b;white-space:nowrap;padding:14px 0;transition:color .2s;position:relative}.desktop-nav a:hover,.desktop-nav a[aria-current=page]{color:var(--deep)}.desktop-nav a::after{content:"";position:absolute;height:2px;background:var(--moss);bottom:8px;left:0;right:0;transform:scaleX(0);transform-origin:left;transition:transform .22s}.desktop-nav a:hover::after,.desktop-nav a[aria-current=page]::after{transform:scaleX(1)}.header-cta,.btn{display:inline-flex;align-items:center;justify-content:center;gap:24px;border:0;background:var(--forest);color:white;font-size:12px;font-weight:700;border-radius:100px;padding:16px 22px;min-height:47px;transition:background .2s,transform .2s;white-space:nowrap}.header-cta{padding:13px 17px;gap:14px}.header-cta:hover,.btn:hover{background:#356454;transform:translateY(-2px)}.btn svg,.header-cta svg,.text-link svg{width:17px;height:17px;flex-shrink:0}.btn-light{background:#dce8ae;color:#284338}.btn-light:hover{background:#f1f9d4}.menu-button{display:none;border:0;background:transparent;padding:9px;color:var(--deep);min-width:44px;min-height:44px}.menu-button svg{width:25px;height:25px}.mobile-nav{display:none}
.eyebrow{font:800 10px Manrope,sans-serif;letter-spacing:.19em;color:#648078;display:flex;gap:11px;align-items:center;margin-bottom:24px;text-transform:uppercase}.eyebrow::before{content:"";width:25px;height:2px;background:var(--moss);flex-shrink:0}.eyebrow-light{color:#c5d6b7}.eyebrow-light::before{background:#b3c98d}.text-link{display:inline-flex;align-items:center;gap:13px;padding:8px 0;border-bottom:1px solid var(--moss);font-size:12px;font-weight:800;transition:gap .2s,color .2s}.text-link:hover{gap:19px;color:#567b4b}.section{padding-block:112px}.section-soft{background:var(--cloud)}.section-dark{background:#26473e;color:white}.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:45px;margin-bottom:47px}.section-head h2{max-width:720px;margin-bottom:0}.section-head>p{max-width:350px;color:var(--stone);line-height:1.9;margin-bottom:3px}.section-foot{text-align:center;margin-top:42px}
.hero{background:var(--mist)}.hero-grid{display:grid;grid-template-columns:1.06fr .94fr;gap:48px;min-height:650px}.hero-copy{padding:99px 0 50px}.hero-copy h1{margin-bottom:28px}.hero-copy>p{font-size:17px;color:#5b7062;max-width:495px;line-height:1.86;margin-bottom:30px}.hero-actions{display:flex;align-items:center;gap:25px;flex-wrap:wrap}.hero-support{font:800 10px Manrope,sans-serif;letter-spacing:.12em;color:#658071;display:flex;gap:12px;align-items:center;margin-top:86px}.support-dot{width:9px;height:9px;border-radius:50%;background:var(--moss)}.hero-portrait{position:relative;min-height:550px;margin:32px 0;border-radius:260px 260px 10px 10px;overflow:hidden}.hero-portrait img{width:100%;height:100%;object-fit:cover;object-position:center 28%;filter:saturate(.82)}.portrait-stamp{position:absolute;bottom:0;left:0;background:var(--forest);color:white;padding:26px 30px;min-width:260px}.portrait-stamp small{font-size:9px;letter-spacing:.13em;color:#b4cb9e}.portrait-stamp strong{display:block;font:700 17px/1.45 Manrope,sans-serif;margin-top:8px;max-width:250px}
.intro-band{background:#233e35;color:#f2f6ed}.intro-inner{display:flex;align-items:center;gap:70px;padding-block:60px}.intro-inner>span{min-width:150px;font:800 10px Manrope;letter-spacing:.17em;color:#bacab7}.intro-inner p{font:600 clamp(22px,2.7vw,34px)/1.43 Manrope,sans-serif;letter-spacing:-.04em;margin:0;max-width:850px}.intro-inner em{color:#b7d08e}
.audience-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.audience-card{background:white;border:1px solid var(--line);min-height:344px;padding:31px;display:flex;flex-direction:column;align-items:flex-start;transition:transform .2s,box-shadow .2s,border-color .2s}.audience-card:hover{transform:translateY(-3px);box-shadow:0 13px 28px #203a3312;border-color:#b6c8b3}.audience-card .icon{color:#72947a;margin-bottom:34px}.card-kicker{font:800 9px Manrope;letter-spacing:.14em;color:#8a9c8e}.audience-card h3{margin:15px 0 12px;font-size:23px}.audience-card p,.service-card p{color:var(--stone);font-size:13px;line-height:1.82}.audience-card .card-arrow{margin-top:auto;align-self:flex-end;color:var(--forest)}.icon{width:29px;height:29px}
.service-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.service-card{display:flex;align-items:flex-start;flex-direction:column;padding:31px;background:white;border:1px solid var(--line);min-height:315px;transition:transform .2s,box-shadow .2s}.service-card:hover{transform:translateY(-3px);box-shadow:0 12px 25px #203a3313}.service-card .number{font:800 10px Manrope;letter-spacing:.11em;color:#87988b}.service-card .service-icon{margin:26px 0 14px;color:#7f9a78}.service-card h3{margin:0 0 13px}.service-card p{max-width:450px}.card-bottom{margin-top:auto;font-size:11px;font-weight:800;display:flex;align-items:center;gap:8px}.card-bottom svg{width:16px;height:16px}.service-detail{margin-top:30px;background:white;border:1px solid var(--line);padding:32px}.service-detail h3{margin-bottom:10px}.service-detail>p{color:var(--stone)}.service-tabs,.filter-tabs{display:flex;gap:9px;flex-wrap:wrap;margin:24px 0}.service-tabs button,.filter-tabs button{border:1px solid var(--line);border-radius:100px;background:#f1f3ed;color:var(--forest);padding:11px 16px;font-size:12px;font-weight:700;transition:background .2s,color .2s}.service-tabs button:hover,.filter-tabs button:hover{background:#dbe7cf}.service-tabs [aria-selected=true],.filter-tabs [aria-pressed=true]{background:var(--forest);color:white;border-color:var(--forest)}.service-tabs [aria-selected=true]:hover,.filter-tabs [aria-pressed=true]:hover{background:var(--forest)}.service-pane{padding:30px;background:var(--cloud)}.service-pane[hidden]{display:none}.service-tags{display:flex;flex-wrap:wrap;gap:18px;margin:22px 0}.service-tags span{display:flex;align-items:center;gap:7px;font-size:12px;color:#3e6452}
.founder-section{display:grid;grid-template-columns:1fr .9fr;gap:90px;align-items:center;padding-block:115px}.founder-image{position:relative;max-width:560px}.founder-image img{height:545px;width:100%;object-fit:cover;border-radius:180px 8px 8px 8px}.round-sticker{position:absolute;right:-35px;bottom:30px;width:143px;height:143px;border-radius:50%;display:flex;align-items:center;justify-content:center;text-align:center;background:#c8d89d;transform:rotate(12deg);font:800 11px/1.55 Manrope;letter-spacing:.1em}.founder-copy p{color:var(--stone);line-height:1.85;margin-top:20px}.founder-copy .btn{margin-top:18px}.values-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:34px;margin-top:52px}.value{border-top:1px solid #678477;padding-top:23px}.value .number{color:#bad199;font-size:11px}.value h3{font-size:19px;margin-top:26px}.value p{color:#c0d0c5;font-size:13px;line-height:1.88;max-width:320px}
.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.blog-card{display:block}.blog-photo{height:235px;position:relative;overflow:hidden}.blog-photo img{width:100%;height:100%;object-fit:cover;transition:transform .3s}.blog-card:hover .blog-photo img{transform:scale(1.04)}.circle-arrow{position:absolute;right:15px;bottom:15px;background:#f9faf5;border-radius:50%;height:44px;width:44px;display:grid;place-items:center}.circle-arrow svg{width:17px}.blog-meta{font:800 10px Manrope;letter-spacing:.11em;color:#8b9f8e;margin:24px 0 13px}.blog-card h3{font-size:19px;margin-bottom:12px}.blog-card p{color:var(--stone);font-size:13px;line-height:1.85}.blog-read{font-size:11px;font-weight:800;display:flex;align-items:center;gap:9px;margin-top:21px}.blog-read svg{width:16px}
.faq-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:100px}.faq-layout>div:first-child>p{color:var(--stone);margin-top:24px}.faq-item{border-top:1px solid #cbd5c9}.faq-item:last-child{border-bottom:1px solid #cbd5c9}.faq-trigger{border:0;background:transparent;width:100%;display:flex;align-items:center;justify-content:space-between;text-align:left;gap:20px;min-height:68px;padding:15px 0;color:var(--ink);font-size:15px;font-weight:700}.faq-trigger svg{width:20px;height:20px;flex-shrink:0;transition:transform .36s}.faq-trigger[aria-expanded=true] svg{transform:rotate(180deg)}.faq-answer{display:grid;grid-template-rows:0fr;opacity:0;visibility:hidden;transition:grid-template-rows .38s cubic-bezier(.22,1,.36,1),opacity .26s ease,visibility 0s linear .38s}.faq-answer.open{grid-template-rows:1fr;opacity:1;visibility:visible;transition:grid-template-rows .38s cubic-bezier(.22,1,.36,1),opacity .26s ease,visibility 0s}.faq-answer>div{min-height:0;overflow:hidden}.faq-answer p{font-size:14px;color:var(--stone);margin:4px 30px 21px 0;line-height:1.85}
.cta-section{background:#2e5045;color:white;display:grid;grid-template-columns:1fr .8fr;min-height:440px;margin-block:85px 100px;overflow:hidden}.cta-copy{padding:69px 66px}.cta-copy h2{font-size:clamp(37px,4.1vw,54px)}.cta-copy em{color:#c7d99f}.cta-copy p{color:#c9d8cf;margin:23px 0 29px;max-width:420px}.cta-art{background:#b7c99c;display:grid;place-items:center;position:relative;overflow:hidden}.cta-art .round-note{font:italic 33px/1.2 'Playfair Display',serif;color:#2b5644;position:relative;z-index:1;text-align:center;transform:rotate(-9deg)}.cta-art::before{content:"";width:300px;height:300px;border:1px solid #dde9cd;border-radius:50%;position:absolute;box-shadow:0 0 0 48px #b7c99c,0 0 0 49px #d8e5c6,0 0 0 110px #b7c99c,0 0 0 111px #d8e5c6}
.page-hero{padding-block:98px 92px;background:#f3f5ec;border-bottom:1px solid #e2e8dd}.page-hero h1{max-width:1040px;margin-bottom:23px}.page-hero p{color:var(--stone);max-width:680px;font-size:17px;line-height:1.8;margin-bottom:0}.page-content{padding-block:86px 110px}.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;margin-top:45px}.process-step{border-top:1px solid #b9cbb9;padding-top:18px}.process-step .number{font:700 11px Manrope;color:#8fa683}.process-step h3{margin:26px 0 14px;font-size:18px}.process-step p{color:var(--stone);font-size:13px}
.segment{display:grid;grid-template-columns:130px 1fr;gap:40px;padding:48px 0;border-top:1px solid #d1dcd0}.segment .number{color:#90a78c;font-weight:700}.segment h2{font-size:32px;margin-bottom:18px}.segment p{max-width:720px;color:var(--stone);margin-bottom:22px}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:95px;align-items:center}.about-grid figure{height:585px;border-radius:250px 250px 6px 6px;overflow:hidden}.about-grid img{width:100%;height:100%;object-fit:cover;object-position:center 25%}.about-grid p{color:var(--stone);line-height:1.95;margin-top:15px}.about-grid .lead{font:600 21px/1.6 Manrope;color:var(--forest);letter-spacing:-.03em}.culture-grid{display:grid;grid-template-columns:1fr 1fr;gap:88px;align-items:center}.culture-grid img{width:100%;height:360px;object-fit:cover}.culture-grid p{color:var(--stone);margin-top:23px}
.article-header{padding-block:55px 45px}.back-link{display:inline-flex;align-items:center;gap:12px;font-size:12px;font-weight:700;color:#6c8272;margin-bottom:65px}.back-link svg{width:18px}.article-header h1{font-size:clamp(38px,5vw,65px);max-width:960px}.article-header .lead{font-size:18px;max-width:790px;color:var(--stone)}.article-image{width:100%;height:440px;object-fit:cover}.article-body{max-width:780px;margin:0 auto;padding-block:65px 90px}.article-body h2{font-size:27px;margin-top:34px;margin-bottom:14px}.article-body p,.article-body li{font-size:16px;line-height:1.95;color:#607369}.article-body .btn{margin-top:25px}
.contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:90px}.contact-grid h2{font-size:34px}.contact-grid>div>p{color:var(--stone);max-width:400px;margin-top:23px}.contact-links{margin:33px 0;border-top:1px solid var(--line)}.contact-links>a,.contact-links>div{display:flex;align-items:center;gap:15px;border-bottom:1px solid var(--line);padding:18px 0;font-size:13px;color:var(--forest)}.contact-links svg{width:21px;flex-shrink:0}.contact-image{height:270px;width:100%;object-fit:cover}.form-card{background:#fff;border:1px solid var(--line);padding:44px}.form-card h3{font-size:26px;margin-bottom:24px}.field{display:block;margin-bottom:20px;font-size:12px;color:#355749;font-weight:700}.field input,.field textarea,.field select{display:block;background:#fafbf8;border:1px solid #dce3db;width:100%;border-radius:3px;padding:14px 16px;font-size:14px;margin-top:7px;color:var(--ink);outline-offset:1px}.field textarea{resize:vertical;min-height:145px}.field input:focus,.field textarea:focus{border-color:#7eaa7a;box-shadow:0 0 0 3px #a5b56b30}.consent{display:flex;align-items:flex-start;gap:11px;color:#6c7e71;font-size:12px;margin:20px 0 25px}.consent input{margin-top:5px;accent-color:var(--forest)}.consent a{text-decoration:underline}.form-note{font-size:12px;color:var(--stone);margin:15px 0 0}.legal-content{max-width:900px}.legal-content h2{font-size:26px;margin:38px 0 14px}.legal-content p{color:#64786d;line-height:1.9}
.site-footer{background:var(--deep);color:#f7faf5}.footer-grid{display:grid;grid-template-columns:1.9fr 1fr 1.1fr;gap:75px;padding-block:75px 64px}.footer-brand .brand{color:white}.footer-brand h2{font-size:31px;margin:34px 0 16px}.footer-brand em{color:#c5d6a2}.footer-brand p{color:#b9cbbb;max-width:350px;font-size:13px}.footer-list{display:flex;flex-direction:column;align-items:flex-start;gap:13px}.footer-list strong{font-size:13px;margin-bottom:8px}.footer-list a,.footer-list p{font-size:12px;color:#bdcfbf;margin:0;line-height:1.7}.footer-list a:hover{text-decoration:underline}.footer-bottom{border-top:1px solid #486158;display:flex;justify-content:space-between;gap:20px;align-items:center;padding:22px 0;font-size:11px;color:#b8c8ba}.footer-bottom nav{display:flex;gap:20px}
/* These pages deliberately use flat, unpatterned backgrounds. */
@media(max-width:1080px){.wrap{width:min(var(--max),calc(100% - 54px))}.desktop-nav{gap:15px}.desktop-nav a{font-size:11px}.hero-grid{gap:30px}.hero-copy h1{font-size:clamp(44px,5.6vw,65px)}.founder-section,.contact-grid{gap:48px}}
@media(max-width:850px){.site-header{height:74px}.desktop-nav{display:none}.menu-button{display:grid;place-items:center}.header-cta{margin-left:auto}.mobile-nav{display:block;position:absolute;left:0;right:0;top:74px;background:var(--ivory);border-bottom:1px solid var(--line);box-shadow:0 15px 25px #203a3314;max-height:0;overflow:hidden;visibility:hidden;transition:max-height .32s,visibility 0s .32s}.mobile-nav.open{visibility:visible;max-height:420px;transition:max-height .32s,visibility 0s}.mobile-nav nav{display:flex;flex-direction:column;padding:15px 27px 25px}.mobile-nav a{padding:13px;border-bottom:1px solid #e7ebe4;font-size:13px;font-weight:700}.hero-grid{grid-template-columns:1fr}.hero-copy{padding:75px 0 18px}.hero-support{margin-top:48px}.hero-portrait{min-height:460px;height:460px;margin:0 0 36px}.section{padding-block:80px}.section-head{display:block}.section-head>p{margin:25px 0 0}.audience-cards,.blog-grid{grid-template-columns:repeat(2,1fr)}.audience-card:last-child{grid-column:span 2;min-height:260px}.founder-section,.about-grid,.culture-grid{grid-template-columns:1fr;gap:45px}.founder-image img{height:440px}.faq-layout{grid-template-columns:1fr;gap:45px}.cta-section{grid-template-columns:1fr}.cta-art{min-height:250px}.footer-grid{grid-template-columns:1.3fr 1fr;gap:45px}.values-grid{gap:16px}.contact-grid{grid-template-columns:1fr}.contact-image{display:none}.process-grid{grid-template-columns:repeat(2,1fr)}.page-hero{padding-block:75px}.about-grid figure{height:500px}}
@media(max-width:570px){.wrap{width:calc(100% - 36px)}.brand-mark{font-size:45px}.brand-type strong{font-size:10px}.brand-type small{font-size:7px}.header-cta{display:none}.hero-copy{padding-top:56px}.hero-copy h1{font-size:clamp(40px,9.6vw,51px)}.hero-copy>p{font-size:15px}.hero-actions{flex-direction:column;align-items:flex-start;gap:12px}.hero-portrait{min-height:395px;height:395px}.portrait-stamp{min-width:225px;padding:20px}.intro-inner{display:block;padding-block:43px}.intro-inner>span{display:block;margin-bottom:20px}.intro-inner p{font-size:24px}.section{padding-block:72px}h2{font-size:34px}.audience-cards,.service-grid,.blog-grid,.values-grid{grid-template-columns:1fr}.audience-card:last-child{grid-column:auto}.audience-card{min-height:280px}.service-card{min-height:280px}.founder-section{padding-block:78px}.founder-image img{height:350px}.round-sticker{right:0;bottom:15px;width:115px;height:115px;font-size:9px}.values-grid{gap:20px}.blog-photo{height:225px}.cta-section{margin-block:47px 60px}.cta-copy{padding:55px 25px}.cta-art{min-height:225px}.footer-grid{grid-template-columns:1fr}.footer-bottom{display:block}.footer-bottom nav{margin-top:12px}.page-hero{padding-block:61px}.page-hero h1{font-size:39px}.page-hero p{font-size:15px}.page-content{padding-block:66px}.process-grid{grid-template-columns:1fr}.segment{grid-template-columns:1fr;gap:10px;padding:36px 0}.segment h2{font-size:27px}.about-grid figure{height:435px}.culture-grid img{height:240px}.article-image{height:270px}.article-header h1{font-size:36px}.article-body{padding-block:42px 70px}.form-card{padding:27px 20px}.service-tabs button{width:100%;text-align:left}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}
/* Ensure filtered cards and inactive panels are removed from layout. */
[hidden]{display:none!important}


/* Scroll-in effects: visual enhancement only, not required for content.
   Classes are applied by JavaScript only to elements below the initial viewport. */
.scroll-reveal {
  transition: opacity 680ms cubic-bezier(.22,1,.36,1),
              transform 680ms cubic-bezier(.22,1,.36,1),
              box-shadow 200ms ease, background-color 200ms ease;
  transition-delay: var(--reveal-delay, 0ms);
  will-change: opacity, transform;
}
.scroll-reveal:not(.is-visible) {
  opacity: 0;
  transform: translate3d(0, 24px, 0);
}
.scroll-reveal.is-visible {opacity: 1; transform: translate3d(0, 0, 0); will-change: auto}
/* Preserve light lift interactions after an item has arrived. */
.scroll-reveal.is-visible.audience-card:hover,
.scroll-reveal.is-visible.service-card:hover,
.scroll-reveal.is-visible.blog-card:hover {transform: translate3d(0,-3px,0)}
@media (max-width: 640px) {
  .scroll-reveal:not(.is-visible) {transform: translate3d(0, 14px, 0)}
  .scroll-reveal {transition-duration: 560ms}
}
@media (prefers-reduced-motion: reduce) {
  .scroll-reveal, .scroll-reveal:not(.is-visible), .scroll-reveal.is-visible {
    opacity: 1 !important; transform: none !important;
    transition: none !important; animation: none !important;
  }
}
