:root{--bg:#06111f;--bg2:#0a1829;--panel:#0e2135;--blue:#0e4f9c;--blue2:#2e8de8;--ice:#dff2ff;--white:#f6fbff;--muted:#9fb1c4;--line:rgba(230,243,255,.14);--ink:#091522;--paper:#edf5fb;--water:#58b5ff;--font-size:16px;--mx:50%;--my:50%}
*{box-sizing:border-box}html{scroll-behavior:smooth;font-size:var(--font-size);background:var(--bg)}body{margin:0;background:var(--bg);color:var(--white);font-family:"General Sans",Arial,sans-serif;overflow-x:hidden}body.menu-open{overflow:hidden}a,button,input{font:inherit;color:inherit}button{cursor:pointer}img{display:block;max-width:100%}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;left:1rem;top:1rem;z-index:99999;background:#fff;color:#07111d;padding:.7rem 1rem;transform:translateY(-180%);transition:.2s}.skip-link:focus{transform:none}::selection{background:#cdeaff;color:#07111d}
.scroll-water{position:fixed;top:0;left:0;width:100%;height:3px;z-index:9998;pointer-events:none;background:rgba(255,255,255,.05)}.scroll-water span{display:block;height:100%;width:0;background:linear-gradient(90deg,#8fd1ff,#e7f8ff,#2f94ef,#0e4f9c);background-size:250% 100%;box-shadow:0 0 18px rgba(88,181,255,.55);animation:flow 4s linear infinite}@keyframes flow{to{background-position:250% 0}}
.cursor{position:fixed;width:30px;height:30px;border:1px solid rgba(255,255,255,.55);border-radius:50%;z-index:9997;pointer-events:none;transform:translate(-50%,-50%);mix-blend-mode:difference;display:none;transition:width .2s,height .2s,border-color .2s}.cursor i{position:absolute;inset:50% auto auto 50%;width:3px;height:3px;background:#fff;border-radius:50%;transform:translate(-50%,-50%)}body.cursor-active .cursor{display:block}.cursor.hover{width:68px;height:68px;border-color:#fff}
/* Loader */
.loader{position:fixed;inset:0;z-index:10000;background:radial-gradient(circle at 50% 16%,rgba(41,110,188,.18),transparent 30%),#040c16;color:#fff;display:grid;grid-template-rows:auto 1fr auto;padding:2rem 2.5rem;overflow:hidden;transition:transform 1.05s cubic-bezier(.76,0,.24,1),visibility 1.05s}.loader-grid{position:absolute;inset:0;opacity:.16;background-image:linear-gradient(rgba(255,255,255,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.06) 1px,transparent 1px);background-size:78px 78px;mask-image:radial-gradient(circle at center,#000,transparent 78%)}.loader-meta,.loader-bottom{position:relative;z-index:4;display:flex;align-items:center;justify-content:space-between;text-transform:uppercase;letter-spacing:.14em;font-size:.64rem}.loader-stage{position:relative;z-index:3;display:flex;flex-direction:column;align-items:center;justify-content:center}.loader-kicker{margin:0 0 2rem;color:#a4bad0;text-transform:uppercase;letter-spacing:.17em;font-size:.65rem}.liquid-mark{width:min(88vw,920px);overflow:visible}.clip-text,.outline-text{font-family:"General Sans",Arial,sans-serif;font-weight:600;font-size:360px;letter-spacing:-.09em}.outline-text{fill:transparent;stroke:rgba(237,247,255,.26);stroke-width:2}.liquid-group{transform:translateY(390px);transition:transform .08s linear;filter:url(#softGlow)}.wave{transform-box:fill-box;transform-origin:center}.wave-one{animation:waveA 5.6s linear infinite}.wave-two{animation:waveB 7.6s linear infinite reverse}.bubbles circle{animation:bubble 3.6s ease-in-out infinite}.bubbles circle:nth-child(2){animation-delay:-1.4s}.bubbles circle:nth-child(3){animation-delay:-2.2s}.bubbles circle:nth-child(4){animation-delay:-.7s}.bubbles circle:nth-child(5){animation-delay:-2.8s}@keyframes waveA{to{transform:translateX(180px)}}@keyframes waveB{to{transform:translateX(-150px)}}@keyframes bubble{0%,100%{transform:translateY(50px);opacity:.15}50%{transform:translateY(-90px);opacity:.7}}.loader-caption{width:min(78vw,760px);display:flex;justify-content:space-between;margin-top:1.1rem;color:#7791aa;font-size:.6rem;text-transform:uppercase;letter-spacing:.12em}.loader-bottom{display:grid;grid-template-columns:1fr auto auto;gap:1.2rem}.loader-track{height:6px;background:rgba(255,255,255,.12);border-radius:999px;overflow:hidden;box-shadow:inset 0 0 0 1px rgba(255,255,255,.06)}.loader-track i{display:block;height:100%;width:0;border-radius:999px;background:linear-gradient(90deg,#82caff,#e6f8ff,#4ba7f7);background-size:220% 100%;animation:flow 2.8s linear infinite}.loader-bottom strong{font-size:1.8rem;letter-spacing:-.06em}.liquid-bloom{position:absolute;inset:0;z-index:2;background:linear-gradient(180deg,#2a89e3 0%,#0e4f9c 48%,#082d62 100%);clip-path:circle(0% at 50% 51%);transition:clip-path .85s cubic-bezier(.76,0,.24,1);pointer-events:none}.liquid-bloom i,.liquid-bloom b{position:absolute;left:-12%;width:124%;height:70px;top:-20px;border-radius:45%;background:rgba(228,247,255,.7);filter:blur(2px);animation:waveFloat 5s linear infinite}.liquid-bloom b{top:8px;opacity:.28;animation-direction:reverse;animation-duration:7s}@keyframes waveFloat{to{transform:translateX(7%) rotate(1turn)}}.loader.flood .liquid-bloom{clip-path:circle(150% at 50% 51%)}.loader.leaving{transform:translateY(-110%);visibility:hidden}
/* Header + menu */
.site-header{position:fixed;top:24px;left:clamp(18px,3vw,52px);right:clamp(18px,3vw,52px);height:48px;z-index:5000;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;pointer-events:none}.site-header>*{pointer-events:auto}.menu-trigger,.lang-pill,.search-trigger{border:1px solid rgba(255,255,255,.26);background:rgba(5,15,27,.56);backdrop-filter:blur(15px);border-radius:9px;min-height:42px;display:inline-flex;align-items:center;gap:.65rem;padding:0 .9rem;color:#fff;position:relative;overflow:hidden}.menu-trigger{justify-self:start}.menu-trigger::before,.lang-pill::before,.search-trigger::before,.button::before{content:"";position:absolute;left:0;right:0;bottom:-2px;height:0;background:linear-gradient(180deg,rgba(111,197,255,.08),rgba(26,102,184,.86));transition:height .58s cubic-bezier(.2,.8,.2,1);z-index:-1}.menu-trigger:hover::before,.lang-pill:hover::before,.search-trigger:hover::before,.button:hover::before{height:110%}.menu-icon{width:22px;height:22px;border-radius:6px;background:rgba(255,255,255,.1);display:grid;place-content:center;gap:4px}.menu-icon i{width:12px;height:1px;background:#fff}.header-brand{position:relative;background:#fff;border-radius:0 0 12px 12px;padding:.35rem .68rem;align-self:start;margin-top:-24px;box-shadow:0 12px 34px rgba(0,0,0,.22)}.header-brand::after{content:"";position:absolute;left:50%;bottom:-5px;width:10px;height:10px;background:#fff;transform:translateX(-50%) rotate(45deg)}.header-brand img{width:116px}.header-tools{justify-self:end;display:flex;gap:.5rem}.lang-pill{width:42px;justify-content:center;padding:0}.search-trigger span{font-size:1.1rem}
.mega-menu{position:fixed;inset:0;z-index:8000;background:radial-gradient(circle at 20% 5%,rgba(37,116,204,.2),transparent 30%),#050e19;padding:1.6rem clamp(1.3rem,4vw,4.5rem) 1.2rem;overflow:hidden;clip-path:circle(0 at 4% 4%);opacity:0;transition:clip-path .9s cubic-bezier(.76,0,.24,1),opacity .25s}.mega-menu[hidden]{display:block;visibility:hidden;pointer-events:none}.mega-menu.open{clip-path:circle(155% at 4% 4%);opacity:1;visibility:visible;pointer-events:auto}.menu-current{display:flex;justify-content:space-between;color:#8095aa;text-transform:uppercase;letter-spacing:.14em;font-size:.6rem;position:relative;z-index:3}.menu-layout{height:calc(100vh - 100px);display:grid;grid-template-columns:minmax(0,1.55fr) minmax(330px,.75fr);gap:5vw;align-items:center;position:relative;z-index:3}.menu-list{border-top:1px solid var(--line)}.menu-list a{position:relative;display:grid;grid-template-columns:44px minmax(0,1fr) minmax(150px,.5fr) 28px;gap:1rem;align-items:center;text-decoration:none;padding:1.02rem 0;border-bottom:1px solid var(--line);overflow:hidden;transform:translateY(28px);opacity:0}.mega-menu.open .menu-list a{animation:menuIn .65s cubic-bezier(.2,.8,.2,1) forwards}.mega-menu.open .menu-list a:nth-child(1){animation-delay:.18s}.mega-menu.open .menu-list a:nth-child(2){animation-delay:.24s}.mega-menu.open .menu-list a:nth-child(3){animation-delay:.30s}.mega-menu.open .menu-list a:nth-child(4){animation-delay:.36s}.mega-menu.open .menu-list a:nth-child(5){animation-delay:.42s}.mega-menu.open .menu-list a:nth-child(6){animation-delay:.48s}@keyframes menuIn{to{transform:none;opacity:1}}.menu-list a::before{content:"";position:absolute;left:0;right:0;bottom:0;height:0;background:linear-gradient(180deg,rgba(95,184,255,.08),rgba(21,90,163,.9));transition:height .48s cubic-bezier(.2,.8,.2,1);z-index:-1}.menu-list a::after{content:"";position:absolute;left:-10%;right:-10%;bottom:-20px;height:38px;background:radial-gradient(circle at 18px 18px,rgba(212,240,255,.5) 0 13px,transparent 14px) 0 0/58px 30px repeat-x;opacity:0;transition:opacity .35s}.menu-list a:hover::before,.menu-list a:focus-visible::before{height:105%}.menu-list a:hover::after,.menu-list a:focus-visible::after{opacity:.18;animation:smallWave 4s linear infinite}@keyframes smallWave{to{transform:translateX(58px)}}.menu-list a>span{font-size:.62rem;color:#8fa3b8}.menu-list strong{font-size:clamp(2rem,3.8vw,3.8rem);letter-spacing:-.06em;font-weight:500;line-height:.9}.menu-list em{font-style:normal;color:#899caf;font-size:.7rem}.menu-list a>i{font-style:normal}.menu-side{display:grid;grid-template-rows:minmax(360px,1fr) auto;gap:1rem}.menu-preview{margin:0;position:relative;border-radius:16px;overflow:hidden;background:#102136;box-shadow:0 28px 80px rgba(0,0,0,.28)}.menu-preview img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.8) contrast(1.06) brightness(.75);transition:opacity .25s,transform .9s cubic-bezier(.2,.8,.2,1)}.menu-preview::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(4,14,25,.04) 42%,rgba(4,14,25,.82))}.menu-preview figcaption{position:absolute;z-index:2;left:1rem;right:1rem;bottom:1rem;display:flex;justify-content:space-between;font-size:.65rem;text-transform:uppercase;letter-spacing:.12em}.menu-shortcuts{border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:.45rem 1rem;padding-top:.9rem}.menu-shortcuts p{grid-column:1/-1;margin:0 0 .4rem;color:#7f94a9;font-size:.62rem;text-transform:uppercase;letter-spacing:.12em}.menu-shortcuts a{text-decoration:none;font-size:.76rem;color:#c6d6e5}.menu-close{position:absolute;top:1.15rem;right:clamp(1.3rem,4vw,4.5rem);z-index:5;border:0;background:none;text-transform:uppercase;letter-spacing:.12em;font-size:.62rem;display:flex;gap:.65rem;align-items:center}.menu-close span{width:34px;height:34px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;font-size:1.1rem}.menu-wave{position:absolute;left:-8%;right:-8%;bottom:-8%;height:22vh;background:linear-gradient(180deg,rgba(80,171,246,.13),rgba(13,68,130,.62));border-top-left-radius:45% 100%;border-top-right-radius:55% 100%;transform:translateY(110%);transition:transform .9s cubic-bezier(.76,0,.24,1);z-index:1}.mega-menu.open .menu-wave{transform:translateY(0)}.menu-wave i,.menu-wave b{position:absolute;left:-5%;width:110%;height:42px;top:-20px;border-radius:50%;background:rgba(216,241,255,.26);animation:waveFloat 8s linear infinite}.menu-wave b{top:-2px;opacity:.25;animation-direction:reverse;animation-duration:11s}
.search-panel{position:fixed;inset:0;z-index:8500;background:#edf5fb;color:#0c1928;padding:2rem 5vw}.search-panel[hidden]{display:none}.search-close{position:absolute;top:2rem;right:5vw;border:1px solid rgba(12,25,40,.2);background:transparent;border-radius:999px;padding:.75rem 1rem}.search-inner{margin-top:13vh}.search-inner h2{font-size:clamp(4rem,10vw,9.6rem);line-height:.77;letter-spacing:-.075em;font-weight:500;margin:1rem 0 3rem}.search-inner h2 span{color:#2166b0}.search-field{display:grid;grid-template-columns:1fr 72px;border-bottom:2px solid #0d1b2d}.search-field input{border:0;background:none;font-size:clamp(1.3rem,3vw,2.8rem);padding:1rem 0;outline:none}.search-field button{border:0;background:none;font-size:2rem}.search-links{display:flex;gap:1rem;margin-top:1rem;flex-wrap:wrap;font-size:.78rem}.search-links a{color:inherit}
/* Layout */
.wrap{width:min(1240px,calc(100% - 8vw));margin-inline:auto}.section{padding:9rem 0}.section-dark{background:var(--bg)}.section-light{background:var(--paper);color:var(--ink)}.eyebrow{display:inline-flex;align-items:center;gap:.7rem;color:#a7b8c8;font-size:.62rem;letter-spacing:.16em;text-transform:uppercase;margin:0}.eyebrow::after{content:"";width:58px;height:2px;background:linear-gradient(90deg,#8dd0ff,#2a8fe9);box-shadow:0 0 14px rgba(88,181,255,.35)}.display{font-size:clamp(4.1rem,8.5vw,9rem);line-height:.78;letter-spacing:-.07em;font-weight:500;margin:1rem 0}.display span{color:#8ccaff}.lead{font-size:clamp(1rem,1.4vw,1.22rem);line-height:1.55;color:#c0d0df;max-width:59ch}.section-light .lead{color:#455a6f}.button{min-height:46px;border-radius:9px;padding:0 .95rem;display:inline-flex;align-items:center;justify-content:space-between;gap:2rem;text-decoration:none;font-size:.72rem;border:1px solid;position:relative;overflow:hidden;isolation:isolate}.button i{font-style:normal;font-size:1.1rem}.button-light{background:#f6fbff;color:#06111e;border-color:#f6fbff}.button-light:hover{color:#fff;border-color:#94cfff}.button-outline{background:rgba(4,14,26,.18);border-color:rgba(255,255,255,.28);color:#fff}.section-no{font-size:clamp(5rem,10vw,10rem);line-height:.7;letter-spacing:-.08em;color:rgba(198,225,247,.1);font-weight:600}.section-head{display:grid;grid-template-columns:150px minmax(0,1fr) minmax(260px,.38fr);gap:3vw;align-items:end;margin-bottom:4rem}.section-head>p{color:#9aacbd;font-size:.83rem;line-height:1.55;margin:0 0 .6rem}.section-head>.button{justify-self:end;margin-bottom:.5rem}
/* Hero */
.hero{height:100svh;min-height:740px;padding:12px;background:#040b14}.hero-stage{height:100%;border-radius:20px;overflow:hidden;position:relative;isolation:isolate;background:#10233a;box-shadow:0 28px 90px rgba(0,0,0,.38)}.hero-image{position:absolute;inset:-3%;width:106%;height:106%;object-fit:cover;object-position:center 48%;filter:saturate(.78) contrast(1.08) brightness(.74);transition:transform .22s ease-out}.hero-scrim{position:absolute;inset:0;background:linear-gradient(90deg,rgba(2,10,19,.82) 0%,rgba(2,10,19,.45) 45%,rgba(2,10,19,.48) 100%),linear-gradient(0deg,rgba(2,10,19,.78) 0%,rgba(2,10,19,.08) 52%,rgba(2,10,19,.42) 100%)}.hero-grid{position:absolute;inset:0;display:grid;grid-template-columns:repeat(4,1fr);pointer-events:none}.hero-grid i{border-left:1px solid rgba(255,255,255,.08)}.hero-grid i:last-child{border-right:1px solid rgba(255,255,255,.08)}.hero-top{position:absolute;top:86px;left:clamp(1.4rem,3vw,3rem);right:clamp(1.4rem,3vw,3rem);display:flex;justify-content:space-between;font-size:.58rem;letter-spacing:.12em;text-transform:uppercase;color:#d5e1ec}.status-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#74c3ff;margin-right:.45rem;box-shadow:0 0 0 0 rgba(116,195,255,.55);animation:pulse 2s infinite}@keyframes pulse{70%{box-shadow:0 0 0 10px rgba(116,195,255,0)}}.hero-copy{position:absolute;left:clamp(1.4rem,3vw,3rem);right:clamp(1.4rem,3vw,3rem);bottom:clamp(2rem,5vw,5rem);display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,360px);gap:4vw;align-items:end}.hero h1{font-size:clamp(5.5rem,11.6vw,12.5rem);line-height:.7;letter-spacing:-.075em;font-weight:500;margin:.7rem 0 0;max-width:8.8ch}.hero h1 span{display:block}.hero h1 .muted{color:#cfe8ff}.hero-summary{padding:1.15rem 1.2rem;background:rgba(3,12,22,.48);border:1px solid rgba(255,255,255,.13);border-radius:12px;backdrop-filter:blur(16px)}.hero-summary p{font-size:.9rem;line-height:1.55;color:#e2ebf3;margin:0 0 1.3rem}.hero-card{position:absolute;right:clamp(1.2rem,3vw,3rem);top:20%;width:min(235px,22vw);min-width:195px;border:1px solid rgba(255,255,255,.2);background:rgba(4,15,27,.55);backdrop-filter:blur(18px);border-radius:14px;padding:1rem}.hero-card>span{font-size:.55rem;letter-spacing:.13em}.hero-card strong{display:block;font-size:4rem;line-height:.9;letter-spacing:-.08em;margin:1rem 0 .45rem}.hero-card p{font-size:.69rem;line-height:1.45;color:#d1dce6}.hero-card small{display:block;border-top:1px solid var(--line);padding-top:.75rem;text-align:right;color:#8399ad}.hero-waterline,.immersive-waterline,.closing-waterline{position:absolute;left:-6%;right:-6%;bottom:-18px;height:65px;pointer-events:none;z-index:3;background:linear-gradient(180deg,rgba(115,197,255,.05),rgba(22,93,167,.2));border-radius:50% 50% 0 0/100% 100% 0 0}.hero-waterline i,.hero-waterline b,.immersive-waterline i,.immersive-waterline b,.closing-waterline i,.closing-waterline b{position:absolute;left:-3%;width:106%;height:30px;top:-14px;border-radius:50%;background:rgba(217,242,255,.12);animation:waveFloat 9s linear infinite}.hero-waterline b,.immersive-waterline b,.closing-waterline b{top:1px;opacity:.16;animation-direction:reverse;animation-duration:12s}
/* Liquid / media */
.liquid-media{position:relative;overflow:hidden;isolation:isolate}.media-caustics{position:absolute;inset:-20%;z-index:2;pointer-events:none;opacity:.22;mix-blend-mode:screen;background:radial-gradient(ellipse at 25% 30%,rgba(196,233,255,.55) 0 2%,transparent 12%),radial-gradient(ellipse at 70% 45%,rgba(196,233,255,.4) 0 1.5%,transparent 10%),linear-gradient(125deg,transparent 38%,rgba(179,226,255,.18) 48%,transparent 58%);background-size:380px 260px,420px 300px,360px 360px;animation:caustics 13s ease-in-out infinite alternate}@keyframes caustics{from{transform:translate3d(-2%,-1%,0) rotate(-2deg) scale(1.05)}to{transform:translate3d(3%,2%,0) rotate(2deg) scale(1.12)}}.light-caustics{mix-blend-mode:soft-light;opacity:.3}.liquid-card{position:relative;overflow:hidden;isolation:isolate}.liquid-card::before{content:"";position:absolute;left:0;right:0;bottom:0;height:0;background:linear-gradient(180deg,rgba(96,186,255,.05),rgba(25,101,184,.28));transition:height .65s cubic-bezier(.2,.8,.2,1);z-index:-1}.liquid-card:hover::before{height:100%}.ripple{position:relative;overflow:hidden}.ripple-dot{position:absolute;width:12px;height:12px;border-radius:50%;background:rgba(196,232,255,.5);transform:translate(-50%,-50%) scale(0);pointer-events:none;animation:ripple .7s ease-out forwards}@keyframes ripple{to{transform:translate(-50%,-50%) scale(18);opacity:0}}
/* About */
.intro-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:6vw;align-items:center}.portrait-media{height:650px;border-radius:16px;background:#10233a;box-shadow:0 28px 70px rgba(0,0,0,.22)}.portrait-media img{width:100%;height:100%;object-fit:cover;object-position:center 42%;filter:saturate(.9) contrast(1.04) brightness(.88)}.portrait-media figcaption,.efficiency-media figcaption{position:absolute;left:1rem;right:1rem;bottom:1rem;z-index:4;display:flex;justify-content:space-between;background:rgba(5,16,28,.64);border:1px solid rgba(255,255,255,.16);backdrop-filter:blur(12px);border-radius:8px;padding:.65rem .8rem;font-size:.6rem;text-transform:uppercase;letter-spacing:.1em}.intro-copy .lead{margin:2rem 0}.metrics{display:grid;grid-template-columns:repeat(3,1fr);margin-top:6rem;border-top:1px solid var(--line)}.metric{padding:2rem 2rem 2.2rem 0;min-height:180px}.metric+.metric{border-left:1px solid var(--line);padding-left:2rem}.metric strong{display:block;font-size:clamp(4rem,6vw,6.8rem);line-height:.85;letter-spacing:-.08em;color:#e6f4ff}.metric span{display:block;margin-top:1rem;color:#9cb0c2;font-size:.72rem;max-width:22ch}
.marquee{overflow:hidden;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#091726;padding:1.2rem 0}.marquee div{display:flex;gap:2rem;width:max-content;align-items:center;animation:marquee 28s linear infinite}.marquee span{font-size:clamp(2rem,4vw,4.3rem);letter-spacing:-.05em;color:#d8ebfa}.marquee i{font-style:normal;color:#5bb5ff;font-size:.9rem}@keyframes marquee{to{transform:translateX(-38%)}}
/* Programs */
.priority-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:2vw}.priority-tabs{border-top:1px solid var(--line)}.priority-tab{width:100%;border:0;border-bottom:1px solid var(--line);background:none;color:#fff;display:grid;grid-template-columns:40px 1fr 150px 26px;gap:1rem;align-items:center;padding:1.4rem .4rem;text-align:left;position:relative;overflow:hidden}.priority-tab::before{content:"";position:absolute;inset:100% 0 0;background:linear-gradient(180deg,rgba(95,184,255,.08),rgba(22,91,165,.75));transition:.4s;z-index:-1}.priority-tab.active::before,.priority-tab:hover::before{inset:0}.priority-tab span{font-size:.58rem;color:#8ba0b5}.priority-tab strong{font-size:1.35rem;font-weight:500}.priority-tab em{font-style:normal;color:#8297ac;font-size:.68rem}.priority-tab i{font-style:normal}.priority-media{min-height:590px;border-radius:16px;background:#10233a;box-shadow:0 28px 70px rgba(0,0,0,.24)}.priority-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.83) brightness(.75);transition:opacity .25s,transform .9s cubic-bezier(.2,.8,.2,1)}.priority-scrim{position:absolute;inset:0;z-index:2;background:linear-gradient(180deg,rgba(3,12,22,.05) 30%,rgba(3,12,22,.82) 100%)}.priority-content{position:absolute;z-index:3;left:1.3rem;right:1.3rem;bottom:1.3rem}.priority-content>span{font-size:.58rem;letter-spacing:.13em;color:#b6cde0}.priority-content h3{font-size:clamp(2.5rem,4vw,4.8rem);line-height:.9;letter-spacing:-.06em;font-weight:500;max-width:10ch;margin:.5rem 0}.priority-content p{max-width:52ch;color:#d7e3ed;font-size:.8rem;line-height:1.5}.priority-content a{color:#fff;text-decoration:none;font-size:.72rem;border-bottom:1px solid rgba(255,255,255,.55);padding-bottom:.15rem}
/* Immersive */
.immersive{min-height:930px;display:flex;align-items:flex-end;position:relative;background:#07131f}.immersive-bg{position:absolute;inset:-4% 0 0;width:100%;height:108%;object-fit:cover;object-position:center 50%;filter:saturate(.75) contrast(1.05) brightness(.67)}.immersive-scrim{position:absolute;inset:0;z-index:2;background:linear-gradient(90deg,rgba(2,10,18,.82),rgba(2,10,18,.26) 62%,rgba(2,10,18,.5)),linear-gradient(0deg,rgba(2,10,18,.8),transparent 58%)}.immersive-inner{position:relative;z-index:4;display:grid;grid-template-columns:120px minmax(0,1fr) 320px;gap:3vw;align-items:end;padding-bottom:5rem}.immersive-inner .lead{margin-top:2rem}.water-stat{align-self:end;border:1px solid rgba(255,255,255,.18);background:rgba(5,17,30,.56);backdrop-filter:blur(18px);border-radius:14px;padding:1.2rem}.water-stat strong{font-size:3.6rem;letter-spacing:-.07em}.water-stat small{font-size:.7rem;letter-spacing:0}.water-stat p{color:#c9d7e2;font-size:.72rem;line-height:1.45}.water-stat a{color:#fff;text-decoration:none;font-size:.7rem}
/* Meetings */
.access-grid{display:grid;grid-template-columns:1fr .78fr;gap:1rem}.meeting-card{min-height:540px;background:#eaf3fa;color:#0a1724;border-radius:16px;padding:1.2rem;display:flex;flex-direction:column;box-shadow:0 24px 60px rgba(0,0,0,.22)}.meeting-top,.meeting-bottom{display:flex;justify-content:space-between;gap:1rem;font-size:.58rem;text-transform:uppercase;letter-spacing:.11em}.meeting-date{display:flex;gap:.8rem;align-items:flex-end;margin:auto 0 1rem}.meeting-date strong{font-size:8rem;line-height:.64;letter-spacing:-.1em}.meeting-date div{display:flex;flex-direction:column;font-weight:600}.meeting-card h3{font-size:clamp(2.2rem,3.5vw,4rem);line-height:.92;letter-spacing:-.06em;font-weight:500;max-width:13ch;margin:1rem 0 auto}.meeting-bottom{border-top:1px solid #bdcbd8;padding-top:1rem;align-items:center}.meeting-bottom a{color:inherit;text-decoration:none}.meeting-photo{border-radius:16px;min-height:540px;background:#10233a}.meeting-photo img{width:100%;height:100%;object-fit:cover;object-position:center 45%;filter:saturate(.85) contrast(1.04) brightness(.86)}.access-list{grid-column:1/-1;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr}.access-row{display:grid;grid-template-columns:38px 1fr 24px;gap:1rem;align-items:center;padding:1.5rem .7rem;border-bottom:1px solid var(--line);text-decoration:none}.access-row:nth-child(odd){border-right:1px solid var(--line)}.access-row:hover{background:rgba(54,137,220,.08)}.access-row>span{font-size:.58rem;color:#7f94a9}.access-row strong{font-size:1.15rem;font-weight:500}.access-row em{display:block;margin-top:.2rem;font-style:normal;font-size:.67rem;color:#8498ac}.access-row i{font-style:normal}
/* Efficiency */
.efficiency-grid{display:grid;grid-template-columns:1fr 1fr;gap:5vw;align-items:center}.efficiency-media{height:650px;border-radius:16px;background:#ccdbe8;box-shadow:0 28px 70px rgba(30,66,101,.16)}.efficiency-media img{width:100%;height:100%;object-fit:cover;object-position:center 38%;filter:saturate(.9) contrast(1.03) brightness(.96)}.section-light .eyebrow{color:#546c83}.section-light .display span{color:#507da4}.efficiency-copy .lead{margin-top:2rem}.efficiency-stats{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid #c8d5df;margin-top:3rem}.efficiency-stats div{padding-top:1.4rem}.efficiency-stats div+div{border-left:1px solid #c8d5df;padding-left:2rem}.efficiency-stats strong{font-size:4.3rem;line-height:.9;letter-spacing:-.08em;color:#123f6b}.efficiency-stats span{display:block;font-size:.7rem;color:#577084;max-width:18ch;margin-top:.5rem}
/* Resources + news */
.resource-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.7rem}.resource-card{min-height:360px;border:1px solid var(--line);border-radius:14px;padding:1rem;color:#fff;text-decoration:none;display:flex;flex-direction:column;transition:transform .4s cubic-bezier(.2,.8,.2,1)}.resource-card:hover{transform:translateY(-7px)}.resource-card>span{font-size:.58rem;color:#8297aa}.resource-card h3{font-size:clamp(1.7rem,2.4vw,2.8rem);font-weight:500;letter-spacing:-.055em;margin:auto 0 1rem}.resource-card p{font-size:.71rem;line-height:1.45;color:#93a7b9;max-width:25ch}.resource-card i{font-style:normal;align-self:flex-end;width:40px;height:40px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center}.news-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:3vw}.news-image{height:470px;display:block;border-radius:16px;background:#10233a}.news-image img{width:100%;height:100%;object-fit:cover;filter:saturate(.8) brightness(.82);transition:transform .8s cubic-bezier(.2,.8,.2,1)}.news-image:hover img{transform:scale(1.045)}.news-image>span{position:absolute;right:1rem;bottom:1rem;z-index:4;background:#fff;color:#081421;border-radius:8px;padding:.65rem .85rem;font-size:.69rem}.news-meta{display:flex;justify-content:space-between;color:#8095a9;font-size:.58rem;margin-top:1rem}.news-lead h3{font-size:clamp(2rem,3.2vw,3.8rem);line-height:.93;letter-spacing:-.055em;font-weight:500;margin:1rem 0}.news-list{border-top:1px solid var(--line)}.news-row{min-height:145px;display:grid;grid-template-columns:105px 1fr 24px;gap:1rem;align-items:center;border-bottom:1px solid var(--line);text-decoration:none;padding:.8rem .3rem}.news-row:hover{background:rgba(62,144,225,.08);padding-left:.9rem}.news-row>span{font-size:.58rem;color:#7f94a8}.news-row strong{font-size:1.2rem;line-height:1.2;font-weight:500}.news-row i{font-style:normal}
/* Closing / footer */
.closing{min-height:92vh;display:flex;align-items:flex-end;position:relative;background:#07131f}.closing>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 38%;filter:saturate(.86) contrast(1.04) brightness(.66)}.closing-scrim{position:absolute;inset:0;z-index:2;background:linear-gradient(90deg,rgba(2,10,18,.8),rgba(2,10,18,.25) 55%,rgba(2,10,18,.52)),linear-gradient(0deg,rgba(2,10,18,.83),transparent 62%)}.closing-inner{position:relative;z-index:4;padding-bottom:5rem}.closing .display{max-width:9ch}.closing-bottom{border-top:1px solid rgba(255,255,255,.24);display:flex;justify-content:space-between;align-items:end;padding-top:1.2rem}.closing-bottom p{font-size:.75rem;line-height:1.5;color:#d8e3ec}.site-footer{background:linear-gradient(180deg,#071523,#040b13);padding:5rem 0 1.4rem}.footer-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:8vw}.footer-brand img{width:235px;background:#fff;padding:.5rem;border-radius:8px}.footer-brand p{max-width:42ch;color:#8fa1b2;font-size:.78rem;line-height:1.5}.footer-links{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}.footer-links div{display:flex;flex-direction:column;gap:.55rem}.footer-links strong{font-size:.6rem;text-transform:uppercase;letter-spacing:.14em;margin-bottom:.6rem}.footer-links a,.footer-links span{font-size:.75rem;color:#a8b7c4;text-decoration:none}.footer-bottom{display:flex;justify-content:space-between;border-top:1px solid var(--line);margin-top:4rem;padding-top:1.2rem;color:#687e92;font-size:.58rem;letter-spacing:.07em}
/* Reveals */
.reveal{opacity:0;transform:translateY(26px);transition:opacity .75s cubic-bezier(.2,.8,.2,1),transform .75s cubic-bezier(.2,.8,.2,1)}.reveal.in{opacity:1;transform:none}.no-js .reveal{opacity:1;transform:none}
@media(max-width:1050px){.section-head{grid-template-columns:110px 1fr}.section-head>p,.section-head>.button{grid-column:2}.intro-grid,.priority-grid,.efficiency-grid,.news-grid{grid-template-columns:1fr}.portrait-media,.efficiency-media{height:520px}.priority-media{min-height:560px}.immersive-inner{grid-template-columns:80px 1fr}.water-stat{grid-column:2}.access-grid{grid-template-columns:1fr}.meeting-photo{min-height:430px}.resource-grid{grid-template-columns:1fr 1fr}.menu-layout{grid-template-columns:1fr}.menu-side{display:none}.menu-list a{grid-template-columns:38px 1fr 28px}.menu-list em{display:none}.footer-grid{grid-template-columns:1fr}.footer-links{margin-top:2rem}.hero-copy{grid-template-columns:1fr}.hero-summary{max-width:380px}.hero-card{top:23%}}
@media(max-width:680px){body{cursor:auto}.cursor{display:none!important}.loader{padding:1.2rem}.loader-meta span:nth-child(2),.loader-caption span:nth-child(2),.loader-bottom>span{display:none}.loader-caption{justify-content:center}.clip-text,.outline-text{font-size:300px}.site-header{top:16px;left:16px;right:16px;grid-template-columns:1fr auto}.header-brand{position:absolute;left:50%;transform:translateX(-50%);margin-top:-16px}.header-brand img{width:82px}.header-tools .lang-pill{display:none}.search-trigger{font-size:0;width:42px;padding:0;justify-content:center}.search-trigger span{font-size:1.1rem}.hero{min-height:720px}.hero-top{top:76px}.hero-top span:nth-child(2){display:none}.hero-copy{bottom:2rem}.hero h1{font-size:clamp(4.5rem,20vw,7rem)}.hero-card{display:none}.hero-summary{padding:.9rem}.wrap{width:min(100% - 32px,1240px)}.section{padding:6.8rem 0}.display{font-size:clamp(3.8rem,17vw,5.7rem)}.section-head{grid-template-columns:1fr;gap:1rem}.section-head>p,.section-head>.button{grid-column:auto}.section-no{font-size:6rem}.portrait-media,.efficiency-media{height:420px}.metrics{grid-template-columns:1fr}.metric+.metric{border-left:0;border-top:1px solid var(--line);padding-left:0}.priority-tab{grid-template-columns:32px 1fr 24px}.priority-tab em{display:none}.priority-media{min-height:520px}.immersive{min-height:900px}.immersive-inner{grid-template-columns:1fr;padding-bottom:3rem}.immersive-inner>.section-no{display:none}.water-stat{grid-column:auto}.meeting-date strong{font-size:6rem}.access-list{grid-template-columns:1fr}.access-row:nth-child(odd){border-right:0}.resource-grid{grid-template-columns:1fr}.resource-card{min-height:280px}.news-image{height:350px}.news-row{grid-template-columns:80px 1fr 22px}.closing{min-height:760px}.closing-bottom{flex-direction:column;align-items:flex-start;gap:2rem}.footer-links{grid-template-columns:1fr 1fr}.footer-bottom{display:grid;gap:.5rem}.menu-list strong{font-size:2.25rem}.menu-layout{height:calc(100vh - 90px)}.menu-list a{padding:1rem 0}.menu-current span:nth-child(2){display:none}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.reveal{opacity:1!important;transform:none!important}.media-caustics{display:none}.loader{display:none}}


/* =========================================================
   HERO + RESPONSIVE QA PASS — September 2026
   Fixes viewport overflow, headline rhythm, mobile composition,
   and removes the distracting rotating line treatment.
   ========================================================= */

/* The wave/line accents are intentionally static now. The liquid movement
   remains in the loader mark, caustics and interactive fills. */
.liquid-bloom i,.liquid-bloom b,
.menu-wave i,.menu-wave b,
.hero-waterline i,.hero-waterline b,
.immersive-waterline i,.immersive-waterline b,
.closing-waterline i,.closing-waterline b{display:none!important;animation:none!important}

.menu-wave{
  height:16vh;
  bottom:-10%;
  background:linear-gradient(180deg,rgba(67,154,231,.08),rgba(12,60,116,.42));
  border-top-left-radius:48% 100%;
  border-top-right-radius:52% 100%;
}
.hero-waterline,.immersive-waterline,.closing-waterline{
  height:42px;
  bottom:-18px;
  background:linear-gradient(180deg,rgba(118,199,255,.025),rgba(24,91,159,.14));
  border-radius:50% 50% 0 0/100% 100% 0 0;
  opacity:.72;
}
.liquid-bloom{
  background:radial-gradient(circle at 50% 48%,rgba(91,174,245,.96) 0%,rgba(26,112,197,.96) 34%,#0d4d96 66%,#082d62 100%);
}

/* Desktop hero: keep every element inside the stage and give the two headline
   lines enough breathing room to read as typography rather than a texture. */
.hero{height:100svh;min-height:760px;padding:12px;overflow:hidden}
.hero-stage{min-width:0;overflow:hidden}
.hero-copy{
  left:clamp(1.5rem,3.2vw,3.25rem);
  right:clamp(1.5rem,3.2vw,3.25rem);
  bottom:clamp(2rem,4.2vw,3.8rem);
  grid-template-columns:minmax(0,1fr) minmax(270px,330px);
  gap:clamp(1.75rem,3.2vw,3.5rem);
  align-items:end;
}
.hero-copy>div{min-width:0}
.hero-title-wrap,.hero-copy>div:first-child{max-width:100%}
.hero .eyebrow{margin-bottom:.35rem;max-width:100%}
.hero h1{
  font-size:clamp(4.75rem,6.25vw,7.5rem);
  line-height:.88;
  letter-spacing:-.062em;
  margin:1rem 0 0;
  max-width:none;
  text-wrap:balance;
}
.hero h1 span{display:block;white-space:nowrap}
.hero h1 span+span{margin-top:.12em}
.hero-summary{
  width:100%;
  max-width:330px;
  justify-self:end;
  padding:1.1rem 1.15rem;
}
.hero-summary p{font-size:clamp(.82rem,.9vw,.92rem);line-height:1.62}
.hero-card{
  top:clamp(132px,18vh,180px);
  right:clamp(1.5rem,3.2vw,3.25rem);
  width:clamp(190px,16vw,225px);
  min-width:0;
}
.hero-top{
  left:clamp(1.5rem,3.2vw,3.25rem);
  right:clamp(1.5rem,3.2vw,3.25rem);
}

/* Exact three-line treatment requested for the climate heading. */
.climate-title{
  font-size:clamp(3.8rem,7.1vw,7.35rem);
  line-height:.86;
  letter-spacing:-.065em;
  max-width:9.8ch;
  margin-top:1rem;
}
.climate-title .climate-line{display:block;white-space:nowrap}
.climate-title .climate-plain{color:inherit}
.climate-title .climate-accent{color:#8ccaff}
.climate-title .climate-line+.climate-line{margin-top:.06em}

/* Tablet: the summary drops below the headline without crowding or leaving the
   viewport. The floating stat remains clear of the text. */
@media (max-width:1050px) and (min-width:681px){
  .hero{min-height:820px}
  .hero-copy{
    grid-template-columns:1fr;
    bottom:2.4rem;
    gap:1.5rem;
    padding-right:min(28vw,250px);
  }
  .hero h1{
    font-size:clamp(4.4rem,8.4vw,6.3rem);
    line-height:.89;
  }
  .hero-summary{justify-self:start;max-width:390px}
  .hero-card{top:150px;right:1.7rem;width:205px}
}

/* Mobile hero: purposeful vertical stack, no absolute collision, and enough
   line height for the headline to breathe. */
@media(max-width:680px){
  .hero{
    height:100svh;
    min-height:780px;
    padding:8px;
  }
  .hero-stage{border-radius:15px}
  .hero-image{
    inset:-2%;
    width:104%;
    height:104%;
    object-position:58% 50%;
    filter:saturate(.8) contrast(1.07) brightness(.65);
  }
  .hero-scrim{
    background:
      linear-gradient(0deg,rgba(2,9,17,.92) 0%,rgba(2,9,17,.7) 44%,rgba(2,9,17,.2) 73%,rgba(2,9,17,.46) 100%),
      linear-gradient(90deg,rgba(2,9,17,.55),rgba(2,9,17,.16));
  }
  .hero-grid{opacity:.48}
  .hero-top{top:72px;left:18px;right:18px;font-size:.54rem}
  .hero-copy{
    left:18px;
    right:18px;
    bottom:22px;
    display:flex;
    flex-direction:column;
    gap:1.35rem;
    align-items:stretch;
  }
  .hero .eyebrow{
    max-width:31ch;
    line-height:1.45;
    margin-bottom:.35rem;
  }
  .hero .eyebrow::after{width:38px;flex:0 0 38px}
  .hero h1{
    font-size:clamp(3.15rem,13.25vw,4.1rem);
    line-height:.94;
    letter-spacing:-.058em;
    margin:.75rem 0 0;
    max-width:100%;
  }
  .hero h1 span{white-space:normal;max-width:100%}
  .hero h1 span+span{margin-top:.14em}
  .hero-summary{
    width:100%;
    max-width:none;
    padding:.95rem 1rem;
    border-radius:11px;
    background:rgba(2,11,20,.64);
    backdrop-filter:blur(12px);
  }
  .hero-summary p{font-size:.78rem;line-height:1.58;margin-bottom:1rem}
  .hero-summary .button{width:100%;min-height:44px}
  .hero-card{display:none!important}
  .hero-waterline{height:28px;bottom:-14px;opacity:.5}

  .climate-title{
    font-size:clamp(2.85rem,12.4vw,3.55rem)!important;
    line-height:.93;
    letter-spacing:-.06em;
    max-width:none;
  }
  .climate-title .climate-line{white-space:nowrap}
  .climate-title .climate-line+.climate-line{margin-top:.08em}
}

/* Extra-small phones: preserve the composition instead of allowing a fourth
   climate line or headline collision. */
@media(max-width:370px){
  .hero{min-height:760px}
  .hero-copy{left:16px;right:16px;bottom:18px;gap:1.15rem}
  .hero h1{font-size:clamp(2.95rem,12.8vw,3.35rem);line-height:.96}
  .hero-summary p{font-size:.74rem}
  .climate-title{font-size:clamp(2.55rem,12.1vw,3rem)!important}
}
/* Hero stat card must remain anchored to the hero; .liquid-card's generic
   position rule must not override it. */
.hero-card{position:absolute!important}
\n\n/* v3.2 hero simplification: image + restrained grain only. */\n.hero-stage{background:#17334d}\n.hero-image{\n  inset:-1.5%;\n  width:103%;\n  height:103%;\n  object-position:center 48%;\n  filter:saturate(.96) contrast(1.02) brightness(.96);\n}\n.hero-scrim{\n  background:\n    linear-gradient(90deg,rgba(2,9,17,.48) 0%,rgba(2,9,17,.16) 48%,rgba(2,9,17,.08) 76%,rgba(2,9,17,.14) 100%),\n    linear-gradient(0deg,rgba(2,9,17,.48) 0%,rgba(2,9,17,.08) 49%,rgba(2,9,17,.06) 100%);\n}\n.hero-stage::before{\n  content:"";\n  position:absolute;\n  inset:0;\n  z-index:2;\n  pointer-events:none;\n  opacity:.12;\n  mix-blend-mode:soft-light;\n  background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.86' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.65'/%3E%3C/svg%3E");\n  background-size:180px 180px;\n}\n.hero-copy{z-index:4}\n.hero-summary{\n  background:rgba(2,11,20,.34);\n  border-color:rgba(255,255,255,.18);\n  backdrop-filter:blur(10px);\n  box-shadow:0 16px 50px rgba(0,0,0,.12);\n}\n.hero-summary p{color:#f0f5f9;text-shadow:0 1px 14px rgba(0,0,0,.2)}\n.hero h1{text-shadow:0 2px 34px rgba(0,0,0,.22)}\n.hero .eyebrow{text-shadow:0 1px 12px rgba(0,0,0,.3)}\n/* Defensive removal in case cached markup or older build fragments remain. */\n.hero-card,.hero-top,.hero-grid,.hero-waterline,.hero-stage>.media-caustics{display:none!important}\n\n@media(max-width:680px){\n  .hero-image{\n    inset:-1%;\n    width:102%;\n    height:102%;\n    object-position:57% 50%;\n    filter:saturate(.96) contrast(1.02) brightness(.88);\n  }\n  .hero-scrim{\n    background:\n      linear-gradient(0deg,rgba(2,9,17,.68) 0%,rgba(2,9,17,.38) 38%,rgba(2,9,17,.08) 69%,rgba(2,9,17,.08) 100%),\n      linear-gradient(90deg,rgba(2,9,17,.24),rgba(2,9,17,.04));\n  }\n  .hero-stage::before{opacity:.1}\n  .hero-summary{background:rgba(2,11,20,.4);backdrop-filter:blur(9px)}\n}\n
/* Final hero art-direction refinement: bright photography, no floating card UI. */
.hero-image{filter:saturate(.98) contrast(1.015) brightness(1)}
.hero-scrim{
  background:
    linear-gradient(90deg,rgba(2,9,17,.38) 0%,rgba(2,9,17,.11) 46%,rgba(2,9,17,.035) 78%,rgba(2,9,17,.07) 100%),
    linear-gradient(0deg,rgba(2,9,17,.42) 0%,rgba(2,9,17,.055) 48%,rgba(2,9,17,.025) 100%);
}
.hero-stage::before{opacity:.075}
.hero-summary{
  background:transparent;
  border:0;
  border-radius:0;
  backdrop-filter:none;
  box-shadow:none;
  padding:0;
}
.hero-summary p{max-width:34ch;color:#f4f8fb;text-shadow:0 2px 22px rgba(0,0,0,.42)}
@media(max-width:680px){
  .hero-image{filter:saturate(.98) contrast(1.015) brightness(.94)}
  .hero-scrim{
    background:
      linear-gradient(0deg,rgba(2,9,17,.58) 0%,rgba(2,9,17,.27) 40%,rgba(2,9,17,.035) 72%,rgba(2,9,17,.035) 100%),
      linear-gradient(90deg,rgba(2,9,17,.16),rgba(2,9,17,.015));
  }
  .hero-stage::before{opacity:.07}
  .hero-summary{background:transparent;backdrop-filter:none;padding:0}
}
