/* Homepage only: shared inner-page styles intentionally remain untouched. */
.landing-site { --navy:#073657; --cyan:#00a8c8; --ink:#38566d; color:var(--ink); font-family:'Aileron-Regular',Arial,sans-serif; font-size:15px; line-height:1.65; overflow:clip; }
.landing-site *, .landing-site *::before, .landing-site *::after { box-sizing:border-box; }
.landing-site .container { width:100%; max-width:1240px; padding-left:32px; padding-right:32px; }
.landing-site h1,.landing-site h2,.landing-site h3,.landing-site strong { font-family:'Aileron-Bold',Arial,sans-serif; }
.landing-site h2 { margin:0 0 22px; color:var(--navy); font-size:36px; line-height:1.12; letter-spacing:-.8px; }
.landing-site p { margin:0 0 18px; }
.landing-site a { text-decoration:none; }
.landing-site a:focus-visible,.landing-site button:focus-visible,.landing-site summary:focus-visible { outline:3px solid #00a8c8; outline-offset:5px; }
.landing-site .site-header { position:relative; background:white; z-index:20; }
.landing-site .site-topbar { background:var(--navy); min-height:33px; }
.landing-site .site-topbar .container { min-height:33px; }
.landing-site .site-topbar .topbar-links a { font-family:'Aileron-Regular',Arial,sans-serif; font-size:11px; line-height:33px; }
.landing-site .site-topbar .topbar-links ul { margin:0; padding:0; }
.landing-site .site-topbar .topbar-links ul li { min-height:33px; }
.landing-site .site-navbar { position:relative; z-index:2; min-height:90px; border:0; }
.landing-site .site-navbar__brand { margin-right:28px; }
.landing-site .site-navbar__brand img { width:171px; }
.landing-site .site-navbar .nav-item .nav-link { font-size:11px; padding:0 10px; line-height:90px; letter-spacing:0; color:var(--navy); }
.landing-site .site-navbar .nav-item.active .nav-link:before { bottom:23px; height:2px; left:10px; right:10px; width:auto; }
.landing-site .site-navbar .dropdown-menu { border-radius:0 0 10px 10px; background:var(--navy); }
.landing-site .landing-contact { display:inline-flex; align-items:center; gap:16px; flex-shrink:0; margin-left:14px; padding:10px 17px; border-radius:11px; background:#008eae; color:#fff; text-decoration:none; font-size:12px; transition:background-color .2s ease,color .2s ease,box-shadow .2s ease,transform .2s ease; }
.landing-site .landing-contact:hover,
.landing-site .landing-contact:focus-visible { background:#006f8a; color:#fff !important; text-decoration:none; box-shadow:0 8px 18px rgba(7,54,87,.22); transform:translateY(-1px); }
.landing-site .landing-contact:active { transform:translateY(0); }
.landing-emergency { background:#eff8fb; border-top:1px solid #e4eff4; color:var(--navy); font-size:12px; }
.landing-emergency__inner { display:flex; align-items:center; justify-content:space-between; min-height:36px; gap:12px; }
.landing-emergency__inner>span { display:flex; align-items:center; gap:10px; }
.landing-emergency__inner i { color:#008ba7; }
.landing-emergency__details { position:relative; }
.landing-emergency summary { cursor:pointer; display:flex; align-items:center; gap:20px; list-style:none; padding:6px 0; font-family:'Aileron-Bold',Arial,sans-serif; }
.landing-emergency summary::-webkit-details-marker { display:none; }
.landing-emergency__panel { position:absolute; right:0; top:100%; width:360px; max-width:calc(100vw - 32px); padding:24px; background:white; border:1px solid #deedf2; border-radius:0 0 12px 12px; box-shadow:0 14px 36px #07365725; }
.landing-emergency__panel strong { font-size:16px; }
.landing-emergency__panel p { font-size:12px; margin:8px 0 12px; }
.landing-emergency__panel a { display:block; color:var(--navy); margin-top:8px; overflow-wrap:anywhere; }
.landing-eyebrow { display:flex; align-items:center; gap:9px; margin-bottom:15px; font-family:'Aileron-Bold',Arial,sans-serif; color:var(--navy); font-size:10px; line-height:1.5; letter-spacing:1.4px; text-transform:uppercase; }
.landing-eyebrow::before { content:''; display:block; width:25px; height:2px; flex-shrink:0; background:var(--cyan); }
.landing-button { display:inline-flex; align-items:center; justify-content:space-between; gap:24px; padding:10px 21px; border:1px solid #009dbd; border-radius:25px; font-family:'Aileron-Bold',Arial,sans-serif; font-size:12px; color:#007e9c; transition:background .2s,color .2s; }
.landing-button:hover { color:white; background:#007e9c; }
.landing-button span { font-family:Arial,sans-serif; font-size:20px; line-height:1; }
.landing-hero { background:var(--navy); position:relative; }
.landing-hero::after { position:absolute; right:-45px; bottom:-1px; content:''; width:122px; height:105px; border-radius:95% 0 0 0; background:var(--cyan); pointer-events:none; }
.landing-site .landing-carousel .carousel-item { display:none; position:relative; height:485px; margin:0; float:none; width:100%; transition:none; }
.landing-site .landing-carousel .carousel-item.active { display:block; }
.landing-hero__image { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center; }
.landing-hero__shade { position:absolute; inset:0; background:linear-gradient(90deg,rgba(3,39,68,.93) 0%,rgba(3,39,68,.7) 33%,rgba(3,39,68,.06) 73%); }
.landing-site .landing-hero__content { position:relative; height:100%; display:flex; align-items:center; padding-bottom:35px; }
.landing-hero__copy { max-width:580px; width:54%; }
.landing-hero .landing-eyebrow { color:#66d9ed; }
.landing-site .landing-hero h1 { color:white; font-size:46px; line-height:1.08; letter-spacing:-1.2px; margin:0 0 20px; text-transform:none; overflow-wrap:anywhere; }
.landing-hero__copy p { color:#e3ecf3; font-size:15px; line-height:1.6; max-width:430px; }
.landing-site .landing-button--light { color:#6ae2f5; border-color:#4bd4ee; margin-top:5px; }
.landing-site .landing-button--light:hover { background:#007e9c; color:white; }
.landing-site .landing-hero__aside { pointer-events:none; position:absolute; left:50%; transform:translateX(-50%); bottom:67px; display:flex; justify-content:flex-end; }
.landing-hero__callout { display:flex; align-items:flex-start; gap:18px; width:285px; padding:27px 24px; background:rgba(255,255,255,.97); border-radius:15px; box-shadow:0 8px 35px #07365720; color:var(--navy); }
.landing-hero__callout img { width:36px; height:43px; object-fit:contain; flex-shrink:0; }
.landing-hero__callout strong { display:block; font-size:16px; line-height:1.3; }
.landing-hero__callout p { font-size:11px; line-height:1.6; margin:10px 0 0; }
.landing-site .landing-carousel__controls { position:absolute; left:50%; bottom:17px; transform:translateX(-50%); display:flex; gap:12px; justify-content:center; align-items:center; z-index:2; }
.landing-site .landing-carousel__controls[hidden] { display:none!important; }
.landing-site .landing-carousel__controls>button, .landing-site .landing-back-top { display:inline-flex; align-items:center; justify-content:center; flex:0 0 44px; width:44px; height:44px; padding:0; border:1px solid #ffffff90; border-radius:50%; color:#fff; background:#073657d9; cursor:pointer; line-height:0; transition:background .2s,border-color .2s,color .2s; }
.landing-site .landing-control-icon { display:block; width:20px; height:20px; flex:none; fill:none; stroke:currentColor; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; pointer-events:none; }
.landing-site .landing-carousel__controls>button:hover, .landing-site .landing-back-top:hover { color:#073657; background:#a9f0fa; border-color:#a9f0fa; }
.landing-site .landing-carousel__controls>button:focus-visible, .landing-site .landing-back-top:focus-visible { outline:3px solid #80e6f7; outline-offset:4px; }
.landing-site [data-carousel-pause][aria-pressed="false"] .landing-control-icon--play, .landing-site [data-carousel-pause][aria-pressed="true"] .landing-control-icon--pause { display:none; }
.landing-carousel__dots { display:flex; gap:0; align-items:center; min-width:0; overflow-x:auto; }
.landing-carousel__dots .landing-dot { position:relative; flex:0 0 32px; width:32px; height:44px; background:none; border:0; border-radius:12px; cursor:pointer; padding:0; }
.landing-dot::before { position:absolute; content:''; width:10px; height:10px; border:1px solid white; border-radius:50%; top:50%; left:50%; transform:translate(-50%,-50%); }
.landing-dot:hover::before { background:#b9f3fb; }
.landing-site .landing-dot:focus-visible { outline-offset:-3px; }
.landing-dot.active::before { background:#36d4ec; border-color:#36d4ec; }
.landing-overview { padding:76px 0; background:white; }
.landing-overview__grid { display:grid; grid-template-columns:34% 1fr; align-items:center; gap:55px; }
.landing-overview__copy p { font-size:14px; line-height:1.75; }
.landing-overview__copy .landing-button { margin-top:7px; }
.landing-overview__visual { position:relative; padding-right:130px; }
.landing-overview__photo { width:100%; height:345px; object-fit:cover; object-position:58% center; border-radius:17px; }
.landing-overview__visual::after { content:''; position:absolute; left:0; bottom:0; width:66px; height:66px; background:var(--cyan); clip-path:polygon(0 0,100% 100%,0 100%); border-radius:0 0 0 16px; }
.landing-overview__card { position:absolute; right:0; top:50%; transform:translateY(-50%); width:278px; border:1px solid #deebf2; border-radius:8px; background:#fffffffa; padding:8px 26px; box-shadow:0 8px 30px #0f4a6b06; }
.landing-overview__card>div { display:flex; gap:17px; padding:20px 0; align-items:flex-start; border-bottom:1px solid #eaf2f7; }
.landing-overview__card>div:last-child { border:0; }
.landing-overview__card img { width:36px; height:39px; object-fit:contain; flex-shrink:0; }
.landing-overview__card p { margin:0; font-size:11px; line-height:1.5; }
.landing-overview__card strong { display:block; color:var(--navy); font-size:13px; margin-bottom:4px; }
.landing-facts { background:linear-gradient(125deg,#f2faff,#ecf6fa); padding:61px 0 38px; }
.landing-facts__layout { display:grid; grid-template-columns:29% 1fr; gap:28px 48px; }
.landing-facts__intro p { font-size:14px; max-width:280px; }
.landing-facts__intro .landing-button { margin-top:10px; }
.landing-facts__grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
.landing-fact { border:1px solid #e3eff5; border-radius:8px; padding:23px 24px 21px; background:#fff; }
.landing-fact img { display:block; width:45px; height:47px; object-fit:contain; object-position:left center; margin-bottom:15px; }
.landing-site .landing-fact h3 { margin:0 0 7px; color:var(--navy); font-size:10px; line-height:1.5; text-transform:uppercase; letter-spacing:.7px; }
.landing-fact p { font-size:13px; line-height:1.6; margin:0; }
.landing-project-details { grid-column:1/-1; border-top:1px solid #d8e9f1; font-size:13px; scroll-margin-top:20px; }
.landing-project-details summary { display:flex; justify-content:space-between; list-style:none; cursor:pointer; padding-top:18px; color:var(--navy); font-family:'Aileron-Bold',Arial,sans-serif; }
.landing-project-details dl { display:grid; grid-template-columns:220px 1fr; gap:12px 24px; padding-top:24px; }
.landing-project-details dd { margin:0; }
.landing-impact { display:grid; grid-template-columns:1fr 1fr; min-height:325px; background:white; }
.landing-impact__visual { display:flex; justify-content:flex-end; align-items:center; padding:50px 65px 50px 32px; background:linear-gradient(90deg,#043355f0,#04335575),url('../img/slider/banner-13.jpg') center 57%/cover; }
.landing-impact__visual>div { width:100%; max-width:490px; }
.landing-impact .landing-eyebrow { color:#65d6e9; }
.landing-site .landing-impact h2 { color:white; font-size:33px; }
.landing-impact h2 em { font-style:normal; color:#36c9e3; }
.landing-impact__visual p { color:#ecf4f9; font-size:14px; max-width:310px; }
.landing-impact__line { display:block; width:55px; height:3px; background:var(--cyan); margin-top:20px; }
.landing-impact__grid { display:grid; grid-template-columns:1fr 1fr; align-content:center; padding:37px 55px; max-width:620px; width:100%; }
.landing-impact__grid>div { padding:16px 25px; display:flex; flex-direction:column; align-items:flex-start; }
.landing-impact__grid>div:nth-child(odd) { border-right:1px solid #e5eff4; }
.landing-impact__grid>div:nth-child(-n+2) { border-bottom:1px solid #e5eff4; }
.landing-impact__grid img { width:40px; height:41px; object-fit:contain; margin-bottom:5px; }
.landing-impact__grid i { color:#009ab9; font-size:34px; line-height:41px; margin-bottom:5px; }
.landing-impact__grid strong { font-size:25px; line-height:1.3; color:#008cad; }
.landing-impact__grid span { font-size:12px; margin-top:2px; }
.landing-sustainability { background:#f1f8fc; padding:33px 0; }
.landing-sustainability__grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:15px; }
.landing-sustainability a { display:flex; align-items:center; gap:22px; min-height:99px; padding:22px 24px; border-radius:12px; color:white; background:#073657; transition:transform .2s,box-shadow .2s; }
.landing-sustainability a:nth-child(2) { background:#008faa; }
.landing-sustainability a:nth-child(3) { background:#177f93; }
.landing-sustainability a:nth-child(4) { background:#377f70; }
.landing-sustainability a:hover { transform:translateY(-4px); box-shadow:0 9px 20px #07365720; }
.landing-sustainability i { font-size:30px; font-weight:normal; color:#b2ecf4; }
.landing-sustainability span { font-family:'Aileron-Bold',Arial,sans-serif; font-size:14px; line-height:1.3; }
.landing-sustainability b { margin-left:auto; font-size:22px; font-weight:normal; color:#b2ecf4; }
.landing-news { padding:50px 0; }
.landing-news__grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:25px; }
.landing-news article { border:1px solid #e3eff5; border-radius:12px; overflow:hidden; }
.landing-news img { width:100%; height:200px; object-fit:cover; }
.landing-site .landing-news h3 { color:var(--navy); padding:20px 22px 0; font-size:20px; }
.landing-news article p { padding:0 22px; font-size:14px; }
.landing-site .partners { padding:20px 0; background:white; }
.landing-site .partners .content { padding:0; }
.landing-site .partners .owl-item .item { height:58px; display:flex; align-items:center; justify-content:center; }
.landing-site .partners .owl-item img { width:auto; max-width:150px; max-height:52px; object-fit:contain; }
.landing-site .partners .owl-nav { display:none; }
.landing-site .footer { background:#063354; padding:37px 0 20px; }
.landing-footer__brand { display:flex; align-items:center; gap:28px; margin-bottom:25px; }
.landing-footer__brand img { width:161px; padding:10px 12px; background:white; border-radius:8px; }
.landing-footer__brand>span { color:#afc8d8; border-left:1px solid #ffffff30; padding-left:28px; font-size:12px; line-height:1.5; }
.landing-site .footer p { color:#c5d9e6!important; font-size:11px; line-height:1.8; }
.landing-site .footer-nav ul { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:8px 17px; padding:0; list-style:none; }
.landing-site .footer-nav ul li { margin:0; }
.landing-site .footer-nav .nav-link { font-family:'Aileron-Regular',Arial,sans-serif; font-size:11px; color:#b7d4e5; padding:0; text-transform:none; }
.landing-footer__bottom { display:flex; justify-content:space-between; align-items:center; border-top:1px solid #ffffff18; padding-top:18px; margin-top:14px; color:#91b6ce; font-size:10px; }
.landing-site .landing-back-top { color:#a9f0fa; border-color:#68bfd4; background:#104565; }
@media (min-width:768px) and (max-width:1100px) {
 .landing-site .site-navbar { min-height:82px; padding:16px 0; }
 .landing-site .site-navbar .container { flex-wrap:wrap; position:static; }
 .landing-site .site-navbar__brand { margin:0; }
 .landing-site .site-navbar .navbar-toggler { display:block; }
 .landing-site .site-navbar .navbar-collapse { display:none!important; position:absolute; left:0; right:0; top:100%; width:100%; padding:12px 32px 20px; background:white; max-height:70vh; overflow-y:auto; box-shadow:0 12px 28px #07365720; }
 .landing-site .site-navbar .navbar-collapse.show { display:block!important; }
 .landing-site .site-navbar__nav { flex-direction:column; align-items:stretch; margin-left:0!important; }
 .landing-site .site-navbar .nav-item .nav-link { line-height:44px; font-size:12px; padding:0 8px; }
 .landing-site .site-navbar .nav-item.active .nav-link:before { display:none; }
 .landing-site .site-navbar .dropdown-menu { position:static; float:none; width:100%; }
 .landing-site .site-navbar .dropdown-item { white-space:normal; }
 .landing-site .landing-contact { margin:10px 0 0; }
 .landing-site .landing-hero h1 { font-size:40px; }
 .landing-overview__grid { gap:32px; grid-template-columns:35% 1fr; }
 .landing-overview__visual { padding-right:90px; }
 .landing-overview__card { width:240px; padding:4px 18px; }
 .landing-facts__layout { gap:28px; grid-template-columns:28% 1fr; }
 .landing-fact { padding:20px 15px; }
 .landing-impact__grid { padding:25px 20px; }
 .landing-impact__grid>div { padding:15px; }
 .landing-impact__grid strong { font-size:22px; }
 .landing-sustainability a { padding:20px 16px; gap:14px; }
 .landing-sustainability span { font-size:12px; }
 .landing-sustainability__grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:767px) {
 .landing-site .container { padding-left:22px; padding-right:22px; }
 .landing-site h2 { font-size:31px; }
 .landing-site .site-topbar .container { padding:0 12px; }
 .landing-site .site-topbar .topbar-links { width:100%; overflow-x:auto; }
 .landing-site .site-topbar .topbar-links ul { width:max-content; flex-wrap:nowrap; }
 .landing-site .site-topbar .topbar-links a { font-size:10px; }
 .landing-site .site-navbar { min-height:77px; padding:15px 0; }
 .landing-site .site-navbar__brand img { width:145px; }
 .landing-site .site-navbar .navbar-collapse { left:0; right:0; top:100%; padding:12px 22px 20px; max-height:70vh; overflow-y:auto; border-top:1px solid #e3edf3; }
 .landing-site .site-navbar__nav { align-items:stretch; }
 .landing-site .site-navbar .nav-item .nav-link { line-height:44px; font-size:12px; padding:0 8px; }
 .landing-site .site-navbar .nav-item.active .nav-link:before { display:none; }
 .landing-site .site-navbar .dropdown-menu { position:static; float:none; min-width:0; max-width:100%; }
 .landing-site .site-navbar .dropdown-item { white-space:normal; }
 .landing-site .landing-contact { margin:10px 0 0; }
 .landing-emergency__inner { flex-wrap:wrap; gap:0; padding-top:5px; padding-bottom:5px; }
 .landing-emergency__inner>span { font-size:10px; gap:6px; }
 .landing-emergency summary { font-size:10px; gap:8px; }
 .landing-site .landing-carousel .carousel-item { height:565px; }
 .landing-hero__shade { background:linear-gradient(90deg,#042e50e8,#042e5080),linear-gradient(0deg,#042e5050,transparent); }
 .landing-site .landing-hero__content { align-items:flex-start; padding-top:47px; padding-bottom:150px; }
 .landing-hero__copy { width:100%; max-width:520px; }
 .landing-site .landing-hero h1 { font-size:36px; line-height:1.08; letter-spacing:-.6px; margin-bottom:18px; }
 .landing-hero__copy p { font-size:13px; line-height:1.55; }
 .landing-hero .landing-eyebrow { font-size:9px; margin-bottom:17px; }
 .landing-site .landing-hero__aside { bottom:64px; justify-content:flex-start; }
 .landing-site .landing-carousel__controls { gap:6px; bottom:12px; }
 .landing-carousel__dots .landing-dot { flex-basis:24px; width:24px; }
 .landing-hero__callout { padding:15px 18px; width:auto; max-width:340px; gap:14px; border-radius:10px; }
 .landing-hero__callout img { width:27px; height:34px; }
 .landing-hero__callout strong { font-size:13px; }
 .landing-hero__callout strong br { display:none; }
 .landing-hero__callout p { font-size:10px; margin-top:5px; max-width:260px; }
 .landing-hero::after { width:90px; height:75px; }
 .landing-overview { padding:47px 0; }
 .landing-overview__grid { grid-template-columns:1fr; gap:31px; }
 .landing-overview__visual { padding-right:0; padding-bottom:0; }
 .landing-overview__photo { height:285px; }
 .landing-overview__card { position:relative; top:auto; right:auto; transform:none; width:calc(100% - 28px); margin:-40px 14px 0; padding:0 22px; }
 .landing-overview__card>div { padding:16px 0; }
 .landing-overview__visual::after { display:none; }
 .landing-facts { padding:45px 0 27px; }
 .landing-facts__layout { grid-template-columns:1fr; gap:28px; }
 .landing-facts__intro p { max-width:none; }
 .landing-facts__grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
 .landing-fact { padding:20px 16px; }
 .landing-fact img { width:37px; height:41px; margin-bottom:13px; }
 .landing-site .landing-fact h3 { font-size:9px; letter-spacing:.4px; }
 .landing-fact p { font-size:12px; }
 .landing-project-details dl { grid-template-columns:1fr; gap:4px; }
 .landing-project-details dd { margin-bottom:10px; }
 .landing-impact { grid-template-columns:1fr; }
 .landing-impact__visual { justify-content:flex-start; padding:43px 22px; min-height:300px; }
 .landing-impact__grid { padding:22px; max-width:none; }
 .landing-impact__grid>div { padding:18px 14px; }
 .landing-impact__grid strong { font-size:22px; }
 .landing-impact__grid span { font-size:11px; }
 .landing-sustainability { padding:26px 0; }
 .landing-sustainability__grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
 .landing-sustainability a { gap:12px; padding:17px 13px; min-height:102px; }
 .landing-sustainability i { font-size:24px; }
 .landing-sustainability span { font-size:12px; }
 .landing-sustainability b { display:none; }
 .landing-news__grid { grid-template-columns:1fr; }
 .landing-site .footer { padding-top:30px; }
 .landing-site .footer-nav ul { justify-content:flex-start; margin-top:20px; }
 .landing-footer__brand { gap:20px; }
 .landing-footer__brand img { width:135px; }
 .landing-footer__brand>span { font-size:10px; padding-left:20px; }
}
@media (max-width:360px) {
 .landing-site .landing-hero h1 { font-size:31px; }
 .landing-emergency__inner { justify-content:center; }
 .landing-emergency__details { position:static; }
 .landing-emergency__panel { left:16px; right:16px; top:auto; }
 .landing-sustainability a { flex-direction:column; align-items:flex-start; }
}
@media (prefers-reduced-motion:reduce) {
 .landing-site *, .landing-site *::before, .landing-site *::after { scroll-behavior:auto!important; transition:none!important; animation:none!important; }
}
