/* Port-industry page: real operations, documented examples, clearly labelled plans. */
.industry-refined { --pi-ink:#10344f; --pi-muted:#566d7e; --pi-line:#dfe8ee; --pi-accent:#b75e36; background:#fff; }
.industry-refined main { background:#fff; }
.pi-hero { position:relative; isolation:isolate; min-height:580px; display:flex; align-items:center; padding:142px 0 92px; overflow:hidden; color:#fff; background:var(--pi-ink); }
.pi-hero-media,.pi-hero-media picture,.pi-hero-media img { position:absolute; inset:0; width:100%; height:100%; }
.pi-hero-media { z-index:-2; }
.pi-hero-media img { object-fit:cover; object-position:50% 53%; }
.pi-hero::before { content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(90deg,rgba(4,25,39,.88),rgba(4,25,39,.66) 44%,rgba(4,25,39,.12)),linear-gradient(0deg,rgba(4,25,39,.38),transparent 60%); }
.pi-hero .eyebrow { color:#e6d3bd; margin:0 0 28px; font-size:11px; letter-spacing:.15em; }
.pi-hero h1 { margin:0 0 22px; color:#fff; font-size:clamp(48px,5.4vw,78px); line-height:1.08; letter-spacing:-.04em; font-weight:650; }
.pi-hero-subtitle { font-family:var(--font-display); color:#fff; font-size:clamp(25px,2.6vw,38px); line-height:1.45; margin:0 0 18px; max-width:24em; text-wrap:balance; }
.pi-hero-description { font-size:15px; line-height:1.9; color:#e2eaf0; max-width:37em; margin:0 0 30px; }
.pi-hero .hero-actions { gap:14px; flex-wrap:wrap; }
.pi-hero-caption { position:absolute; bottom:22px; left:0; right:0; margin:0; color:#e4edf3; font-size:11px; letter-spacing:.04em; }
.pi-nav { position:sticky; z-index:12; top:84px; background:rgba(255,255,255,.98); border-bottom:1px solid var(--pi-line); }
.pi-nav-inner { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); }
.pi-nav a { display:flex; align-items:center; justify-content:center; min-height:62px; padding:12px 16px; color:var(--pi-muted); border-bottom:2px solid transparent; font-size:14px; font-weight:600; text-align:center; line-height:1.4; }
.pi-nav a:hover { color:var(--pi-ink); background:#f4f7fa; }
.pi-nav a.is-active { color:var(--pi-ink); border-bottom-color:var(--pi-accent); }
.pi-section { padding:88px 0; scroll-margin-top:166px; }
.pi-anchor { display:block; scroll-margin-top:166px; }
.pi-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:64px; margin-bottom:36px; }
.pi-kicker { color:var(--pi-accent); text-transform:uppercase; font-size:11px; font-weight:650; letter-spacing:.12em; margin:0 0 18px; }
.pi-heading h2,.pi-plan-heading h2,.pi-contact h2 { font-family:var(--font-display); font-size:clamp(30px,3vw,43px); line-height:1.35; font-weight:500; letter-spacing:-.025em; margin:0; color:var(--pi-ink); }
.pi-heading>p { flex:0 1 380px; color:var(--pi-muted); font-size:14px; line-height:1.9; margin:0 0 4px; }
.pi-foundations { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:28px; }
.pi-foundation { min-width:0; }
.pi-foundation figure { position:relative; margin:0 0 24px; overflow:hidden; border-radius:7px; background:#edf4f8; aspect-ratio:1.43; }
.pi-foundation picture,.pi-foundation img { display:block; width:100%; height:100%; }
.pi-foundation img { object-fit:cover; }
.pi-foundation figcaption { position:absolute; right:12px; bottom:12px; background:rgba(5,28,43,.84); color:#fff; font-size:11px; padding:5px 9px; border-radius:3px; }
.pi-foundation h3 { font-size:24px; font-weight:600; margin:0 0 10px; color:var(--pi-ink); }
.pi-foundation p { font-size:14px; line-height:1.9; color:var(--pi-muted); margin:0 0 15px; }
.pi-status { display:inline-block; color:#21624d; border-bottom:1px solid #b8d3c8; font-size:12px; padding-bottom:5px; }
.pi-status-planned { color:#8b4b2d; border-color:#d5b6a5; }
.pi-note { font-size:12px; color:var(--pi-muted); line-height:1.85; margin:28px 0 0; }
.pi-cases { background:#f4f7fa; }
.pi-cases .case-grid { gap:36px; }
.pi-cases .port-case-media { aspect-ratio:1.66; }
.pi-cases .port-case-content h3 { font-size:24px; }
.pi-cases .port-case-content>p { max-width:none; }
.pi-industries { margin-top:36px; padding-top:25px; border-top:1px solid #d6e1e9; display:flex; align-items:center; flex-wrap:wrap; gap:10px 28px; color:var(--pi-muted); font-size:13px; }
.pi-industries strong { font-weight:600; color:var(--pi-ink); }
.pi-plan { background:var(--pi-ink); color:#fff; }
.pi-plan-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:55px; margin-bottom:38px; }
.pi-plan-heading h2 { color:#fff; }
.pi-plan .pi-kicker { color:#f1bc90; }
.pi-plan-heading>p { max-width:370px; color:#d2e0ea; font-size:14px; margin:0; line-height:1.9; }
.pi-plan-grid { display:grid; grid-template-columns:1.07fr 1fr; gap:48px; align-items:stretch; }
.pi-area { min-width:0; position:relative; min-height:390px; overflow:hidden; border-radius:7px; background:#20485f; padding:32px; display:flex; flex-direction:column; justify-content:flex-end; isolation:isolate; }
.pi-area picture,.pi-area img { position:absolute; inset:0; width:100%; height:100%; z-index:-2; object-fit:cover; }
.pi-area::after { content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(0deg,rgba(4,25,39,.94),rgba(4,25,39,.22) 90%); }
.pi-area .pi-photo-label { position:absolute; left:22px; top:20px; font-size:11px; background:rgba(4,25,39,.72); padding:4px 8px; border-radius:3px; }
.pi-area p { margin:0 0 15px; font-size:15px; color:#fff; }
.pi-area-number { display:flex; align-items:baseline; flex-wrap:wrap; gap:8px; color:#fff; line-height:1.15; }
.pi-area-number span { font-size:21px; }
.pi-area-number strong { font-size:clamp(48px,4.8vw,70px); font-weight:550; letter-spacing:-.04em; font-variant-numeric:tabular-nums; }
.pi-area-number em { font-size:20px; font-style:normal; }
.pi-area small { margin-top:18px; color:#dae4ed; max-width:30em; font-size:12px; line-height:1.9; }
.pi-park { padding:10px 0 0; align-self:center; }
.pi-park h3 { font-family:var(--font-display); font-size:29px; font-weight:500; color:#fff; line-height:1.4; margin:0 0 14px; }
.pi-park>p { font-size:14px; color:#d2e0ea; line-height:1.9; margin:0; }
.pi-park-metrics { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:25px; padding:24px 0; margin:24px 0; border-block:1px solid #4b687b; }
.pi-park-metrics div { display:flex; flex-wrap:wrap; align-items:baseline; gap:5px; }
.pi-park-metrics dt { order:2; width:100%; font-size:12px; color:#d2e0ea; margin-top:8px; }
.pi-park-metrics dd { margin:0; font-size:34px; font-weight:550; color:#fff; letter-spacing:-.03em; line-height:1.2; }
.pi-park-metrics dd small { font-size:15px; margin-left:4px; font-weight:400; letter-spacing:0; }
.pi-plan-note { border-top:1px solid #4b687b; margin:30px 0 0; padding-top:21px; color:#d2e0ea; font-size:12px; line-height:1.9; }
.pi-contact { padding:80px 0 76px; scroll-margin-top:166px; }
.pi-contact-top { display:flex; align-items:flex-end; justify-content:space-between; gap:40px; padding-bottom:35px; border-bottom:1px solid var(--pi-line); }
.pi-contact-top>div>p:last-child { margin:18px 0 0; font-size:14px; color:var(--pi-muted); max-width:38em; }
.pi-contact-top .button { flex-shrink:0; }
.pi-services { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:36px; margin-top:32px; }
.pi-services h3 { font-size:18px; color:var(--pi-ink); font-weight:600; margin:0 0 10px; }
.pi-services p { font-size:13px; color:var(--pi-muted); line-height:1.9; margin:0 0 12px; }
.pi-services a { display:inline-flex; align-items:center; gap:8px; min-height:44px; font-size:13px; color:var(--blue); }
.pi-services a:hover { text-decoration:underline; text-underline-offset:4px; }
[lang=en] .pi-hero h1 { max-width:11em; font-size:clamp(44px,4.9vw,69px); line-height:1.08; }
[lang=en] .pi-hero-subtitle { font-family:Georgia,serif; font-size:clamp(24px,2.35vw,34px); max-width:23em; }
[lang=en] .pi-heading h2,[lang=en] .pi-plan-heading h2,[lang=en] .pi-contact h2 { font-family:Georgia,serif; }
@media(min-width:1600px) { .pi-section { padding-block:96px; } }
@media(max-width:1000px) { .pi-heading,.pi-plan-heading { gap:28px; } .pi-foundations { gap:20px; } .pi-plan-grid { gap:30px; } .pi-area { padding:25px; } .pi-hero { min-height:560px; } }
@media(max-width:767px) {
  .pi-hero { min-height:600px; padding:124px 0 85px; }
  .pi-hero-media img { object-position:63% center; }
  .pi-hero::before { background:linear-gradient(90deg,rgba(4,25,39,.84),rgba(4,25,39,.56)),linear-gradient(0deg,rgba(4,25,39,.7),transparent 65%); }
  .pi-hero h1 { font-size:49px; margin-bottom:22px; }
  .pi-hero .eyebrow { margin-bottom:23px; font-size:10px; }
  .pi-hero-subtitle { font-size:28px; max-width:13em; }
  .pi-hero-description { font-size:14px; max-width:30em; margin-bottom:26px; }
  .pi-hero .hero-actions { display:flex; gap:10px; }
  .pi-hero .button { padding-inline:17px; font-size:13px; }
  .pi-hero-caption { font-size:10px; bottom:20px; }
  .pi-nav { top:68px; }
  .pi-nav-inner { width:100%; max-width:none; padding:0 12px; }
  .pi-nav a { min-height:57px; padding:10px 6px; font-size:13px; }
  .pi-section { padding:58px 0; scroll-margin-top:145px; }
  .pi-anchor,.pi-contact { scroll-margin-top:145px; }
  .pi-heading,.pi-plan-heading { display:block; margin-bottom:28px; }
  .pi-heading>p,.pi-plan-heading>p { margin-top:20px; max-width:none; font-size:14px; }
  .pi-heading h2,.pi-plan-heading h2,.pi-contact h2 { font-size:31px; line-height:1.4; }
  .pi-kicker { margin-bottom:14px; font-size:10px; }
  .pi-foundations { grid-template-columns:1fr; gap:32px; }
  .pi-foundation figure { margin-bottom:19px; aspect-ratio:1.6; }
  .pi-foundation h3 { font-size:23px; }
  .pi-foundation p { margin-bottom:12px; }
  .pi-note { margin-top:24px; font-size:12px; }
  .pi-cases .case-grid { gap:36px; }
  .pi-cases .port-case-content h3 { font-size:22px; }
  .pi-industries { margin-top:27px; gap:10px 18px; padding-top:22px; }
  .pi-industries strong { width:100%; }
  .pi-plan-grid { grid-template-columns:1fr; gap:32px; }
  .pi-area { min-height:355px; padding:24px; }
  .pi-area-number strong { font-size:59px; }
  .pi-park { padding:0; }
  .pi-park h3 { font-size:27px; }
  .pi-park-metrics { gap:16px; margin:22px 0; }
  .pi-park-metrics dd { font-size:31px; }
  .pi-plan-note { margin-top:27px; padding-top:20px; }
  .pi-contact { padding:58px 0; }
  .pi-contact-top { display:block; padding-bottom:28px; }
  .pi-contact-top .button { margin-top:25px; }
  .pi-services { grid-template-columns:1fr; gap:23px; margin-top:27px; }
  .pi-services article+article { padding-top:22px; border-top:1px solid var(--pi-line); }
  .pi-services h3 { margin-bottom:8px; }
  .pi-services p { margin-bottom:5px; }
  [lang=en] .pi-hero { min-height:670px; }
  [lang=en] .pi-hero h1 { font-size:44px; }
  [lang=en] .pi-hero-subtitle { font-size:27px; }
  [lang=en] .pi-nav a { font-size:12px; }
}
@media(prefers-reduced-motion:reduce) { .industry-refined { scroll-behavior:auto; } .industry-refined .port-case img { transition:none; } }
