.hero-visual{position:relative;isolation:isolate;background:#163e46;color:#fff}
.hero-photo{position:absolute;width:100%;height:100%;inset:0;object-fit:cover;object-position:center;z-index:-3}
.hero-visual:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(6,32,39,.93) 0%,rgba(6,32,39,.82) 35%,rgba(6,32,39,.3) 75%,rgba(6,32,39,.4));z-index:-2}
.hero-visual .hero-grid{padding-top:94px;padding-bottom:84px}
.hero-visual .eyebrow,.hero-visual h1 span{color:#c2e675}
.hero-visual .hero-desc{color:#d4e1e2}
.hero-visual .hero-sub{color:#fff}
.hero-visual .button{background:#c2e675;color:#123f43}
.hero-visual .hero-panel{background:rgba(4,64,73,.85);backdrop-filter:blur(12px);border:1px solid #ffffff29}
.hero-visual .hero-bottom{color:#d7e4e4;border-color:#ffffff36}
.hero-image-note{position:absolute;right:24px;bottom:88px;font-size:10px;color:#e3eded;background:#193c4666;padding:3px 9px}
.company-intro{padding-top:76px;padding-bottom:76px}
.company-grid{display:grid;grid-template-columns:.92fr 1.25fr;gap:56px;align-items:stretch}
.company-photo{position:relative;margin:0;min-height:470px;overflow:hidden;background:#e5eeee}
.company-photo>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.company-photo:after{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(transparent,rgba(6,41,49,.88));pointer-events:none}
.company-photo>figcaption{position:absolute;top:17px;left:17px;background:#143c4977;color:white;font-size:10px;padding:4px 10px;z-index:1}
.photo-caption{position:absolute;bottom:30px;left:28px;right:20px;z-index:1;color:white}
.photo-caption span{display:block;font-size:11px;letter-spacing:2px;color:#c2e675}
.photo-caption strong{display:block;font-weight:500;font-size:22px;margin-top:10px}
.company-copy h3{font-size:24px;line-height:1.5;margin:0 0 21px}
.company-copy p{font-size:16px;line-height:1.95;color:#62747a;margin-bottom:17px}
.company-facts{display:flex;align-items:center;gap:36px;padding:13px 0 24px}
.company-facts>div strong{display:block;font-size:34px;line-height:1.2;color:#075d6a;font-weight:500}
.company-facts>div span{font-size:12px;color:#718284}
.company-facts>a{font-size:13px;margin-left:auto;border-bottom:1px solid #b7cacb;padding-bottom:6px}
.company-copy dl{font-size:12px}
.company-copy dt{min-width:130px}
#applications{border-top:1px solid #dce4e4}
.construction-visual{margin:0 0 32px;position:relative;height:350px;overflow:hidden;background:#163e46}
.construction-visual>img{width:100%;height:100%;object-fit:cover;object-position:center 62%}
.construction-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,35,43,.75),transparent 75%)}
.construction-visual figcaption{position:absolute;left:36px;bottom:34px;z-index:1;color:#fff}
.construction-visual figcaption>span{display:block;font-size:11px;letter-spacing:2px;color:#d1ee9b}
.construction-visual figcaption>strong{display:block;font-size:27px;font-weight:500;line-height:1.5;margin:12px 0}
.construction-visual figcaption>small{font-size:10px;color:#d7e5e5}
@media(max-width:1000px){.company-grid{gap:32px;grid-template-columns:.8fr 1.2fr}
.company-facts{gap:20px}
.company-copy h3{font-size:21px}
.construction-visual{height:310px}
}
@media(max-width:640px){.hero-visual .hero-grid{padding-top:43px;padding-bottom:38px}
.hero-visual:before{background:linear-gradient(180deg,rgba(5,31,40,.88),rgba(5,31,40,.66))}
.hero-photo{object-position:65% center}
.hero-visual .hero-panel{background:rgba(4,64,73,.9)}
.hero-image-note{bottom:115px;right:18px;font-size:9px}
.company-intro{padding-top:48px;padding-bottom:45px}
.company-grid{grid-template-columns:1fr;gap:28px}
.company-photo{min-height:300px}
.company-photo>img{object-position:center 42%}
.company-copy h3{font-size:21px}
.company-copy p{font-size:16px;line-height:1.95}
.company-facts{gap:22px;padding:8px 0 22px}
.company-facts>div strong{font-size:30px}
.company-facts>a{font-size:12px}
.company-copy dl>div{display:block}
.company-copy dd{margin-top:3px}
.construction-visual{height:265px;margin-bottom:24px}
.construction-visual>img{object-position:63% center}
.construction-visual figcaption{left:20px;bottom:22px;right:15px}
.construction-visual figcaption>strong{font-size:21px}
.photo-caption{left:22px;bottom:24px}
.photo-caption strong{font-size:20px}
}

.facility-strip{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:42px}
.facility-strip figure,.case-media-grid figure{position:relative;margin:0;overflow:hidden;background:#163e46}
.facility-strip img,.case-media-grid img{display:block;width:100%;height:280px;object-fit:cover;transition:transform .45s ease}
.facility-strip figure:hover img,.case-media-grid figure:hover img{transform:scale(1.025)}
.facility-strip figcaption{position:absolute;left:20px;bottom:18px;color:#fff;background:rgba(7,52,61,.82);padding:8px 13px;font-size:13px}
.case-media-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:30px 0 38px}
.case-media-grid img{height:250px}
.case-media-grid figcaption{position:absolute;inset:auto 0 0;padding:42px 20px 18px;color:#fff;background:linear-gradient(transparent,rgba(4,38,46,.92))}
.case-media-grid figcaption small,.case-media-grid figcaption strong{display:block}
.case-media-grid figcaption small{color:#c2e675;letter-spacing:1px}
.case-media-grid figcaption strong{margin-top:7px;font-size:18px;font-weight:500}
@media(max-width:640px){
.facility-strip,.case-media-grid{grid-template-columns:1fr}
.facility-strip img,.case-media-grid img{height:230px}
}


