:root {
  --ink: #080a0c;
  --panel: #0f1317;
  --panel-soft: #14191e;
  --paper: #e7e6e1;
  --white: #f5f5f2;
  --muted: #858f98;
  --line: #293139;
  --signal: #00aeef;
  --signal-deep: #007da9;
}

* { box-sizing: border-box; }
html { width: 100%; max-width: 100%; overflow-x: hidden; scroll-behavior: smooth; background: var(--ink); }
body { width: 100%; max-width: 100%; margin: 0; overflow-x: hidden; position: relative; background: var(--ink); color: var(--white); font-family: Arial, Helvetica, sans-serif; }
main { width: 100%; max-width: 100%; overflow-x: clip; }
main > *, section, header, footer { min-width: 0; max-width: 100%; }
img, svg { max-width: 100%; }
a { color: inherit; text-decoration: none; }
button, a { -webkit-tap-highlight-color: transparent; }

.topline {
  min-height: 36px;
  padding: 0 4.2vw;
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-bottom: 1px solid #20272d;
  color: #69737c;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .16em;
  text-transform: uppercase;
}
.topline-status { display: flex; align-items: center; gap: 10px; }
.topline-status i { width: 6px; height: 6px; border-radius: 50%; background: #4adb82; box-shadow: 0 0 12px #4adb82; }

.site-header {
  min-height: 118px;
  padding: 0 4.2vw;
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-bottom: 1px solid var(--line);
  background: #090b0ddd;
}
.brand-logo { width: 300px; height: auto; display: block; flex: 0 0 auto; }
.contact-links { display: flex; align-items: center; gap: 12px; }
.contact-links a {
  min-width: 154px;
  min-height: 54px;
  padding: 0 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  border: 1px solid #3b454e;
  background: #0f1316;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
  transition: border-color .2s, background .2s, transform .2s;
}
.contact-links a:hover, .contact-links a:focus-visible { border-color: var(--signal); background: #11232b; transform: translateY(-2px); outline: none; }

.contact-links-1 { display: flex; align-items: center; gap: 12px; }
.contact-links-1 a {
  min-width: 154px;
  min-height: 54px;
  padding: 0 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  border: 1px solid #3b454e;
  background: #0f1316;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
  transition: border-color .2s, background .2s, transform .2s;
}
.contact-links-1 a:hover, .contact-links-1 a:focus-visible { border-color: var(--signal); background: #11232b; transform: translateY(-2px); outline: none; }

.contact-icon { color: var(--signal); font-size: 20px; line-height: 1; }
.telegram-icon { width: 19px; height: 19px; position: relative; display: inline-block; flex: 0 0 19px; }
.telegram-icon::before { content: ""; width: 13px; height: 2px; position: absolute; left: 2px; top: 10px; border-radius: 2px; background: currentColor; transform: rotate(-45deg); transform-origin: center; }
.telegram-icon::after { content: ""; width: 8px; height: 8px; position: absolute; right: 1px; top: 1px; border-top: 2px solid currentColor; border-right: 2px solid currentColor; }
.whatsapp-icon { font-size: 17px; }
.partner-icon { width: 19px; height: 19px; position: relative; display: inline-block; flex: 0 0 19px; }
.partner-icon::before { content: ""; width: 13px; height: 2px; position: absolute; left: 2px; top: 10px; border-radius: 2px; background: currentColor; transform-origin: center; }
.partner-icon::after { content: ""; width: 8px; height: 8px; position: absolute; right: 1px; top: 5px; border-top: 2px solid currentColor; border-right: 2px solid currentColor; transform: rotate(45deg); }


.hero {
  min-height: calc(100vh - 140px);
  display: grid;
  grid-template-columns: 1fr 1fr;
  position: relative;
  overflow: hidden;
  border-bottom: 1px solid var(--line);
  background: #090b0d;
}
.hero-copy {
  min-width: 0;
  padding: clamp(64px, 8vh, 108px) 5vw 70px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  border-right: 1px solid var(--line);
  background:
    linear-gradient(90deg, transparent 99%, #1e252b 99%),
    linear-gradient(transparent 99%, #1e252b 99%),
    #090b0d;
  background-size: 58px 58px;
}
.eyebrow { margin: 0 0 34px; display: flex; align-items: center; gap: 12px; color: #8e98a1; font-size: 10px; font-weight: 800; letter-spacing: .17em; text-transform: uppercase; }
.eyebrow i { width: 7px; height: 7px; border-radius: 50%; background: var(--signal); box-shadow: 0 0 12px #00aeef99; }
.hero h1, .about-intro h2 {
  margin: 0;
  font-family: "Arial Narrow", "Roboto Condensed", Arial, sans-serif;
  font-size: clamp(56px, 5.6vw, 92px);
  font-weight: 900;
  font-stretch: condensed;
  line-height: .9;
  letter-spacing: -.065em;
  text-transform: uppercase;
}
.hero h1 em, .about-intro h2 em { color: var(--signal); font-style: normal; }
.hero-lead { max-width: 640px; margin: 36px 0 0; color: #98a1a9; font-size: clamp(16px, 1.25vw, 20px); line-height: 1.65; }
.capability-line { max-width: 700px; margin-top: 42px; padding-top: 22px; display: flex; flex-wrap: wrap; align-items: center; gap: 9px; border-top: 1px solid #303840; color: #8d969e; font-size: 8px; font-weight: 800; letter-spacing: .09em; text-transform: uppercase; }
.capability-line i { width: 3px; height: 3px; border-radius: 50%; background: var(--signal); }

.hero-network { min-height: 640px; position: relative; overflow: hidden; background: radial-gradient(circle at 52% 47%, #17212a 0, #11171c 34%, #090c0f 74%); }
.hero-network::before, .hero-network::after { content: ""; position: absolute; inset: 0; background-image: linear-gradient(#6a78840c 1px, transparent 1px), linear-gradient(90deg, #6a78840c 1px, transparent 1px); background-size: 54px 54px; }
.hero-network::after { background: radial-gradient(circle at 50% 50%, transparent 0 46%, #00aeef0b 46.2% 46.5%, transparent 46.7%); }
.network-orbit { position: absolute; z-index: 1; left: 50%; top: 47%; border: 1px solid #65727d44; border-radius: 50%; transform: translate(-50%, -50%) rotate(-13deg); }
.orbit-one { width: 78%; aspect-ratio: 1.4; }
.orbit-two { width: 57%; aspect-ratio: 1.08; border-style: dashed; }
.network-center { position: absolute; z-index: 3; right: 16%; top: 40%; display: flex; align-items: center; gap: 13px; font-size: 20px; }
.network-center i, .network-node i { width: 14px; height: 14px; border: 3px solid #94e6ff; border-radius: 50%; background: var(--signal); box-shadow: 0 0 0 9px #00aeef19, 0 0 22px #00aeef; }
.network-node { position: absolute; z-index: 3; display: flex; align-items: center; gap: 10px; color: #b0b8bf; font-size: 10px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.network-node i { width: 9px; height: 9px; border-width: 2px; box-shadow: 0 0 0 6px #00aeef14, 0 0 15px #00aeef; }
.node-england { left: 19%; top: 33%; }.node-scotland { left: 27%; top: 20%; }.node-ireland { left: 13%; top: 48%; }.node-uae { left: 40%; top: 61%; }.node-china { right: 9%; top: 66%; }
.supply-card { width: min(40%, 320px); min-height: 200px; padding: 26px; position: absolute; z-index: 4; right: 5%; bottom: 4%; border: 1px solid #46515b; background: linear-gradient(145deg, #1b2229ee, #11161bf2); box-shadow: 0 35px 80px #000b; transform: rotate(-5deg); }
.supply-card::before { content: ""; position: absolute; inset: 11px; border: 1px dashed #52606b55; }
.supply-card strong { margin-top: 42px; position: relative; z-index: 1; display: block; font-size: clamp(28px, 3vw, 48px); line-height: 1.05; }
.supply-card strong em { color: var(--signal); font-style: normal; }
.supply-card>div { margin-top: 20px; position: relative; z-index: 1; display: flex; gap: 8px; }.supply-card>div i { width: 48px; height: 6px; background: var(--signal); transform: skew(-25deg); }.supply-card>div i:nth-child(2), .supply-card>div i:nth-child(3) { background: #74808a; }
.scroll-cue { position: absolute; z-index: 5; left: 50%; bottom: -1px; width: 42px; height: 38px; display: grid; place-items: center; transform: translateX(-50%); border: 1px solid var(--line); border-bottom-color: var(--ink); background: var(--ink); color: var(--signal); font-size: 19px; }

.identity-strip { display: grid; grid-template-columns: repeat(3, 1fr); border-bottom: 1px solid var(--line); background: #0d1114; }
.identity-strip>div { min-height: 118px; padding: 26px 4vw; display: flex; align-items: center; gap: 22px; border-right: 1px solid var(--line); }
.identity-strip>div:last-child { border-right: 0; }
.identity-strip b { color: var(--signal); font-size: 10px; }
.identity-strip span { display: flex; flex-direction: column; gap: 7px; }.identity-strip strong { font-size: 12px; text-transform: uppercase; }.identity-strip small { color: #737d85; font-size: 10px; }

.about-intro { min-height: 650px; padding: 100px 6vw; display: grid; grid-template-columns: .38fr 1.05fr .85fr; gap: 5vw; align-items: start; background: var(--paper); color: #101317; }
.section-label { display: flex; flex-direction: column; gap: 28px; }.section-label>span { color: #9a9ea1; font-size: 68px; font-weight: 900; letter-spacing: -.07em; }.about-intro .eyebrow { color: #007da9; }
.about-intro h2 { font-size: clamp(48px, 5vw, 78px); }
.about-summary { padding-top: 9px; }.about-summary p { margin: 0 0 28px; color: #62696e; font-size: 14px; line-height: 1.8; }.about-summary .lead-copy { color: #171b1f; font-size: clamp(20px, 1.6vw, 25px); line-height: 1.5; }

.cycle-section { padding: 100px 5vw 110px; position: relative; overflow: hidden; border-bottom: 1px solid var(--line); background: radial-gradient(circle at 83% 13%, #18222a, #0a0d10 35%); }
.section-heading-dark { margin-bottom: 54px; display: flex; align-items: flex-start; justify-content: space-between; position: relative; }.section-heading-dark h2, .directions-intro h2, .geography-copy h2, .partnership-copy h2, .details-heading h2, .final-contact h2 { margin: 0; font-family: "Arial Narrow", "Roboto Condensed", Arial, sans-serif; font-size: clamp(48px, 5vw, 78px); font-weight: 900; line-height: .92; letter-spacing: -.06em; text-transform: uppercase; }.section-heading-dark h2 em, .directions-intro h2 em, .geography-copy h2 em, .partnership-copy h2 em, .details-heading h2 em, .final-contact h2 em { color: var(--signal); font-style: normal; }.section-number { margin-top: -50px; color: #ffffff0a; font-size: clamp(150px, 18vw, 260px); font-weight: 900; line-height: 1; letter-spacing: -.1em; }
.cycle-grid { display: grid; grid-template-columns: repeat(4, 1fr); border-top: 1px solid #3a434b; border-left: 1px solid #3a434b; }.cycle-grid article { min-height: 280px; padding: 28px; position: relative; border-right: 1px solid #3a434b; border-bottom: 1px solid #3a434b; background: #0e1216cc; }.cycle-grid article:nth-child(n+5) { grid-column: span 1; }.cycle-grid article:last-child { grid-column: span 2; background: linear-gradient(120deg, #11171c, #102735); }.cycle-grid article>b { color: var(--signal); font-size: 9px; }.step-mark { width: 58px; height: 58px; margin: 45px 0 28px; display: grid; place-items: center; border: 1px solid #3d4851; color: #8b969f; font-size: 8px; font-weight: 900; letter-spacing: .11em; }.cycle-grid h3 { margin: 0 0 13px; font-size: 17px; text-transform: uppercase; }.cycle-grid p { margin: 0; color: #77818a; font-size: 11px; line-height: 1.7; }

.directions-section { min-height: 760px; display: grid; grid-template-columns: 34% 66%; border-bottom: 1px solid var(--line); background: #0b0e11; }.directions-intro { padding: 100px 4vw 80px 5vw; border-right: 1px solid var(--line); background: linear-gradient(155deg, #14191e, #090b0e); }.directions-intro h2 { font-size: clamp(44px, 4.2vw, 68px); }.directions-intro>p:last-child { max-width: 420px; margin: 34px 0 0; color: #7d8790; font-size: 13px; line-height: 1.8; }.directions-grid { display: grid; grid-template-columns: 1fr 1fr; }.direction-card { min-height: 380px; padding: 34px; position: relative; overflow: hidden; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); background: #11161a; }.direction-card:nth-child(even) { border-right: 0; }.direction-card:nth-child(n+3) { border-bottom: 0; }.direction-card::before { content: ""; position: absolute; inset: 0; background-image: linear-gradient(#82909b0d 1px, transparent 1px), linear-gradient(90deg, #82909b0d 1px, transparent 1px); background-size: 44px 44px; }.direction-top { min-height: 190px; position: relative; }.direction-card h3, .details-content h3 { margin: 0 0 14px; position: relative; font-size: 19px; text-transform: uppercase; }.direction-card p { max-width: 440px; margin: 0; position: relative; color: #7b858d; font-size: 12px; line-height: 1.7; }
.direction-card { isolation: isolate; }
.direction-image { width: 100%; height: 100%; position: absolute; z-index: 0; inset: 0; object-fit: cover; filter: grayscale(.15) saturate(.82) brightness(.82) contrast(1.1); transform: scale(1.025); }
.direction-image-engines { object-position: 50% 48%; }.direction-image-frontends { object-position: 50% 52%; }.direction-image-parts { object-position: 50% 54%; }.direction-image-equipment { object-position: 50% 46%; }
.direction-card::after { content: ""; position: absolute; z-index: 1; inset: 0; background: linear-gradient(180deg, #07101726 0%, #080d126b 48%, #070b0fb8 100%), linear-gradient(118deg, #007da924 0%, transparent 45%, #0000003d 100%); box-shadow: inset 0 0 65px #0005; }
.direction-card::before { z-index: 2; background-image: linear-gradient(#82909b12 1px, transparent 1px), linear-gradient(90deg, #82909b12 1px, transparent 1px), repeating-linear-gradient(180deg, transparent 0 5px, #00aeef08 6px); background-size: 44px 44px, 44px 44px, 100% 6px; }
.direction-top, .direction-card h3, .direction-card p { z-index: 3; }
.direction-card h3 { text-shadow: 0 2px 20px #000; }.direction-card p { color: #a5b0b8; text-shadow: 0 1px 12px #000; }

.geography-section { padding: 100px 5vw 110px; background: var(--paper); color: #111519; }.geography-copy { display: grid; grid-template-columns: .55fr 1.25fr .8fr; gap: 4vw; align-items: end; }.geography-copy .eyebrow { align-self: start; color: #007da9; }.geography-copy h2 { font-size: clamp(43px, 4.5vw, 72px); }.geography-copy>p:last-child { margin: 0; color: #626a70; font-size: 13px; line-height: 1.8; }.geography-rail { margin-top: 70px; display: grid; grid-template-columns: repeat(6, 1fr); border-top: 1px solid #a9afb3; border-left: 1px solid #a9afb3; }.geography-rail article { min-height: 210px; padding: 24px 20px; display: flex; flex-direction: column; border-right: 1px solid #a9afb3; border-bottom: 1px solid #a9afb3; }.geography-rail b { color: #008fc5; font-size: 10px; }.geography-rail span { margin-top: 54px; font-size: 14px; font-weight: 900; text-transform: uppercase; }.geography-rail small { margin-top: 12px; color: #697176; font-size: 10px; line-height: 1.5; }.geography-rail .destination { background: #0d1114; color: #fff; }.geography-rail .destination b, .geography-rail .destination span { color: var(--signal); }.geography-rail .destination small { color: #879199; }

.partnership-section { min-height: 640px; display: grid; grid-template-columns: 58% 42%; border-bottom: 1px solid var(--line); background: #090c0f; }
.partnership-copy { padding: 82px 5vw 76px; }
.partnership-copy h2 { font-size: clamp(46px, 4.5vw, 72px); }
.partnership-lead { max-width: 790px; margin: 30px 0 42px; color: #929ca4; font-size: 15px; line-height: 1.75; }
.partnership-points { display: grid; grid-template-columns: repeat(3, 1fr); gap: clamp(24px, 3vw, 52px); }
.partnership-points article { min-width: 0; padding-top: 19px; position: relative; }
.partnership-points article::before { content: ""; width: 42px; height: 3px; position: absolute; left: 0; top: 0; background: var(--signal); transform: skew(-24deg); box-shadow: 0 0 18px #00aeef55; }
.partnership-points h3 { min-height: 32px; margin: 0 0 12px; font-size: 13px; line-height: 1.25; text-transform: uppercase; }
.partnership-points p { margin: 0; color: #737e87; font-size: 11px; line-height: 1.7; }

.partner-path { min-height: 640px; padding: 80px clamp(36px, 4vw, 74px) 64px; position: relative; overflow: hidden; border-left: 1px solid var(--line); background: linear-gradient(145deg, #121a20 0%, #0c1115 58%, #080b0e 100%); }
.partner-path::before { content: ""; position: absolute; inset: 0; background-image: linear-gradient(#75828c0a 1px, transparent 1px), linear-gradient(90deg, #75828c0a 1px, transparent 1px); background-size: 48px 48px; -webkit-mask-image: linear-gradient(135deg, #000, transparent 82%); mask-image: linear-gradient(135deg, #000, transparent 82%); }
.partner-path::after { content: "ПАРТНЁР"; position: absolute; right: -26px; top: 15px; color: #ffffff05; font-size: clamp(72px, 8vw, 138px); font-weight: 900; letter-spacing: -.08em; }
.partner-path-heading, .partner-path ol, .partner-path-note { position: relative; z-index: 1; }
.partner-path-heading .eyebrow { margin-bottom: 24px; }
.partner-path-heading h3 { margin: 0; font-family: "Arial Narrow", "Roboto Condensed", Arial, sans-serif; font-size: clamp(31px, 2.55vw, 44px); font-weight: 900; line-height: .98; letter-spacing: -.045em; text-transform: uppercase; }
.partner-path-heading h3 em { color: var(--signal); font-style: normal; }
.partner-path ol { margin: 42px 0 0; padding: 0; list-style: none; }
.partner-path li { min-height: 52px; padding: 0 0 22px 35px; position: relative; color: #c3cbd1; font-size: 11px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.partner-path li:not(:last-child)::before { content: ""; width: 1px; position: absolute; left: 7px; top: 14px; bottom: -1px; background: linear-gradient(var(--signal), #40505c); }
.partner-path li i { width: 15px; height: 15px; position: absolute; left: 0; top: -1px; border: 3px solid #91e4ff; border-radius: 50%; background: var(--signal); box-shadow: 0 0 0 7px #00aeef12, 0 0 16px #00aeef99; }
.partner-path li:last-child { padding-bottom: 0; color: var(--white); }
.partner-path-note { margin-top: 34px; padding-top: 22px; display: flex; align-items: center; gap: 17px; border-top: 1px solid #2d3942; }
.partner-path-note span { color: var(--signal); font-size: 27px; }
.partner-path-note p { max-width: 290px; margin: 0; color: #8f9ba4; font-size: 12px; font-weight: 700; line-height: 1.55; }

.proof-section { display: grid; grid-template-columns: repeat(4, 1fr); border-bottom: 1px solid var(--line); background: #0d1114; }.proof-section>div { min-height: 190px; padding: 40px 4vw; display: flex; align-items: flex-end; justify-content: space-between; border-right: 1px solid var(--line); }.proof-section>div:last-child { border-right: 0; }.proof-section b { color: var(--signal); font-size: clamp(40px, 4vw, 64px); letter-spacing: -.06em; }.proof-section span { color: #7c868e; font-size: 11px; line-height: 1.5; text-transform: uppercase; }

.details-section { padding: 110px 6vw 0; display: grid; grid-template-columns: .68fr 1.32fr; gap: 7vw; background: var(--paper); color: #12161a; }.details-heading { position: sticky; top: 40px; align-self: start; }.details-heading .eyebrow { color: #007da9; }.details-heading h2 { font-size: clamp(44px, 4.4vw, 68px); }.details-heading h2 em { font-size: .35em; letter-spacing: .08em; }.details-content { display: grid; grid-template-columns: 1fr 1fr; border-top: 1px solid #aeb3b6; border-left: 1px solid #aeb3b6; }.details-content article { min-height: 270px; padding: 30px; border-right: 1px solid #aeb3b6; border-bottom: 1px solid #aeb3b6; }.details-content h3 { font-size: 15px; }.details-content p { margin: 0; color: #626a70; font-size: 12px; line-height: 1.8; }

.operations-mosaic { padding: 2px 0; display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); grid-template-rows: repeat(2, clamp(112px, 7.4vw, 150px)); gap: 2px; overflow: hidden; border-top: 1px solid #222b32; border-bottom: 1px solid #222b32; background: #080b0e; }
.operations-mosaic figure { min-width: 0; margin: 0; position: relative; overflow: hidden; background: #10161b; }
.operations-mosaic figure::after { content: ""; position: absolute; inset: 0; background: linear-gradient(145deg, #007da916, transparent 44%, #0205073d), repeating-linear-gradient(180deg, transparent 0 5px, #00aeef06 6px); box-shadow: inset 0 0 24px #0004; pointer-events: none; }
.operations-mosaic img { width: 100%; height: 100%; display: block; object-fit: cover; object-position: center; filter: grayscale(.17) saturate(.82) brightness(.85) contrast(1.09); transform: scale(1.015); }
.operations-mosaic figure:nth-child(1) img { object-position: 50% 61%; }.operations-mosaic figure:nth-child(3) img { object-position: 50% 44%; }.operations-mosaic figure:nth-child(4) img { object-position: 50% 58%; }.operations-mosaic figure:nth-child(6) img { object-position: 50% 56%; }.operations-mosaic figure:nth-child(7) img { object-position: 50% 43%; }.operations-mosaic figure:nth-child(11) img { object-position: 50% 48%; }

.final-contact { padding: 100px 6vw; display: grid; grid-template-columns: 1.2fr .8fr; gap: 8vw; align-items: center; background: linear-gradient(135deg, #00aeef, #007aa7); color: #fff; }.final-contact .eyebrow { color: #003f58; }.final-contact h2 { font-size: clamp(48px, 5.3vw, 84px); }.final-contact h2 em { color: #003e57; }.final-contact>div>p:last-child { max-width: 760px; margin: 34px 0 0; color: #003c55; font-size: 15px; line-height: 1.75; }.contact-panel { padding: 34px; border: 1px solid #ffffff66; background: #07374733; }.contact-panel .contact-links { display: grid; grid-template-columns: 1fr 1fr; }.contact-panel .contact-links a { min-width: 0; background: #0a1117; border-color: #ffffff55; }.contact-panel .contact-links-1 { display: grid; grid-template-columns: 1fr; }.contact-panel .contact-links-1 a { min-width: 0; background: #0a1117; border-color: #ffffff55; }.contact-panel dl { margin: 30px 0 0; }.contact-panel dl>div { padding: 14px 0; display: flex; justify-content: space-between; border-top: 1px solid #ffffff4d; font-size: 12px; }.contact-panel dt { color: #00435d; text-transform: uppercase; }.contact-panel dd { margin: 0; font-weight: 800; }

footer { padding: 52px 5vw 26px; display: grid; grid-template-columns: 1fr 1fr auto; gap: 40px; align-items: center; background: #07090b; color: #68727b; }.footer-logo { width: 240px; }footer p { margin: 0; }footer span { font-size: 9px; text-transform: uppercase; letter-spacing: .1em; }

@media (min-width: 981px) {
  .directions-intro h2 { font-size: clamp(40px, 3.4vw, 58px); }
}

@media (max-width: 980px) {
  .topline>span:first-child { display: none; }.topline { justify-content: center; }
  .hero { grid-template-columns: 1fr; }.hero-copy { min-height: 680px; border-right: 0; border-bottom: 1px solid var(--line); }.hero-network { min-height: 580px; }.scroll-cue { left: 50%; top: 662px; bottom: auto; }
  .identity-strip { grid-template-columns: 1fr; }.identity-strip>div { border-right: 0; border-bottom: 1px solid var(--line); }.identity-strip>div:last-child { border-bottom: 0; }
  .about-intro { grid-template-columns: .35fr 1fr; }.about-summary { grid-column: 2; }
  .cycle-grid { grid-template-columns: repeat(2, 1fr); }.cycle-grid article:last-child { grid-column: span 2; }
  .directions-section { grid-template-columns: 1fr; }.directions-intro { border-right: 0; border-bottom: 1px solid var(--line); }.geography-copy { grid-template-columns: 1fr 1fr; }.geography-copy>p:last-child { grid-column: 2; }.geography-rail { grid-template-columns: repeat(3, 1fr); }
  .partnership-section { grid-template-columns: 1fr; }.partner-path { min-height: auto; border-left: 0; border-top: 1px solid var(--line); }.proof-section { grid-template-columns: repeat(2, 1fr); }.proof-section>div:nth-child(2) { border-right: 0; }.proof-section>div:nth-child(-n+2) { border-bottom: 1px solid var(--line); }
  .details-section { grid-template-columns: 1fr; }.details-heading { position: static; }.final-contact { grid-template-columns: 1fr; }
}

@media (max-width: 640px) {
  .topline { min-height: 31px; padding: 0 14px; font-size: 7px; letter-spacing: .11em; }
  .site-header { min-height: 92px; padding: 12px 14px; gap: 7px; }.brand-logo { width: 190px; }.contact-links { gap: 7px; }.contact-links a { min-width: 44px; min-height: 44px; padding: 0 11px; }.contact-links.compact a span:last-child { display: none; }.contact-links-1 { gap: 7px; }.contact-links-1 a { min-width: 44px; min-height: 44px; padding: 0 11px; }.contact-links-1.compact a span:last-child { display: none; }.contact-icon { font-size: 18px; }
  .hero { min-height: auto; }.hero-copy { min-height: 590px; padding: 64px 20px 54px; }.eyebrow { margin-bottom: 26px; font-size: 8px; }.hero h1 { font-size: clamp(50px, 15vw, 70px); }.hero-lead { margin-top: 27px; font-size: 15px; }.capability-line { margin-top: 32px; padding-top: 18px; gap: 8px; font-size: 7px; }
  .hero-network { min-height: 480px; }.network-center { right: 8%; font-size: 14px; }.network-node { font-size: 7px; }.node-england { left: 12%; }.node-scotland { left: 20%; }.node-ireland { left: 6%; }.node-uae { left: 30%; }.node-china { right: 4%; }.supply-card { width: 56%; min-height: 160px; padding: 18px; right: 4%; bottom: 2%; }.supply-card strong { margin-top: 22px; font-size: 24px; }.supply-card>div i { width: 31px; height: 4px; }
  .scroll-cue { top: 572px; }.identity-strip>div { min-height: 96px; padding: 20px; }
  .about-intro { min-height: auto; padding: 68px 20px; grid-template-columns: 1fr; gap: 26px; }.section-label { flex-direction: row; align-items: center; }.section-label>span { font-size: 42px; }.section-label .eyebrow { margin: 0; }.about-intro h2 { font-size: 49px; }.about-summary { grid-column: auto; }
  .cycle-section { padding: 68px 20px 76px; }.section-heading-dark { margin-bottom: 36px; }.section-heading-dark h2 { font-size: 46px; }.section-number { display: none; }.cycle-grid { grid-template-columns: 1fr; }.cycle-grid article, .cycle-grid article:last-child { min-height: 235px; grid-column: auto; }.step-mark { margin: 30px 0 22px; }
  .directions-intro { padding: 68px 20px; }.directions-intro h2 { font-size: 47px; }.directions-grid { grid-template-columns: 1fr; }.direction-card { min-height: 320px; padding: 26px 20px; border-right: 0; border-bottom: 1px solid var(--line)!important; }.direction-card:last-child { border-bottom: 0!important; }.direction-top { min-height: 150px; }
  .geography-section { padding: 68px 20px 76px; }.geography-copy { grid-template-columns: 1fr; gap: 28px; }.geography-copy h2 { font-size: 45px; }.geography-copy>p:last-child { grid-column: auto; }.geography-rail { margin-top: 45px; grid-template-columns: 1fr 1fr; }.geography-rail article { min-height: 175px; padding: 18px; }.geography-rail span { margin-top: 38px; font-size: 12px; }
  .partnership-copy { padding: 68px 20px 58px; }.partnership-copy h2 { font-size: 44px; }.partnership-lead { margin: 27px 0 36px; font-size: 14px; }.partnership-points { grid-template-columns: 1fr; gap: 30px; }.partnership-points h3 { min-height: 0; }.partner-path { padding: 58px 20px 54px; }.partner-path::after { font-size: 72px; }.partner-path-heading h3 { font-size: 34px; }.partner-path ol { margin-top: 36px; }.partner-path-note { margin-top: 26px; }
  .proof-section { grid-template-columns: 1fr; }.proof-section>div { min-height: 130px; padding: 27px 20px; display: grid; grid-template-columns: 55% minmax(0, 45%); align-items: center; justify-content: normal; border-right: 0; border-bottom: 1px solid var(--line)!important; }.proof-section>div:last-child { border-bottom: 0!important; }.proof-section span { width: 100%; justify-self: start; text-align: left; }
  .details-section { padding: 68px 20px 0; gap: 44px; }.details-heading h2 { font-size: 46px; }.details-content { grid-template-columns: 1fr; }.details-content article { min-height: auto; padding: 25px 20px; }.operations-mosaic { grid-template-columns: repeat(3, minmax(0, 1fr)); grid-template-rows: repeat(4, 94px); }.final-contact { padding: 68px 20px; gap: 45px; }.final-contact h2 { font-size: 45px; }.contact-panel { padding: 20px; }.contact-panel .contact-links { grid-template-columns: 1fr; }.contact-panel .contact-links a span:last-child { display: inline; }.contact-panel .contact-links-1 { grid-template-columns: 1fr; }.contact-panel .contact-links-1 a span:last-child { display: inline; }.contact-panel dl>div { gap: 16px; flex-direction: column; }
  footer { padding: 45px 20px 24px; grid-template-columns: 1fr; gap: 22px; }.footer-logo { width: 220px; }
}

@media (max-width: 359px) {
  .brand-logo { width: 168px; }
}

.hero h1 { font-size: clamp(48px, 4.15vw, 76px); }
.hero-longword { white-space: nowrap; }

.world-map, .route-map { width: 96%; height: 91%; position: absolute; z-index: 1; left: 2%; top: 2%; }
.world-map { opacity: .9; filter: blur(.12px); -webkit-mask-image: radial-gradient(ellipse at 54% 49%, #000 58%, #000e 78%, transparent 100%); mask-image: radial-gradient(ellipse at 54% 49%, #000 58%, #000e 78%, transparent 100%); }
.map-ambient { fill: url(#map-ambient-glow); }
.continent-shapes { fill: url(#map-land-depth); stroke: #65727c; stroke-width: .48; stroke-opacity: .58; stroke-linejoin: round; filter: url(#map-depth-shadow); }
.continent-shapes .supply-country { fill: url(#map-supply-depth); stroke: #00aeef; stroke-width: .82; stroke-opacity: .82; }
.route-map { z-index: 2; pointer-events: none; }
.route-lines path { fill: none; stroke: #d4dbe077; stroke-width: 1.25; stroke-dasharray: 3 5; }
.route-lines .route-accent { stroke: var(--signal); stroke-width: 2; stroke-dasharray: none; }
.map-marker circle { fill: var(--signal); stroke: #9be9ff; stroke-width: 2; filter: drop-shadow(0 0 7px #00aeef); }
.map-marker line { stroke: #84929d; stroke-width: .8; }
.map-marker text { fill: #bdc6cd; font-family: Arial, Helvetica, sans-serif; font-size: 10px; font-weight: 800; letter-spacing: 1px; text-transform: uppercase; }
.map-destination circle { stroke-width: 3; }
.map-destination text { fill: #f5f5f2; font-size: 18px; letter-spacing: 0; }

.about-intro { min-height: 610px; grid-template-columns: 1.12fr .88fr; gap: 8vw; align-items: start; }
.about-summary { grid-column: auto; }

.cycle-list { margin: 0; padding: 0; position: relative; list-style: none; border-top: 1px solid #3a434b; }
.cycle-list::before { content: ""; width: 1px; position: absolute; left: 8px; top: 54px; bottom: 54px; background: #00aeef55; }
.cycle-list li { min-height: 116px; padding: 25px 12px 25px 0; display: grid; grid-template-columns: 18px minmax(190px, .55fr) 1fr; gap: 24px; align-items: center; position: relative; border-bottom: 1px solid #3a434b; }
.cycle-list li>i { width: 9px; height: 9px; position: relative; z-index: 1; border: 2px solid #8de5ff; border-radius: 50%; background: var(--signal); box-shadow: 0 0 0 6px #00aeef12, 0 0 14px #00aeef88; }
.cycle-list h3 { margin: 0; font-family: Arial, Helvetica, sans-serif; font-size: clamp(18px, 1.45vw, 23px); font-weight: 800; letter-spacing: -.015em; text-transform: uppercase; }
.cycle-list p { max-width: 720px; margin: 0; color: #87919a; font-family: Arial, Helvetica, sans-serif; font-size: 13px; line-height: 1.7; }

@media (max-width: 980px) {
  .hero h1 { font-size: clamp(54px, 8vw, 72px); }
  .about-intro { grid-template-columns: minmax(0, 1fr); gap: 42px; }
  .about-headline, .about-summary { min-width: 0; max-width: 100%; }
  .about-summary { grid-column: auto; }
  .cycle-list li { grid-template-columns: 18px minmax(160px, .5fr) 1fr; gap: 18px; }
}

@media (max-width: 640px) {
  .hero h1 { max-width: 100%; font-size: clamp(38px, 10.8vw, 50px); }
  .hero-longword { white-space: normal; }
  .world-map, .route-map { width: 116%; left: -8%; }
  .map-marker text { font-size: 9px; }
  .marker-scotland line, .marker-england line, .marker-ireland line { display: none; }
  .marker-scotland text { text-anchor: start; transform: translateX(44px); }
  .marker-england text { text-anchor: start; transform: translateX(43px); }
  .marker-ireland text { text-anchor: start; transform: translateX(39px); }
  .map-destination text { font-size: 16px; }
  .network-center { right: 7%; top: 36%; }
  .node-scotland { left: 24%; }.node-england { left: 26%; }.node-ireland { left: 20%; }.node-uae { left: 38%; }.node-china { right: 1%; }
  .about-intro { grid-template-columns: minmax(0, 1fr); gap: 34px; }
  .about-intro h2 { max-width: 100%; font-size: clamp(34px, 9.4vw, 40px); overflow-wrap: normal; }
  .about-summary p, .about-summary .lead-copy { width: 100%; max-width: 100%; overflow-wrap: break-word; }
  .cycle-list::before { left: 7px; }
  .cycle-list li { min-height: 142px; padding: 22px 0; grid-template-columns: 16px 1fr; gap: 12px; align-items: start; }
  .cycle-list li>i { margin-top: 5px; }
  .cycle-list h3 { padding-top: 1px; font-size: 18px; }
  .cycle-list p { grid-column: 2 / -1; font-size: 12px; }
}

.details-content { display: block; border-top: 1px solid #aeb3b6; border-left: 1px solid #aeb3b6; }
.regional-flow { position: relative; }
.regional-flow::before { content: ""; width: 1px; position: absolute; z-index: 4; left: 112px; top: 44px; bottom: 44px; background: linear-gradient(180deg, transparent, #00aeef 14%, #00aeef 86%, transparent); }
.details-content .region-row { min-height: 245px; padding: 0; display: grid; grid-template-columns: 43% 57%; gap: 0; align-items: stretch; isolation: isolate; position: relative; overflow: hidden; border-right: 1px solid #aeb3b6; border-bottom: 1px solid #aeb3b6; }
.details-content .region-row::before { content: ""; width: 9px; height: 9px; position: absolute; z-index: 5; left: 107px; top: 50%; border: 2px solid #b8efff; border-radius: 50%; background: var(--signal); box-shadow: 0 0 0 6px #00aeef14, 0 0 13px #00aeef88; transform: translateY(-50%); }
.details-content .region-row::after { content: ""; position: absolute; z-index: 1; inset: 0; background: linear-gradient(90deg, transparent 0 34%, #e7e6e1c7 48%, #e7e6e1 63%); }
.region-image { width: 100%; height: 100%; position: absolute; z-index: 0; inset: 0; object-fit: cover; object-position: center; }
.region-code { padding: 32px 34px; position: relative; z-index: 3; align-self: stretch; display: flex; flex-direction: column; justify-content: flex-end; }
.region-code b { color: #0710172b; font-size: clamp(54px, 5vw, 80px); line-height: .8; letter-spacing: -.08em; text-shadow: 0 1px 0 #fff5; }
.region-copy { padding: 36px 38px 34px 20px; position: relative; z-index: 3; align-self: center; }
.details-content .region-copy h3 { margin: 0 0 8px; font-size: clamp(19px, 1.55vw, 24px); letter-spacing: -.02em; }
.region-copy strong { display: block; color: #007fae; font-size: 9px; letter-spacing: .11em; line-height: 1.5; text-transform: uppercase; }
.details-content .region-copy p { max-width: 720px; margin-top: 17px; font-size: 13px; line-height: 1.8; }
.outcome-flow { border-top: 0; }
.details-content .outcome-band { min-height: 195px; padding: 34px; display: grid; grid-template-columns: 1fr; gap: 0; align-items: center; border-right: 1px solid #aeb3b6; border-bottom: 1px solid #aeb3b6; }
.details-content .outcome-band h3 { margin: 0 0 14px; font-size: clamp(20px, 1.75vw, 27px); letter-spacing: -.025em; }
.details-content .outcome-band p { max-width: 760px; font-size: 13px; line-height: 1.8; }
.outcome-partner { background: #0d1216; color: var(--white); }
.details-content .outcome-partner p { color: #9ca8b1; }
.outcome-training { background: linear-gradient(120deg, #00aeef, #0085b5); color: #fff; }
.details-content .outcome-training p { color: #00445f; }

@media (max-width: 980px) {
  .details-section { gap: 48px; }
  .details-content .region-row { grid-template-columns: 40% 60%; }.details-content .outcome-band { grid-template-columns: 1fr; }
  .regional-flow::before { left: 94px; }.details-content .region-row::before { left: 89px; }
}

@media (max-width: 640px) {
  .details-content .region-row { min-height: auto; padding: 0; grid-template-columns: 1fr; gap: 0; }.details-content .outcome-band { min-height: auto; padding: 26px 20px; grid-template-columns: 1fr; gap: 22px; }
  .regional-flow::before, .details-content .region-row::before { display: none; }
  .details-content .region-row::after { height: 190px; bottom: auto; background: linear-gradient(180deg, transparent 45%, #e7e6e1 100%); }
  .region-image { height: 190px; position: relative; grid-column: 1; grid-row: 1; object-position: left center; }
  .region-code { width: 100%; height: 190px; min-height: 0; padding: 20px; position: absolute; left: 0; top: 0; flex-direction: row; align-items: flex-end; }
  .region-code b { font-size: 52px; color: #0710174a; }
  .region-copy { padding: 24px 20px 28px; grid-column: 1; grid-row: 2; background: #e7e6e1; }
  .details-content .region-copy h3 { font-size: 20px; }
  .details-content .region-copy p, .details-content .outcome-band p { font-size: 12px; }
  .details-content .outcome-band h3 { font-size: 21px; }
}

@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } * { transition: none !important; } }
