@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--forest:#102c29;--deep:#091f21;--mint:#b3d1c2;--lime:#e5df77;--cream:#f2f2e9;--paper:#fbfaf4;--ink:#172b2a;--muted:#647574;--line:rgba(22,48,44,.2);--font:'DM Sans',Arial,sans-serif;--display:'Manrope',Arial,sans-serif}
*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font:400 16px/1.65 var(--font);-webkit-font-smoothing:antialiased}body.menu-open{overflow:hidden}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button{font:inherit}h1,h2,h3,h4,p{margin-top:0}h1,h2,h3,h4{font-family:var(--display);line-height:1.08;letter-spacing:-.05em}::selection{background:var(--lime);color:var(--deep)}.container{width:min(100% - 96px,1370px);margin-inline:auto}.skip-link{position:fixed;z-index:1000;top:-60px;left:16px;background:white;padding:10px 16px}.skip-link:focus{top:12px}:focus-visible{outline:2px solid var(--lime);outline-offset:4px}section[id]{scroll-margin-top:78px}
/* The overlay navigation is part of the opening scene. */
.site-header{position:fixed;inset:0 0 auto;z-index:90;height:83px;border-bottom:1px solid rgba(255,255,255,.2);color:white;transition:background .4s,border-color .4s,box-shadow .4s}.site-header.is-scrolled,.site-header.is-menu-open{background:rgba(9,31,33,.96);border-color:rgba(255,255,255,.11);box-shadow:0 12px 32px rgba(0,0,0,.08);backdrop-filter:blur(16px)}.reading-progress{position:absolute;bottom:-1px;left:0;width:100%;height:2px;background:var(--lime);transform:scaleX(0);transform-origin:left;pointer-events:none}.header-inner{display:flex;align-items:center;justify-content:space-between;height:100%;gap:32px}.brand{display:inline-flex;align-items:center;flex-shrink:0}.brand-logo{width:147px;height:auto}.site-nav{display:flex;align-items:center;gap:clamp(18px,2.7vw,44px);font-size:12px;font-weight:700;letter-spacing:.035em}.site-nav>a:not(.nav-contact){position:relative;white-space:nowrap;opacity:.88}.site-nav>a:not(.nav-contact)::after{content:"";position:absolute;left:0;bottom:-9px;width:100%;height:1px;background:var(--lime);transform:scaleX(0);transform-origin:left;transition:transform .3s}.site-nav>a:hover::after,.site-nav>a.is-active::after{transform:scaleX(1)}.site-nav>a:hover{opacity:1}.nav-contact{padding:11px 17px;border:1px solid rgba(255,255,255,.46);white-space:nowrap;transition:background .3s,color .3s,border-color .3s}.nav-contact:hover{background:var(--lime);color:var(--deep);border-color:var(--lime)}.nav-contact span{margin-left:10px}.menu-toggle{display:none}
.eyebrow{display:flex;align-items:center;gap:13px;margin:0 0 28px;font-size:11px;font-weight:700;line-height:1.4;letter-spacing:.19em;text-transform:uppercase}.eyebrow-line{width:31px;height:1px;background:currentColor;flex:none}.eyebrow-light{color:var(--lime)}.display-title{font-size:clamp(47px,5.8vw,91px);font-weight:500;letter-spacing:-.078em}.display-title span{font-weight:400;color:#608272}.section-space{padding:clamp(90px,8.5vw,128px) 0}.text-link{display:inline-flex;align-items:center;gap:34px;padding:0 0 8px;border-bottom:1px solid currentColor;font-size:13px;font-weight:700;letter-spacing:.01em;transition:gap .3s,color .3s}.text-link:hover{gap:47px;color:#668669}.text-link-light:hover{color:var(--lime)}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;min-height:56px;padding:0 22px;font-size:12px;font-weight:700;letter-spacing:.02em;transition:transform .3s,background .3s,box-shadow .3s}.button:hover{transform:translateY(-4px);box-shadow:0 12px 30px rgba(0,0,0,.17)}.button-gold{background:var(--lime);color:var(--deep)}.button-gold:hover{background:#f2ef96}.button-dark{background:var(--deep);color:#fff}.button-dark:hover{background:#30544b}
/* Opening: full landscape, oversized title, deliberate orbital movement. */
.hero{position:relative;min-height:min(850px,100svh);min-height:max(700px,min(850px,100svh));color:#fff;background:var(--deep);overflow:hidden;isolation:isolate}.hero-media,.hero-noise{position:absolute;inset:0;z-index:-2}.hero-media img{width:100%;height:100%;object-fit:cover;object-position:center 53%;animation:hero-breathe 22s ease-in-out infinite alternate;transform-origin:center}.hero-media::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,29,29,.97) 0%,rgba(6,28,28,.89) 36%,rgba(8,33,33,.43) 75%,rgba(7,32,32,.27)),linear-gradient(0deg,rgba(6,26,27,.9) 0%,transparent 34%,rgba(6,26,27,.18) 100%)}.hero-noise{z-index:-1;opacity:.22;background-image:radial-gradient(rgba(255,255,255,.35) .5px,transparent .6px);background-size:5px 5px;mask-image:linear-gradient(90deg,transparent,#000)}.hero-grid{position:relative;min-height:inherit;padding-top:clamp(175px,22vh,235px);padding-bottom:110px}.hero-copy{position:relative;z-index:2;max-width:920px}.hero h1{margin:0;font-size:clamp(76px,8.5vw,139px);line-height:.99;font-weight:500;letter-spacing:-.087em}.hero h1 em{font-style:normal;color:var(--lime)}.hero-intro{max-width:490px;margin:36px 0 30px;color:#d4ded8;font-size:16px;line-height:1.7}.hero-actions{display:flex;align-items:center;gap:30px}.hero-side-note{position:absolute;right:0;top:45%;z-index:2;width:208px;font-size:10px;font-weight:700;letter-spacing:.13em}.hero-side-note .side-rule{display:block;margin:15px 0;width:100%;height:1px;background:rgba(255,255,255,.65)}.hero-side-note p{font-size:12px;font-weight:400;line-height:1.5;letter-spacing:0;color:#e4eae4}.hero-orbit{position:absolute;z-index:1;right:-8%;top:19%;width:min(45vw,680px);aspect-ratio:1;border:1px solid rgba(222,229,192,.33);border-radius:50%;animation:orbital 28s linear infinite;pointer-events:none}.hero-orbit::before,.hero-orbit::after{content:"";position:absolute;inset:16%;border:1px solid rgba(222,229,192,.18);border-radius:50%}.hero-orbit::after{inset:34%}.hero-orbit-dot{position:absolute;top:11%;left:16%;width:9px;height:9px;background:var(--lime);border-radius:50%;box-shadow:0 0 0 9px rgba(229,223,119,.12)}.hero-orbit-core{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:33px;color:var(--lime)}.hero-bottom{position:absolute;inset:auto 0 37px;display:flex;align-items:end;justify-content:space-between;color:#d9e1da;font-size:10px;font-weight:700;letter-spacing:.19em}.hero-bottom>span:last-child{display:flex;align-items:center;gap:10px}.hero-bottom i{width:3px;height:3px;border-radius:50%;background:var(--lime)}.scroll-cue{display:flex;align-items:center;gap:17px}.scroll-line{position:relative;display:inline-block;width:1px;height:36px;background:rgba(255,255,255,.35);overflow:hidden}.scroll-line::after{content:"";position:absolute;inset:0;background:var(--lime);animation:scroll-line 2.3s ease-in-out infinite}.motion-band{height:60px;background:var(--lime);color:var(--deep);overflow:hidden;display:flex;align-items:center}.motion-track{display:flex;align-items:center;white-space:nowrap;width:max-content;animation:marquee 35s linear infinite;font-family:var(--display);font-size:12px;font-weight:800;letter-spacing:.18em}.motion-track span{padding:0 38px}.motion-track b{font-size:17px;margin:0 34px;vertical-align:-1px}
/* Intro: an animated site logic drawing occupies the quieter left column. */
.intro-section{position:relative;background:var(--paper);overflow:hidden}.intro-section::before{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:var(--line)}.intro-grid{display:grid;grid-template-columns:1.14fr .86fr;column-gap:clamp(65px,9vw,145px);row-gap:40px}.intro-left .display-title{margin-bottom:22px;max-width:780px}.intro-right{padding-top:106px;max-width:480px;color:#536663}.intro-right .lead{font-family:var(--display);font-size:clamp(23px,2.1vw,30px);font-weight:600;line-height:1.36;letter-spacing:-.05em;color:var(--ink);margin-bottom:25px}.intro-right p:not(.lead){margin-bottom:31px}.site-diagram{position:relative;width:min(100%,560px);height:250px;margin-top:53px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);overflow:hidden}.site-diagram::before,.site-diagram::after{content:"";position:absolute;top:50%;left:5%;right:5%;height:1px;background:#98aa9e;opacity:.65}.site-diagram::after{transform:rotate(-17deg)}.diagram-circles{position:absolute;inset:14px 10%;display:flex;align-items:center;justify-content:center}.diagram-circles i{position:absolute;width:155px;height:155px;border:1px solid #9ab5a6;border-radius:50%;animation:diagram-pulse 5s ease-in-out infinite}.diagram-circles i:nth-child(2){width:235px;height:235px;opacity:.6;animation-delay:-1.5s}.diagram-circles i:nth-child(3){width:310px;height:310px;opacity:.3;animation-delay:-3s}.diagram-circles span{position:relative;z-index:1;color:#4d7764;font-size:29px;animation:orbital 18s linear infinite}.diagram-legend{position:absolute;inset:auto 8px 12px;display:flex;justify-content:space-between;font-size:9px;font-weight:700;letter-spacing:.14em;color:#557666}.name-note{grid-column:2;margin-top:-27px;padding:21px 0 0;border-top:1px solid var(--line);display:grid;grid-template-columns:103px 1fr;gap:14px}.name-note span{font-size:10px;letter-spacing:.11em;font-weight:700}.name-note p{margin:0;font-size:13px;color:#586964;line-height:1.5}
/* Work areas are spatial and photograph driven. */
.expertise-section{background:#e7ede6}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:55px;margin-bottom:52px}.section-heading>div{max-width:850px}.section-heading .display-title{margin:0}.section-heading>p{width:280px;flex:none;margin:0 0 8px;font-size:14px;color:#55716a;line-height:1.6}.expertise-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.expertise-card{background:var(--paper);overflow:hidden;transition:transform .45s,box-shadow .45s}.expertise-card:hover{transform:translateY(-7px);box-shadow:0 23px 48px rgba(10,40,35,.14)}.expertise-photo,.digital-stage{height:clamp(260px,27vw,390px);position:relative;overflow:hidden}.expertise-photo img{width:100%;height:100%;object-fit:cover;transition:transform 1s cubic-bezier(.2,.8,.2,1)}.expertise-card:hover .expertise-photo img{transform:scale(1.065)}.expertise-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(7,40,34,.2),transparent 65%)}.digital-stage{display:flex;flex-direction:column;justify-content:space-between;padding:26px 30px;background:radial-gradient(circle at 65% 42%,#e0edee 0,#c3d7dc 48%,#a7c5ce 100%);isolation:isolate;color:#17384d}.digital-stage::before{content:"";position:absolute;inset:-45%;z-index:-1;background:repeating-radial-gradient(circle at 60% 53%,transparent 0,transparent 31px,rgba(21,82,112,.24) 32px,transparent 33px);animation:slow-drift 24s linear infinite}.digital-stage::after{content:"";position:absolute;left:-30%;top:80%;width:150%;height:1px;background:linear-gradient(90deg,transparent,#416e8f,transparent);box-shadow:0 0 25px #87b5ca;transform:rotate(-19deg)}.digital-stage-kicker,.digital-stage-bottom{position:relative;z-index:2;font-size:10px;font-weight:700;letter-spacing:.14em}.digital-stage img{position:relative;z-index:2;align-self:center;width:min(80%,390px);height:auto;max-height:115px;object-fit:contain;mix-blend-mode:multiply}.digital-stage-bottom{display:flex;align-items:center;justify-content:space-between;color:#325a6d}.digital-stage-bottom span:last-child{font-size:19px;color:#245778}.digital-beams{position:absolute;inset:0;overflow:hidden;pointer-events:none}.digital-beams i{position:absolute;left:-20%;width:140%;height:1px;background:linear-gradient(90deg,transparent,rgba(24,105,146,.26),transparent);transform:rotate(-26deg);animation:beam-flow 6s ease-in-out infinite}.digital-beams i:nth-child(2){top:23%;animation-delay:-1.5s}.digital-beams i:nth-child(3){top:55%;animation-delay:-3s}.digital-beams i:nth-child(4){top:78%;animation-delay:-4.5s}.expertise-body{padding:33px 36px 35px;min-height:260px;display:flex;flex-direction:column;align-items:start}.card-index,.card-detail{font-size:10px;font-weight:700;letter-spacing:.15em;color:#547464}.expertise-body h3{font-size:clamp(30px,3vw,46px);margin:20px 0 17px;font-weight:500}.expertise-body p{max-width:560px;color:#5d6b65;margin-bottom:22px;font-size:14px}.card-rule{height:1px;width:100%;margin-top:auto;background:var(--line)}.card-detail{margin-top:16px}.card-link{margin-top:auto;font-size:13px;font-weight:700;border-bottom:1px solid;padding-bottom:5px}.card-link span{display:inline-block;margin-left:22px;transition:transform .3s}.card-link:hover span{transform:translate(4px,-4px)}
/* Darker energy chapter with expanding rows and a compact markets inset. */
.energy-section{background:var(--forest);color:white;position:relative;overflow:hidden}.energy-section::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 100% 35%,rgba(125,172,141,.18),transparent 36%);pointer-events:none}.energy-section .container{position:relative}.energy-section .display-title span{color:var(--lime)}.energy-section .section-heading>p{color:#bbcec4}.energy-section .eyebrow{color:var(--lime)}.energy-services{border-top:1px solid rgba(255,255,255,.35)}.energy-services article{display:grid;grid-template-columns:190px minmax(220px,.9fr) minmax(280px,1fr);gap:30px;padding:34px 0;border-bottom:1px solid rgba(255,255,255,.27);align-items:start;transition:padding .35s,background .35s}.energy-services article:hover{padding-left:18px;padding-right:18px;background:rgba(255,255,255,.06)}.energy-services article>span{font-size:10px;letter-spacing:.14em;font-weight:700;color:var(--lime);padding-top:9px}.energy-services h3{font-size:clamp(27px,3vw,43px);font-weight:500;margin:0}.energy-services p{color:#c5d4ca;font-size:14px;margin:0;max-width:540px}.market-section{display:grid;grid-template-columns:.85fr 1.15fr;gap:10%;margin-top:clamp(90px,10vw,150px);padding:clamp(35px,5vw,72px);background:#20443b;position:relative;overflow:hidden}.market-section::before{content:"";position:absolute;top:0;left:0;height:2px;width:40%;background:var(--lime);animation:market-line 6s ease-in-out infinite alternate}.market-heading{position:relative}.market-heading h3{font-size:clamp(29px,3.4vw,48px);font-weight:500}.market-heading h3 em{font-style:normal;color:var(--lime)}.market-details{position:relative;display:grid;gap:28px}.market-details article+article{padding-top:25px;border-top:1px solid rgba(255,255,255,.22)}.market-details h4{font-family:var(--font);font-size:16px;font-weight:700;letter-spacing:-.015em;margin:0 0 8px}.market-details p{font-size:13px;line-height:1.65;color:#d0ded2;margin:0}
/* Division chapter is a single visual stage, not a pair of floating cards. */
.pf-section{padding:clamp(100px,11vw,165px) 0 35px;background:#dbe5e1;position:relative;overflow:hidden}.pf-section::before{content:"";position:absolute;right:-20%;top:-55%;width:75%;aspect-ratio:1;border:1px solid rgba(27,80,90,.11);border-radius:50%;box-shadow:0 0 0 130px rgba(255,255,255,.09),0 0 0 270px rgba(27,80,90,.035);animation:diagram-pulse 10s ease-in-out infinite}.pf-layout{position:relative;display:grid;grid-template-columns:1.13fr .87fr;gap:clamp(65px,10vw,155px)}.pf-copy{max-width:720px}.pf-logo{width:clamp(195px,23vw,320px);height:auto;margin:0 0 36px;mix-blend-mode:multiply}.pf-copy h2{font-size:clamp(50px,5.3vw,83px);font-weight:500;margin:0 0 31px}.pf-copy h2 em{font-style:normal;color:#406b78}.pf-copy>p:not(.eyebrow){max-width:540px;font-size:16px;color:#4a625f;margin-bottom:15px}.pf-copy .pf-small{font-size:14px!important}.pf-copy .button{margin-top:25px}.pf-details{position:relative;padding:31px 0 0 35px;border-left:1px solid #9caeaa}.pf-details-heading{font-size:11px;font-weight:700;letter-spacing:.17em;margin:0 0 48px}.pf-detail{padding:20px 0 24px;border-top:1px solid #a9bbb5;transition:transform .35s,padding-left .35s}.pf-detail:hover{transform:translateX(8px)}.pf-detail>span{font-size:10px;font-weight:700;letter-spacing:.14em;color:#517477}.pf-detail h3{font-size:clamp(25px,2.4vw,36px);font-weight:500;margin:11px 0 7px}.pf-detail p{font-size:13px;color:#576c68;margin:0;max-width:340px}.pf-tags{position:relative;display:flex;flex-wrap:wrap;justify-content:space-between;gap:15px;margin-top:90px;padding-top:22px;border-top:1px solid #b0c1ba;font-size:10px;font-weight:700;letter-spacing:.12em;color:#66817b}
.approach-section{background:var(--paper)}.approach-section .section-heading{margin-bottom:85px}.steps{position:relative;display:grid;grid-template-columns:repeat(3,1fr);gap:45px}.steps::before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:#b5c2b3}.steps::after{content:"";position:absolute;top:0;left:0;height:2px;width:0;background:#7a9a6e;transition:width 1.8s cubic-bezier(.2,.8,.2,1)}.steps.is-visible::after{width:100%}.step{padding-top:33px;position:relative}.step::before{content:"";position:absolute;top:-5px;left:0;width:10px;height:10px;border-radius:50%;border:2px solid #5b8065;background:var(--paper);transition:background .5s,transform .5s}.steps.is-visible .step::before{background:var(--lime);transform:scale(1.3)}.step>span{font-size:11px;font-weight:700;letter-spacing:.15em;color:#59826a}.step h3{margin:27px 0 13px;font-size:clamp(33px,3.6vw,53px);font-weight:500}.step p{max-width:330px;font-size:14px;color:#5c6e68}
.contact-section{position:relative;overflow:hidden;padding:clamp(95px,11vw,160px) 0;background:#cbd9b7}.contact-section::before,.contact-section::after{content:"";position:absolute;width:570px;aspect-ratio:1;border:1px solid rgba(46,81,65,.18);border-radius:50%;right:-50px;top:-205px;animation:diagram-pulse 8s ease-in-out infinite}.contact-section::after{width:740px;right:-135px;top:-290px;animation-delay:-4s}.contact-grid{position:relative;display:grid;grid-template-columns:1.15fr .85fr;gap:8%;align-items:end}.contact-section h2{max-width:840px;font-size:clamp(56px,6.7vw,105px);font-weight:500;margin:0}.contact-section h2 em{font-style:normal;color:#436a50}.contact-side{max-width:390px;padding-bottom:8px}.contact-side>p{font-size:19px;line-height:1.5;margin:0 0 26px}.contact-line{display:grid;gap:4px;margin-top:70px;border-top:1px solid rgba(20,59,39,.35);padding-top:17px}.contact-line span{font-size:10px;letter-spacing:.16em;font-weight:700}.contact-line a{font-size:14px;text-decoration:underline;text-underline-offset:4px}.site-footer{background:var(--deep);color:#e5eae0;padding:68px 0 23px}.footer-top{display:grid;grid-template-columns:1.7fr .7fr 1fr;gap:45px;padding-bottom:70px}.footer-logo{width:150px;margin-bottom:22px}.footer-top p{font-size:13px;color:#a9b9b0}.footer-links{display:flex;flex-direction:column;align-items:start;gap:11px;font-size:13px}.footer-links>span{font-size:10px;color:var(--lime);font-weight:700;letter-spacing:.18em;text-transform:uppercase;margin-bottom:7px}.footer-links a:hover,.footer-bottom a:hover{color:var(--lime)}.footer-links p{margin:8px 0 0}.footer-bottom{border-top:1px solid rgba(255,255,255,.19);padding-top:20px;display:flex;justify-content:space-between;gap:20px;font-size:11px;color:#a9b9b0}.footer-bottom a{color:inherit}
/* Progressive reveal: content remains available when scripting is unavailable. */
.motion-ready .intro-section .intro-left,.motion-ready .intro-section .intro-right,.motion-ready .intro-section .name-note,.motion-ready .section-heading,.motion-ready .expertise-card,.motion-ready .energy-services article,.motion-ready .market-section,.motion-ready .pf-copy,.motion-ready .pf-details,.motion-ready .step,.motion-ready .contact-grid>div{opacity:0;transform:translateY(42px);transition:opacity .85s ease,transform .85s cubic-bezier(.22,1,.36,1)}.motion-ready .is-visible:is(.intro-left,.intro-right,.name-note,.section-heading,.expertise-card,.market-section,.pf-copy,.pf-details,.step),.motion-ready .energy-services article.is-visible,.motion-ready .contact-grid>div.is-visible{opacity:1;transform:translateY(0)}.motion-ready .expertise-card:nth-child(2),.motion-ready .step:nth-child(2){transition-delay:.13s}.motion-ready .step:nth-child(3){transition-delay:.26s}.hero-copy>*{animation:rise-in 1s both cubic-bezier(.22,1,.36,1)}.hero-copy>.eyebrow{animation-delay:.12s}.hero-copy h1{animation-delay:.25s}.hero-intro{animation-delay:.48s}.hero-actions{animation-delay:.62s}.hero-side-note{animation:rise-in 1.1s .75s both}.hero-bottom{animation:rise-in 1.1s .95s both}
@keyframes rise-in{from{opacity:0;transform:translateY(31px)}to{opacity:1;transform:translateY(0)}}@keyframes hero-breathe{from{transform:scale(1.02)}to{transform:scale(1.12)}}@keyframes orbital{to{transform:rotate(360deg)}}@keyframes scroll-line{from{transform:translateY(-110%)}to{transform:translateY(110%)}}@keyframes marquee{to{transform:translateX(-33.333%)}}@keyframes diagram-pulse{50%{transform:scale(1.06);opacity:.55}}@keyframes slow-drift{to{transform:rotate(15deg) scale(1.05)}}@keyframes beam-flow{0%,100%{opacity:.2;transform:translate(-15px,-15px) rotate(-26deg)}50%{opacity:.75;transform:translate(15px,15px) rotate(-26deg)}}@keyframes market-line{to{width:92%}}
@media(max-width:1100px){.container{width:min(100% - 64px,1370px)}.hero h1{font-size:clamp(68px,8.3vw,105px)}.hero-side-note{right:0;top:63%;width:170px}.site-nav{gap:20px}.brand-logo{width:125px}.energy-services article{grid-template-columns:125px minmax(200px,.9fr) 1fr;gap:22px}}
@media(max-width:780px){.container{width:calc(100% - 38px)}.site-header{height:68px}.brand-logo{width:121px}.menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:5px;width:43px;height:43px;background:none;border:1px solid rgba(255,255,255,.45);padding:9px;cursor:pointer;z-index:2}.menu-toggle span{height:1px;background:white;width:100%;transition:transform .25s,opacity .25s}.menu-toggle[aria-expanded=true] span:nth-child(1){transform:translateY(6px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:nth-child(2){opacity:0}.menu-toggle[aria-expanded=true] span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}.site-nav{position:absolute;top:68px;left:0;right:0;display:none;flex-direction:column;align-items:stretch;gap:0;background:var(--deep);padding:24px 19px 35px;box-shadow:0 20px 30px rgba(0,0,0,.2)}.site-nav.is-open{display:flex}.site-nav a{padding:17px 0;border-bottom:1px solid rgba(255,255,255,.17);font-size:16px}.site-nav .nav-contact{margin-top:23px;padding:13px 17px;font-size:13px}.hero{min-height:770px;min-height:max(770px,100svh)}.hero-grid{padding-top:165px;padding-bottom:110px}.hero h1{font-size:clamp(59px,10.8vw,85px)}.hero-intro{max-width:480px}.hero-orbit{right:-38%;top:33%;width:75vw;opacity:.57}.hero-side-note{display:none}.hero-media::after{background:linear-gradient(90deg,rgba(5,29,29,.93),rgba(5,29,29,.66) 70%,rgba(5,29,29,.45)),linear-gradient(0deg,rgba(5,29,29,.85),transparent 55%)}.hero-media img{object-position:65% center}.intro-grid,.pf-layout,.contact-grid{grid-template-columns:1fr;gap:40px}.intro-right{padding-top:10px}.name-note{grid-column:1;margin-top:6px}.section-heading{align-items:start;flex-direction:column;gap:15px}.section-heading>p{width:min(100%,560px)}.expertise-body{min-height:300px}.energy-services article{grid-template-columns:100px 1fr;gap:18px}.energy-services p{grid-column:2}.market-section{grid-template-columns:1fr;gap:22px}.pf-details{padding-top:15px}.pf-tags{margin-top:60px;justify-content:start}.contact-side{max-width:520px}.contact-line{margin-top:45px}.footer-top{grid-template-columns:1.2fr 1fr;gap:40px}.footer-top>div:first-child{grid-column:1/-1}}
@media(max-width:600px){.hero{min-height:735px;min-height:max(735px,100svh)}.hero-grid{padding-top:152px}.hero h1{font-size:clamp(51px,11.9vw,72px)}.hero .eyebrow{max-width:330px;font-size:9px;letter-spacing:.14em}.hero-intro{font-size:14px;max-width:335px;margin:29px 0}.hero-actions{align-items:flex-start;flex-direction:column;gap:22px}.hero-bottom{bottom:25px;font-size:9px}.hero-bottom>span:last-child{display:none}.hero-orbit{right:-65%;top:45%;width:110vw}.motion-band{height:48px}.motion-track{font-size:10px}.section-space,.pf-section{padding-top:90px;padding-bottom:90px}.display-title{font-size:clamp(47px,11vw,68px)}.intro-right .lead{font-size:24px}.site-diagram{height:210px;margin-top:32px}.diagram-circles i{width:125px;height:125px}.diagram-circles i:nth-child(2){width:195px;height:195px}.diagram-circles i:nth-child(3){width:265px;height:265px}.name-note{grid-template-columns:1fr;gap:6px}.section-heading{margin-bottom:32px}.expertise-grid{grid-template-columns:1fr;gap:14px}.expertise-photo,.digital-stage{height:255px}.expertise-body{min-height:auto;padding:27px 24px 30px}.expertise-body h3{font-size:33px}.expertise-body p{font-size:13px}.card-rule{margin-top:22px}.digital-stage{padding:21px}.digital-stage img{width:85%}.energy-services article{grid-template-columns:1fr;gap:6px;padding:28px 0}.energy-services h3{font-size:32px}.energy-services p{grid-column:1}.energy-services article>span{padding:0 0 5px}.market-section{padding:28px;margin-top:70px}.market-heading h3{font-size:35px}.pf-section{padding-bottom:25px}.pf-layout{gap:56px}.pf-copy h2{font-size:clamp(50px,10.8vw,68px)}.pf-logo{width:220px;margin-bottom:30px}.pf-copy>p:not(.eyebrow){font-size:14px}.pf-details{padding-left:22px}.pf-tags{margin-top:55px;gap:11px 22px;font-size:9px}.approach-section .section-heading{margin-bottom:60px}.steps{grid-template-columns:1fr;gap:15px;padding-left:25px}.steps::before{top:0;bottom:0;left:0;width:1px;height:auto}.steps::after{top:0;bottom:auto;left:0;width:2px;height:0;transition:height 1.8s}.steps.is-visible::after{width:2px;height:100%}.step{padding:0 0 25px}.step::before{top:6px;left:-30px}.step h3{font-size:39px;margin:14px 0 8px}.step p{margin:0}.contact-section{padding:85px 0}.contact-section h2{font-size:clamp(53px,11vw,74px)}.contact-side>p{font-size:17px}.footer-top{grid-template-columns:1fr 1fr;gap:30px}.footer-top>div:first-child{grid-column:1/-1}.footer-bottom{flex-wrap:wrap}.footer-bottom span:nth-child(2){order:3;width:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.motion-ready .intro-section .intro-left,.motion-ready .intro-section .intro-right,.motion-ready .intro-section .name-note,.motion-ready .section-heading,.motion-ready .expertise-card,.motion-ready .energy-services article,.motion-ready .market-section,.motion-ready .pf-copy,.motion-ready .pf-details,.motion-ready .step,.motion-ready .contact-grid>div{opacity:1!important;transform:none!important}.steps::after{width:100%!important}.steps.is-visible::after{height:100%!important}}
