/* Ecohome editorial: architectural photography, warm paper and forest-green depth. */
.ekh-about{--about-paper:#f8f7f2;--about-forest:#203e31;--about-muted:#526458;--about-line:#d7dfd2;--about-layer:#e2e9d7;--about-shadow:0 22px 48px #203e3117;margin:0;background:var(--about-paper);color:var(--ekh-ink)}
.ekh-about #main{padding:0;background:var(--about-paper)}
.ekh-about-main :is(h1,h2,h3){font-weight:500;letter-spacing:-.035em;line-height:1.15;text-transform:none;margin:0;text-wrap:balance}
.ekh-about-main h2{font-size:clamp(32px,3.6vw,54px);color:var(--about-forest)}
.ekh-about-main h3{font-size:23px}
.ekh-about-main p{margin:0 0 20px;line-height:1.75}
.ekh-about-main a{color:inherit;text-decoration:none}
.ekh-about-main figure{margin:0;min-width:0}
.ekh-about-main svg{flex-shrink:0}
.ekh-about-main a:focus-visible,.ekh-about-main summary:focus-visible{outline:3px solid #59852e;outline-offset:5px}
.ekh-about-main .ekh-about-label{font-size:12px;font-weight:600;letter-spacing:.12em;color:#466b30;margin-bottom:24px}
.ekh-about-label:before{content:'';display:inline-block;width:24px;height:1px;background:currentColor;vertical-align:middle;margin-right:12px}
.ekh-about-hero{position:relative;isolation:isolate;min-height:690px;min-height:min(840px,calc(100svh - 100px));display:flex;align-items:flex-end;background:#f5f3e8;overflow:hidden;color:var(--about-forest)}
.ekh-about-hero-image{position:absolute;inset:0;z-index:-2}
.ekh-about-hero-image img{width:100%;height:100%;object-fit:cover;object-position:center;display:block}
.ekh-about-hero:after{content:'';position:absolute;inset:0;z-index:-1;background:none}
.ekh-about .ekh-about-hero-content{padding-block:100px 106px;position:relative;width:calc(100% - clamp(40px,8vw,160px));max-width:none}
.ekh-about-hero .ekh-about-label{color:#365629}
.ekh-about-hero h1{color:#203e31;font-size:clamp(48px,5.8vw,86px);line-height:1.08;max-width:900px;margin-bottom:26px;letter-spacing:-.045em}
.ekh-about-hero-content>p:not(.ekh-about-label){font-size:17px;max-width:510px;color:#30472c;margin-bottom:30px}
.ekh-about-hero .ekh-text-link{color:#203e31;border-color:#6b8554}
.ekh-about-hero .ekh-button{background:#b6db7c;color:#203413;border-color:#b6db7c}
.ekh-about-hero a:focus-visible{outline-color:#365629}
.ekh-about-image-credit{position:absolute;bottom:30px;right:max(32px,calc((100vw - 1280px)/2));font-size:12px;color:#30472c;max-width:260px;text-align:right;background:#fffdf1e6;padding:5px 9px}
.ekh-about-scroll{position:absolute;bottom:24px;left:clamp(20px,4vw,80px);border:1px solid #718a5d;border-radius:50%;width:46px;height:46px;display:grid;place-items:center;color:#203e31;background:#fffdf1c9;transition:background 180ms}
.ekh-about-scroll:hover{background:#fffdf1}
/* Architectural layers: recessed paper, offset image mounts and open portrait grids. */
.ekh-about-main section[id]{scroll-margin-top:calc(var(--ekh-header-height,118px) + 24px)}
.ekh-about-chapter{display:grid;grid-template-columns:1fr 1fr;gap:56px 88px;padding-block:104px 112px;position:relative;isolation:isolate}
.ekh-about-chapter:before{content:'';position:absolute;inset:32px -3vw 0;z-index:-1;background:radial-gradient(ellipse at 0 12%,#dceac876,transparent 48%);pointer-events:none}
.ekh-about-chapter-heading h2{max-width:500px}
.ekh-about-chapter-heading:after{content:'';display:block;width:min(420px,100%);height:218px;margin-top:26px;background:url('about-story.svg') left center/contain no-repeat;pointer-events:none}
.ekh-about-chapter-copy{color:var(--about-muted);max-width:580px}
.ekh-about-chapter-copy .ekh-about-lead{font-size:23px;line-height:1.6;color:var(--about-forest);margin-bottom:28px}
.ekh-about-story-photo{grid-column:1/-1;position:relative;isolation:isolate;padding:0 24px 0 0}
.ekh-about-story-photo:before{content:'';position:absolute;inset:30px 0 4px 32px;background:var(--about-layer);border:1px solid #c6d2b8;z-index:-1;pointer-events:none}
.ekh-about-story-photo:after{content:'';position:absolute;top:-16px;left:-16px;width:96px;height:96px;border-top:2px solid #789660;border-left:2px solid #789660;background:repeating-linear-gradient(90deg,#90ab6c 0 1px,transparent 1px 12px) top left/100% 6px no-repeat;pointer-events:none}
.ekh-about-story-photo img{display:block;width:100%;aspect-ratio:2/1;object-fit:cover;box-shadow:var(--about-shadow)}
.ekh-about-story-photo figcaption{display:table;background:var(--about-paper);padding:14px 18px 0 0;position:relative}
.ekh-about-main figcaption{font-size:12px;line-height:1.6;color:var(--about-muted);padding-top:14px}
.ekh-about-connect{display:grid;grid-template-columns:1fr 1fr;gap:88px;padding-block:112px 190px;position:relative;isolation:isolate}
.ekh-about-connect:before{content:'';position:absolute;inset:24px -3vw;z-index:-1;background:radial-gradient(ellipse at 0 0,#c9e69b,transparent 58%),linear-gradient(115deg,#e5f0d5,#eff5e6 52%,#caddb9);border:1px solid #c1d2ab;border-radius:24px;box-shadow:inset 0 1px 0 #fff,0 20px 55px #203e3112;pointer-events:none}
.ekh-about-connect:after{content:'';position:absolute;left:-8px;bottom:32px;width:min(460px,46%);height:200px;z-index:-1;background:url('about-connect.svg') left bottom/contain no-repeat;opacity:.8;pointer-events:none}
.ekh-about-connect-copy{display:flex;flex-direction:column;align-items:flex-start;gap:22px;padding:32px;background:linear-gradient(145deg,#ffffffed,#fafff3e0);border:1px solid #ffffff;border-radius:18px;box-shadow:0 14px 35px #23433214,inset 0 1px 0 #fff;position:relative}
.ekh-about-connect-copy>p{max-width:45ch;color:var(--about-muted);margin:0}
.ekh-about-phone{font-size:clamp(28px,3vw,42px);letter-spacing:-.03em;display:inline-flex;align-items:center;gap:24px;min-height:48px}
.ekh-about-connect-copy .ekh-button{margin-top:8px}
.ekh-about-team{background:linear-gradient(135deg,#e4ebdc,#f1f4eb 44%,#e8edde);padding-block:104px;position:relative;isolation:isolate;border-block:1px solid #dce4d2;box-shadow:inset 0 1px 0 #ffffffb3}
.ekh-about-team:before{content:'';position:absolute;inset:0 0 auto;height:460px;z-index:-1;background:url('about-team.svg') right -60px top 12px/min(650px,55%) auto no-repeat;opacity:.28;pointer-events:none}
.ekh-about-team-heading{display:grid;grid-template-columns:1.15fr 1fr;gap:0 80px;margin-bottom:56px}
.ekh-about-team-heading .ekh-about-label{grid-column:1/-1}
.ekh-about-team-heading>p:last-child{color:var(--about-muted);align-self:end;max-width:44ch;margin:0}
.ekh-about-ceo{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:56px;align-items:center;margin-bottom:80px;padding:20px 0 0 20px;position:relative;isolation:isolate}
.ekh-about-ceo:before{content:'';position:absolute;inset:40px 0 20px 48px;z-index:-1;background:radial-gradient(ellipse at 100% 0,#50724a88,transparent 65%),linear-gradient(125deg,#183e2d,#2b4f39);border:1px solid #496842;box-shadow:0 24px 50px #173d2a26;pointer-events:none}
.ekh-about-ceo figure{max-width:340px;position:relative;isolation:isolate}
.ekh-about-ceo figure:before{content:'';position:absolute;inset:-20px 24px 28px -20px;z-index:-1;background:#a8ca72;border:1px solid #90b357;pointer-events:none}
.ekh-about-ceo img{display:block;width:100%;height:auto;aspect-ratio:2/3;object-fit:cover;box-shadow:0 18px 35px #10291d38}
.ekh-about-ceo-copy{max-width:600px;padding:48px 40px 48px 0;color:#f3f6eb}.ekh-about-ceo-copy .ekh-about-label{color:#d4eca8}.ekh-about-ceo-copy .ekh-text-link{color:#e0efc7;border-color:#9db77f}
.ekh-about-ceo-copy h3{font-size:clamp(32px,3.5vw,48px);color:#fff;margin-bottom:28px}
.ekh-about-ceo-copy>p:not(.ekh-about-label){color:#deead5}
.ekh-about-team-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:26px 22px;list-style:none;margin:0;padding:0}
.ekh-about-team-grid li{margin:0;min-width:0;background:linear-gradient(135deg,#fff,#f9fcf4);border:1px solid #d6e0ca;border-radius:0;overflow:hidden;box-shadow:0 8px 22px #203e3112,0 2px 4px #203e3108}
.ekh-about-team-grid img{display:block;width:100%;height:auto;aspect-ratio:3/4;object-fit:cover;object-position:top;background:#dce4d7;border-bottom:3px solid #abc685}
.ekh-about-member-copy{padding:16px 16px 18px;position:relative;background:#fff;border-top:1px solid #e1e8d9;min-height:96px}
.ekh-about-member-copy:before{content:'';position:absolute;left:20px;top:0;width:32px;height:3px;background:#7aa63d}
.ekh-about-team-grid h3{font-size:19px;margin:0;color:var(--about-forest)}
.ekh-about-team-grid p{font-size:13px;color:var(--about-muted);margin:7px 0 0}
@media(max-width:900px){.ekh-about-team-heading{gap:24px 32px}.ekh-about-team-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.ekh-about-ceo{gap:36px}}
@media(max-width:600px){.ekh-about-team-heading,.ekh-about-ceo{grid-template-columns:1fr;gap:28px}.ekh-about-team-heading{margin-bottom:32px}.ekh-about-ceo{margin-bottom:40px}.ekh-about-ceo figure{max-width:280px;width:100%}.ekh-about-team-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 16px}.ekh-about-team-grid h3{font-size:18px}.ekh-about-team-grid p{font-size:13px}.ekh-about-member-copy{padding:16px 12px 18px}.ekh-about-member-copy:before{left:12px}}
@supports(animation-timeline:scroll()){@media(prefers-reduced-motion:no-preference) and (min-width:901px){.ekh-about-hero-image{animation:ekh-about-depth linear both;animation-timeline:scroll(root);animation-range:0px 100svh}@keyframes ekh-about-depth{from{transform:translateY(0) scale(1.03)}to{transform:translateY(24px) scale(1.03)}}}}
@media(max-width:1100px){.ekh-about-chapter,.ekh-about-ceo,.ekh-about-connect{column-gap:44px}.ekh-about-hero h1{font-size:68px}}
@media(max-width:900px){.ekh-about-hero{min-height:700px}.ekh-about-hero h1{font-size:60px}.ekh-about-chapter{padding-block:76px;gap:36px}.ekh-about-team{padding-block:64px}.ekh-about-ceo{gap:32px}.ekh-about-connect{padding-block:72px;gap:32px}}
@media(max-width:600px){.ekh-about .ekh-wrap{width:calc(100% - 40px)}.ekh-about-hero{min-height:max(620px,calc(100svh - 112px))}.ekh-about .ekh-about-hero-content{padding-block:96px 116px}.ekh-about-hero h1{font-size:clamp(39px,10.8vw,60px)}.ekh-about-hero-content>p:not(.ekh-about-label){font-size:16px;max-width:33ch}.ekh-about-hero-image img{object-position:60% center}.ekh-about-hero:after{background:linear-gradient(0deg,#fbfaf2c7 0%,#fbfaf299 40%,#fbfaf214 65%,transparent 80%)}.ekh-about-hero .ekh-actions{gap:20px}.ekh-about-scroll{left:20px;bottom:24px}.ekh-about-image-credit{font-size:11px;right:20px;bottom:28px;max-width:230px}.ekh-about-chapter,.ekh-about-ceo,.ekh-about-connect{grid-template-columns:1fr;gap:28px}.ekh-about-chapter{padding-block:56px}.ekh-about-chapter-copy .ekh-about-lead{font-size:21px}.ekh-about-story-photo img{aspect-ratio:4/3}.ekh-about-team{padding-block:48px}.ekh-about-team figure img{aspect-ratio:2/3}.ekh-about-ceo-copy{padding-top:8px}.ekh-about-connect{padding-block:56px}.ekh-about-main .ekh-about-label{letter-spacing:.07em;font-size:11px}.ekh-about-main h2{font-size:32px}}
@media(max-width:900px){.ekh-about-ceo{padding:12px 0 0 12px;margin-bottom:56px}.ekh-about-ceo:before{inset:40px 0 16px 36px}.ekh-about-ceo figure:before{inset:-12px 16px 20px -12px}.ekh-about-ceo-copy{padding:24px 24px 24px 0}}
@media(max-width:600px){.ekh-about-chapter:before{inset:20px -12px 0}.ekh-about-chapter-heading:after{height:145px;margin-top:18px;width:280px;max-width:100%}.ekh-about-story-photo{padding-right:12px}.ekh-about-story-photo:before{inset:16px 0 4px 16px}.ekh-about-story-photo:after{top:-8px;left:-8px;width:40px;height:40px}.ekh-about-story-photo figcaption{font-size:11px;max-width:90%;padding-right:8px}.ekh-about-team:before{height:250px;background-size:340px auto;background-position:right -100px top 10px;opacity:.17}.ekh-about-ceo{padding:12px 12px 24px;margin-bottom:40px}.ekh-about-ceo:before{inset:44px 0 0 0}.ekh-about-ceo-copy{padding:4px 8px 0}.ekh-about-connect:before{inset:20px -10px}.ekh-about-connect:after{left:auto;right:-8px;bottom:22px;width:150px;height:86px;opacity:.22}.ekh-about-connect-copy{gap:18px;padding:22px 18px}.ekh-about-connect:before{border-radius:18px}.ekh-about-team-grid li{border-radius:0;box-shadow:0 5px 14px #203e3110}}
@media(min-width:901px) and (max-width:1100px){.ekh-about-team-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(prefers-reduced-motion:reduce){.ekh-about-main *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
