/* Editorial hierarchy and a quieter, connected supplier journey. */
.home-hero-grid{gap:clamp(32px,5vw,76px);align-items:center}
.home-intro h1{font-size:clamp(2.6rem,4.6vw,4.6rem);font-weight:700;line-height:1.08;letter-spacing:-.045em}
.home-intro>.eyebrow{max-width:42ch;font-size:.8rem;line-height:1.65;letter-spacing:.14em}
.home-intro>p:not(.eyebrow){max-width:43ch}
.home-passport{border-color:#e5edda90;box-shadow:0 28px 65px #00170d50}
.passport-heading{padding:28px}.passport-heading h2{max-width:15ch;font-size:2rem}
.passport-content{padding:26px 28px}.preview-fields>div{padding:14px 0}
.passport-end{border-top:1px solid #ced8c3}
.section{padding:48px 0}
.process-grid{gap:0;border:1px solid var(--line);border-radius:14px;background:var(--cream);overflow:hidden;box-shadow:0 16px 45px #00170d30}
.process-grid>a{border:0;border-radius:0;box-shadow:none;padding:28px;background:transparent}
.process-grid>a+a{border-left:1px solid var(--line)}
.process-grid>a:hover{box-shadow:none;background:white}
.process-number{margin:0 0 24px;padding:0 0 18px;border-radius:0;border-bottom:2px solid #77946b;background:transparent;letter-spacing:.055em;font-size:.8rem}
.process-grid h3{max-width:18ch}.process-grid p{font-size:1rem;line-height:1.7}
.field-grid{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}
.field-copy{display:flex;flex-direction:column;justify-content:center}
.event-photo img{flex:none;height:510px;max-height:none;object-fit:contain}
.event-photo figcaption{flex:1}.event-photo figcaption strong{font-size:1.15rem;letter-spacing:-.015em}
#event-caption{line-height:1.7;max-width:66ch}
#event-view{scroll-margin-top:100px}
.gallery-navigation{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 24px;border-top:1px solid var(--line);background:var(--cream)}
.gallery-navigation button{min-height:44px;padding:8px 16px;border:1px solid #aab8a3;border-radius:6px;color:var(--forest);background:white;font:inherit;font-size:.875rem;font-weight:700}
.gallery-navigation button:hover{background:#e9eddf}#event-count{font-size:.875rem;color:var(--muted);font-variant-numeric:tabular-nums}
.event-thumbnails{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x proximity;scroll-padding:20px;padding:20px;scrollbar-color:#78956d #e9eddf}
.event-thumbnails button{flex:0 0 142px;scroll-snap-align:start}
.event-thumbnails img{height:105px}.event-thumbnails span{font-size:.8rem;min-height:48px}
@media(max-width:760px){.home-hero-grid{gap:32px}.home-intro h1{font-size:clamp(2.5rem,7.8vw,3.7rem)}.section{padding:28px 0}.field-grid{grid-template-columns:minmax(0,1fr)}.event-photo img{height:420px}.event-thumbnails button{flex-basis:132px}}
@media(max-width:680px){.process-grid>a+a{border-left:0;border-top:1px solid var(--line)}.process-grid>a{padding:24px}.process-number{margin-bottom:18px}.passport-heading h2{max-width:none}.event-photo img{height:390px}.home-intro>.eyebrow{font-size:.75rem}}
/* Lead with the positioning; keep the three-step promise secondary. */
.home-intro>.hero-title{font-size:clamp(2rem,4.4vw,4.1rem);line-height:1.08;letter-spacing:-.04em;max-width:19ch;font-weight:700;text-transform:uppercase;color:var(--lime)}
.home-intro>.hero-title span{color:inherit}
.home-intro>p.hero-promise{font-size:clamp(1.375rem,2.1vw,1.75rem);line-height:1.4;font-weight:600;letter-spacing:-.015em;margin-top:24px;color:var(--cream)}
.home-intro>.hero-promise span{color:var(--lime)}
@media(max-width:680px){.home-intro>.hero-title{font-size:clamp(1.8rem,8.7vw,3.5rem);line-height:1.1;max-width:19ch}.home-intro>p.hero-promise{font-size:1.5rem;line-height:1.4;margin-top:22px}}
/* The opening uses a bespoke global map; the lower brand canvas is unchanged. */
.home-hero{padding-bottom:60px;background:var(--forest)}
.home-hero::before{background-image:url('img/global-trade-map.webp');background-size:cover;background-position:center;inset:0;filter:none;opacity:1}
.home-hero::after{background:linear-gradient(180deg,transparent 55%,#153f31 100%),linear-gradient(90deg,#0c3026a8 0%,#103a2e55 48%,#153f3110 100%)}
.home-intro h1{text-shadow:0 2px 22px #09281d55}
@media(max-width:680px){.home-hero{padding-bottom:40px}.home-hero::before{background-size:auto 650px;background-position:center top;background-repeat:no-repeat}.home-hero::after{background:linear-gradient(180deg,#0c302659 0%,#12392d45 300px,#153f31 660px)}}
