/* V6.1 visual redesign: editorial rail engineering */
:root{--navy:#071d32;--gold:#f0b84a;--muted:#5b6d7c}
body{background:#fff;color:#10283e;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}
.wrap{width:min(100% - 72px,1320px)}
.header{background:#fff;border-bottom:1px solid #e8edf1}.nav{height:96px}.brand img{width:185px;object-fit:contain}.nav nav a{font-size:13px;letter-spacing:.02em}
.hero{min-height:760px;background:#061b2e!important;position:relative;overflow:hidden}
.hero::before{content:'';position:absolute;inset:0 0 0 44%;background:linear-gradient(90deg,#061b2e 0%,#061b2e00 32%),url('assets/bahn-hero.jpg') center/cover no-repeat;opacity:.95}
.hero::after{height:0}
.hero-inner{position:relative;z-index:2;min-height:760px;display:flex;align-items:center;padding-block:105px}
.hero-copy{max-width:750px}.hero .eyebrow{color:#efb949;letter-spacing:.22em;font-size:12px;font-weight:800}
.hero h1{font-size:clamp(50px,6vw,90px);max-width:800px;letter-spacing:-.065em;line-height:1.02;margin:28px 0 28px;color:white}
.hero p{font-size:clamp(18px,1.6vw,23px);line-height:1.55;max-width:620px;color:#d5e0e9}
.hero .actions{margin-top:38px}.hero .btn.primary{background:#f0b84a;color:#0b2437;border-color:#f0b84a}.hero .btn.secondary{background:transparent;color:white;border:1px solid #ffffff88}
.hero-trust{margin-top:50px}.hero-meta{display:flex;flex-wrap:wrap;gap:18px;margin-top:18px;color:#b6cad9;font-size:12px}
.feature-strip{background:#f0b84a;position:relative;z-index:3}.feature-grid>a{padding:28px 18px}.feature-grid strong{color:#092239}.feature-grid small{color:#30465a}.feature-symbol{background:#0b2a42!important;color:#f0b84a!important;border-radius:12px}
.intro-split{padding-block:125px;grid-template-columns:1.1fr 1fr;gap:100px}.intro-photo{height:560px;position:relative}.intro-photo img{border-radius:0;filter:saturate(.8)}.intro-photo:after{content:'RAIL OPERATIONS / ENGINEERING';position:absolute;bottom:-18px;left:24px;background:#f0b84a;color:#08263c;padding:16px 22px;font-weight:800;font-size:12px;letter-spacing:.12em}
.intro h2,.section-head h2,.international h2,.about h2,.contact h2{font-size:clamp(38px,4.2vw,62px);line-height:1.08;letter-spacing:-.055em}.kicker{color:#b37a1d;font-weight:850;letter-spacing:.17em;font-size:11px}
.process-section{background:#0a263e;color:white;padding:100px 0}.process-section h2{font-size:clamp(36px,4vw,60px);max-width:900px;color:white}.process-grid>div{background:#12354f;border:1px solid #3a566b;border-radius:0;box-shadow:none;padding:38px}.process-grid b{color:#f0b84a;font-size:26px}.process-grid h3{color:white}.process-grid p{color:#c2d1dc}
.services{background:#f7f8f8;padding:120px 0}.section-head{margin-bottom:48px}.service-grid{gap:16px}.service{border-radius:0;border:1px solid #e1e6e8;box-shadow:none;padding:0 28px 32px}.service:before{height:12px!important;background:#e8b44d!important}.service-icon{margin-top:26px;background:#102e46!important;color:#f0b84a!important;border:0;border-radius:12px;width:56px;height:56px}.service h3{font-size:23px;margin-top:24px}
.international{padding:115px 0;background:#102e46}.intl-graphic{border-radius:0;min-height:340px}
.about{padding-block:130px;gap:100px}.portrait-wrap>img{border-radius:0;max-height:540px}.about-mark-caption{border-radius:0}
.faq-section{padding:100px 0}.faq-list details{border-radius:0}.contact{padding:110px 0;background:#eaf0f3}.ai-contact-card{border-radius:0;background:#0c304d}.contact form{border-radius:0}
footer{background:#061b2e}
@media(max-width:900px){.hero{min-height:650px}.hero-inner{min-height:650px}.hero::before{inset:0;background:linear-gradient(90deg,#061b2ee8,#061b2e91),url('assets/bahn-hero.jpg') center/cover no-repeat}.intro-split{gap:35px}.intro-photo{height:400px}}
@media(max-width:700px){.wrap{width:min(100% - 36px,560px)}.nav{height:72px}.hero{min-height:650px}.hero-inner{min-height:650px;padding-block:65px}.hero h1{font-size:clamp(43px,11vw,62px)}.hero p{font-size:17px}.hero-meta{gap:8px}.feature-grid{grid-template-columns:1fr 1fr}.feature-grid>a{padding:16px 10px}.intro-split,.services,.about,.contact{padding-block:65px}.intro-photo{height:280px}.process-section,.international,.faq-section{padding-block:65px}.intro h2,.section-head h2,.international h2,.about h2,.contact h2{font-size:39px}.service-grid{grid-template-columns:1fr}.process-grid{grid-template-columns:1fr}}
