:root {
  --ink: #09111e;
  --paper: #eff2f3;
  --mist: #cad2d6;
  --line: rgba(9, 17, 30, 0.16);
  --night: #06101e;
  --night-soft: #0c1a2a;
  --white: #f7fbfc;
  --signal: #8cd8ff;
  --signal-soft: rgba(140, 216, 255, 0.22);
  --accent: #4ab6ef;
  --image: url('/assets/jfc-tech-network.jpg');
  --display: "Helvetica Neue", Helvetica, Arial, sans-serif;
  --mono: "SFMono-Regular", Consolas, "Liberation Mono", monospace;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; background: var(--night); }
body { margin: 0; color: var(--ink); background: var(--night); font-family: var(--display); -webkit-font-smoothing: antialiased; overflow-x: hidden; }
body[data-theme="agriculture"] { --signal: #c7f0b6; --signal-soft: rgba(164, 230, 132, 0.26); --accent: #79c58e; --image: url('/assets/jfc-agriculture.jpg'); }
body[data-theme="global"] { --signal: #ffcb8a; --signal-soft: rgba(255, 180, 88, 0.25); --accent: #f29a55; --image: linear-gradient(128deg, #182d4f 6%, #254b6f 45%, #c7754f 100%); }
button, a { font: inherit; }
a { color: inherit; text-decoration: none; }
button { cursor: pointer; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.skip-link { position: fixed; left: 1rem; top: -100px; padding: .8rem 1rem; z-index: 100; background: var(--white); color: var(--ink); border-radius: 0 0 8px 8px; font-size: .8rem; }
.skip-link:focus { top: 0; }
.cursor-glow { position: fixed; width: 36rem; height: 36rem; left: var(--x, 52%); top: var(--y, 30%); translate: -50% -50%; pointer-events: none; z-index: 1; border-radius: 50%; background: radial-gradient(circle, var(--signal-soft) 0%, transparent 64%); mix-blend-mode: screen; opacity: .66; transition: background .6s ease; }

.site-header { position: absolute; z-index: 20; top: 0; left: 0; width: 100%; height: 6.2rem; display: flex; align-items: center; justify-content: space-between; padding: 0 clamp(1.4rem, 4vw, 5rem); color: var(--white); border-bottom: 1px solid rgba(245, 251, 252, .17); }
.brand { display: inline-flex; align-items: center; gap: .72rem; letter-spacing: .04em; }
.brand-mark { position: relative; display: inline-flex; gap: 2px; align-items: flex-end; width: 1.5rem; height: 1.5rem; }
.brand-mark i { display: block; width: 4px; background: currentColor; border-radius: 4px; transform: skewY(-25deg); }
.brand-mark i:nth-child(1) { height: .72rem; opacity: .7; }.brand-mark i:nth-child(2) { height: 1.1rem; }.brand-mark i:nth-child(3) { height: 1.46rem; }
.brand-word { display: flex; flex-direction: column; line-height: .86; }.brand-word b { font-size: 1.05rem; letter-spacing: .2em; }.brand-word small { font-family: var(--mono); margin-top: .38rem; font-size: .42rem; letter-spacing: .17em; }
.main-nav { display: flex; gap: 2.05rem; margin-left: auto; margin-right: 2.3rem; }.main-nav a, .language { font-family: var(--mono); font-size: .65rem; letter-spacing: .08em; text-transform: uppercase; color: rgba(247, 251, 252, .76); transition: color .25s ease; }.main-nav a:hover, .main-nav a:focus-visible { color: var(--signal); }
.header-actions { display: flex; align-items: center; gap: 1.3rem; }.language-picker { display: flex; gap: .35rem; }.language { padding: .25rem; border: 0; background: transparent; }.language.active { color: var(--white); text-decoration: underline; text-decoration-color: var(--signal); text-underline-offset: .37rem; }.nav-cta { padding: .72rem 1rem; color: var(--night); background: var(--white); font-size: .67rem; font-family: var(--mono); letter-spacing: .04em; transition: background .25s, transform .25s; }.nav-cta:hover { background: var(--signal); transform: translateY(-2px); }

.hero { min-height: min(850px, 100svh); position: relative; display: grid; align-items: center; overflow: hidden; padding: 9rem clamp(1.4rem, 10vw, 12rem) 7rem; }.section-dark { background: var(--night); color: var(--white); }.section-light { background: var(--paper); color: var(--ink); }
.hero-media { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(5,15,30,.94) 0%, rgba(5,15,30,.58) 40%, rgba(5,15,30,.12) 100%), url('/assets/jfc-hero-global.jpg') center / cover no-repeat; filter: saturate(.9) contrast(1.07); transform: scale(1.02); animation: slowZoom 18s ease-in-out infinite alternate; }.hero::after { content: ""; position: absolute; inset: 0; background: linear-gradient(0deg, var(--night) 0%, transparent 26%, transparent 70%, rgba(6,16,30,.2)); }.hero-grid { position:absolute; inset: 0; opacity:.21; background-image: linear-gradient(rgba(154,219,245,.13) 1px, transparent 1px), linear-gradient(90deg, rgba(154,219,245,.13) 1px, transparent 1px); background-size: 7rem 7rem; mask-image: linear-gradient(to right, black, transparent 72%); }.hero-orb { position:absolute; width:40vw; aspect-ratio:1; border-radius:50%; border:1px solid rgba(140,216,255,.16); }.orb-one { right:-16vw; top:5vh; }.orb-two { right:-8vw; top:15vh; scale:.72; border-color:rgba(140,216,255,.09); }.hero-content, .hero-footer { position: relative; z-index: 2; }.hero-content { max-width: 48rem; padding-top: 2rem; }.eyebrow, .eyebrow-dark { display: flex; align-items: center; gap: .6rem; font: .61rem var(--mono); text-transform: uppercase; letter-spacing: .11em; }.eyebrow { color: rgba(247,251,252,.82); }.eyebrow-dark { color: rgba(9,17,30,.7); }.eyebrow span:first-child, .eyebrow-dark span:first-child { display:inline-block; width:1.5rem; height:1px; background: currentColor; }.eyebrow em { font-style:normal; color:var(--signal); }.display { margin: 1.8rem 0 1.65rem; max-width: 11ch; font-size: clamp(4.4rem, 8.6vw, 9.5rem); line-height: .84; letter-spacing: -.078em; font-weight: 500; }.display em, .headline em, .contact-title em { font-family: Georgia, "Times New Roman", serif; font-weight: 400; letter-spacing: -.07em; }.display em { color: var(--signal); }.hero-deck { max-width: 31rem; margin:0; color: rgba(247,251,252,.78); font-size: clamp(1.05rem, 1.3vw, 1.32rem); line-height: 1.5; }.hero-actions { display: flex; align-items: center; gap: 1.8rem; margin-top: 2.25rem; }.button { display: inline-flex; align-items: center; justify-content: space-between; gap: 2.7rem; min-height: 3.25rem; padding: .85rem 1rem  .85rem 1.15rem; border: 1px solid transparent; font: .68rem var(--mono); letter-spacing: .045em; text-transform: uppercase; transition: transform .25s, background .25s, color .25s; }.button-primary { color: var(--night); background: var(--signal); }.button-primary:hover, .button-primary:focus-visible { transform: translateY(-3px); background: var(--white); }.button b { font-size: 1.35rem; font-family: var(--display); font-weight: 400; }.text-link { display: inline-flex; gap:.65rem; align-items:center; color: rgba(247,251,252,.75); border-bottom: 1px solid rgba(247,251,252,.3); padding-bottom: .35rem; font: .66rem var(--mono); letter-spacing:.06em; text-transform:uppercase; }.text-link:hover { color: var(--signal); }.hero-footer { position:absolute; left: clamp(1.4rem, 4vw, 5rem); bottom: 2.2rem; right: clamp(1.4rem, 4vw, 5rem); display:flex; align-items:center; gap:1rem; font: .56rem var(--mono); text-transform:uppercase; letter-spacing:.1em; color:rgba(247,251,252,.54); }.scroll-line { flex: 1; height:1px; background:rgba(247,251,252,.24); overflow:hidden; }.scroll-line span { display:block; width:24%; height:100%; background:var(--signal); animation: scrollLine 2.8s ease-in-out infinite; }.hero-index { margin-left:auto; }.hero-index span { color:var(--signal); }

.statement { display:grid; grid-template-columns: minmax(12rem, 1fr) minmax(0, 2.5fr); gap: clamp(2rem, 9vw, 10rem); padding: clamp(7rem, 14vw, 14rem) clamp(1.4rem, 10vw, 12rem); border-top:1px solid rgba(247,251,252,.12); }.statement-side { display:flex; flex-direction:column; justify-content:space-between; min-height:18rem; }.section-number { font: .65rem var(--mono); color:var(--signal); }.statement-side p { max-width: 14rem; margin:0; color:rgba(247,251,252,.61); font-size:.91rem; line-height:1.5; }.kicker { margin:0 0 1.35rem; font: .7rem var(--mono); color:var(--signal); letter-spacing:.1em; text-transform:uppercase; }.headline { margin:0; max-width:12ch; color:var(--white); font-size:clamp(3rem, 6.2vw, 7rem); line-height:.92; letter-spacing:-.075em; font-weight:500; }.headline em { color:var(--signal); }.body-large { max-width: 34rem; color:rgba(247,251,252,.72); margin:2rem 0 0; font-size:clamp(1.1rem, 1.5vw, 1.45rem); line-height:1.42; }

.thesis { padding: clamp(6rem, 10vw, 10rem) clamp(1.4rem, 8vw, 9rem); overflow:hidden; }.thesis-intro { display:flex; justify-content:space-between; gap:4rem; align-items:flex-end; }.ink { color:var(--ink); }.thesis-copy { max-width:20rem; margin:0; color:rgba(9,17,30,.65); line-height:1.55; font-size:1rem; }.spectrum-wrap { position:relative; max-width:75rem; margin:clamp(4rem, 8vw, 9rem) auto 0; padding: 1rem 0 0; }.spectrum-scale { display:flex; justify-content:space-between; margin:0 0 .5rem; color:rgba(9,17,30,.46); font: .58rem var(--mono); }.sector-range { position:relative; z-index:2; appearance:none; width:100%; height:5px; margin:0; border-radius:0; outline:none; background:linear-gradient(90deg, #6fbeef 0%, #cbe8d7 50%, #f7ad6f 100%); }.sector-range::-webkit-slider-thumb { appearance:none; width:24px; height:24px; border-radius:50%; border:5px solid var(--paper); background:var(--ink); box-shadow:0 0 0 1px var(--ink); cursor:grab; }.sector-range::-moz-range-thumb { width:15px; height:15px; border-radius:50%; border:5px solid var(--paper); background:var(--ink); box-shadow:0 0 0 1px var(--ink); cursor:grab; }.spectrum-labels { display:flex; justify-content:space-between; margin-top:.65rem; color:rgba(9,17,30,.45); font:.55rem var(--mono); }.spectrum-sectors { display:grid; grid-template-columns:repeat(3, 1fr); gap:1rem; margin-top:3.3rem; }.sector-tab { padding:0 0 1rem; border:0; border-bottom:1px solid var(--line); background:transparent; color:rgba(9,17,30,.52); text-align:left; display:flex; justify-content:space-between; gap:1rem; transition:color .25s, border-color .25s; }.sector-tab span { font:.55rem var(--mono); }.sector-tab b { font-size:.83rem; font-weight:500; }.sector-tab.active { color:var(--ink); border-color:var(--ink); }.sector-stage { display:grid; grid-template-columns: 1.38fr 1fr; gap:clamp(2rem, 7vw, 8rem); max-width:82rem; margin:4.3rem auto 0; align-items:center; transition:opacity .24s ease, transform .24s ease; }.sector-stage.switching { opacity:0; transform:translateY(8px); }.sector-visual { position:relative; min-height:29rem; overflow:hidden; background:#0f1c2b; }.sector-video, .sector-image, .sector-video-wash { position:absolute; inset:0; width:100%; height:100%; }.sector-video { z-index:0; object-fit:cover; opacity:0; transition:opacity .55s ease; }.sector-image { z-index:1; background:linear-gradient(125deg, rgba(5,15,29,.42), rgba(5,15,29,.02)), var(--image) center / cover; transition:background .55s ease, opacity .55s ease; }.sector-video-wash { z-index:2; pointer-events:none; background:linear-gradient(140deg, rgba(3,13,27,.5), transparent 56%, rgba(3,13,27,.32)); opacity:0; transition:opacity .55s ease; }.sector-visual[data-motion="video"] .sector-video, .sector-visual[data-motion="video"] .sector-video-wash { opacity:1; }.sector-visual[data-motion="video"] .sector-image { opacity:0; }.sector-video-controls { position:absolute; z-index:3; left:1rem; bottom:1rem; display:flex; gap:.45rem; }.video-control { border:1px solid rgba(247,251,252,.45); padding:.58rem .72rem; color:var(--white); background:rgba(5,15,29,.52); backdrop-filter:blur(10px); font:.54rem var(--mono); letter-spacing:.06em; text-transform:uppercase; transition:background .2s, color .2s; }.video-control:hover, .video-control:focus-visible { color:var(--night); background:var(--signal); }.motion-badge { position:absolute; z-index:3; top:1rem; left:1rem; padding:.43rem .56rem; color:var(--white); border:1px solid rgba(247,251,252,.3); background:rgba(5,15,29,.45); font:.5rem var(--mono); letter-spacing:.1em; }.visual-label { position:absolute; z-index:3; right:1.05rem; bottom:1rem; color:rgba(247,251,252,.72); writing-mode:vertical-rl; font:.54rem var(--mono); letter-spacing:.1em; }.sector-meta { margin:0 0 1.2rem; color:var(--accent); font:.61rem var(--mono); letter-spacing:.1em; }.sector-title { margin:0; font-size:clamp(3.2rem, 5vw, 5.6rem); line-height:.85; letter-spacing:-.08em; font-weight:500; }.sector-description { max-width:29rem; margin:1.7rem 0; color:rgba(9,17,30,.7); font-size:1.1rem; line-height:1.48; }.sector-tags { display:flex; flex-wrap:wrap; gap:.45rem; }.sector-tags span { border:1px solid rgba(9,17,30,.22); padding:.44rem .62rem; font:.57rem var(--mono); letter-spacing:.03em; }.arrow-link { margin-top:2.3rem; display:inline-flex; align-items:center; gap:.8rem; padding-bottom:.4rem; border-bottom:1px solid var(--ink); font:.64rem var(--mono); letter-spacing:.05em; text-transform:uppercase; }.arrow-link b { color:var(--accent); font-size:1.1rem; }

.services { padding:clamp(6rem, 10vw, 10rem) clamp(1.4rem, 8vw, 9rem); }.services-heading { max-width:70rem; margin:0 auto; }.service-list { max-width:70rem; margin:clamp(3rem, 7vw, 7rem) auto 0; border-top:1px solid rgba(247,251,252,.22); }.service-card { display:grid; grid-template-columns:.35fr 1fr 1.25fr; gap:2rem; align-items:start; padding:2.1rem 0; border-bottom:1px solid rgba(247,251,252,.2); transition:padding .35s, color .35s; }.service-card:hover { padding-left:1rem; color:var(--signal); }.service-index { color:var(--signal); font:.62rem var(--mono); }.service-card h3 { margin:0; font-size:clamp(1.55rem,2.5vw,2.45rem); line-height:.94; font-weight:500; letter-spacing:-.055em; }.service-card ul { margin:0; padding:0; columns:2; list-style:none; color:rgba(247,251,252,.61); font-size:.86rem; line-height:1.8; }.service-card li::before { content:"—"; color:var(--signal); margin-right:.5rem; }

.contrast { padding:clamp(6rem, 10vw, 10rem) clamp(1.4rem, 8vw, 9rem); }.contrast-top { max-width:70rem; margin:0 auto 4.4rem; }.comparison { max-width:70rem; margin:0 auto; border-top:1px solid var(--line); }.comparison-head, .comparison-row { display:grid; grid-template-columns:.85fr 1fr 1fr; gap:2rem; align-items:center; }.comparison-head { padding:1rem 0; color:rgba(9,17,30,.55); font:.57rem var(--mono); text-transform:uppercase; letter-spacing:.07em; }.comparison-row { padding:1.45rem 0; border-top:1px solid var(--line); }.comparison-row b { font-size:.88rem; font-weight:500; }.comparison-row span { color:rgba(9,17,30,.6); font-size:.92rem; }.jfc-cell { color:var(--ink) !important; }.comparison-head .jfc-cell { color:var(--accent) !important; }.comparison-note { max-width:70rem; margin:1.2rem auto 0; color:rgba(9,17,30,.48); font:.68rem var(--mono); line-height:1.5; }

.facts { position:relative; overflow:hidden; padding:clamp(6rem, 10vw, 10rem) clamp(1.4rem, 8vw, 9rem); }.facts-ambient { position:absolute; width:100vw; height:100vw; border:1px solid var(--signal-soft); border-radius:50%; right:-44vw; top:-21vw; box-shadow:0 0 0 8vw rgba(140,216,255,.015), 0 0 0 16vw rgba(140,216,255,.01); }.facts-heading, .fact-grid { position:relative; z-index:1; max-width:70rem; margin:0 auto; }.fact-grid { display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid rgba(247,251,252,.21); margin-top:clamp(3.5rem,7vw,7rem); }.fact { padding:1.6rem 1.4rem 1.3rem 0; border-right:1px solid rgba(247,251,252,.18); min-height:12.5rem; }.fact:last-child { border:0; }.fact span { display:block; color:var(--signal); font-size:clamp(1.5rem, 2.6vw, 2.6rem); font-weight:500; letter-spacing:-.065em; }.fact p { margin:1.3rem 0 0; max-width:12rem; color:rgba(247,251,252,.63); font-size:.82rem; line-height:1.5; }

.responsibility { display:grid; grid-template-columns:1.05fr 1fr; min-height:48rem; }.responsibility-image { position:relative; background:linear-gradient(120deg, rgba(5,16,28,.38), rgba(5,16,28,0)), url('/assets/jfc-agriculture.jpg') center / cover; }.responsibility-image::after { content:""; position:absolute; inset:0; background:linear-gradient(0deg, rgba(8,17,27,.46), transparent 48%); }.responsibility-content { padding:clamp(5rem, 10vw, 10rem) clamp(1.4rem, 8vw, 9rem); align-self:center; }.body-medium { max-width:32rem; margin:1.8rem 0 2.2rem; color:rgba(9,17,30,.69); font-size:1.08rem; line-height:1.52; }.principles { display:flex; flex-wrap:wrap; gap:.52rem; max-width:32rem; }.principles span { padding:.6rem .76rem; background:rgba(9,17,30,.06); font:.59rem var(--mono); letter-spacing:.02em; }

.contact { padding:clamp(6rem, 10vw, 10rem) clamp(1.4rem, 8vw, 9rem) 3rem; }.contact-top, .conversation-chooser, .contact-bottom { max-width:70rem; margin-left:auto; margin-right:auto; }.contact-title { margin:1.2rem 0 0; font-size:clamp(4rem, 8vw, 8.8rem); line-height:.84; letter-spacing:-.085em; font-weight:500; }.contact-title em { color:var(--signal); }.conversation-chooser { display:grid; grid-template-columns:repeat(3,1fr); gap:1px; margin-top:clamp(3.5rem, 7vw, 7rem); background:rgba(247,251,252,.22); border:1px solid rgba(247,251,252,.22); }.conversation-choice { min-height:12rem; padding:1.4rem; display:flex; flex-direction:column; align-items:flex-start; text-align:left; color:rgba(247,251,252,.61); background:var(--night); border:0; transition:background .25s, color .25s; }.conversation-choice:hover, .conversation-choice:focus-visible, .conversation-choice.selected { color:var(--night); background:var(--signal); }.choice-dot { display:block; width:.6rem; height:.6rem; border:1px solid currentColor; border-radius:50%; margin-bottom:auto; }.conversation-choice.selected .choice-dot { background:currentColor; }.conversation-choice b { margin-top:2.4rem; font-size:1.2rem; font-weight:500; }.conversation-choice small { margin-top:.45rem; font:.56rem var(--mono); line-height:1.4; letter-spacing:.03em; }.contact-bottom { display:flex; align-items:center; justify-content:space-between; gap:2rem; padding-top:2.5rem; }.contact-message { margin:0; color:rgba(247,251,252,.63); font-size:.9rem; }.contact-message strong { color:var(--signal); font-weight:500; }.button-contact { flex:none; }

.site-footer { display:grid; grid-template-columns:1fr 1.6fr 1fr; gap:2rem; align-items:start; padding:2rem clamp(1.4rem,4vw,5rem); color:rgba(247,251,252,.6); border-top:1px solid rgba(247,251,252,.17); background:var(--night); font:.57rem var(--mono); line-height:1.7; letter-spacing:.015em; }.footer-brand { display:flex; gap:.6rem; align-items:center; color:var(--white); letter-spacing:.1em; }.footer-legal p { margin:0; }.footer-legal strong { font-weight:500; color:var(--white); }.footer-links { display:flex; justify-content:flex-end; gap:1.3rem; }.footer-links a:hover { color:var(--signal); }

.reveal { opacity:0; transform:translateY(24px); transition:opacity .8s cubic-bezier(.2,.7,.2,1), transform .8s cubic-bezier(.2,.7,.2,1); }.reveal.visible { opacity:1; transform:none; }.service-card.reveal:nth-child(2), .fact.reveal:nth-child(2) { transition-delay:.08s; }.service-card.reveal:nth-child(3), .fact.reveal:nth-child(3) { transition-delay:.16s; }.service-card.reveal:nth-child(4), .fact.reveal:nth-child(4) { transition-delay:.24s; }
@keyframes slowZoom { from { transform:scale(1.02); } to { transform:scale(1.1); } } @keyframes scrollLine { 0% { transform:translateX(-105%); } 55%, 100% { transform:translateX(420%); } }

@media (max-width: 850px) { .site-header { height:5rem; }.main-nav { display:none; }.header-actions { gap:.7rem; }.nav-cta { display:none; }.hero { min-height:46rem; padding:7.8rem 1.4rem 6rem; }.hero-media { background-position:65% center; }.hero-content { padding-top:0; }.display { font-size:clamp(4rem, 15vw, 7rem); }.statement { grid-template-columns:1fr; gap:2.8rem; padding:6rem 1.4rem; }.statement-side { min-height:unset; flex-direction:row; gap:2rem; }.statement-side p { max-width:19rem; }.thesis, .services, .contrast, .facts, .contact { padding-left:1.4rem; padding-right:1.4rem; }.thesis-intro { display:block; }.thesis-copy { margin-top:1.5rem; }.sector-stage { grid-template-columns:1fr; gap:2.3rem; }.sector-visual { min-height:22rem; }.service-card { grid-template-columns:.28fr 1fr; }.service-card ul { grid-column:2; columns:1; }.comparison-head, .comparison-row { grid-template-columns:.72fr 1fr 1fr; gap:1rem; }.comparison-row span { font-size:.8rem; }.fact-grid { grid-template-columns:repeat(2, 1fr); }.fact:nth-child(2) { border-right:0; }.fact:nth-child(n+3) { border-top:1px solid rgba(247,251,252,.18); }.responsibility { grid-template-columns:1fr; }.responsibility-image { min-height:25rem; }.site-footer { grid-template-columns:1fr; }.footer-links { justify-content:flex-start; } }
@media (max-width: 560px) { .language-picker { display:none; }.brand-word small { display:none; }.hero-footer p:first-child { display:none; }.display { font-size:3.85rem; }.hero-actions { align-items:flex-start; flex-direction:column; gap:1.2rem; }.button { width:100%; }.spectrum-sectors { gap:.7rem; }.sector-tab { flex-direction:column; }.sector-tab b { font-size:.7rem; }.sector-stage { margin-top:3.4rem; }.sector-title { font-size:3.7rem; }.service-card { grid-template-columns:.3fr 1fr; gap:1rem; }.service-card h3 { font-size:1.6rem; }.comparison { overflow-x:auto; }.comparison-head, .comparison-row { min-width:35rem; }.facts-heading .headline { font-size:3.5rem; }.fact-grid { grid-template-columns:1fr; }.fact { border-right:0; border-top:1px solid rgba(247,251,252,.18); min-height:unset; }.fact:first-child { border-top:0; }.responsibility-content { padding:5rem 1.4rem; }.conversation-chooser { grid-template-columns:1fr; }.conversation-choice { min-height:9rem; }.conversation-choice b { margin-top:1.5rem; }.contact-bottom { align-items:flex-start; flex-direction:column; }.button-contact { width:100%; }.site-footer { padding:1.7rem 1.4rem; }.cursor-glow { display:none; } }
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { scroll-behavior:auto !important; animation-duration:.01ms !important; animation-iteration-count:1 !important; transition-duration:.01ms !important; } .reveal { opacity:1; transform:none; } }


.hero-positioning { margin: 1.25rem 0 -0.85rem; max-width: 46rem; color: rgba(247,251,252,.75); font: .62rem var(--mono); letter-spacing: .12em; line-height: 1.5; text-transform: uppercase; }
.company-specs { max-width: 70rem; margin: clamp(3.5rem, 7vw, 7rem) auto 0; }
.company-table { width: 100%; border-collapse: collapse; border-top: 1px solid rgba(247,251,252,.24); }
.company-table tr { border-bottom: 1px solid rgba(247,251,252,.18); }
.company-table th, .company-table td { padding: 1.15rem 0; text-align: left; vertical-align: top; }
.company-table th { width: 31%; color: rgba(247,251,252,.58); font: .61rem var(--mono); letter-spacing: .08em; text-transform: uppercase; }
.company-table td { color: rgba(247,251,252,.84); font-size: .91rem; line-height: 1.5; }
.company-table td strong { color: var(--white); font-weight: 500; }
.company-table td small { display: block; margin-top: .24rem; color: rgba(247,251,252,.56); font-size: .72rem; }
body[data-theme="global"] { --signal: #ffcb8a; --signal-soft: rgba(255, 180, 88, 0.25); --accent: #f29a55; --image: url('/assets/jfc-global-trade.jpg'); }

@media (max-width: 560px) {
  .language-picker { display: flex; }
  .hero-positioning { max-width: 28rem; font-size: .56rem; letter-spacing: .08em; }
  .company-table th, .company-table td { display: block; width: 100%; }
  .company-table tr { display: block; padding: .85rem 0; }
  .company-table th { padding: .1rem 0 .35rem; }
  .company-table td { padding: 0; }
}

.hero-source-links { display:flex; flex-wrap:wrap; align-items:center; gap:.45rem .9rem; max-width:38rem; margin-top:1.15rem; color:rgba(247,251,252,.6); font:.54rem var(--mono); letter-spacing:.04em; text-transform:uppercase; }.hero-source-links > span { color:var(--signal); }.hero-source-links a { display:inline-flex; align-items:center; gap:.36rem; padding-bottom:.2rem; border-bottom:1px solid rgba(247,251,252,.22); transition:color .2s ease, border-color .2s ease; }.hero-source-links a:hover, .hero-source-links a:focus-visible { color:var(--signal); border-color:var(--signal); }.hero-source-links b { font-size:.8rem; font-weight:400; }.site-footer { grid-template-columns:minmax(8rem,.8fr) minmax(16rem,1.25fr) minmax(18rem,1.45fr) auto; gap:1.6rem; }.footer-original-links { min-width:0; }.footer-original-links p { margin:0 0 .55rem; color:var(--signal); font-size:.54rem; letter-spacing:.09em; text-transform:uppercase; }.footer-route-grid { display:flex; flex-wrap:wrap; gap:.38rem .8rem; }.footer-route-grid a { padding-bottom:.18rem; border-bottom:1px solid rgba(247,251,252,.18); transition:color .2s ease, border-color .2s ease; }.footer-route-grid a:hover, .footer-route-grid a:focus-visible { color:var(--signal); border-color:var(--signal); }

@media (max-width: 850px) { .site-footer { grid-template-columns:1fr; }.footer-original-links { max-width:38rem; }.footer-links { justify-content:flex-start; } }
@media (max-width: 560px) { .hero-source-links { gap:.55rem .8rem; margin-top:1rem; font-size:.5rem; }.footer-route-grid { gap:.45rem .75rem; } }
