@charset "UTF-8";
:root{--navy:#0d1932;--navy2:#142746;--ink:#172744;--muted:#68778b;--blue:#1d78c5;--cyan:#5bc8eb;--ice:#f0f6fb;--line:#dfe8f0;--white:#fff;--shadow:0 18px 48px rgba(22,47,81,.08)}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:#fff;color:var(--ink);font:400 16px/1.65 "Segoe UI",Arial,sans-serif;-webkit-font-smoothing:antialiased}
body,button{font-family:"Segoe UI",Arial,sans-serif}
a{color:inherit;text-decoration:none}
button{cursor:pointer}
img{max-width:100%}
section,[id]{scroll-margin-top:96px}
::selection{background:#68c9ea;color:#091c33}
:focus-visible{outline:3px solid var(--cyan);outline-offset:4px}
.container{width:min(calc(100% - 64px),1320px);margin-inline:auto}
.icon{width:1em;height:1em;display:inline-block;flex:none;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.section-title{font-size:clamp(30px,3.25vw,48px);line-height:1.12;letter-spacing:-.045em;font-weight:350;text-transform:uppercase;margin:14px 0 0;color:var(--ink)}
.section-title strong{font-weight:800}
.eyebrow{display:inline-flex;align-items:center;gap:9px;border:1px solid #bfd0de;border-radius:999px;padding:7px 13px;color:#53718b;font-size:11px;font-weight:700;letter-spacing:.11em;line-height:1.1;text-transform:uppercase}
.eyebrow::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--blue);box-shadow:0 0 0 3px rgba(29,120,197,.12)}
.eyebrow.light{color:#bad7eb;border-color:rgba(177,218,240,.32)}
.eyebrow.light::before{background:#63d0ef}
.button{min-height:46px;display:inline-flex;align-items:center;justify-content:center;gap:10px;border:1px solid transparent;border-radius:999px;padding:11px 20px;background:linear-gradient(135deg,#287fca,#1569b5);color:#fff;font-size:13px;font-weight:700;line-height:1.2;white-space:nowrap;box-shadow:0 8px 22px rgba(25,110,184,.22);position:relative;overflow:hidden;transition:transform .25s,box-shadow .25s,background .25s}
.button::after{content:"";position:absolute;top:-100%;left:-60%;width:35%;height:300%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.28),transparent);transform:rotate(26deg);transition:left .6s}
.button:hover{transform:translateY(-3px);box-shadow:0 14px 28px rgba(25,110,184,.28)}
.button:hover::after{left:135%}
.button .icon{font-size:16px;position:relative;z-index:1}

/* Navigation and hero */
.masthead{position:relative;background:var(--navy);color:#fff}
.topbar{height:84px;position:fixed;inset:12px 16px auto;max-width:1440px;margin-inline:auto;z-index:50;padding:0 max(32px,calc((100vw - 1320px)/2));display:flex;align-items:center;gap:34px;background:rgba(9,23,46,.88);border:1px solid rgba(255,255,255,.13);border-radius:20px;box-shadow:0 14px 32px rgba(4,14,31,.18);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);transition:top .25s,height .25s,background .25s,box-shadow .25s}
.topbar.is-scrolled{height:72px;background:rgba(8,20,41,.95);box-shadow:0 8px 28px rgba(4,14,31,.22)}
.topbrand{display:flex;align-items:center;flex:none}
.topbrand img{display:block;width:202px;height:79px;object-fit:contain;transition:width .25s,height .25s}
.topbar.is-scrolled .topbrand img{width:184px;height:70px}
.main-nav{display:flex;align-items:center;justify-content:center;gap:19px;margin-left:auto;height:100%}
.main-nav>a,.nav-group>summary{font-size:12px;font-weight:750;letter-spacing:.025em;text-transform:uppercase;color:#e9f2fa;white-space:nowrap;transition:color .2s}
.main-nav>a:hover,.nav-group>summary:hover,.main-nav>a:focus-visible,.nav-group[open]>summary{color:#79d4f1}
.nav-group{position:relative;height:100%;display:flex;align-items:center}
.nav-group>summary{cursor:pointer;list-style:none;display:flex;align-items:center;gap:7px;height:100%;position:relative}
.nav-group>summary>a{color:inherit;font:inherit;text-decoration:none}
.nav-group>summary::-webkit-details-marker,.nav-subgroup>summary::-webkit-details-marker{display:none}
.nav-group>summary::after,.nav-subgroup>summary::after{content:"";width:6px;height:6px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:translateY(-2px) rotate(45deg);transition:transform .2s}
.nav-group[open]>summary::after{transform:translateY(1px) rotate(225deg)}
.nav-group[open]>summary::before{content:"";position:absolute;left:0;right:0;bottom:20px;height:2px;border-radius:2px;background:#47b1e8}
.nav-panel,.nav-subpanel{background:#fff;color:var(--ink);border:1px solid #e4ebf1;border-radius:17px;box-shadow:0 20px 46px rgba(5,19,43,.22)}
.nav-panel{position:absolute;top:calc(100% - 8px);left:-22px;width:276px;padding:11px;display:grid;gap:2px;animation:navAppear .18s ease-out}
.nav-panel-business{width:238px}
.nav-panel-projects{width:255px}
.nav-press>.nav-panel{left:auto;right:-24px;width:190px}
.nav-panel a,.nav-subgroup>summary{display:flex;align-items:center;min-height:42px;font-size:12px;font-weight:650;line-height:1.35;padding:10px 12px;border-radius:9px;white-space:normal;color:var(--ink);transition:background .2s,color .2s}
.nav-panel a:hover,.nav-panel a:focus-visible,.nav-subgroup>summary:hover,.nav-subgroup[open]>summary{background:#eaf4ff;color:#176cae}
.nav-panel a::before{content:"";width:6px;height:6px;flex:none;margin-right:10px;border-radius:50%;background:#70bfe9;box-shadow:0 0 0 3px #e4f4fb}
.nav-subgroup{position:relative}
.nav-subgroup>summary{cursor:pointer;justify-content:space-between;list-style:none;text-transform:none;letter-spacing:0}
.nav-subgroup>summary>a{display:inline;color:inherit;min-height:0;padding:0;border-radius:0;background:none;font:inherit;white-space:nowrap}
.nav-subgroup>summary>a::before{display:none}
.nav-subgroup>summary>a:hover,.nav-subgroup>summary>a:focus-visible{background:none;color:#176cae}
.nav-subgroup>summary::after{transform:rotate(-45deg);margin-right:3px}
.nav-subgroup[open]>summary::after{transform:rotate(135deg)}
.nav-subpanel{position:absolute;top:-10px;left:calc(100% - 2px);width:245px;padding:11px;display:grid;gap:2px;animation:navAppear .18s ease-out}
@keyframes navAppear{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}
.nav-contact{display:inline-flex;align-items:center;gap:9px;padding:11px 18px;border:1px solid #fff;background:#fff;color:var(--navy);border-radius:999px;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.025em;white-space:nowrap;transition:background .2s,color .2s,transform .2s}
.nav-contact:hover{background:#bfeafb;border-color:#bfeafb;color:#0d2847;transform:translateY(-2px)}
.nav-contact .icon{width:16px;height:16px;fill:currentColor;stroke-width:1.6}
.mobile-menu{display:none}
.hero-image{min-height:730px;position:relative;isolation:isolate;display:flex;align-items:center;background:url('../assets/hero-finance.jpg') center/cover no-repeat;overflow:hidden}
.hero-image::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(6,19,40,.87) 0%,rgba(8,25,49,.69) 50%,rgba(8,23,42,.42) 100%),linear-gradient(0deg,rgba(4,18,39,.75),transparent 45%);z-index:0}
.hero-shade{position:absolute;width:650px;height:650px;right:-160px;top:0;border-radius:50%;background:radial-gradient(circle,rgba(58,172,224,.22),transparent 65%);filter:blur(6px);animation:glowMove 12s ease-in-out infinite alternate;pointer-events:none}
.hero-content{position:relative;z-index:1;padding:145px 0 118px}
.hero-kicker{display:inline-flex;align-items:center;gap:11px;font-size:12px;font-weight:750;letter-spacing:.21em;color:#a5e5fb}
.pulse-dot{width:8px;height:8px;background:#64d7ee;border-radius:50%;box-shadow:0 0 0 5px rgba(100,215,238,.14);animation:pulse 2.5s ease-in-out infinite}
.hero-content h1{max-width:770px;margin:23px 0 20px;font-size:clamp(52px,6vw,91px);font-weight:800;line-height:1.03;letter-spacing:-.065em}
.hero-content h1 em{font-style:normal;color:#91d8ef;background:linear-gradient(120deg,#fff 0%,#9adbf1 46%,#4db8dd 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.hero-content>p{max-width:600px;margin:0;color:#d2e0ed;font-size:17px;line-height:1.7}
.hero-actions{display:flex;flex-wrap:wrap;gap:13px;margin-top:30px}
.hero-actions .button{min-height:51px;padding-inline:23px;font-size:13px}
.button-ghost{background:rgba(255,255,255,.09);border-color:rgba(255,255,255,.3);box-shadow:none}
.button-ghost:hover{background:rgba(255,255,255,.18);box-shadow:none}
.hero-stats{display:flex;flex-wrap:wrap;gap:0;margin-top:77px;max-width:670px;border-top:1px solid rgba(255,255,255,.22);padding-top:24px}
.hero-stats>div{display:flex;flex-direction:column;padding:0 33px;border-right:1px solid rgba(255,255,255,.2)}
.hero-stats>div:first-child{padding-left:0}.hero-stats>div:last-child{border:0}
.hero-stats strong{font-size:30px;line-height:1.1;letter-spacing:-.04em}.hero-stats strong span{color:#63c9e9}
.hero-stats>div>span{font-size:12px;color:#b8cadd;margin-top:5px}
.hero-scroll{position:absolute;z-index:1;right:max(32px,calc((100vw - 1320px)/2));bottom:42px;display:flex;align-items:center;gap:10px;color:#b7cbd9;letter-spacing:.18em;font-size:10px;font-weight:700;writing-mode:vertical-rl}
.hero-scroll span{height:42px;width:1px;background:linear-gradient(#70cfed,transparent)}

/* Company overview */
.intro{padding:104px 0 95px;background:#fff}
.intro-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:76px;align-items:start}
.intro .section-title{margin-bottom:22px}
.intro-copy p{max-width:640px;margin:0 0 14px;color:var(--muted);font-size:15px;line-height:1.75}
.intro-checks{list-style:none;padding:0;margin:26px 0 30px;display:grid;grid-template-columns:1fr 1fr;gap:15px 18px}
.intro-checks li{display:flex;align-items:center;gap:9px;font-size:14px;font-weight:650}
.check{color:#1171c0;width:20px;height:20px;flex:none}
.experience-image{display:block;width:100%;height:auto;max-height:445px;object-fit:contain;object-position:left top;border-radius:16px}
.intro-visual{padding-top:35px}
.metric-cluster{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.metric{min-height:185px;border:1px solid var(--line);border-radius:22px;background:linear-gradient(145deg,#fff,#f5faff);box-shadow:var(--shadow);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;transition:transform .25s,box-shadow .25s}
.metric:hover{transform:translateY(-4px);box-shadow:0 20px 42px rgba(22,47,81,.12)}
.metric:nth-child(3){grid-column:1/-1;min-height:150px}
.metric strong{font-size:clamp(37px,4vw,56px);line-height:1.1;letter-spacing:-.06em;color:#112342}
.metric span{color:#708197;font-size:13px;margin-top:7px}
.energy-collage{display:block;width:100%;height:207px;object-fit:cover;border-radius:18px;margin-top:15px}

/* About */
.about{background:linear-gradient(135deg,#eef5fa,#f7fafc);padding:100px 0}
.about-grid{display:grid;grid-template-columns:.86fr 1.14fr;gap:82px;align-items:center}
.about-photo{width:100%;height:570px;object-fit:cover;border-radius:25px;display:block;box-shadow:0 22px 52px rgba(22,47,81,.12)}
.about .section-title{margin-bottom:18px}
.about-copy>p{margin:0 0 28px;color:var(--muted);font-size:16px;line-height:1.75}
.about-accordion{display:grid;gap:10px}
.about-accordion details{background:#fff;border:1px solid #e2eaf0;border-radius:12px;padding:0 18px;box-shadow:0 7px 20px rgba(25,53,87,.035);transition:border-color .2s,box-shadow .2s}
.about-accordion details[open]{border-color:#bad9ed;box-shadow:0 12px 26px rgba(25,99,160,.09)}
.about-accordion summary{list-style:none;cursor:pointer;min-height:57px;display:flex;align-items:center;justify-content:space-between;gap:16px;font-size:15px;font-weight:750}
.about-accordion summary::-webkit-details-marker{display:none}
.about-accordion summary::after{content:"+";color:#2685c0;font-size:21px;font-weight:400;line-height:1}
.about-accordion details[open] summary::after{content:"−"}
.about-accordion details p{margin:0;padding:0 10px 16px 0;color:var(--muted);font-size:14px;line-height:1.65}

/* Services and sectors */
.services{padding:105px 0 110px;background:#fff}
.services .section-title{margin-bottom:34px;text-transform:none}
.showcase-grid,.sector-grid,.finance-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:21px}
.showcase-card{min-height:470px;border-radius:20px;overflow:hidden;position:relative;background:#132542;color:#fff;display:flex;align-items:flex-end;padding:26px;box-shadow:var(--shadow);transition:transform .3s,box-shadow .3s}
.showcase-card:hover{transform:translateY(-6px);box-shadow:0 24px 55px rgba(17,39,72,.22)}
.showcase-card::after{content:"";position:absolute;inset:0;background:linear-gradient(to bottom,rgba(9,22,43,.02) 0%,rgba(9,22,43,.19) 35%,rgba(11,25,49,.94) 65%,#102443 100%)}
.showcase-card img{position:absolute;inset:0;width:100%;height:72%;object-fit:cover;transition:transform .6s}
.showcase-card:hover img{transform:scale(1.06)}
.showcase-card>div{position:relative;z-index:2}
.showcase-card h3{margin:0 0 10px;font-size:22px;line-height:1.2;text-transform:uppercase}
.showcase-card p{font-size:13px;line-height:1.6;color:#d7e3ee;min-height:103px;margin:0 0 19px}
.showcase-card .button{min-height:42px;font-size:12px;padding:9px 16px;text-transform:none}
.sectors{background:#f0f6fb;padding:103px 0 105px}
.sectors .section-title{margin-bottom:34px}
.sector-card{background:#fff;border-radius:19px;overflow:hidden;text-align:center;box-shadow:var(--shadow);transition:transform .3s,box-shadow .3s}
.sector-card:hover{transform:translateY(-6px);box-shadow:0 23px 55px rgba(17,39,72,.13)}
.sector-photo{height:225px;position:relative}
.sector-photo img{width:100%;height:100%;object-fit:cover;display:block}
.sector-number{position:absolute;bottom:-28px;left:50%;transform:translateX(-50%);width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:#1e73b6;color:#fff;font-size:20px;font-weight:800;border:4px solid #fff}
.sector-body{padding:47px 25px 29px}
.sector-body h3{font-size:18px;line-height:1.3;margin:0 0 13px;min-height:47px;text-transform:uppercase}
.sector-body p{color:var(--muted);font-size:13px;line-height:1.7;min-height:112px;margin:0 0 18px}
.sector-body .button{min-height:41px;padding:9px 17px;font-size:11px;text-transform:uppercase}

/* Financing */
.financing{background:radial-gradient(circle at 88% 8%,rgba(48,138,205,.18),transparent 35%),linear-gradient(125deg,#0c1b35,#172a4c);color:#fff;padding:105px 0 110px}
.financing .section-title,.global .section-title{color:#fff}
.financing-intro{max-width:1030px;color:#b8c9db;font-size:15px;line-height:1.8;margin:20px 0 35px}
.finance-card{min-height:275px;padding:29px 27px 28px;border:1px solid rgba(255,255,255,.11);border-radius:18px;background:rgba(255,255,255,.96);color:var(--ink);box-shadow:0 18px 40px rgba(3,16,37,.13);transition:transform .3s,box-shadow .3s}
.finance-card:hover{transform:translateY(-5px);box-shadow:0 26px 50px rgba(3,16,37,.2)}
.finance-icon{width:57px;height:57px;border-radius:15px;display:grid;place-items:center;background:#e8f3fc;color:#1775bc;font-size:31px;font-weight:700;line-height:1}
.finance-card h3{font-size:18px;line-height:1.3;margin:20px 0 9px}
.finance-card p{margin:0;color:var(--muted);font-size:13px;line-height:1.7}

/* Commitments */
.service{padding:105px 0 112px;background:#fff}
.service .section-title{text-align:center;margin:18px 0 33px}
.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.service-card{min-height:230px;background:#f2f7fb;border:1px solid #e6eff6;border-radius:16px;padding:24px;transition:transform .3s,box-shadow .3s,border-color .3s}
.service-card:hover{transform:translateY(-5px);box-shadow:var(--shadow);border-color:#c6e1f3}
.service-mark{width:43px;height:43px;color:#4d746c;margin-bottom:14px}
.service-card h3{font-size:17px;line-height:1.25;margin:0 0 16px}
.service-card ul{padding:0;margin:0;list-style:none;display:grid;gap:8px}
.service-card li{display:flex;gap:9px;font-size:13px;line-height:1.45}
.service-card li .check{width:17px;height:17px;margin-top:1px}

/* Partners */
.partners{padding:95px 0 105px;background:#f7fafc}
.partners .section-title{margin-bottom:33px}
.partner-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:16px}
.partner-logo{flex:0 0 calc((100% - 48px)/4);height:102px;border:1px solid #edf1f5;border-radius:13px;overflow:hidden;background:#fff;box-shadow:0 10px 28px rgba(24,51,86,.045);display:flex;align-items:center;justify-content:center;filter:grayscale(1);transition:filter .3s,transform .3s,box-shadow .3s}
.partner-logo:hover{filter:grayscale(0);transform:translateY(-4px);box-shadow:0 18px 34px rgba(24,51,86,.09)}
.partner-logo img{width:100%;height:100%;object-fit:contain;display:block}

/* Global focus */
.global{background:linear-gradient(120deg,#101e38,#17274a);color:#fff;padding:105px 0 110px}
.global .section-title{margin-bottom:8px}
.global-intro{max-width:750px;margin:0 0 35px;color:#aec0d5;font-size:14px;line-height:1.7}
.region-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.region-card{min-height:350px;padding:27px;background:rgba(255,255,255,.045);border:1px solid rgba(192,216,240,.13);border-radius:17px;transition:background .3s,transform .3s}
.region-card:hover{background:rgba(255,255,255,.075);transform:translateY(-4px)}
.region-card h3{display:flex;align-items:center;gap:11px;margin:0 0 19px;padding-bottom:15px;border-bottom:1px solid rgba(255,255,255,.13);font-size:17px;text-transform:uppercase;letter-spacing:.025em}
.region-card h3::before{content:"";display:block;width:23px;height:23px;flex:none;background:url('../assets/globe-icon.svg') center/contain no-repeat}
.region-card ul{display:grid;grid-template-columns:1fr 1fr;gap:10px 16px;list-style:none;padding:0;margin:0}
.region-card li{font-size:13px;color:#d2dce9;display:flex;align-items:center;gap:8px}
.region-card li::before{content:"";display:block;width:12px;height:15px;flex:none;background:url('../assets/location-pin.svg') center/contain no-repeat}

/* Earth resources */
.resources{background:#f0f6fb;padding:102px 0 158px}
.resources .section-title{margin-bottom:37px}
.benefits{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}
.benefit h3{display:flex;align-items:center;gap:10px;margin:0 0 12px;font-size:16px;line-height:1.3;text-transform:uppercase}
.benefit h3 .check{width:27px;height:27px}
.benefit p{margin:0;color:var(--muted);font-size:13px;line-height:1.75}

/* Footer and renewable energy callout */
.footer{background:linear-gradient(135deg,#0b1933,#13274b);color:#fff}
.promo{position:relative;top:-67px;margin-bottom:-7px;min-height:355px;padding:38px;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:48px;border:1px solid rgba(255,255,255,.09);border-radius:23px;background:radial-gradient(circle at 18% 30%,rgba(40,123,192,.15),transparent 45%),#142748;box-shadow:0 24px 60px rgba(8,24,49,.2);overflow:hidden}
.promo::before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);background-size:38px 38px;pointer-events:none}
.promo-copy,.promo img{position:relative;z-index:1}
.promo-kicker{font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:#b9d7eb;margin:0 0 15px}
.promo h2{font-size:clamp(28px,3.1vw,43px);line-height:1.18;letter-spacing:-.045em;text-transform:uppercase;font-weight:350;margin:0 0 14px}
.promo h2 span{color:#55b7e3;font-weight:800}
.promo p:not(.promo-kicker){max-width:490px;margin:0 0 19px;color:#acbed1;font-size:14px;line-height:1.6}
.promo img{width:100%;height:282px;object-fit:cover;border-radius:15px;display:block}
.footer-main{display:grid;grid-template-columns:1.3fr .7fr 1fr;gap:72px;padding-bottom:70px}
.brand{display:block;width:225px;margin-bottom:24px}.brand img{display:block;width:100%;height:auto}
.footer-about p{max-width:400px;color:#aabbd0;font-size:13px;line-height:1.75;margin:0 0 22px}
.footer h3{font-size:16px;line-height:1.3;margin:0 0 16px}
.socials{display:flex;gap:9px}.socials a{width:38px;height:38px;display:grid;place-items:center;border-radius:9px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);color:#b7c9da;transition:background .2s,border-color .2s,color .2s,transform .2s}.socials a:hover,.socials a:focus-visible{background:#2168a6;border-color:#4299d5;color:#fff;transform:translateY(-2px)}.socials .icon{width:19px;height:19px;stroke-width:1.8}
.footer-links h3::after{content:"";display:block;width:31px;height:2px;background:#45a6db;margin-top:12px}.footer-links nav{display:grid;gap:8px}.footer-links a{font-size:13px;color:#aabbd0}.footer-links a:hover,.footer-bottom a:hover{color:#fff}
.contact-card{background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.08);border-radius:17px;padding:23px}
.contact-card h3{margin-bottom:20px}.contact-item{display:grid;grid-template-columns:31px 1fr;gap:10px;margin-bottom:17px}.contact-item:last-child{margin-bottom:0}.contact-icon{width:29px;height:29px;display:grid;place-items:center;border-radius:8px;background:rgba(75,161,211,.13);color:#62bde8;font-size:14px}.contact-label{font-size:9px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:#849bb5;margin:0 0 3px}.contact-item p:last-child{font-size:12px;line-height:1.5;margin:0;color:#e2edf7;overflow-wrap:anywhere}.contact-item a:hover{color:#80d8f4}
.location-link{display:flex;justify-content:space-between;align-items:center;margin-top:11px;padding:12px 16px;border-radius:10px;background:#2173b4;font-size:12px;font-weight:800;transition:background .2s}.location-link:hover{background:#318dcc}
.footer-bottom{min-height:75px;border-top:1px solid rgba(255,255,255,.09);display:flex;align-items:center;justify-content:space-between;gap:20px;color:#869ab4;font-size:11px}.footer-bottom div{display:flex;gap:25px}
.back-to-top{position:fixed;z-index:45;right:22px;bottom:22px;width:42px;height:42px;border:1px solid rgba(255,255,255,.35);border-radius:50%;display:grid;place-items:center;background:#1769ae;color:#fff;box-shadow:0 10px 28px rgba(7,42,80,.24);font-size:23px;line-height:1;opacity:0;transform:translateY(14px);pointer-events:none;transition:opacity .25s,transform .25s,background .25s}.back-to-top.visible{opacity:1;transform:translateY(0);pointer-events:auto}.back-to-top:hover{background:#3294ce}

/* Gentle entrance motion; content stays visible if JavaScript is unavailable. */
.will-reveal{opacity:0;transform:translateY(22px);transition:opacity .65s ease,transform .65s ease}
.will-reveal.in-view{opacity:1;transform:translateY(0)}
@keyframes pulse{50%{box-shadow:0 0 0 10px rgba(100,215,238,0)}}
@keyframes glowMove{to{transform:translate(-80px,65px) scale(1.12)}}

@media(max-width:1180px){
  .container{width:min(calc(100% - 48px),1050px)}
  .topbar{padding-inline:24px;gap:18px}.topbrand img{width:175px}.main-nav{gap:12px}.main-nav>a,.nav-group>summary{font-size:10px}.nav-contact{padding:9px 13px;font-size:10px}
  .intro-grid,.about-grid{gap:42px}.hero-content h1{font-size:70px}.showcase-card p{min-height:126px}.sector-body p{min-height:150px}.footer-main{gap:38px}
}
@media(max-width:1180px){
  .main-nav{display:none}.topbar{justify-content:space-between}.nav-contact{margin-left:auto}.mobile-menu{display:block;position:relative}.mobile-menu>summary{list-style:none;width:40px;height:40px;border:1px solid rgba(255,255,255,.3);border-radius:10px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;cursor:pointer}.mobile-menu>summary::-webkit-details-marker{display:none}.mobile-menu>summary span{display:block;width:17px;height:2px;border-radius:2px;background:#fff;transition:transform .2s,opacity .2s}.mobile-menu[open]>summary span:first-child{transform:translateY(6px) rotate(45deg)}.mobile-menu[open]>summary span:nth-child(2){opacity:0}.mobile-menu[open]>summary span:last-child{transform:translateY(-6px) rotate(-45deg)}.mobile-menu nav{position:absolute;right:0;top:51px;width:min(300px,calc(100vw - 35px));padding:15px;display:grid;gap:2px;background:#102441;border:1px solid rgba(255,255,255,.12);border-radius:14px;box-shadow:0 18px 38px rgba(2,12,31,.28)}.mobile-menu nav a{font-size:13px;font-weight:700;padding:10px 12px;border-radius:7px}.mobile-menu nav a:hover{background:rgba(255,255,255,.08)}
  .mobile-menu nav{max-height:calc(100dvh - 90px);overflow-y:auto;overscroll-behavior:contain}
  .mobile-nav-group>summary{display:flex;align-items:center;justify-content:space-between;min-height:42px;padding:9px 12px;border-radius:7px;list-style:none;cursor:pointer;font-size:13px;font-weight:700}
  .mobile-menu nav .mobile-nav-group>summary{padding:2px 12px}
  .mobile-menu nav .mobile-nav-group>summary>a{display:inline-flex;align-items:center;min-height:40px;padding:0;background:none;color:inherit}
  .mobile-menu nav .mobile-nav-group>summary>a:hover{background:none;color:#9cdef7}
  .mobile-nav-group>summary::-webkit-details-marker{display:none}
  .mobile-nav-group>summary::after{content:"";width:7px;height:7px;margin-right:3px;border-right:1.5px solid #8ed4f3;border-bottom:1.5px solid #8ed4f3;transform:rotate(45deg);transition:transform .2s}
  .mobile-nav-group[open]>summary{background:rgba(113,203,239,.12);color:#9cdef7}
  .mobile-nav-group[open]>summary::after{transform:rotate(225deg)}
  .mobile-nav-panel{display:grid;gap:2px;margin:2px 0 5px 12px;padding-left:9px;border-left:1px solid rgba(128,212,244,.3)}
  .mobile-menu nav .mobile-nav-panel a,.mobile-menu nav .mobile-nav-panel summary{font-size:12px;font-weight:600;white-space:normal;line-height:1.35}
  .intro-grid,.about-grid{grid-template-columns:1fr}.intro-visual{padding-top:0}.intro-copy p{max-width:unset}.experience-image{max-height:360px}.metric-cluster{grid-template-columns:repeat(3,1fr)}.metric:nth-child(3){grid-column:auto;min-height:185px}.energy-collage{height:160px}.about-photo{height:390px}.showcase-grid,.sector-grid,.finance-grid{gap:14px}.showcase-card{padding:19px}.showcase-card h3{font-size:19px}.showcase-card p{font-size:12px;min-height:150px}.sector-body{padding-inline:15px}.sector-body p{font-size:12px;min-height:170px}.finance-card{padding:22px}.finance-card h3{font-size:16px}.service-grid{grid-template-columns:repeat(2,1fr)}.partner-logo{flex-basis:calc((100% - 32px)/3)}
}
@media(max-width:680px){
  .container{width:min(calc(100% - 36px),540px)}.section-title{font-size:32px}.eyebrow{font-size:10px}
  .topbar,.topbar.is-scrolled{height:68px;padding-inline:17px}.topbrand img,.topbar.is-scrolled .topbrand img{width:155px;height:62px}.nav-contact{display:none}.hero-image{min-height:660px;background-position:57% center}.hero-content{padding-top:145px;padding-bottom:90px}.hero-content h1{font-size:clamp(46px,11vw,65px);margin:17px 0}.hero-content>p{font-size:15px}.hero-kicker{font-size:10px}.hero-actions{gap:9px}.hero-actions .button{font-size:12px;padding-inline:16px;min-height:45px}.hero-stats{margin-top:63px;gap:0}.hero-stats>div{padding-inline:13px}.hero-stats strong{font-size:21px}.hero-stats>div>span{font-size:10px}.hero-scroll{display:none}
  .intro,.about,.services,.sectors,.financing,.service,.partners,.global{padding-block:72px}.resources{padding:72px 0 130px}.intro-grid,.about-grid{gap:27px}.intro-checks{gap:12px}.intro-checks li{font-size:12px}.intro-copy p,.about-copy>p{font-size:14px}.experience-image{max-height:300px}.metric-cluster{gap:8px}.metric,.metric:nth-child(3){min-height:110px;border-radius:13px}.metric strong{font-size:28px}.metric span{font-size:10px}.energy-collage{height:105px}.about-photo{height:290px;border-radius:17px}.showcase-grid,.sector-grid,.finance-grid,.region-grid,.benefits{grid-template-columns:1fr}.showcase-card{min-height:430px;padding:24px}.showcase-card h3{font-size:21px}.showcase-card p{min-height:0;font-size:13px}.sector-photo{height:230px}.sector-body p{min-height:0;font-size:13px}.finance-card{min-height:0}.service .section-title{text-align:left}.service-grid{grid-template-columns:1fr}.service-card{min-height:0}.partner-grid{gap:10px}.partner-logo{flex-basis:calc((100% - 10px)/2);height:82px}.region-card{min-height:0}.region-card ul{grid-template-columns:1fr 1fr}.benefits{gap:25px}
  .promo{grid-template-columns:1fr;gap:20px;padding:22px;top:-58px;margin-bottom:-18px}.promo img{height:205px;order:-1}.promo h2{font-size:31px}.footer-main{grid-template-columns:1fr 1fr;gap:32px 20px;padding-bottom:45px}.footer-about{grid-column:1/-1}.footer-about p{max-width:unset}.contact-wrap{grid-column:1/-1}.brand{width:185px}.footer-bottom{padding-block:20px;min-height:0;flex-direction:column;align-items:flex-start;gap:6px}.footer-bottom div{gap:18px}
}
@media(max-width:375px){.hero-stats>div{padding-inline:9px}.hero-stats strong{font-size:18px}.hero-stats>div>span{font-size:9px}.metric strong{font-size:23px}.metric span{font-size:9px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.will-reveal{opacity:1;transform:none}}

