@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=Libre+Caslon+Display&display=swap";
:root{--ink:#242a29;--petrol:#173f3d;--petrol-dark:#0f302f;--sage:#8c9a82;--cream:#f4f0e8;--sand:#d8c3a5;--white:#fbfaf7;--line:#242a292e;--serif:"Libre Caslon Display", Georgia, serif;--sans:"DM Sans", Arial, sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--cream);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;margin:0;font-size:16px;line-height:1.65}body,button,input,textarea{font-family:var(--sans)}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}img{max-width:100%}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:1000;background:var(--white);color:var(--petrol);padding:.75rem 1rem;position:fixed;top:-5rem;left:1rem}.skip-link:focus{top:1rem}.site-header{z-index:100;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#f4f0e8f0;border-bottom:1px solid #173f3d1f;justify-content:space-between;align-items:center;width:100%;min-height:84px;padding:16px clamp(20px,4vw,64px);display:flex;position:fixed;top:0;left:0}.brand{align-items:center;gap:13px;line-height:1.1;display:flex}.brand-mark{border:1px solid var(--petrol);width:46px;height:46px;color:var(--petrol);font-family:var(--serif);border-radius:50% 50% 45% 55%;place-items:center;font-size:17px;display:grid}.brand strong,.footer-brand strong{letter-spacing:.03em;font-size:14px;display:block}.brand small,.footer-brand small{text-transform:uppercase;letter-spacing:.14em;margin-top:5px;font-size:10px;display:block}.nav{align-items:center;gap:clamp(20px,2.6vw,42px);font-size:13px;font-weight:500;display:flex}.nav>a:not(.nav-cta){position:relative}.nav>a:not(.nav-cta):after{content:"";background:var(--petrol);width:0;height:1px;transition:width .25s;position:absolute;bottom:-5px;left:0}.nav>a:hover:after,.nav>a:focus-visible:after{width:100%}.nav-cta{background:var(--petrol);color:var(--white);border-radius:999px;align-items:center;gap:18px;padding:12px 18px;display:flex}.nav-cta svg,.button svg,.text-link svg,.topic-card svg{fill:none;stroke:currentColor;stroke-width:1.5px;width:17px}.menu-toggle{display:none}.hero{background:var(--petrol-dark);margin-top:84px;position:relative;overflow:hidden}.hero-title-image{width:100%;height:auto;display:block}.eyebrow{color:var(--sand);letter-spacing:.19em;text-transform:uppercase;margin:0 0 1.5rem;font-size:11px;font-weight:600}.eyebrow.dark{color:var(--petrol)}.hero h1,h2{font-family:var(--serif);letter-spacing:-.03em;margin:0;font-weight:400;line-height:.99}.hero-intro{background:var(--cream);border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1.25fr) minmax(280px,.55fr);align-items:center;gap:clamp(42px,8vw,120px);padding:clamp(42px,5vw,76px) clamp(24px,8vw,130px);display:grid}.hero-intro .eyebrow{margin-bottom:1rem}.hero-intro-copy{max-width:880px;color:var(--petrol);font-family:var(--serif);margin:0;font-size:clamp(25px,2.6vw,39px);line-height:1.32}.hero-intro-actions{flex-direction:column;align-items:flex-start;gap:18px;display:flex}.hero-intro-actions p{color:#555c59;margin:0;font-size:13px}.button{border:0;border-radius:999px;justify-content:center;align-items:center;gap:22px;min-height:53px;padding:13px 23px;font-size:13px;font-weight:600;transition:transform .2s,background .2s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button-light{background:var(--white);color:var(--petrol)}.button-dark{background:var(--petrol);color:var(--white)}.button-sand{background:var(--sand);color:var(--petrol-dark)}.text-link{border-bottom:1px solid;align-items:center;gap:14px;font-size:13px;font-weight:600;display:inline-flex}.text-link.light{color:#ffffffe6}.section{padding:clamp(92px,11vw,170px) clamp(24px,8vw,130px)}.intro{grid-template-columns:1.3fr .7fr;align-items:start;gap:clamp(50px,8vw,130px);display:grid}.intro h2,.about h2,.approach h2,.faq h2{font-size:clamp(42px,5vw,76px)}.intro-copy{padding-top:3rem}.intro-copy p,.about-content>p:not(.lead){color:#555c59}.intro-copy .text-link{color:var(--petrol);margin-top:1.3rem}.about{background:var(--white);grid-template-columns:minmax(0,.9fr) minmax(0,1fr);align-items:center;gap:clamp(65px,10vw,150px);display:grid}.about-visual{position:relative}.organic-frame{border-radius:46% 46% 10% 10%/23% 23% 8% 8%;height:min(720px,64vw);position:relative;overflow:hidden}.organic-frame img{object-fit:cover}.roundel{background:var(--sand);border-radius:50%;place-items:center;width:130px;height:130px;display:grid;position:absolute;bottom:35px;right:-50px}.roundel span{letter-spacing:.18em;font-size:8px;position:absolute}.roundel b{font-family:var(--serif);font-size:28px;font-weight:400}.about-content .lead{color:var(--petrol);font-family:var(--serif);margin:2.1rem 0;font-size:clamp(23px,2.1vw,31px);line-height:1.35}.about-content .button{margin-top:1.6rem}.topics{background:var(--petrol);color:var(--white)}.section-title{grid-template-columns:1.15fr .55fr;align-items:end;gap:10vw;display:grid}.section-title h2{font-size:clamp(48px,5.4vw,82px)}.section-title>p{color:#ffffffa8;margin:0 0 .6rem}.topic-grid{border-top:1px solid #fff3;border-left:1px solid #fff3;grid-template-columns:repeat(2,1fr);margin-top:5rem;display:grid}.topic-card{border-bottom:1px solid #fff3;border-right:1px solid #fff3;min-height:300px;padding:38px;position:relative}.topic-card>span{color:var(--sand);font-size:10px}.topic-card h3{font-family:var(--serif);margin:3.8rem 0 1rem;font-size:clamp(28px,2.7vw,39px);font-weight:400}.topic-card p{color:#ffffffa8;max-width:470px}.topic-card i{border:1px solid #ffffff4d;border-radius:50%;place-items:center;width:44px;height:44px;font-style:normal;display:grid;position:absolute;top:32px;right:35px}.topics-footnote{color:#ffffffa6;text-align:center;margin:2.4rem 0 0;font-size:13px}.topics-footnote a{color:var(--white);border-bottom:1px solid}.approach{grid-template-columns:.8fr 1.2fr;gap:9vw;padding-bottom:270px;display:grid;position:relative}.approach-body .large-copy{font-family:var(--serif);color:var(--petrol);margin-top:3.2rem;font-size:clamp(25px,2.5vw,37px);line-height:1.38}.principles{border-top:1px solid var(--line);margin-top:3.3rem}.principles div{border-bottom:1px solid var(--line);grid-template-columns:55px 1fr;padding:22px 0;display:grid}.principles span{color:var(--sage);font-size:10px}.principles strong{font-size:15px}.quote-band{background:var(--sand);justify-content:center;align-items:center;gap:30px;min-height:175px;padding:40px 9vw;display:flex;position:absolute;bottom:0;left:0;right:0}.quote-band>span{font-family:var(--serif);color:var(--petrol);font-size:80px;line-height:.4}.quote-band blockquote{text-align:center;max-width:900px;font-family:var(--serif);margin:0;font-size:clamp(25px,3vw,42px);line-height:1.22}.process{background:var(--petrol-dark);color:var(--white)}.light-title>p{color:#ffffff9e}.steps{border-top:1px solid #fff3;margin:5rem 0 0;padding:0;list-style:none}.steps li{border-bottom:1px solid #fff3;grid-template-columns:15% 1fr;padding:32px 0;display:grid}.steps li>span{color:var(--sand);font-size:11px}.steps li>div{grid-template-columns:.55fr 1fr;gap:5vw;display:grid}.steps h3{font-family:var(--serif);margin:0;font-size:clamp(30px,3vw,43px);font-weight:400}.steps p{color:#ffffffa1;max-width:560px;margin:.4rem 0}.process-cta{justify-content:space-between;align-items:center;padding-top:3rem;display:flex}.process-cta p{font-family:var(--serif);font-size:24px}.faq{grid-template-columns:.7fr 1fr;gap:9vw;display:grid}.accordion{border-top:1px solid var(--line)}.faq-item{border-bottom:1px solid var(--line)}.faq-item button{width:100%;color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:0;justify-content:space-between;align-items:center;padding:25px 0;font-size:17px;font-weight:600;display:flex}.faq-item button i{flex:none;width:26px;height:26px;margin-left:1rem;position:relative}.faq-item button i:before,.faq-item button i:after{content:"";background:var(--petrol);height:1px;transition:transform .25s;position:absolute;top:12px;left:5px;right:5px}.faq-item button i:after{transform:rotate(90deg)}.faq-item.is-open button i:after{transform:rotate(0)}.faq-answer{grid-template-rows:0fr;transition:grid-template-rows .3s;display:grid}.faq-answer p{color:#5b625f;margin:0;overflow:hidden}.faq-item.is-open .faq-answer{grid-template-rows:1fr}.faq-item.is-open .faq-answer p{padding-bottom:28px}.contact{background:var(--petrol);color:var(--white);grid-template-columns:.8fr 1fr;gap:9vw;display:grid}.contact-copy h2{font-size:clamp(46px,5.2vw,76px)}.contact-copy>p:not(.eyebrow){color:#ffffffad;max-width:600px}.contact-details{flex-wrap:wrap;gap:26px 48px;margin-top:3rem;display:flex}.contact-details>div{min-width:145px}.contact-details small,.contact-details span,.contact-details a{display:block}.contact-details small{color:var(--sand);text-transform:uppercase;letter-spacing:.16em;font-size:9px}.contact-details span,.contact-details a{margin-top:.4rem;font-size:13px}.contact-details a{text-underline-offset:4px;-webkit-text-decoration:underline #ffffff59;text-decoration:underline #ffffff59}.contact-details a:hover,.contact-details a:focus-visible{-webkit-text-decoration-color:var(--sand);text-decoration-color:var(--sand)}.contact-form{background:var(--white);color:var(--ink);border-radius:44px 44px 10px;padding:clamp(25px,4vw,55px)}.form-row{grid-template-columns:1fr 1fr;gap:20px;display:grid}.contact-form label{margin-bottom:24px;display:block}.contact-form label>span{text-transform:uppercase;letter-spacing:.14em;margin-bottom:8px;font-size:10px;font-weight:600;display:block}.contact-form input,.contact-form textarea{border:0;border-bottom:1px solid var(--line);width:100%;color:var(--ink);background:0 0;border-radius:0;outline:none;padding:13px 0;font-size:16px}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--petrol)}.contact-form textarea{resize:vertical}.form-note{color:#747a77;margin:0 0 1.5rem;font-size:11px}footer{color:var(--white);background:#0b2827;grid-template-columns:1fr auto 50px;align-items:center;gap:40px;padding:35px clamp(24px,6vw,95px);display:grid}.footer-brand{align-items:center;gap:13px;line-height:1.1;display:flex}.footer-brand .brand-mark{color:var(--sand);border-color:var(--sand)}.footer-meta{color:#ffffff8f;gap:28px;font-size:11px;display:flex}.footer-meta a:hover{color:#fff}.back-top{border:1px solid #ffffff47;border-radius:50%;place-items:center;width:42px;height:42px;display:grid}[data-reveal]{opacity:0;transition:opacity .7s,transform .7s;transform:translateY(24px)}[data-reveal].is-visible{opacity:1;transform:none}@media (max-width:980px){.site-header{min-height:74px}.hero{margin-top:74px}.hero-intro{grid-template-columns:1fr;gap:28px}.menu-toggle{background:var(--petrol);cursor:pointer;border:0;border-radius:50%;flex-direction:column;justify-content:center;gap:5px;width:45px;height:45px;padding:11px;display:flex}.menu-toggle>span:not(.sr-only){background:#fff;width:100%;height:1px;display:block}.nav{visibility:hidden;opacity:0;background:var(--cream);border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch;gap:0;padding:30px 24px 35px;transition:all .25s;position:fixed;top:73px;left:0;right:0;transform:translateY(-10px)}.nav.is-open{visibility:visible;opacity:1;transform:none}.nav>a{padding:14px 0;font-size:16px}.nav .nav-cta{justify-content:space-between;margin-top:12px;padding:15px 20px}.intro,.about,.approach,.faq,.contact{grid-template-columns:1fr}.intro-copy{max-width:720px;padding-top:0}.about-visual{max-width:650px}.organic-frame{height:720px}.about-content{max-width:750px}.approach{gap:2rem}.approach-body .large-copy{margin-top:0}.faq{gap:3.5rem}.contact{gap:4rem}}@media (max-width:700px){.brand small{display:none}.brand-mark{width:42px;height:42px}.hero-intro{padding:42px 24px 48px}.hero-intro-copy{font-size:27px}.hero-intro-actions{align-items:stretch}.hero-intro-actions .button{justify-content:space-between}.section{padding:88px 24px}.intro{gap:2rem}.intro h2,.about h2,.approach h2,.faq h2{font-size:45px}.about{padding-top:35px}.organic-frame{height:540px}.roundel{width:108px;height:108px;bottom:-25px;right:-5px}.section-title{grid-template-columns:1fr;gap:1.8rem}.section-title h2{font-size:49px}.topic-grid{grid-template-columns:1fr;margin-top:3.5rem}.topic-card{min-height:270px;padding:29px}.topic-card h3{margin-top:4rem;font-size:34px}.approach{padding-bottom:270px}.quote-band{gap:10px;min-height:200px;padding:35px 24px}.quote-band>span{font-size:58px}.steps li{grid-template-columns:45px 1fr}.steps li>div{grid-template-columns:1fr;gap:.3rem}.steps h3{font-size:34px}.process-cta{flex-direction:column;align-items:stretch}.process-cta .button{justify-content:space-between}.faq{gap:2.5rem}.faq-item button{font-size:15px}.contact-copy h2{font-size:49px}.contact-details{flex-direction:column;gap:22px}.contact-form{border-radius:28px 28px 8px;padding:30px 22px}.form-row{grid-template-columns:1fr;gap:0}.contact-form .button{justify-content:space-between;width:100%}footer{grid-template-columns:1fr 44px}.footer-meta{flex-wrap:wrap;grid-area:2/1/auto/-1;gap:12px 22px}.back-top{grid-area:1/2}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}[data-reveal]{opacity:1;transform:none}}@media (forced-colors:active){.button,.nav-cta,.menu-toggle{border:1px solid}}
