/* SYCTA — institutional presentation. The approved photography and wordmark remain. */
.approach-photos .approach-terminal{object-position:42% 50%}
.journal-diagram{background:#242b25;color:#edf1e8;padding:clamp(1.5rem,4vw,4rem);display:flex;flex-direction:column;justify-content:center;min-height:390px}.journal-diagram>.eyebrow{color:#b6c1ad}.journal-diagram ol{list-style:none;padding:0;margin:2rem 0 0}.journal-diagram li{display:flex;align-items:baseline;gap:1.5rem;border-top:1px solid #52604c;padding:1.25rem 0;font-size:clamp(1rem,1.8vw,1.5rem);line-height:1.3}.journal-diagram li span{font-size:.7rem;color:#bac9ad}.case-overview img[src*="consolidation-entrepot"]{object-position:50% 65%}.case-overview img[src*="preparation-colis"]{object-position:50% 47%}
.cases-section{border-top:1px solid var(--line)}.case-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:2rem}.case-card{padding:1.5rem 0;border-top:1px solid #b5bcae;display:flex;flex-direction:column;align-items:start}.case-card:first-child{background:#edf0e7;padding:1.5rem}.case-badge{font-size:.7rem;letter-spacing:.035em;color:#5b6553}.case-real{color:#33482c}.case-card h3{font-size:clamp(1.6rem,2.5vw,2.3rem);line-height:1.15;letter-spacing:-.04em;margin:1.5rem 0 1rem}.case-card>p:not(.case-badge){font-size:.9rem;color:var(--muted);margin-bottom:2rem}.case-card .text-link{margin-top:auto;font-size:.85rem}.case-detail .page-intro>.case-badge{grid-column:1/-1}.case-disclosure{padding:1.2rem 1.5rem;border-left:2px solid #89977a;background:#f3f4ef;font-size:.87rem;margin-bottom:2.5rem;color:#56604e}.case-overview{display:grid;grid-template-columns:1.1fr 1fr;gap:5vw;align-items:center}.case-overview img{width:100%;height:350px;object-fit:cover}.case-overview>div>p:last-child{font-size:1.1rem;line-height:1.65}.case-route{display:grid;grid-template-columns:repeat(4,1fr);list-style:none;padding:0;margin:2.5rem 0 0;border-top:1px solid var(--line);gap:1rem}.case-route li{position:relative;padding:1.25rem 1.5rem 1.25rem 0;font-size:.85rem}.case-route li:not(:last-child)::after{content:'→';position:absolute;right:0}.case-detail .process-grid{margin-top:3rem}.case-outcome{background:#202422;color:#f2f5eb;padding:clamp(1.5rem,4vw,4rem);margin-top:3rem}.case-outcome h2{font-size:2rem;line-height:1.2;letter-spacing:-.035em;margin-bottom:1.5rem}.case-outcome p{max-width:750px;color:#cfd7c7;margin-bottom:2rem}.quality-overview{border-top:1px solid var(--line)}.quality-overview .principles-grid{margin:2.5rem 0}.quality-overview .text-link{font-size:.85rem}
@media(max-width:700px){.case-grid,.case-overview{grid-template-columns:1fr}.case-overview img{height:250px}.case-overview .section-label{margin-top:2rem}.case-route{grid-template-columns:1fr 1fr}.case-route li:nth-child(2)::after{content:''}.case-overview>div>p:last-child{font-size:1rem}.case-card h3{font-size:1.8rem}.case-outcome h2{font-size:1.6rem}}
:root{--max:1440px;--gutter:clamp(1rem,3.6vw,4rem)}
.site-header{padding-block:.9rem;background:#fff}
.nav-rail,.nav-contact{border-radius:2px}.nav-rail{background:transparent;padding-left:0}
.scroll-brand{display:block;width:122px}.home-header .menu-button{margin-left:auto}
.desktop-nav{font-size:.78rem;gap:1.4rem}.desktop-nav a{white-space:nowrap}
.hero{min-height:680px;height:calc(100svh - 100px);max-height:1000px}
.hero-shade{background:linear-gradient(90deg,rgba(14,25,18,.58),rgba(14,25,18,.13) 75%)}
.hero .hero-title.hero-smart{top:clamp(2.2rem,4vw,4rem);font-size:clamp(2.1rem,6.3vw,6.5rem);letter-spacing:-.055em}
.hero-positioning{position:absolute;left:clamp(1.5rem,3.8vw,4rem);top:47%;max-width:440px;width:calc(100% - 3rem);color:#fff;z-index:2}
.hero-positioning>p:first-child{font-size:clamp(1.1rem,1.7vw,1.45rem);line-height:1.3;max-width:340px;margin-bottom:1rem}
.hero-positioning>p:nth-child(2){font-size:.93rem;color:#e0e5de;max-width:380px;line-height:1.6}
.hero-positioning .text-link{margin-top:1.5rem;font-size:.85rem;min-width:200px}
.hero-caption{padding-block:1rem;text-align:left;justify-content:flex-start;letter-spacing:.02em}
.evidence-strip{display:grid;grid-template-columns:1fr 1.8fr;gap:5vw;align-items:end;padding-block:3.5rem 4rem}
.evidence-strip h2{font-size:1.45rem;line-height:1.25;letter-spacing:-.03em;max-width:270px;margin-top:1rem}
.evidence-strip .metrics{border:0;margin:0;padding:0;gap:2rem}
.evidence-strip .metrics>div{display:flex;flex-direction:column-reverse;border-left:1px solid var(--line);padding-left:1.5rem;justify-content:end}
.evidence-strip dd{margin:0 0 .6rem;font-size:clamp(2.8rem,5vw,5.5rem);letter-spacing:-.065em}
.evidence-strip dt{font-size:.78rem;max-width:155px}
.approach-dark{margin-top:0}.approach-dark .approach-copy{padding-top:3rem}
.section-label{text-transform:uppercase;font-size:.71rem;letter-spacing:.12em}
.operations-section{border-bottom:1px solid var(--line)}
.editorial-heading{display:flex;justify-content:space-between;align-items:end;gap:4rem;margin-bottom:3.5rem}
.editorial-heading>.statement{max-width:680px}.editorial-heading>p{max-width:350px;color:var(--muted)}
.editorial-heading>.text-link{flex-shrink:0}
.coverage-notes>p{font-size:.95rem;color:var(--muted);max-width:440px;margin:1.5rem 0}
.coverage-notes dl{margin:0 0 1.5rem}.coverage-notes dl>div{display:grid;grid-template-columns:90px 1fr;border-top:1px solid var(--line);padding-block:1rem;gap:1rem;font-size:.82rem}
.coverage-notes dt{font-weight:500}.coverage-notes dd{margin:0;color:var(--muted)}
.coverage-notes>.text-link{margin-bottom:1rem;font-size:.85rem}.network-teaser>.coverage-notes{align-self:center}
.network-teaser>div>.text-link{font-size:.85rem}.network-page{padding-bottom:4rem}
.business-context{background:#f5f5f0;max-width:none}.business-context>.editorial-heading,.business-context>.section-label,.business-context>.challenge-grid{max-width:1320px;margin-inline:auto}
.challenge-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem}
.challenge-card{position:relative;display:flex;flex-direction:column;min-height:315px;border-top:1px solid #b7bdb1;padding:1.5rem 1rem 2rem 0;transition:background .25s}
.challenge-card h3{font-size:clamp(1.5rem,2.2vw,2.2rem);line-height:1.15;letter-spacing:-.04em;margin:2rem 0 1rem;max-width:280px}
.challenge-card p{font-size:.9rem;color:var(--muted);max-width:330px;padding-right:1rem}
.challenge-arrow{align-self:end;margin-top:auto;padding-top:1.5rem;font-size:1.5rem}.challenge-card:hover .challenge-arrow{transform:translate(3px,-3px)}
.process-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding:0;gap:2rem;list-style:none;margin:0 0 2.5rem}
.process-grid li{border-top:1px solid var(--line);padding-top:1.2rem}.process-number{font-size:2.8rem;color:#98a18f;letter-spacing:-.06em}
.process-grid h3{font-size:1.3rem;line-height:1.2;margin:1.5rem 0 1rem;letter-spacing:-.025em}.process-grid p{font-size:.88rem;line-height:1.6;color:var(--muted)}
.process-grid .process-outcome{padding-top:1.5rem;margin-top:1.5rem;border-top:1px solid var(--line);color:#252f23}
.company-manifesto{background:#202422;color:#f3f4ec}.company-manifesto .section-label{color:#b6bfae}.company-manifesto .section-label::after{background:#53604d}
.company-manifesto h2{font-size:clamp(3rem,7vw,7rem);line-height:1.02;letter-spacing:-.055em;max-width:950px}
.manifesto-bottom{display:flex;justify-content:space-between;align-items:end;gap:3rem;margin:3rem 0 0 auto;max-width:800px}.manifesto-bottom p{max-width:480px;color:#c7cec1}.manifesto-bottom a{flex-shrink:0}
.principles-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}.principles-grid article{border-top:1px solid var(--line);padding-top:1rem}.principles-grid h3{font-size:1.5rem;line-height:1.2;margin:1.5rem 0 1rem}.principles-grid p{color:var(--muted);font-size:.9rem}
.guides-section .section-label{margin-bottom:1.5rem}.guide-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem}.guide-grid article{border-top:1px solid #adb5a4;padding:1.5rem 0;display:flex;flex-direction:column;align-items:start}
.guide-grid h3{font-size:clamp(1.5rem,2.2vw,2rem);line-height:1.16;letter-spacing:-.035em;margin:2rem 0 1rem}.guide-grid article>p:not(.eyebrow){color:var(--muted);font-size:.9rem;margin-bottom:2rem}.guide-grid a{font-size:.84rem;margin-top:auto}
.guide-toolbar{display:flex;justify-content:space-between;align-items:center;border-block:1px solid var(--line);padding-block:1rem}.guide-toolbar button{border:0;border-bottom:1px solid;background:none;font-size:.8rem}
.guide-body{max-width:900px;margin:0 auto;padding:3rem 0 5rem}.guide-body section{display:grid;grid-template-columns:70px 1fr;gap:2rem;border-bottom:1px solid var(--line);padding:2rem 0}
.guide-body h2{font-size:1.8rem;letter-spacing:-.035em;margin-bottom:1rem;line-height:1.2}.guide-body p{color:var(--muted);line-height:1.75}.guide-body .guide-note{font-size:.8rem;margin-block:2rem}
.challenge-detail{display:grid;grid-template-columns:1fr 1fr;gap:5vw}.challenge-detail p{margin-bottom:2rem;color:var(--muted)}
.contact-position{max-width:400px;font-size:.95rem;line-height:1.6;color:var(--muted);margin:1.5rem 0}.contact-grid .text-link{font-size:.9rem}
.project-form{max-width:900px;margin:0 auto 5rem;padding:clamp(1.5rem,4vw,3rem);background:#f2f3ed}.form-pair{display:grid;grid-template-columns:1fr 1fr;gap:2rem}
.project-form label{display:flex;flex-direction:column;gap:.65rem;margin-bottom:1.5rem;font-size:.85rem}.project-form input,.project-form textarea{font:inherit;width:100%;border:1px solid #abb4a1;border-radius:0;background:#fff;padding:.8rem;color:#202422}
.project-form input:focus,.project-form textarea:focus{outline:2px solid #56634c;outline-offset:2px}.project-form label span,.form-explain{font-size:.78rem;color:var(--muted)}
.project-submit{border:0;background:#202422;color:white;min-height:48px;padding:.9rem 1.25rem;display:flex;gap:2rem;align-items:center;margin-top:1.5rem}.project-form [role=status]{font-size:.85rem;margin-top:1rem}
.menu-dialog{width:min(1100px,calc(100% - 2rem));border-radius:2px}.menu-body{display:grid;grid-template-columns:1.6fr 1fr;gap:4rem}.menu-editorial{border-left:1px solid var(--line);padding-left:2rem}.menu-editorial>p:nth-child(2){font-size:1.8rem;line-height:1.2;letter-spacing:-.035em;margin:2rem 0}.menu-editorial .text-link{display:flex;margin-top:1rem;font-size:.85rem}
.menu-number{font-size:.7rem;letter-spacing:0;color:#7d8576;margin-right:1rem}.menu-links a{justify-content:start;font-size:2rem;min-height:59px}.menu-links a>.arrow{margin-left:auto}
.home-journal{background:#f4f4ee}.journal-photo{min-height:390px}.journal-copy h3{font-size:clamp(1.7rem,3vw,3rem)}
.journal-photo picture img{height:100%;width:100%;position:absolute;object-fit:cover;object-position:50% 38%;transition:transform .9s var(--ease)}
.journal-feature:hover .journal-photo picture img{transform:scale(1.025)}
main.shell>.guides-section,main.shell>.process-section{padding-inline:0}
@media(max-width:1180px){.desktop-nav{display:none}.menu-button{margin-left:auto}.process-grid{grid-template-columns:1fr 1fr}.evidence-strip{grid-template-columns:1fr}.evidence-strip h2{max-width:none}.evidence-strip .metrics{margin-top:1rem}}
@media(max-width:700px){
 .hero{min-height:660px}.hero .hero-title.hero-smart{font-size:clamp(1.6rem,7.2vw,3rem);left:1.3rem;top:2.4rem;right:1rem}.hero-positioning{left:1.3rem;top:38%;max-width:310px}.hero-positioning>p:first-child{font-size:1.15rem}.hero-positioning>p:nth-child(2){font-size:.85rem;max-width:290px}.hero-positioning .text-link{margin-top:1.1rem;font-size:.8rem}
 .hero-brand{width:155px}.hero-controls .text-link{max-width:110px}.home-header .brand{width:94px}.home-header .nav-contact{display:none}.home-header .nav-rail{padding:0}.home-header .nav-row{gap:.7rem}.nav-rail{gap:1rem}.home-header.is-scrolled .brand{width:94px}
 .evidence-strip{padding-block:2.5rem;gap:1.5rem}.evidence-strip h2{font-size:1.3rem}.evidence-strip .metrics{gap:.8rem;grid-template-columns:repeat(3,minmax(0,1fr))}.evidence-strip .metrics>div{padding-left:.6rem}.evidence-strip dd{font-size:2.5rem}.evidence-strip dt{font-size:.68rem;line-height:1.4}
 .editorial-heading{display:block;margin-bottom:2rem}.editorial-heading>p,.editorial-heading>.text-link{margin-top:1.5rem}.challenge-grid,.guide-grid,.principles-grid{grid-template-columns:1fr;gap:1rem}.challenge-card{min-height:0;padding-bottom:1rem}.challenge-card h3{font-size:1.8rem;max-width:none;margin:1rem 0}.challenge-card p{max-width:none}.challenge-arrow{padding-top:.5rem}.process-grid{gap:2rem 1.1rem}.process-grid h3{font-size:1.15rem}.process-grid p{font-size:.82rem}.process-number{font-size:2.2rem}
 .manifesto-bottom{display:block;margin-top:2rem}.manifesto-bottom a{margin-top:2rem}.company-manifesto h2{font-size:2.9rem}.principles-grid h3{font-size:1.4rem}.guide-grid h3{font-size:1.65rem;margin-top:1.25rem}.guide-body section{grid-template-columns:28px 1fr;gap:1rem}.guide-body h2{font-size:1.5rem}.guide-body p{font-size:.95rem}.guide-toolbar{gap:1rem}.challenge-detail{display:block}.challenge-detail>div{margin-top:2rem}.form-pair{grid-template-columns:1fr;gap:0}.menu-body{display:block}.menu-editorial{border-left:0;border-top:1px solid var(--line);padding:1.5rem 0 0;margin-top:2rem}.menu-editorial>p:nth-child(2){font-size:1.3rem;margin:1rem 0}.menu-top{margin-bottom:1rem}.menu-links a{font-size:1.5rem;min-height:52px}.menu-meta{margin-top:1.5rem}.network-page{padding-bottom:2rem}
}
@media(prefers-reduced-motion:reduce){.challenge-card{transition:none}}
@media print{.hero-positioning,.guide-toolbar,.project-form,.guide-detail+.contact-section{display:none}.guide-body{max-width:none;padding:0}.guide-body section{break-inside:avoid}.guide-detail .page-intro{padding-block:1rem}.company-manifesto{background:white;color:black}.manifesto-bottom p{color:black}}

.email-copy-group{display:inline-flex;align-items:center;gap:.5rem;position:relative;max-width:100%}.email-copy-button{display:inline-flex;align-items:center;justify-content:center;flex:0 0 36px;width:36px;height:36px;padding:0;border:1px solid var(--line);border-radius:3px;background:transparent;color:inherit;cursor:pointer}.email-copy-button:hover{background:rgba(128,128,128,.12)}.email-copy-button:focus-visible{outline:2px solid currentColor;outline-offset:3px}.email-copy-status{position:absolute;top:100%;right:0;padding-top:.3rem;font-size:.75rem;line-height:1.3;white-space:nowrap}.email-copy-group>a{overflow-wrap:anywhere;min-width:0}@media print{.email-copy-button,.email-copy-status{display:none}}
/* European network: integrated editorial map and keyboard-accessible country selection. */
.europe-network{background:radial-gradient(ellipse at 48% 45%,#f3f4ef 0%,#fafbf8 65%,#fff 100%);border:0;border-radius:0;margin:0;isolation:isolate}
.network-map-heading{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1.1rem 1.3rem;border-top:1px solid var(--line);font-size:.78rem;color:var(--muted)}
.europe-network .network-motion{position:static;flex-shrink:0;background:transparent;border-color:#d8ddd6}
.network-map-stage{aspect-ratio:520/385;display:flex;align-items:center;overflow:hidden}
.europe-network svg{width:100%;max-height:100%;padding:0}
.network-land path{fill:#e9ece5;stroke:#fff;stroke-width:1.3}
.network-land .network-country path{fill:#cbd3c4;transition:fill .3s}
.network-land .network-country.is-selected path{fill:#9ead96;stroke:#6b7c63;stroke-width:1.6}
.network-country-labels text{font:400 12px Arial,sans-serif;fill:#27342b;paint-order:stroke;stroke:#f3f4ef;stroke-width:3px;stroke-linejoin:round;pointer-events:none}
.network-country-labels .network-nice{font-size:9px;fill:#202923}
.network-country-controls{display:flex;flex-wrap:wrap;gap:.4rem;padding:1rem 1.3rem 0}
.network-country-controls button{font:inherit;font-size:.75rem;background:transparent;color:#465141;border:1px solid #d9dfd4;padding:.55rem .7rem;border-radius:2px;cursor:pointer;min-height:38px;transition:background .2s,color .2s}
.network-country-controls button:hover{background:#e7ece2}.network-country-controls button[aria-pressed=true]{background:#303d32;color:#fff;border-color:#303d32}.network-country-controls button:focus-visible{outline:2px solid #303d32;outline-offset:3px}
.network-country-detail{padding:.85rem 1.3rem 0;min-height:4.7em;font-size:.8rem;line-height:1.55;color:#465141;margin:0}
.europe-network figcaption{padding:1rem 1.3rem 1.2rem;font-size:.72rem}.europe-network figcaption span{font-size:.62rem}
@media(max-width:700px){.network-map-heading{padding-inline:.5rem}.network-country-controls{padding-inline:.5rem}.network-country-detail{padding-inline:.5rem}.europe-network figcaption{padding-inline:.5rem}.network-country-controls button{min-height:42px}.network-country-labels text{font-size:14px}}
/* Multimodal maps, stored locally and independent of live map services. */
.network-teaser{grid-template-columns:minmax(0,1.6fr) minmax(240px,1fr);gap:3vw;align-items:start}
.transport-network{min-width:0;background:radial-gradient(ellipse at center,#f0f3ed,#fff 75%)}
.transport-modes{display:flex;gap:.5rem;padding:1rem 1.3rem .6rem}
.transport-modes button{display:flex;align-items:center;gap:.8rem;min-height:44px;padding:.7rem 1.2rem;background:transparent;border:1px solid #d3dace;border-radius:2px;font:inherit;font-size:.9rem;color:#344333;cursor:pointer}
.transport-modes button[aria-pressed=true]{background:#303d32;color:white;border-color:#303d32}
.transport-modes button:hover{border-color:#344333}.transport-modes button:focus-visible{outline:2px solid #344333;outline-offset:3px}
.transport-panel[hidden],.transport-network [hidden]{display:none!important}
.transport-panel h3{font-size:.82rem;font-weight:400;padding:.6rem 1.3rem;color:#56624f}
.transport-canvas{height:clamp(300px,37vw,540px);display:flex;align-items:center;overflow:hidden}
.transport-canvas svg{height:100%;width:100%;padding:0}
.transport-land{fill:#dfe5d9;stroke:white;stroke-width:.6;fill-rule:evenodd}
.transport-hit{fill:none;stroke:transparent;stroke-width:14;pointer-events:stroke}
.transport-line{fill:none;stroke:#73896a;stroke-width:1.5;opacity:.65;pointer-events:none;vector-effect:non-scaling-stroke}
.transport-link .network-signal{stroke:#304b31;stroke-width:2;pointer-events:none;animation-duration:9s}
.transport-link:hover .transport-line,.transport-link:focus .transport-line{stroke:#263f29;opacity:1;stroke-width:3}
.transport-link:focus{outline:none}.transport-node{fill:#344b32;pointer-events:none}.transport-node circle{stroke:#fff;stroke-width:1}
.transport-node text{font:12px Arial,sans-serif;fill:#33432e;stroke:#f5f7f1;stroke-width:3;paint-order:stroke;stroke-linejoin:round}
.transport-network .transport-detail{font-size:.75rem;line-height:1.5;min-height:4.5em;max-width:none;margin:0;padding:.6rem 1.3rem;color:#53604c}
.transport-network figcaption{font-size:.64rem;border-top:1px solid #e2e6dd;margin-inline:1.3rem;padding:1rem 0}.transport-network figcaption a{text-decoration:underline}
@media(max-width:1100px){.network-teaser{grid-template-columns:1fr}.network-teaser>.coverage-notes{max-width:none}.transport-canvas{height:440px}.network-teaser .statement{margin-top:1rem}}
@media(max-width:700px){.transport-canvas{height:300px}.transport-panel[data-transport-panel=Route] .transport-canvas{height:360px}.transport-modes{padding-inline:.5rem}.transport-modes button{flex:1;justify-content:center;padding:.6rem}.transport-panel h3{padding-inline:.5rem}.transport-network .transport-detail{padding-inline:.5rem}.transport-network figcaption{margin-inline:.5rem}.transport-node text{font-size:15px}}
/* Secondary road coverage stays lighter than the main corridors. */
.secondary-roads .transport-line{stroke:#99aa8f;stroke-width:.8;opacity:.57}.secondary-roads .network-signal{display:none}.secondary-roads .transport-hit{stroke-width:8}.secondary-roads .transport-link:hover .transport-line,.secondary-roads .transport-link:focus .transport-line{stroke:#556c49;stroke-width:2;opacity:1}.secondary-cities{fill:#9aa98e;opacity:.8}
.transport-canvas.has-globe{position:relative;justify-content:center;overflow:visible;background:radial-gradient(ellipse at 50% 90%,rgba(54,74,44,.10),transparent 40%)}
.transport-canvas.has-globe>svg{display:none}.globe-wrap{position:relative;width:min(100%,470px);aspect-ratio:1;max-height:none;filter:drop-shadow(0 14px 16px rgba(46,66,36,.08))}.globe-surface,.globe-labels{display:block;width:100%;height:100%}.globe-surface{cursor:grab;touch-action:none;border-radius:50%}.globe-surface:active{cursor:grabbing}.globe-surface:focus-visible{outline:2px solid #708369;outline-offset:2px}.globe-labels{position:absolute;inset:0;pointer-events:none}
.globe-controls{display:flex;align-items:center;justify-content:center;gap:.7rem;padding:.4rem 1rem .8rem}.globe-controls span{font-size:.7rem;color:#63705b}.globe-controls button{min-width:38px;min-height:38px;border:1px solid #d7dfd0;border-radius:50%;background:transparent;color:#344b2e;cursor:pointer}.globe-controls button:hover{background:#edf2e7}.globe-controls button:focus-visible{outline:2px solid #344b2e;outline-offset:2px}
@media(max-width:700px){.globe-wrap{width:min(100%,330px)}.transport-canvas.has-globe{height:330px}.globe-controls{gap:.5rem;padding-inline:.4rem}}
/* Homepage: three quiet animated previews; full exploration lives on the network page. */
.network-previews{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem;margin-top:2rem}.network-preview{margin:0;min-width:0;border-top:1px solid var(--line);background:radial-gradient(ellipse at 50% 40%,#f1f4ed,transparent 70%)}.network-preview .transport-canvas{height:280px;pointer-events:none}.network-preview .globe-wrap{width:min(100%,280px);filter:drop-shadow(0 8px 10px rgba(46,66,36,.06))}.network-preview .globe-surface{touch-action:auto;cursor:default}.network-preview .transport-node text{display:none}.network-preview .transport-node circle{r:2.5}.network-preview figcaption{padding:1.3rem 0}.network-preview h3{font-size:1.3rem;font-weight:400;letter-spacing:-.025em;margin-top:.4rem}.network-preview .transport-link{pointer-events:none}.network-preview-footer{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;margin-top:1.8rem}.network-preview-footer>.text-link{margin-left:auto}.network-preview-credit{font-size:.6rem;color:#7c8376}.preview-pause{height:32px;width:32px;border:1px solid var(--line);border-radius:50%;background:transparent;color:#52604a;cursor:pointer}.preview-pause:focus-visible{outline:2px solid currentColor;outline-offset:3px}
@media(max-width:1000px){.network-previews{gap:1rem}.network-preview .transport-canvas{height:220px}.network-preview h3{font-size:1.1rem}}
@media(max-width:700px){.network-previews{grid-template-columns:1fr;gap:1.4rem}.network-preview{display:grid;grid-template-columns:1.15fr 1fr;align-items:center;gap:1rem}.network-preview .transport-canvas{height:190px}.network-preview figcaption{padding:.5rem 0}.network-preview .globe-wrap{width:100%}.network-preview-footer>.text-link{margin-left:0;width:100%}}
@media(prefers-reduced-motion:reduce){.preview-pause{display:none}}
.home-network-modes{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;margin-top:1.5rem}.home-network-modes a,.home-network-modes>.active{display:inline-flex;align-items:center;gap:1rem;min-height:44px;padding:.65rem 1rem;border:1px solid #d4dbce;border-radius:2px;font-size:.85rem}.home-network-modes>.active{background:#303d32;color:white;border-color:#303d32}.home-network-modes a:hover{background:#edf2e7}.home-network-modes a:focus-visible{outline:2px solid #344b2e;outline-offset:3px}.home-road-map .transport-canvas{pointer-events:none}.transport-network{scroll-margin-top:100px}.home-road-map .transport-canvas{height:clamp(350px,40vw,560px)}
@media(max-width:700px){.home-road-map .transport-canvas{height:330px}.network-home .network-teaser>div{grid-row:1}.network-home .coverage-notes{display:none}.network-home .home-network-modes{margin-bottom:1rem}}
@media(min-width:701px){.network-home .network-teaser{grid-template-columns:minmax(0,1.4fr) minmax(230px,1fr);gap:2rem}.network-home .home-road-map .transport-canvas{height:clamp(350px,40vw,540px)}}
/* Larger editorial photographs in the two network detail sections. */
:is(#les-transporteurs-independants,#bourses-de-fret-et-geolocalisation) .source-visuals{display:block;margin-top:2rem}
:is(#les-transporteurs-independants,#bourses-de-fret-et-geolocalisation) .source-visuals img{display:block;width:100%;max-width:100%;height:auto;max-height:none;object-fit:contain;margin:0;border-radius:3px}
/* Registered wordmark: consistent treatment across navigation, menu and hero. */
.logo-lockup{position:relative;display:block;width:100%;padding-right:9px;box-sizing:border-box;color:#333a33}.logo-lockup img{display:block;width:100%;height:auto}.logo-registered{position:absolute;right:0;top:0;font:400 9px/1 Arial,sans-serif;letter-spacing:0}.logo-lockup-white{color:white;padding-right:12px}.logo-lockup-white .logo-registered{font-size:12px}
.logo-registered{right:7%;top:14%}
/* Balance the network block; avoid stacking two large section paddings. */
main>.section+.section{padding-top:clamp(1.5rem,3vw,3rem)}
.network-home .home-road-map .transport-canvas{height:auto;aspect-ratio:930/580}
.network-home .home-road-map .transport-canvas svg{height:auto;aspect-ratio:930/580}
.network-home .home-road-map figcaption{padding-block:.7rem}
@media(min-width:701px){
 .network-home .network-teaser{grid-template-columns:minmax(0,1.35fr) minmax(230px,1fr);grid-template-rows:auto auto 1fr auto auto;gap:1rem 2rem;align-items:start}
 .network-home .network-teaser>div,.network-home .coverage-notes{display:contents}
 .network-home .home-road-map{grid-column:1;grid-row:1/5}
 .network-home #network-title{grid-column:2;grid-row:1;margin:0}
 .network-home .home-network-modes{grid-column:2;grid-row:2;margin:0}
 .network-home .coverage-notes>p{grid-column:2;grid-row:3;margin:.25rem 0 .5rem;max-width:none}
 .network-home .coverage-notes>.text-link{display:none}
 .network-home .network-teaser>div>.text-link{grid-column:2;grid-row:4;justify-self:start;align-self:end}
 .network-home .coverage-notes>dl{grid-column:1/-1;grid-row:5;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem;margin:1rem 0 0}
 .network-home .coverage-notes>dl>div{display:block;padding-block:1rem;border-bottom:0}
 .network-home .coverage-notes dt{margin-bottom:.5rem}.network-home .coverage-notes dd{margin:0}
}
@media(max-width:700px){.network-home .network-teaser{gap:1.5rem}.network-home .home-road-map .transport-canvas{height:auto}.section-label{margin-bottom:2rem}}
.network-home{padding-bottom:clamp(2.5rem,5vw,5rem)}
@media(min-width:701px){.network-home .network-teaser{grid-template-rows:auto auto auto 1fr auto}.network-home .network-teaser>div>.text-link{align-self:start}}
@media(min-width:1101px){
 .network-home .network-teaser{grid-template-rows:auto auto auto auto 1fr}
 .network-home .home-road-map{grid-row:1/6}
 .network-home .coverage-notes>dl{grid-column:2;grid-row:4;display:block;margin:0}
 .network-home .coverage-notes>dl>div{display:grid;grid-template-columns:100px 1fr;gap:1rem;padding-block:.85rem}
 .network-home .coverage-notes dt{margin:0}
 .network-home .network-teaser>div>.text-link{grid-row:5}
}
.company-people{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(2rem,6vw,6rem);align-items:center}.company-people figure,.company-location figure{margin:0}.company-people img{display:block;width:100%;height:auto}.company-people p:not(.section-label){max-width:42ch;line-height:1.7;color:var(--muted,#646965)}.company-people .text-link{margin-top:1.5rem}.company-people figcaption,.company-location figcaption{font-size:.8rem;color:#646965;margin-top:.8rem}.company-location img{display:block;width:100%;height:auto}.page-hero.page-hero--company{width:100%;height:auto;max-height:none;aspect-ratio:auto;object-fit:contain}.company-field figure{max-width:420px}.company-people .statement{font-size:clamp(2rem,4vw,4rem)}@media(max-width:700px){.company-people{grid-template-columns:1fr;gap:1.75rem}.company-people figure{max-width:440px}.company-people .statement{font-size:2.25rem}}
.company-premises{margin-bottom:clamp(2rem,5vw,5rem)}.company-premises-heading{display:flex;align-items:end;justify-content:space-between;gap:2rem;margin-bottom:1.5rem}.company-premises-heading h2{font-size:clamp(1.8rem,3vw,3rem);font-weight:400;margin:0}.company-premises-heading>p{max-width:30ch;color:#646965;font-size:.85rem;line-height:1.6;margin:0}.company-premises-heading .section-label{margin-bottom:1rem}.company-premises-gallery{display:grid;grid-template-columns:1.15fr 1fr;gap:clamp(1rem,2vw,2rem);align-items:start}.company-premises-gallery figure{margin:0;min-width:0}.company-premises-gallery img{display:block;width:100%;height:auto;max-height:none;object-fit:contain;filter:none}.company-premises-gallery figcaption{font-size:.8rem;color:#646965;margin-top:.75rem}.company-field img{height:auto;max-height:none;object-fit:contain;filter:none}@media(max-width:700px){.company-premises-heading{display:block}.company-premises-heading>p{margin-top:1rem;max-width:none}.company-premises-gallery{grid-template-columns:1fr;gap:1.5rem}}
/* Company editorial layout: shared photo grid and restrained section rhythm. */
.company-page .page-intro{padding-bottom:clamp(2rem,4vw,4rem)}
.company-page .company-premises{margin-bottom:clamp(2.5rem,5vw,5rem);scroll-margin-top:110px}
.company-page .company-premises-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(.75rem,1.8vw,1.5rem);align-items:start}
.company-location-note{margin:.85rem 0 0;font-size:.75rem;color:#737873;letter-spacing:.04em}
.company-page .company-people{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(2rem,6vw,6rem);padding-block:clamp(2.5rem,5vw,5rem);border-top:1px solid #dedfda}
.company-page .company-people figure{width:100%;max-width:390px;justify-self:center}
.company-page .company-people .statement{font-size:clamp(1.9rem,3.4vw,3.5rem);line-height:1.12;margin-bottom:1.5rem}
.company-page .company-people .section-label{margin-bottom:1.75rem}
.company-page .company-field figure{grid-column:2;grid-row:1;max-width:340px}
.company-page .company-field>div{grid-column:1;grid-row:1}
.company-page .company-principles,.company-page .quality-overview{padding-block:clamp(2.5rem,5vw,5rem);border-top:1px solid #dedfda}
.company-page .content-layout{margin-top:clamp(2rem,4vw,4rem)}
@media(max-width:700px){.company-page .company-premises-gallery{grid-template-columns:1fr;gap:.75rem}.company-page .company-people{grid-template-columns:1fr;gap:1.75rem}.company-page .company-people figure{max-width:340px;justify-self:start}.company-page .company-field figure,.company-page .company-field>div{grid-column:auto;grid-row:auto}.company-page .company-field figure{max-width:300px}.company-page .company-people .statement{font-size:2rem}.company-page .company-people .section-label{margin-bottom:1rem}}
/* Give premises precedence over the individual portrait. */
.company-page .company-people:not(.company-field){grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr)}
.company-page .company-people:not(.company-field) figure{max-width:260px}
.company-page .company-leader-caption{display:flex;flex-direction:column;align-items:flex-start;gap:.3rem;margin-top:1rem;font-size:.8rem;line-height:1.5;color:#646965}
.company-leader-name{font-size:1rem;color:#252b27}
.company-page .company-linkedin{display:inline-flex;align-items:center;gap:.65rem;margin-top:.45rem;padding:.25rem 0;color:inherit;text-decoration:none;border-bottom:1px solid #b8beb8;font-size:.75rem}
.company-page .company-linkedin:hover{color:#202622;border-color:currentColor}
.company-page .company-linkedin:focus-visible{outline:2px solid currentColor;outline-offset:5px}
@media(max-width:700px){.company-page .company-people:not(.company-field){grid-template-columns:1fr}.company-page .company-people:not(.company-field) figure{width:56%;max-width:200px}}
.company-page .company-linkedin{display:inline-flex;justify-content:center;align-items:center;width:40px;height:40px;padding:0;border:1px solid #d9dcd8;border-radius:5px;color:#505950;transition:color .2s,border-color .2s,background-color .2s}.company-page .company-linkedin svg{display:block;width:20px;height:20px}.company-page .company-linkedin:hover{color:#202622;background:#f2f3f0;border-color:#9da59d}
.company-page .company-linkedin{width:30px;height:30px;border-color:transparent;border-radius:3px;color:#7b827c;margin-top:.25rem}.company-page .company-linkedin svg{width:15px;height:15px}.company-page .company-linkedin:hover{color:#343c35;background:#f5f6f3;border-color:transparent}
/* Mobile links: clear direction and comfortable touch targets. */
.menu-dialog:focus{outline:none}
@media(max-width:700px){
 a:not([href^="http"]):not([href^="mailto:"]):not([href^="tel:"]) :is(.arrow,.challenge-arrow){display:inline-flex;align-items:center;justify-content:center;flex:0 0 32px;width:32px;height:32px;min-width:32px;border:1px solid currentColor;border-radius:50%;font-size:0;background:transparent;opacity:1}
 a:not([href^="http"]):not([href^="mailto:"]):not([href^="tel:"]) :is(.arrow,.challenge-arrow)::before{content:"→";font-size:20px;line-height:1}
 a[href="#haut"] .arrow::before{content:"↑"}
 .text-link,.nav-contact,.related-links>a{min-height:44px}
 .card-arrow{min-width:48px;height:48px;align-items:center}
 .text-link:hover .arrow,.expertise-card:hover .arrow{transform:none}
 .hero-controls{gap:1rem}
}
/* The mobile opening includes both the hero and its full caption. */
@media(max-width:700px){
 .home-header{height:70px;box-sizing:border-box}
 .home-opening{height:calc(100svh - 70px - env(safe-area-inset-bottom,0px));display:grid;grid-template-rows:minmax(0,1fr) auto}
 .home-opening .hero{height:100%;min-height:0;max-height:none}
 .home-opening .hero-caption{padding-block:.75rem;font-size:.8125rem;line-height:1.4;margin:0}
 .home-opening .hero-positioning{top:34%}
 .home-opening .hero-brand{width:130px;bottom:1.25rem}
 .home-opening .hero-controls{bottom:1.25rem;right:1rem;flex-direction:row;align-items:center;gap:.65rem}
 .home-opening .hero-controls .text-link{max-width:95px;font-size:.68rem;gap:.4rem}
 .home-opening .motion-toggle{width:32px;height:32px;flex-shrink:0}
}
@media(max-width:700px) and (max-height:700px){
 .home-opening .hero .hero-title.hero-smart{top:1.4rem}
 .home-opening .hero-positioning{top:29%}
 .home-opening .hero-positioning>p:first-child{font-size:1rem;margin-bottom:.6rem}
 .home-opening .hero-positioning>p:nth-child(2){font-size:.78rem;line-height:1.45}
 .home-opening .hero-positioning .text-link{margin-top:.6rem}
 .home-opening .hero-brand{width:110px;bottom:.8rem}
 .home-opening .hero-controls{bottom:.8rem}
}
@media(max-width:700px) and (max-height:480px){.home-opening{height:auto;grid-template-rows:460px auto}}
/* Mobile arrows: discreet, without a surrounding circle. */
@media(max-width:700px){
 a:not([href^="http"]):not([href^="mailto:"]):not([href^="tel:"]) :is(.arrow,.challenge-arrow){border:0;border-radius:0;background:transparent;flex-basis:24px;width:24px;min-width:24px;height:28px}
 a:not([href^="http"]):not([href^="mailto:"]):not([href^="tel:"]) :is(.arrow,.challenge-arrow)::before{font-size:20px;font-weight:400}
}
