@import url('assets/fonts/fonts.css');
:root{--green:#173e32;--ink:#213e33;--cream:#f7f7ef;--lime:#dceca8;--line:#ced5c8;--muted:#626f64}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',Arial,sans-serif;font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}button{font:inherit}img{display:block;max-width:100%}h1,h2,h3,p{margin:0}h1,h2,.brand-tagline{font-family:'Libre Caslon Display',Georgia,serif;font-weight:400;line-height:1.02;letter-spacing:-.035em}h1{font-size:clamp(64px,6.6vw,108px)}h2{font-size:clamp(48px,4.5vw,74px)}em{font-style:normal;color:#abc18f}p+p{margin-top:18px}.header{display:flex;align-items:center;justify-content:space-between;padding:12px 5%;height:100px;background:var(--cream);position:sticky;top:0;z-index:20;border-bottom:1px solid #e5e7dc}.identity img{width:100px;height:80px;object-fit:contain}.header nav{display:flex;align-items:center;gap:34px;font-size:14px;font-weight:550}.header nav a{position:relative}.header nav a:not(.nav-contact):after{content:'';position:absolute;bottom:-6px;left:0;width:0;height:1px;background:var(--green);transition:width .2s}.header nav a:hover:after{width:100%}.nav-contact{border:1px solid var(--line);padding:11px 20px;border-radius:2px}.nav-contact span{margin-left:25px}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:1.06fr 1fr;min-height:690px;background:var(--green);color:var(--cream)}.hero-copy{padding:67px 8% 30px 9.5%;display:flex;flex-direction:column}.eyebrow{text-transform:uppercase;letter-spacing:.13em;font-size:10px;font-weight:600;display:flex;align-items:center;gap:10px}.dot{width:6px;height:6px;border-radius:100%;background:var(--lime)}.hero h1{margin:43px 0 28px}.hero-description{max-width:420px;color:#d5dfd3;font-size:16px;line-height:1.7}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:45px;padding:15px 22px;font-size:13px;font-weight:600;border:1px solid transparent;transition:background .2s,transform .2s;align-self:flex-start;border-radius:2px}.button span{font-size:21px;line-height:1}.light{background:var(--lime);color:var(--green)}.button:hover{background:#eaf5c7;transform:translateY(-2px)}.hero .button{margin-top:30px}.hero-foot{display:flex;justify-content:space-between;align-items:center;margin-top:auto;padding-top:55px;font-size:10px;color:#bac9ba;letter-spacing:.04em}.hero-foot a{font-size:10px;border-bottom:1px solid #78907a;padding-bottom:3px}.hero-image{position:relative;overflow:hidden;min-height:100%}.hero-image>img{width:100%;height:100%;object-fit:cover;object-position:57% center}.hero-image:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#0c2d20b3,transparent 60%)}.image-note{position:absolute;bottom:40px;left:40px;z-index:1;color:white;border-left:1px solid #dceca8;padding-left:18px}.image-note span{font-size:9px;letter-spacing:.17em;color:#e0e7ce}.image-note p{font-family:'Libre Caslon Display',Georgia,serif;font-size:31px;line-height:1.1;margin-top:10px}.intro-line{display:flex;align-items:center;justify-content:space-between;padding:22px 5%;font-size:11px;border-bottom:1px solid var(--line);letter-spacing:.03em}.intro-line>span:last-child{display:flex;align-items:center;gap:20px;color:var(--muted)}.intro-line i{width:3px;height:3px;background:#98a58b;border-radius:50%}.section{padding:84px 5% 96px;scroll-margin-top:0}.section-label{display:flex;justify-content:space-between;align-items:center;font-size:10px;letter-spacing:.1em;text-transform:uppercase;padding-bottom:30px;border-bottom:1px solid var(--line);margin-bottom:48px}.small-mark{font-size:30px;line-height:1}.group{display:grid;grid-template-columns:1fr 3fr;gap:5%;padding-top:100px;padding-bottom:110px}.group .section-label{align-items:start;border:none;margin:10px 0 0;padding:0}.group .small-mark{display:none}.group h2{max-width:700px}.group-columns{display:grid;grid-template-columns:1fr 1fr;gap:60px;margin-top:40px}.large-copy{font-size:22px;line-height:1.45;max-width:350px}.group-columns>div{font-size:14px;color:var(--muted)}.text-link{display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid #9caa97;padding:16px 0 10px;font-size:12px;font-weight:600;color:var(--green);margin-top:18px}.text-link:hover span{transform:translate(2px,-2px)}.text-link span{font-size:19px;transition:transform .2s}.brands{background:#e9ede2}.brands .section-label{border-color:#c3cdbd}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:70px;margin-bottom:50px}.section-heading>p{max-width:320px;color:var(--muted);font-size:14px}.brand{display:grid;grid-template-columns:1.2fr 1fr;min-height:490px;margin-top:24px;background:var(--cream)}.brand-visual{position:relative;overflow:hidden;min-height:460px}.brand-photo{width:100%;height:100%;position:absolute;object-fit:cover;transition:transform .7s}.brand:hover .brand-photo{transform:scale(1.035)}.livon .brand-photo{object-position:center 83%}.brand-visual:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#15362c30,transparent 35%)}.brand-category{position:absolute;top:25px;left:25px;z-index:2;color:white;font-size:9px;text-transform:uppercase;letter-spacing:.12em;border:1px solid #ffffff70;padding:6px 13px;border-radius:30px;backdrop-filter:blur(8px)}.brand-copy{padding:45px 45px 40px;display:flex;flex-direction:column;align-items:start}.brand-number{text-transform:uppercase;letter-spacing:.1em;font-size:9px;color:var(--muted)}.brand h3{font-size:34px;font-weight:550;letter-spacing:-.05em;margin-top:24px}.brand-symbol{font-size:10px;vertical-align:top;line-height:3;margin-left:3px}.brand-tagline{font-size:36px;margin-top:20px;margin-bottom:18px;letter-spacing:-.02em}.brand-copy>p:not(.brand-tagline){font-size:13px;color:var(--muted);max-width:350px}.brand .text-link{width:100%;margin-top:auto;padding-top:24px}.livon{background:#f0e9dc}.livon .brand-visual{order:2}.livon .brand-copy{order:1}.livon .livon-name{font-family:Georgia,serif;font-size:52px;font-style:italic;line-height:1}.livon-name>span{display:block;font-family:'DM Sans',Arial,sans-serif;font-size:8px;font-style:normal;letter-spacing:.2em;margin-top:7px;margin-left:3px}.livon .brand-tagline{margin-top:18px}.approach{background:var(--green);color:var(--cream)}.approach .section-label{border-color:#4c6856;color:#cedcc7}.approach-layout{display:grid;grid-template-columns:1fr 1fr;gap:12%}.approach-layout>div>p{font-size:14px;color:#c5d3c2;max-width:400px;margin-top:28px}.approach .button{margin-top:28px}.capabilities details{border-bottom:1px solid #52705b;padding:22px 0}.capabilities details:first-child{padding-top:0}.capabilities summary{cursor:pointer;list-style:none;display:flex;align-items:center;font-size:20px;gap:22px}.capabilities summary::-webkit-details-marker{display:none}.capabilities summary>span{font-size:10px;color:#a4b893}.capabilities summary b{font-weight:400;margin-left:auto;font-size:24px;color:var(--lime);transition:transform .2s}.capabilities details[open] b{transform:rotate(45deg)}.capabilities details p{font-size:13px;color:#c5d3c2;margin:18px 30px 3px 40px;line-height:1.8}.reach{position:relative;min-height:430px;color:#fff;display:flex;align-items:center;padding:70px 5%;overflow:hidden}.reach>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.reach:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#122f22da,#163c2840)}.reach>div{position:relative;z-index:1;max-width:650px}.reach h2{margin-top:22px;font-size:64px}.reach>div>p:last-child{font-size:14px;max-width:390px;margin-top:20px;color:#e7eddf}.people{display:grid;grid-template-columns:repeat(4,1fr);gap:26px}.portrait{height:280px;overflow:hidden;background:#e9ece4}.portrait img{width:100%;height:100%;object-fit:cover;object-position:center 20%;filter:grayscale(1);transition:filter .3s}.people article:hover .portrait img{filter:grayscale(0)}.people h3{font-size:17px;font-weight:550;margin-top:20px;line-height:1.3}.people .role{font-size:10px;text-transform:uppercase;letter-spacing:.06em;margin:8px 0 14px;color:#6b765f}.people article>p:last-child{font-size:12px;color:var(--muted);line-height:1.7}.connect{background:#dce8c5}.connect .section-label{border-color:#b5c4a3}.connect-layout{display:grid;grid-template-columns:1.2fr 1fr;gap:12%}.connect em{color:#5b7951}.connect-layout>div>p{font-size:14px;max-width:405px;margin-top:26px;color:#51674b}.email-link{display:inline-flex;gap:40px;border-bottom:1px solid #78916b;font-size:20px;padding-bottom:10px;margin-top:32px}.contact-box{padding-top:8px}.contact-box h3{font-size:19px;font-weight:500}.contact-box>p{margin-top:7px!important;font-size:12px!important}.contact-options{margin-top:25px}.contact-options a{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #b3c3a1;font-size:14px;padding:16px 0}.contact-options a:hover{padding-left:7px;background:#ffffff20}.contact-options span{font-size:22px}footer{background:#102c24;color:#d8e1d4;padding:50px 5% 25px}.footer-top{display:flex;justify-content:space-between;align-items:start;gap:30px;padding-bottom:50px}.footer-wordmark{font-size:42px;line-height:1;letter-spacing:-.07em}.footer-wordmark>span{font-size:8px;letter-spacing:.02em;display:block;margin-top:12px}.footer-top address{font-size:12px;font-style:normal;line-height:1.8;color:#b9c9ba}.back-top{font-size:11px}.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #3b5347;padding-top:22px;font-size:9px;color:#aebdac}.footer-bottom>div{display:flex;gap:24px}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid #b9a263;outline-offset:6px}.sr-only,.skip{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.skip:focus{width:auto;height:auto;clip:auto;z-index:100;padding:15px;background:white}.sr-only{font-size:12px!important}
@media(min-width:1600px){.hero{min-height:760px}.hero-copy{padding-top:90px}.hero h1{margin-top:60px}.section{padding-left:max(5%,calc((100vw - 1440px)/2));padding-right:max(5%,calc((100vw - 1440px)/2))}}
@media(max-width:1000px){.header nav{gap:20px;font-size:12px}.hero{min-height:650px;grid-template-columns:1.1fr 1fr}.hero-copy{padding-top:55px}.hero h1{font-size:74px}.hero-description{font-size:14px}.hero-foot{font-size:9px}.section{padding-top:65px;padding-bottom:70px}.group{grid-template-columns:1fr;gap:25px}.group .section-label{margin:0}.group-columns{gap:40px}.brand-copy{padding:30px}.brand-tagline{font-size:33px}.brand h3{font-size:30px}.brand{min-height:460px}.brand-visual{min-height:460px}.approach-layout{gap:7%}.capabilities summary{font-size:17px;gap:15px}.portrait{height:215px}.people{gap:18px}.people h3{font-size:15px}.people .role{font-size:9px}.footer-bottom{flex-wrap:wrap}.connect-layout{gap:8%}}
@media(max-width:740px){html{scroll-padding-top:80px}.header{height:80px;padding:8px 6%}.identity img{width:78px;height:64px}.menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:6px;background:transparent;border:1px solid #cad3c3;width:44px;height:42px;padding:10px;z-index:22}.menu-toggle span{width:22px;height:1px;background:var(--green);transition:transform .2s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}.header nav{display:none;position:absolute;left:0;right:0;top:79px;background:var(--cream);padding:20px 6% 30px;border-bottom:1px solid var(--line);box-shadow:0 12px 18px #0001}.header nav.open{display:flex;flex-direction:column;align-items:stretch;font-size:17px;gap:0}.header nav a{padding:13px 0}.header nav .nav-contact{margin-top:8px;padding:13px 16px;display:flex;justify-content:space-between}.hero{display:flex;flex-direction:column;min-height:0}.hero-copy{padding:45px 6% 25px}.eyebrow{font-size:9px;letter-spacing:.11em}.hero h1{font-size:clamp(62px,11vw,86px);margin:33px 0 23px}.hero-description{font-size:15px;max-width:420px}.hero .button{margin-top:25px}.hero-foot{padding-top:32px;font-size:9px}.hero-image{height:330px}.hero-image>img{height:100%;object-position:50% 56%}.image-note{bottom:26px;left:6%}.image-note p{font-size:28px}.intro-line{padding:18px 6%;flex-direction:column;align-items:start;gap:8px;font-size:10px}.intro-line>span:last-child{gap:14px;font-size:9px}.section{padding:54px 6% 60px}.section-label{font-size:9px;margin-bottom:30px;padding-bottom:20px;gap:25px}.section-label>span:last-child:not(.small-mark){text-align:right;font-size:8px;max-width:130px}h2{font-size:50px}.group{gap:27px}.group-columns{grid-template-columns:1fr;gap:23px;margin-top:25px}.large-copy{max-width:100%;font-size:21px}.group-columns>div{font-size:14px}.section-heading{display:block;margin-bottom:30px}.section-heading>p{margin-top:23px;max-width:400px}.brand{display:flex;flex-direction:column;min-height:0;margin-top:25px}.brand-visual{min-height:340px;height:340px}.brand-copy{padding:28px}.brand h3{margin-top:18px;font-size:33px}.brand-tagline{font-size:35px;margin-top:20px}.brand-copy>p:not(.brand-tagline){max-width:100%;font-size:14px}.brand .text-link{margin-top:15px}.livon .brand-visual{order:0}.livon .brand-copy{order:1}.brand-category{top:18px;left:18px;font-size:8px}.approach-layout{grid-template-columns:1fr;gap:42px}.approach h2{font-size:52px}.capabilities summary{font-size:20px}.capabilities details p{margin-left:33px;font-size:14px}.reach{min-height:400px;padding:55px 6%}.reach h2{font-size:52px}.reach:after{background:#122f229c}.people{grid-template-columns:1fr 1fr;gap:32px 18px}.portrait{height:250px}.people h3{font-size:16px}.people .role{font-size:9px;letter-spacing:.02em}.people article>p:last-child{font-size:12px}.connect-layout{grid-template-columns:1fr;gap:38px}.connect h2{font-size:55px}.email-link{font-size:19px;gap:25px}.contact-box{padding-top:0}.contact-box h3{font-size:20px}.contact-options a{font-size:15px}.footer-top{flex-wrap:wrap;gap:35px;padding-bottom:35px}.footer-wordmark{width:100%}.footer-top address{font-size:11px}.footer-bottom{flex-direction:column;gap:14px}footer{padding:40px 6% 25px}}
@media(max-width:420px){.portrait{height:190px}.people h3{font-size:14px}.people .role{font-size:8px}.hero-image{height:280px}.brand-visual{height:280px;min-height:280px}.brand-copy{padding:25px}.hero h1{font-size:62px}.section-label{letter-spacing:.07em}.email-link{font-size:17px}.reach h2{font-size:48px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

.contact-options a:hover{text-decoration:underline;text-underline-offset:5px}.button{gap:0}.text-link:hover{text-decoration:underline;text-underline-offset:5px}.email-link:hover{text-decoration:underline;text-underline-offset:5px}

/* Let the main headings and content carry the page. */
.hero{min-height:620px}.hero-copy{justify-content:center;padding-top:70px;padding-bottom:70px}.hero h1{margin:0 0 28px}
.group{display:block}.group-content{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:start}.group-columns{display:block;margin-top:0}.group .large-copy{max-width:none;margin-bottom:25px}.brand h3{margin-top:0}.reach h2{margin-top:0}.capabilities details p{margin-left:0}.people .role{font-size:13px;text-transform:none;letter-spacing:0}
@media(min-width:1600px){.hero{min-height:680px}.hero h1{margin-top:0}}
@media(max-width:740px){.hero{min-height:0}.hero-copy{padding:54px 6%}.hero h1{margin:0 0 23px}.group-content{grid-template-columns:1fr;gap:28px}.group-columns{margin-top:0}.brand h3{margin-top:0}.people .role{font-size:12px}.capabilities details p{margin-left:0}}

/* Corporate headings and original brand name artwork. */
h1{font-size:clamp(56px,5.3vw,84px);line-height:1.06;letter-spacing:-.025em}h2{font-size:clamp(44px,3.8vw,62px);line-height:1.08;letter-spacing:-.025em}.hero h1{max-width:650px}.brand-tagline{font-family:'DM Sans',Arial,sans-serif;font-size:25px;line-height:1.3;letter-spacing:-.02em;font-weight:450}.brand .brand-name{line-height:1;font-style:normal;letter-spacing:0;min-height:72px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;width:100%}.brand-name svg{display:block;overflow:hidden}.earth-name svg{width:min(100%,280px);height:auto;aspect-ratio:1055/155;mix-blend-mode:multiply}.livon-name svg{width:190px;height:auto;aspect-ratio:1720/560}.livon-name .brand-descriptor{font-family:'DM Sans',Arial,sans-serif;font-size:9px;font-weight:550;letter-spacing:.12em;margin:7px 0 0}.brand-name>.sr-only{display:block!important}.reach h2{font-size:clamp(44px,3.8vw,62px);line-height:1.08}.people{grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}.portrait{height:240px}.people h3{font-size:17px;overflow-wrap:normal}.people .role{font-size:12px}.portrait-placeholder{display:grid;place-items:center;background:#e7ebe0;color:#697b67}.portrait-placeholder span{font-family:'DM Sans',Arial,sans-serif;font-size:42px;font-weight:400;letter-spacing:.06em}
@media(max-width:1100px) and (min-width:741px){.people{grid-template-columns:repeat(2,minmax(0,1fr));gap:35px 24px}.portrait{height:250px}}
@media(max-width:740px){.hero h1{font-size:clamp(44px,8.5vw,62px);line-height:1.08}h2,.approach h2,.reach h2,.connect h2{font-size:42px;line-height:1.1}.brand .brand-tagline{font-size:25px;line-height:1.3}.brand .brand-name{margin-top:0}.people{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 18px}.portrait{height:235px}.people h3{font-size:16px}.people .role{font-size:12px}}
@media(max-width:420px){.hero h1{font-size:43px}h2,.approach h2,.reach h2,.connect h2{font-size:37px}.portrait{height:190px}.people h3{font-size:15px}.people .role{font-size:11px}}

.feda-profile .portrait{overflow:hidden}.feda-profile .portrait img{transform:scale(1.4);transform-origin:50% 0%}

.reach>img{object-position:center 60%}.brand-copy>p:not(.brand-tagline){max-width:410px}.brand .brand-tagline{margin-bottom:20px}.brand .brand-name{min-height:70px}

.earth-name svg{aspect-ratio:1610/235}.profile-link{display:inline-block;margin-top:16px;font-size:12px;font-weight:550;border-bottom:1px solid #9caa97;padding-bottom:2px}.profile-link:hover{text-decoration:underline;text-underline-offset:4px}.people article{display:flex;flex-direction:column;align-items:flex-start}.people .portrait{width:100%}.people .profile-link{margin-top:auto;padding-top:16px}.people article>p:not(.role){font-size:12px;color:var(--muted);line-height:1.7}

.portrait img[src="assets/asanka-headshot.jpg"]{object-position:47% 20%}

/* Align portfolio imagery with the hero split. */
:root{--portfolio-inset:5vw;--hero-divider:51.45631vw;--intro-copy-size:22px}
.brand{grid-template-columns:calc(var(--hero-divider) - var(--portfolio-inset)) minmax(0,1fr);background:#f0e9dc}
.livon .brand-visual{order:0}.livon .brand-copy{order:1}
.large-copy,.brand .brand-tagline{font-size:var(--intro-copy-size);line-height:1.45;letter-spacing:normal}
@media(min-width:1600px){:root{--portfolio-inset:max(5vw,calc((100vw - 1440px)/2))}}
@media(max-width:1000px){:root{--hero-divider:52.380952vw}}
@media(max-width:740px){:root{--intro-copy-size:21px}.large-copy,.brand .brand-tagline{font-size:var(--intro-copy-size);line-height:1.45}}

.leadership .section-heading{display:block}.leadership .section-heading>p{max-width:740px;margin-top:20px;font-size:16px;line-height:1.6}

.portrait img[src="assets/asanka-white-background.png"]{object-position:50% 50%;transform:translateY(-2%) scale(2);transform-origin:48% 9%}

/* Corporate information pages. */
.legal-page{padding:64px 6% 90px}.legal-wrap{max-width:900px;margin:auto}.legal-back{font-size:14px;text-decoration:underline;text-underline-offset:4px}.legal-page h1{font-size:clamp(46px,5vw,70px);margin:28px 0 18px}.legal-date{font-size:13px;color:var(--muted);margin-bottom:34px}.legal-intro{font-size:20px;line-height:1.6;margin-bottom:38px}.legal-page h2{font-family:'DM Sans',Arial,sans-serif;font-size:23px;font-weight:550;letter-spacing:0;line-height:1.4;margin:34px 0 12px}.legal-page p{line-height:1.75}.legal-page a:not(.legal-back){text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}.legal-table{overflow-x:auto;margin:24px 0}.legal-table table{border-collapse:collapse;width:100%;font-size:14px;table-layout:fixed}.legal-table th,.legal-table td{padding:14px;text-align:left;vertical-align:top;border:1px solid var(--line)}.legal-table th{background:#e8ecde}.legal-page code{font-size:13px}@media(max-width:740px){.legal-page{padding:40px 6% 60px}.legal-intro{font-size:18px}.legal-page h2{font-size:21px}}

.legal-table th:first-child{width:23%}.legal-table th:nth-child(2){width:43%}.legal-table td{overflow-wrap:anywhere}@media(max-width:740px){.legal-table th,.legal-table td{padding:10px 8px;font-size:12px}.legal-table code{font-size:11px}}

@media(min-width:1101px){.people .portrait{height:auto;aspect-ratio:1/1.03}}

/* Earth’s Finest name set in its licensed brand headline typeface. */
.brand .earth-name{font-family:"adobe-caslon-pro",Georgia,serif;font-size:44px;font-weight:400;font-style:normal;line-height:1.1;letter-spacing:0;color:#653A2B}@media(max-width:420px){.brand .earth-name{font-size:40px}}

.portrait img[src="assets/paul-reenan-retouched.jpg"]{transform:translateY(-6%) scale(1.08);transform-origin:50% 10%;object-position:50% 20%}
