:root{
  --ink:#182a33;
  --deep:#102028;
  --paper:#f3efe6;
  --mist:#dce5e4;
  --route:#df5f42;
  --route-soft:#f4aa76;
  --blue:#547b91;
  --sand:#d8c39d;
  --white:#fffdf7;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;color:var(--ink);background:var(--paper);font-family:Arial,Helvetica,sans-serif}
a{color:inherit}
.shell{width:min(1180px,calc(100% - 48px));margin-inline:auto}
.site-header{min-height:88px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(24,42,51,.18)}
.brand{display:inline-flex;align-items:center;gap:12px;font-size:14px;font-weight:800;letter-spacing:.045em;text-decoration:none}
.brand-mark{position:relative;width:34px;height:24px;display:inline-block}
.brand-mark:before,.brand-mark:after,.brand-mark i{content:"";position:absolute;left:0;width:34px;height:2px;background:var(--ink);transform-origin:left center}
.brand-mark:before{top:4px;transform:rotate(17deg)}
.brand-mark i{top:11px}
.brand-mark:after{top:18px;transform:rotate(-17deg)}
nav{display:flex;gap:34px}
nav a{font-size:12px;text-decoration:none}
nav a:hover{text-decoration:underline;text-underline-offset:5px}
.hero{min-height:700px;display:grid;grid-template-columns:.84fr 1.16fr;align-items:center;gap:70px;padding-block:70px 90px}
.eyebrow{margin:0 0 18px;font-size:11px;font-weight:800;letter-spacing:.18em;text-transform:uppercase}
h1,h2,h3,p{margin-top:0}
h1,h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.04em}
h1{max-width:560px;margin-bottom:26px;font-size:clamp(58px,6.6vw,92px);line-height:.92}
h2{font-size:clamp(42px,5vw,68px);line-height:.98}
.lead{max-width:540px;font-size:18px;line-height:1.7}
.button{display:inline-flex;align-items:center;gap:14px;margin-top:24px;padding:15px 19px;color:var(--white);background:var(--ink);font-size:12px;font-weight:800;text-decoration:none}
.route-visual{position:relative;min-height:540px;overflow:hidden;border-radius:3px;background:var(--mist)}
.route-visual svg{position:absolute;inset:45px 20px 35px;width:calc(100% - 40px);height:calc(100% - 80px)}
.land{fill:rgba(255,253,247,.72)}
.land.east{fill:rgba(216,195,157,.5)}
.route-shadow{fill:none;stroke:rgba(16,32,40,.16);stroke-width:16;stroke-linecap:round}
.route{fill:none;stroke:var(--route);stroke-width:6;stroke-dasharray:12 13;stroke-linecap:round}
.node{fill:var(--paper);stroke:var(--ink);stroke-width:5}
.node.start,.node.end{fill:var(--route-soft)}
.map-label{position:absolute;z-index:2;font:400 29px Georgia,serif}
.label-west{left:40px;top:38px}
.label-east{right:42px;bottom:42px}
.mode{position:absolute;z-index:3;display:flex;align-items:center;gap:8px;padding:10px 12px;background:var(--white);font-size:11px}
.mode span{color:var(--route);font-weight:800}
.mode-rail{left:17%;bottom:18%}
.mode-road{left:46%;top:19%}
.mode-sea{right:14%;top:43%}
.corridors{padding-block:115px;background:var(--white)}
.section-intro{display:grid;grid-template-columns:.9fr 1.15fr .8fr;gap:55px;align-items:end;margin-bottom:58px}
.section-intro h2{margin-bottom:0}
.section-intro>p:last-child{margin-bottom:7px;line-height:1.7}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.card{min-height:470px;display:flex;flex-direction:column;padding:28px;background:var(--sand)}
.card-dark{color:var(--white);background:var(--deep)}
.card-blue{color:var(--white);background:var(--blue)}
.card-number{font-size:11px;font-weight:800}
.card-icon{position:relative;height:210px;margin-block:42px 25px}
.card h3{margin-bottom:12px;font:400 31px Georgia,serif}
.card p{margin-bottom:0;line-height:1.65}
.rail-icon i{position:absolute;left:10%;right:10%;height:3px;background:var(--ink)}
.rail-icon i:nth-child(1){top:58px;transform:rotate(11deg)}
.rail-icon i:nth-child(2){top:112px;transform:rotate(11deg)}
.rail-icon i:nth-child(3){top:84px;height:64px;background:repeating-linear-gradient(90deg,transparent 0 23px,var(--ink) 23px 27px);transform:rotate(11deg)}
.road-icon:before{content:"";position:absolute;left:16%;right:16%;top:30px;height:145px;border:3px solid var(--white);border-width:0 3px;transform:skew(-15deg)}
.road-icon i{position:absolute;left:50%;top:33px;width:3px;height:140px;background:repeating-linear-gradient(0deg,var(--white) 0 13px,transparent 13px 27px);transform:rotate(9deg)}
.sea-icon:before,.sea-icon:after,.sea-icon i{content:"";position:absolute;left:8%;right:8%;height:18px;border-top:3px solid var(--white);border-radius:50%}
.sea-icon:before{top:55px}.sea-icon i{top:100px}.sea-icon:after{top:145px}
.approach{display:grid;grid-template-columns:.9fr 1.1fr;gap:100px;padding-block:120px}
.approach-copy p:last-child{max-width:510px;font-size:17px;line-height:1.75}
.steps{list-style:none;margin:0;padding:0}
.steps li{display:grid;grid-template-columns:52px 1fr;gap:20px;padding:28px 0;border-top:1px solid rgba(24,42,51,.2)}
.steps li>span{color:var(--route);font-size:11px;font-weight:800}
.steps h3{margin-bottom:7px;font:400 25px Georgia,serif}
.steps p{margin:0;line-height:1.6}
.overview{padding-block:125px;color:var(--white);background:var(--deep)}
.overview-inner{display:grid;grid-template-columns:.55fr 1.2fr .85fr;gap:55px;align-items:end}
.overview h2{margin-bottom:0}
.overview p:last-child{margin-bottom:5px;color:rgba(255,255,255,.75);line-height:1.7}
footer{min-height:120px;display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center;font-size:12px}
footer p{margin:0;text-align:center}
footer p:last-child{text-align:right}
@media(max-width:900px){nav{display:none}.hero,.section-intro,.approach,.overview-inner{grid-template-columns:1fr}.hero{gap:35px}.route-visual{min-height:480px}.section-intro,.overview-inner{gap:24px}.cards{grid-template-columns:1fr}.card{min-height:410px}.approach{gap:40px}.overview-inner p:last-child{max-width:640px}footer{grid-template-columns:1fr;gap:14px;padding-block:28px}footer p,footer p:last-child{text-align:left}}
@media(max-width:560px){.shell{width:min(100% - 28px,1180px)}h1{font-size:54px}.hero{padding-top:50px}.route-visual{min-height:390px}.route-visual svg{inset:55px 2px 25px;width:calc(100% - 4px);height:calc(100% - 80px)}.map-label{font-size:22px}.mode{padding:7px}.mode-rail{left:7%}.mode-sea{right:5%}.corridors,.approach,.overview{padding-block:85px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
