:root{--ink:#12352f;--green:#0a674f;--lime:#c9f353;--cream:#f4f1e8;--white:#fffef9;--line:rgba(18,53,47,.17)}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--cream);color:var(--ink);font-family:Arial,Helvetica,sans-serif}
a{color:inherit;text-decoration:none}
.site-header{height:86px;display:flex;align-items:center;justify-content:space-between;padding:0 5vw;background:rgba(244,241,232,.94);border-bottom:1px solid var(--line);position:relative;z-index:5}
.brand{display:flex;align-items:center;gap:12px;font-size:19px;font-weight:800;letter-spacing:-.04em}
.brand b{color:var(--green)}
.brand-mark{width:39px;height:39px;border:2px solid var(--ink);border-radius:50%;display:grid;place-items:center;position:relative}
.brand-mark:before,.brand-mark:after{content:"";position:absolute;width:46px;height:2px;background:var(--ink);transform:rotate(45deg)}
.brand-mark:after{transform:rotate(-45deg)}
.brand-mark i{width:14px;height:14px;background:var(--lime);border:2px solid var(--ink);border-radius:50%;z-index:1}
nav{display:flex;align-items:center;gap:clamp(20px,3vw,48px);font-size:13px;font-weight:700}
nav a:hover{color:var(--green)}
.nav-cta,.primary-button{display:inline-flex;align-items:center;gap:24px;background:var(--ink);color:#fff;padding:15px 20px;font-size:13px;font-weight:700;border-radius:3px;transition:.2s}
.nav-cta:hover,.primary-button:hover{background:var(--green);transform:translateY(-2px)}
.hero{min-height:calc(100vh - 86px);display:grid;grid-template-columns:53% 47%;border-bottom:1px solid var(--line)}
.hero-copy{padding:clamp(70px,9vw,128px) 6vw 56px;display:flex;flex-direction:column;align-items:flex-start}
.eyebrow{margin:0 0 34px;font-size:11px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;display:flex;align-items:center;gap:10px}
.eyebrow span{width:28px;height:1px;background:var(--green)}
h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(60px,7vw,112px);line-height:.88;letter-spacing:-.065em;font-weight:400;margin:0}
h1 em{color:var(--green);font-weight:400}
.hero-intro{max-width:560px;margin:36px 0 0;font-size:clamp(17px,1.5vw,22px);line-height:1.6;color:#49655f}
.hero-actions{margin-top:36px;display:flex;align-items:center;gap:32px}
.primary-button{padding:18px 22px;background:var(--green)}
.text-link{font-size:13px;font-weight:800;padding:12px 0;border-bottom:1px solid var(--ink)}
.text-link span{margin-left:10px}
.hero-trust{width:100%;margin-top:auto;padding-top:50px;display:flex;align-items:center;gap:20px;font-size:10px;text-transform:uppercase;letter-spacing:.08em}
.hero-trust strong{margin-right:auto;font-size:11px}
.hero-trust span:before{content:"✓";color:var(--green);margin-right:5px}
.hero-art{min-height:650px;position:relative;overflow:hidden;background:var(--green);color:#fff;isolation:isolate}
.hero-art:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 70% 22%,rgba(201,243,83,.22),transparent 34%),repeating-linear-gradient(90deg,transparent 0 calc(25% - 1px),rgba(255,255,255,.08) calc(25% - 1px) 25%);z-index:-1}
.sun-orbit{width:min(45vw,650px);aspect-ratio:1;border:1px solid rgba(255,255,255,.22);border-radius:50%;position:absolute;right:-12vw;top:-19vw}
.sun-orbit:before,.sun-orbit:after{content:"";position:absolute;inset:13%;border:1px solid rgba(255,255,255,.16);border-radius:50%}
.sun-orbit:after{inset:30%}
.sun-orbit span{position:absolute;width:30%;aspect-ratio:1;background:var(--lime);border-radius:50%;top:35%;left:35%;box-shadow:0 0 60px rgba(201,243,83,.32)}
.art-label{position:absolute;top:44px;left:48px;font-size:11px;line-height:1.5;letter-spacing:.15em;font-weight:700}
.energy-card{position:absolute;left:48px;top:36%;width:180px;border:1px solid rgba(255,255,255,.35);padding:20px;background:rgba(4,62,48,.42);backdrop-filter:blur(8px)}
.energy-card>span{font-size:9px;letter-spacing:.16em}
.energy-card strong{display:block;font-family:Georgia,serif;font-size:50px;font-weight:400;margin:10px 0}
.energy-line{display:flex;align-items:flex-end;gap:5px;height:34px}
.energy-line i{display:block;width:18%;background:var(--lime);height:30%}
.energy-line i:nth-child(2){height:55%}
.energy-line i:nth-child(3){height:48%}
.energy-line i:nth-child(4){height:80%}
.energy-line i:nth-child(5){height:100%}
.solar-field{position:absolute;width:115%;height:49%;left:-5%;bottom:-7%;display:grid;grid-template-columns:repeat(4,1fr);gap:7px;transform:perspective(600px) rotateX(56deg) rotateZ(-8deg);transform-origin:bottom}
.solar-field i{background:linear-gradient(135deg,#183f52,#0b2635);border:2px solid #8baeb2;box-shadow:inset 0 0 0 1px rgba(255,255,255,.14)}
.project-tag{position:absolute;right:28px;bottom:30px;background:var(--lime);color:var(--ink);padding:12px 15px;font-size:10px;font-weight:800;letter-spacing:.07em;text-transform:uppercase}
.project-tag span{color:#f7a11a;margin-right:7px}
.proof-strip{display:grid;grid-template-columns:1.2fr repeat(3,1fr);min-height:108px;padding:0 5vw;align-items:center;background:var(--white)}
.proof-strip p{font-family:Georgia,serif;font-style:italic;font-size:18px}
.proof-strip div{min-height:108px;display:flex;align-items:center;gap:12px;border-left:1px solid var(--line);padding-left:24px;font-size:12px;font-weight:700}
.proof-strip div span{color:var(--green);font-family:Georgia,serif;font-style:italic}
@media(max-width:900px){.site-header nav{display:none}
.hero{grid-template-columns:1fr}
.hero-copy{min-height:680px;padding:70px 6vw 38px}
.hero-art{min-height:560px}
.hero-trust{flex-wrap:wrap}
.hero-trust strong{width:100%}
.proof-strip{grid-template-columns:1fr 1fr;padding:18px 5vw}
.proof-strip div{min-height:70px}
}
@media(max-width:560px){.site-header{height:74px;padding:0 18px}
.brand{font-size:16px}
.brand-mark{width:32px;height:32px}
.brand-mark:before,.brand-mark:after{width:38px}
.nav-cta{padding:12px;font-size:0;gap:0}
.nav-cta span{font-size:18px}
.hero-copy{min-height:650px;padding:58px 22px 30px}
h1{font-size:clamp(55px,17vw,76px)}
.hero-intro{font-size:17px}
.hero-actions{flex-direction:column;align-items:flex-start;gap:14px}
.hero-trust span{display:none}
.hero-art{min-height:500px}
.energy-card{left:22px;top:34%}
.art-label{left:22px}
.proof-strip{grid-template-columns:1fr}
.proof-strip p{padding-bottom:12px}
.proof-strip div{border-left:0;border-top:1px solid var(--line);padding-left:0}
}

/* Full site */
.skip-link{position:fixed;left:16px;top:-60px;background:var(--lime);padding:12px 18px;z-index:1000;font-weight:800}.skip-link:focus{top:16px}.site-header{position:sticky;top:0}.menu-button,.mobile-nav{display:none}.section{padding:clamp(88px,10vw,150px) 5vw}.section-head{display:grid;grid-template-columns:1.3fr .7fr;align-items:end;gap:9vw;margin-bottom:64px}.section-head h2,.benefits-title h2,.faq-intro h2,.process-intro h2,.statement-copy h2,.contact-copy h2{font-family:Georgia,'Times New Roman',serif;font-size:clamp(43px,5.2vw,78px);line-height:.96;letter-spacing:-.055em;font-weight:400;margin:0}.section-head>p,.process-intro>p,.faq-intro>p{margin:0;color:#5a6e69;font-size:17px;line-height:1.7;max-width:480px}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.service-card{min-height:530px;padding:28px;display:flex;flex-direction:column;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:rgba(255,254,249,.42);transition:transform .25s,background .25s}.service-card:hover{transform:translateY(-8px);background:var(--white)}.service-card.featured{background:var(--lime)}.service-card.dark{background:var(--ink);color:#fff}.card-num{font-family:Georgia,serif;font-style:italic;font-size:14px}.service-symbol{height:138px;position:relative;margin:30px 0}.service-symbol:before{content:"";position:absolute;width:90px;height:90px;border:1px solid currentColor;border-radius:50%;opacity:.3;left:50%;top:50%;transform:translate(-50%,-50%)}.home-symbol i{position:absolute;width:76px;height:58px;border:2px solid currentColor;left:50%;top:58%;transform:translate(-50%,-50%)}.home-symbol i:before{content:"";position:absolute;width:53px;height:53px;border-left:2px solid;border-top:2px solid;transform:rotate(45deg);left:10px;top:-29px}.business-symbol{display:flex;align-items:flex-end;justify-content:center;gap:4px}.business-symbol i{width:20px;border:2px solid;height:44px}.business-symbol i:nth-child(2){height:74px}.business-symbol i:nth-child(3){height:58px}.community-symbol{display:flex;align-items:center;justify-content:center;gap:7px}.community-symbol i{width:22px;height:22px;border:2px solid;border-radius:50%;box-shadow:0 34px 0 -2px var(--cream)}.featured .community-symbol i{box-shadow:0 34px 0 -2px var(--lime)}.maintenance-symbol i{position:absolute;width:60px;height:60px;border:13px dotted;border-radius:50%;left:50%;top:50%;transform:translate(-50%,-50%)}.service-card h3{font-family:Georgia,serif;font-size:30px;font-weight:400;margin:0 0 14px}.service-card p{font-size:14px;line-height:1.65;color:#58706a}.service-card.dark p{color:#b7c7c2}.service-card ul{padding:18px 0 0;margin:0;list-style:none;border-top:1px solid currentColor;color:inherit;opacity:.75}.service-card li{font-size:11px;text-transform:uppercase;letter-spacing:.07em;padding:5px 0}.service-card li:before{content:"+";margin-right:8px}.service-card>a{margin-top:auto;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;display:flex;justify-content:space-between;padding-top:24px}.statement{min-height:770px;background:var(--green);color:#fff;display:grid;grid-template-columns:9% 51% 40%;overflow:hidden}.statement-aside{border-right:1px solid rgba(255,255,255,.2);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px}.statement-aside span{font-size:9px;letter-spacing:.18em;writing-mode:vertical-rl}.statement-aside i{height:70px;width:1px;background:var(--lime)}.statement-copy{padding:clamp(80px,9vw,130px) clamp(38px,6vw,90px);display:flex;flex-direction:column;align-items:flex-start}.eyebrow.light{color:#fff}.eyebrow.light span{background:var(--lime)}.statement-copy h2{font-size:clamp(48px,5vw,76px)}.statement-copy>p:not(.eyebrow){font-size:17px;line-height:1.8;color:#c8d8d3;max-width:670px;margin:34px 0}.lime-button{display:inline-flex;align-items:center;justify-content:space-between;gap:40px;background:var(--lime);color:var(--ink);padding:18px 22px;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.07em;transition:.2s}.lime-button:hover{transform:translateY(-3px);background:#dcff79}.statement-visual{position:relative;overflow:hidden;background:linear-gradient(155deg,#084b3b,#12352f)}.statement-visual:after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent 0 calc(20% - 1px),rgba(255,255,255,.08) calc(20% - 1px) 20%)}.rising-sun{position:absolute;width:260px;height:260px;border-radius:50%;background:var(--lime);right:-40px;top:80px}.terrain{position:absolute;left:-20%;right:-10%;bottom:0;height:58%;background:#0b5b47;clip-path:polygon(0 75%,14% 54%,30% 67%,45% 34%,62% 59%,80% 29%,100% 55%,100% 100%,0 100%);z-index:1}.panel-stack{position:absolute;left:12%;right:12%;bottom:70px;height:250px;display:grid;grid-template-columns:repeat(2,1fr);gap:7px;transform:perspective(600px) rotateX(28deg) rotateZ(-5deg);z-index:2}.panel-stack i{background:linear-gradient(135deg,#183f52,#091f2c);border:2px solid #8baeb2}.statement-visual p{position:absolute;left:35px;bottom:25px;font:italic 20px Georgia;z-index:3}.project-section{background:var(--white)}.project-feature{display:grid;grid-template-columns:1.25fr .75fr;min-height:620px;background:var(--cream)}.project-visual{position:relative;overflow:hidden;background:linear-gradient(180deg,#f2bd55 0,#f6d680 45%,#b8753e 46%,#765037 100%)}.desert-sun{position:absolute;width:250px;height:250px;border-radius:50%;background:#fff1b4;left:13%;top:10%;box-shadow:0 0 70px rgba(255,243,180,.5)}.project-panels{position:absolute;left:8%;right:7%;bottom:6%;height:52%;display:grid;grid-template-columns:repeat(4,1fr);gap:8px;transform:perspective(800px) rotateX(55deg) rotateZ(-3deg);transform-origin:bottom}.project-panels i{background:linear-gradient(135deg,#244e64,#0e2c3c);border:3px solid #b3c5c2;box-shadow:6px 8px 14px rgba(36,29,20,.3)}.project-location{position:absolute;top:28px;right:28px;background:rgba(18,53,47,.8);color:#fff;padding:10px 12px;font-size:9px;letter-spacing:.14em}.project-copy{padding:clamp(45px,5vw,80px);display:flex;flex-direction:column;align-items:flex-start}.micro{font-size:9px;letter-spacing:.17em;font-weight:800;margin:0 0 22px}.project-copy h3{font:400 clamp(38px,3.6vw,58px)/1 Georgia;margin:0 0 24px;letter-spacing:-.04em}.project-copy>p:not(.micro){font-size:15px;line-height:1.75;color:#5b716b}.project-facts{width:100%;border-top:1px solid var(--line);margin:28px 0;display:grid}.project-facts div{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding:15px 0}.project-facts span{font-size:10px;text-transform:uppercase;letter-spacing:.08em}.project-facts strong{font-size:12px}.process-section{background:var(--ink);color:#fff;display:grid;grid-template-columns:42% 58%;padding:clamp(88px,10vw,150px) 5vw}.process-intro{padding-right:9vw}.process-intro h2{font-size:clamp(48px,5vw,76px)}.process-intro>p{color:#aec0ba;margin-top:28px}.process-list{list-style:none;padding:0;margin:0;border-top:1px solid rgba(255,255,255,.2)}.process-list li{display:grid;grid-template-columns:80px 1fr;padding:32px 0;border-bottom:1px solid rgba(255,255,255,.2)}.process-list li>span{color:var(--lime);font:italic 15px Georgia}.process-list h3{font:400 29px Georgia;margin:0 0 8px}.process-list p{margin:0;color:#aebfba;font-size:14px}.benefits-section{display:grid;grid-template-columns:35% 65%;gap:8vw}.benefits-grid{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);border-left:1px solid var(--line)}.benefit{min-height:280px;padding:32px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.benefit>span{font:italic 28px Georgia;color:var(--green)}.benefit h3{font:400 27px Georgia;margin:70px 0 12px}.benefit p{font-size:14px;line-height:1.65;color:#5d736e;margin:0}.faq-section{display:grid;grid-template-columns:39% 61%;gap:8vw;padding:clamp(88px,10vw,150px) 5vw;background:#e8e5da}.faq-intro>p{margin:28px 0}.faq-list{border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line);padding:25px 0}summary{cursor:pointer;list-style:none;font:400 22px Georgia;display:flex;justify-content:space-between;gap:20px}summary::-webkit-details-marker{display:none}summary span{width:18px;height:18px;position:relative;flex:0 0 18px}summary span:before,summary span:after{content:"";position:absolute;background:var(--ink);width:16px;height:1px;top:9px}summary span:after{transform:rotate(90deg);transition:.2s}details[open] summary span:after{transform:rotate(0)}details p{max-width:680px;color:#5b716b;font-size:15px;line-height:1.75;margin:20px 40px 0 0}.contact-section{position:relative;overflow:hidden;background:var(--green);color:#fff;display:grid;grid-template-columns:58% 42%;padding:clamp(90px,11vw,170px) 7vw}.contact-copy{position:relative;z-index:2}.contact-copy h2{font-size:clamp(58px,6.5vw,100px)}.contact-copy>p:not(.eyebrow){max-width:610px;color:#c7d8d2;font-size:18px;line-height:1.7;margin:30px 0}.lime-button.large{padding:22px 25px}.contact-card{align-self:end;position:relative;z-index:2;background:var(--white);color:var(--ink);padding:38px}.contact-card>a,.contact-card>div:not(.social-row){display:block;border-top:1px solid var(--line);padding:22px 0}.contact-card a span,.contact-card>div>span{display:block;font-size:9px;letter-spacing:.14em;text-transform:uppercase;margin-bottom:7px;color:#63736f}.contact-card strong{font:400 clamp(17px,1.5vw,23px) Georgia}.social-row{border-top:1px solid var(--line);padding-top:20px;display:flex;gap:24px;font-size:11px;font-weight:800;text-transform:uppercase}.contact-rays{position:absolute;width:750px;height:750px;left:-190px;bottom:-540px;border:1px solid rgba(255,255,255,.12);border-radius:50%}.contact-rays:before,.contact-rays:after{content:"";position:absolute;inset:12%;border:1px solid rgba(255,255,255,.12);border-radius:50%}.contact-rays:after{inset:28%;background:var(--lime);opacity:.9}footer{background:#082a25;color:#fff;display:grid;grid-template-columns:1fr 1fr;gap:40px;padding:70px 5vw 35px;align-items:start}.footer-brand{color:#fff}.footer-brand .brand-mark{border-color:#fff}.footer-brand .brand-mark:before,.footer-brand .brand-mark:after{background:#fff}footer>p{font:italic 22px Georgia;text-align:right;color:#a8bbb6;margin:10px 0}footer>div{grid-column:1/-1;display:flex;gap:32px;border-top:1px solid rgba(255,255,255,.14);padding-top:28px;font-size:11px;text-transform:uppercase;letter-spacing:.08em}footer small{grid-column:1/-1;color:#829994;font-size:10px}.whatsapp-float{position:fixed;right:20px;bottom:20px;z-index:10;background:var(--lime);color:var(--ink);padding:12px 17px;border-radius:40px;display:flex;align-items:center;gap:8px;box-shadow:0 10px 30px rgba(0,0,0,.18);font-size:12px}.whatsapp-float span{font-size:21px}.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease}.reveal.visible{opacity:1;transform:none}
.logo-lockup{width:142px;height:78px;overflow:hidden;flex:0 0 auto}.brand-logo{display:block;width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}}
@media(max-width:1100px){.service-grid{grid-template-columns:1fr 1fr}.statement{grid-template-columns:8% 56% 36%}.project-feature{grid-template-columns:1fr}.project-visual{min-height:520px}.benefits-section{grid-template-columns:1fr}.contact-section{grid-template-columns:1fr;gap:60px}.contact-card{max-width:650px}.contact-copy h2{max-width:900px}}
@media(max-width:900px){.site-header .desktop-nav{display:none}.menu-button{display:grid;width:42px;height:42px;border:0;background:transparent;place-content:center;gap:6px;cursor:pointer}.menu-button i{display:block;width:24px;height:2px;background:var(--ink);transition:.2s}.menu-button[aria-expanded="true"] i:first-child{transform:translateY(4px) rotate(45deg)}.menu-button[aria-expanded="true"] i:last-child{transform:translateY(-4px) rotate(-45deg)}.mobile-nav{display:flex;position:absolute;left:0;right:0;top:100%;background:var(--cream);padding:28px 6vw;flex-direction:column;gap:22px;border-bottom:1px solid var(--line);transform:translateY(-140%);z-index:-1;transition:.3s;font:600 20px Georgia}.mobile-nav.open{transform:none}.site-header>.nav-cta{margin-left:auto;margin-right:10px}.section-head,.faq-section,.process-section{grid-template-columns:1fr;gap:55px}.statement{grid-template-columns:9% 91%}.statement-visual{display:none}.benefits-section{gap:55px}.contact-section{padding-left:6vw;padding-right:6vw}}
@media(max-width:650px){.logo-lockup{width:100px;height:66px}.section{padding:80px 22px}.section-head{margin-bottom:42px}.section-head h2,.benefits-title h2,.faq-intro h2,.process-intro h2,.statement-copy h2{font-size:44px}.service-grid{grid-template-columns:1fr}.service-card{min-height:480px}.statement{grid-template-columns:100%}.statement-aside{display:none}.statement-copy{padding:80px 22px}.project-section{padding-left:0;padding-right:0}.project-section>.section-head{padding:0 22px}.project-visual{min-height:380px}.project-copy{padding:45px 22px}.process-section{padding:80px 22px}.process-list li{grid-template-columns:55px 1fr}.benefits-grid{grid-template-columns:1fr}.benefit{min-height:240px}.benefit h3{margin-top:45px}.faq-section{padding:80px 22px}.contact-section{padding:80px 22px}.contact-copy h2{font-size:55px}.contact-card{padding:26px 20px}.contact-card strong{font-size:17px;word-break:break-word}footer{grid-template-columns:1fr;padding:55px 22px 30px}footer>p{text-align:left}footer>div{flex-wrap:wrap}.whatsapp-float b{display:none}}

/* Photography and page system */
.desktop-nav a{position:relative}.desktop-nav a:after{content:"";position:absolute;left:0;right:100%;bottom:-9px;height:2px;background:var(--green);transition:right .2s}.desktop-nav a:hover:after,.desktop-nav a.active:after{right:0}.photo-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,49,39,.2),transparent 45%),linear-gradient(0deg,rgba(5,40,32,.35),transparent 55%);z-index:-1}.hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}.photo-hero .energy-card{background:rgba(4,62,48,.72)}.photo-project img{width:100%;height:100%;object-fit:cover;display:block}.photo-project:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 60%,rgba(7,45,36,.45))}.photo-project .project-location{z-index:1}
.page-hero{min-height:calc(100vh - 86px);display:grid;grid-template-columns:52% 48%;border-bottom:1px solid var(--line)}.page-hero-copy{padding:clamp(85px,10vw,145px) 6vw 70px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.page-hero-copy h1,.contact-page-copy h1{font-size:clamp(58px,6.5vw,100px)}.page-hero-copy>p:not(.eyebrow),.contact-page-copy>p:not(.eyebrow){max-width:600px;font-size:18px;line-height:1.7;color:#536b65;margin:32px 0}.page-hero-media{position:relative;margin:0;min-height:650px;overflow:hidden;background:var(--ink)}.page-hero-media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .7s}.page-hero-media:hover img{transform:scale(1.025)}.page-hero-media:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 65%,rgba(5,38,31,.6))}.page-hero-media figcaption{position:absolute;z-index:1;left:28px;bottom:24px;color:#fff;font-size:9px;letter-spacing:.16em}.project-page-hero .page-hero-media img{object-position:center}.about-page-hero .page-hero-media img{object-position:center}
.service-detail-intro{display:grid;grid-template-columns:32% 68%;gap:8vw}.intro-statement h2,.story-heading h2,.origin-copy h2,.team-photo-copy h2,.contact-prep-title h2{font:400 clamp(43px,5vw,76px)/.98 Georgia;letter-spacing:-.05em;margin:0}.intro-statement p{max-width:650px;font-size:17px;line-height:1.75;color:#5a6e69}.detail-list{padding:0 5vw 120px}.detail-row{display:grid;grid-template-columns:9% 36% 55%;padding:55px 35px;border-top:1px solid var(--line);background:var(--white)}.detail-row:last-child{border-bottom:1px solid var(--line)}.detail-row.green{background:var(--lime)}.detail-row.dark{background:var(--ink);color:#fff}.detail-number{font:italic 15px Georgia;color:var(--green)}.detail-row.green .detail-number{color:var(--ink)}.detail-row.dark .detail-number{color:var(--lime)}.detail-row h2{font:400 clamp(38px,4vw,62px)/1 Georgia;margin:0}.detail-row>div:last-child{padding-left:7vw}.detail-row>div:last-child>p{max-width:570px;margin:0 0 22px;font-size:15px;line-height:1.7;color:#5a6e69}.detail-row.dark>div:last-child>p{color:#b9cac4}.detail-row ul{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:1fr 1fr;gap:10px}.detail-row li{font-size:11px;text-transform:uppercase;letter-spacing:.06em}.detail-row li:before{content:"+";margin-right:8px}.image-break{min-height:680px;position:relative;overflow:hidden;display:flex;align-items:flex-end;padding:6vw;color:#fff}.image-break img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}.image-break:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(5,42,34,.88),rgba(5,42,34,.06) 70%);z-index:-1}.image-break>div{max-width:800px}.image-break h2{font:400 clamp(45px,5vw,78px)/1 Georgia;letter-spacing:-.05em;margin:0}.simple-cta{padding:clamp(90px,10vw,150px) 6vw;text-align:center;display:flex;flex-direction:column;align-items:center}.simple-cta .eyebrow{justify-content:center}.simple-cta h2{font:400 clamp(48px,6vw,90px)/.95 Georgia;letter-spacing:-.055em;margin:0 0 36px;max-width:1100px}.dark-cta{background:var(--green);color:#fff}
.project-story{display:grid;grid-template-columns:55% 45%;gap:8vw}.story-copy{padding-top:75px}.story-copy>p{font-size:18px;line-height:1.75;color:#556d67}.project-gallery{padding:0 5vw 130px;display:grid;grid-template-columns:1fr 1fr;gap:18px}.project-gallery figure{margin:0;background:var(--ink);position:relative;overflow:hidden;min-height:470px}.project-gallery .gallery-wide{grid-column:1/-1;min-height:640px}.project-gallery img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .7s}.project-gallery figure:hover img{transform:scale(1.025)}.project-gallery figure:after{content:"";position:absolute;inset:55% 0 0;background:linear-gradient(0deg,rgba(3,36,29,.7),transparent)}.project-gallery figcaption{position:absolute;z-index:1;left:25px;bottom:22px;color:#fff;font:italic 20px Georgia}.project-gallery figcaption span{font:11px Arial;letter-spacing:.1em;margin-right:14px;color:var(--lime)}.impact-band{display:grid;grid-template-columns:repeat(3,1fr);background:var(--lime);padding:0 5vw}.impact-band>div{padding:55px 35px;border-right:1px solid rgba(18,53,47,.2)}.impact-band>div:first-child{border-left:1px solid rgba(18,53,47,.2)}.impact-band span{font:italic 14px Georgia}.impact-band h3{font:400 28px Georgia;margin:45px 0 12px}.impact-band p{font-size:14px;line-height:1.65;margin:0}
.origin-story{display:grid;grid-template-columns:15% 85%;background:var(--white)}.origin-marker{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;border-right:1px solid var(--line)}.origin-marker span{font-size:9px;letter-spacing:.18em;writing-mode:vertical-rl}.origin-marker i{height:85px;width:1px;background:var(--green)}.origin-copy{padding-right:13vw}.origin-copy p:not(.eyebrow){max-width:790px;font-size:17px;line-height:1.8;color:#566d67}.values-section{padding:clamp(90px,10vw,150px) 5vw;background:var(--green);color:#fff}.values-grid{display:grid;grid-template-columns:repeat(4,1fr);margin-top:60px;border-top:1px solid rgba(255,255,255,.2);border-left:1px solid rgba(255,255,255,.2)}.values-grid article{min-height:330px;padding:30px;border-right:1px solid rgba(255,255,255,.2);border-bottom:1px solid rgba(255,255,255,.2)}.values-grid article>span{color:var(--lime);font:italic 14px Georgia}.values-grid h2{font:400 34px Georgia;margin:110px 0 16px}.values-grid p{color:#bdcec8;font-size:14px;line-height:1.7}.team-photo-section{display:grid;grid-template-columns:55% 45%;background:var(--white)}.team-photo-section figure{margin:0;min-height:680px;position:relative}.team-photo-section img{width:100%;height:100%;object-fit:cover;position:absolute}.team-photo-section figcaption{position:absolute;left:24px;bottom:22px;background:var(--lime);padding:10px 13px;font-size:9px;letter-spacing:.12em}.team-photo-copy{padding:clamp(65px,8vw,120px);display:flex;flex-direction:column;justify-content:center;align-items:flex-start}.team-photo-copy>p:not(.eyebrow){font-size:16px;line-height:1.75;color:#566d67;margin:28px 0}
.contact-page-hero{min-height:760px;background:var(--green);color:#fff;display:grid;grid-template-columns:58% 42%}.contact-page-copy{padding:clamp(90px,11vw,160px) 7vw;display:flex;flex-direction:column;justify-content:center}.contact-page-copy>p:not(.eyebrow){color:#c6d7d1}.contact-page-hero figure{margin:0;position:relative;overflow:hidden}.contact-page-hero img{width:100%;height:100%;object-fit:cover}.contact-page-hero figure:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(4,34,28,.65))}.contact-page-hero figcaption{position:absolute;z-index:1;left:24px;bottom:20px;font-size:9px;letter-spacing:.14em}.contact-options{display:grid;grid-template-columns:repeat(3,1fr);padding:90px 5vw;background:var(--white)}.contact-option{min-height:430px;padding:34px;border:1px solid var(--line);display:flex;flex-direction:column;align-items:flex-start}.contact-option.featured{background:var(--lime)}.contact-option.dark{background:var(--ink);color:#fff}.contact-option>span{font-size:9px;letter-spacing:.16em;font-weight:800}.contact-option h2{font:400 clamp(28px,2.8vw,43px)/1 Georgia;margin:80px 0 18px;word-break:break-word}.contact-option p{font-size:14px;line-height:1.65;color:#5a6f69}.contact-option.dark p{color:#b9cac4}.contact-option b{font-size:10px;text-transform:uppercase;letter-spacing:.08em;margin-top:auto}.contact-prep{display:grid;grid-template-columns:45% 55%;gap:8vw;padding:clamp(90px,10vw,150px) 5vw}.contact-prep ol{list-style:none;padding:0;margin:0;border-top:1px solid var(--line)}.contact-prep li{display:grid;grid-template-columns:60px 1fr;padding:26px 0;border-bottom:1px solid var(--line)}.contact-prep li>span{font:italic 14px Georgia;color:var(--green)}.contact-prep h3{font:400 27px Georgia;margin:0 0 8px}.contact-prep li p{font-size:14px;color:#596f69;margin:0;line-height:1.6}
@media(max-width:1000px){.page-hero{grid-template-columns:1fr}.page-hero-copy{min-height:650px}.page-hero-media{min-height:620px}.service-detail-intro,.project-story,.team-photo-section,.contact-page-hero,.contact-prep{grid-template-columns:1fr}.detail-row{grid-template-columns:8% 38% 54%}.origin-story{grid-template-columns:10% 90%}.values-grid{grid-template-columns:1fr 1fr}.team-photo-section figure{min-height:600px}.contact-page-hero figure{min-height:550px}.contact-options{grid-template-columns:1fr 1fr}.contact-option.dark{grid-column:1/-1}.impact-band{grid-template-columns:1fr}.impact-band>div{border-left:1px solid rgba(18,53,47,.2);border-bottom:1px solid rgba(18,53,47,.2)}}
@media(max-width:650px){.page-hero-copy{min-height:600px;padding:70px 22px}.page-hero-copy h1,.contact-page-copy h1{font-size:53px}.page-hero-media{min-height:430px}.service-detail-intro{padding:80px 22px}.detail-list{padding:0 22px 80px}.detail-row{grid-template-columns:1fr;padding:38px 24px;gap:18px}.detail-row>div:last-child{padding-left:0}.detail-row ul{grid-template-columns:1fr}.image-break{min-height:560px;padding:40px 22px}.project-story{padding:80px 22px}.story-copy{padding-top:0}.project-gallery{padding:0 22px 80px;grid-template-columns:1fr}.project-gallery .gallery-wide{grid-column:auto;min-height:440px}.project-gallery figure{min-height:380px}.impact-band{padding:0 22px}.origin-story{grid-template-columns:1fr;padding:80px 22px}.origin-marker{display:none}.origin-copy{padding-right:0}.values-section{padding:80px 22px}.values-grid{grid-template-columns:1fr}.values-grid article{min-height:260px}.values-grid h2{margin-top:70px}.team-photo-section figure{min-height:430px}.team-photo-copy{padding:70px 22px}.contact-page-copy{padding:80px 22px}.contact-page-hero figure{min-height:430px}.contact-options{grid-template-columns:1fr;padding:70px 22px}.contact-option.dark{grid-column:auto}.contact-prep{padding:80px 22px}.simple-cta{padding:80px 22px}}

/* Branded project media */
.media-watermark:before{content:"";position:absolute;inset:auto 18px auto auto;top:18px;width:132px;height:76px;background-color:rgba(255,254,249,.9);background-image:url('/logo-chocosolar.png');background-repeat:no-repeat;background-position:center;background-size:contain;border:1px solid rgba(255,255,255,.65);border-radius:5px;box-shadow:0 8px 24px rgba(5,35,28,.16);z-index:4;opacity:.92;pointer-events:none}
.project-video{background:#061f1c}.project-gallery .project-video video{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;background:#061f1c}.project-gallery .project-video:after{display:none}.project-gallery .project-video figcaption{top:24px;bottom:auto;padding:10px 13px;background:rgba(6,31,28,.78);border-radius:3px}
.portrait-photo img{object-position:center}
@media(max-width:650px){.media-watermark:before{top:12px;right:12px;width:96px;height:56px}.project-gallery .project-video{min-height:560px}.project-gallery .project-video figcaption{top:auto;bottom:58px;max-width:70%}}
