:root{--ink:#171717;--paper:#fbfaf7;--orange:#db5b35;--line:#dcd9d2}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;color:var(--ink);background:var(--paper);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #527fb3;outline-offset:5px}button{cursor:pointer}header{height:104px;display:flex;align-items:center;justify-content:space-between;padding:0 5%;background:rgba(251,250,247,.96);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:10}.logo-crop{display:block;position:relative;width:112px;height:72px;overflow:hidden}.logo-crop img{position:absolute;width:164px;height:auto;left:-26px;top:-47px}nav{display:flex;gap:32px;align-items:center;font-size:14px}nav a{padding:12px 0}.nav-cta{border:1px solid var(--ink);border-radius:50px;padding:15px 23px}.nav-cta:hover{color:white;background:var(--ink)}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:1.12fr 1fr;min-height:650px}.hero-copy{padding:68px 8% 30px 9%}.eyebrow{font-size:12px;font-weight:700;letter-spacing:1.8px;line-height:1.5;margin:0 0 30px}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(54px,6.5vw,106px);letter-spacing:-.065em;font-weight:500;line-height:.99;margin-bottom:32px}em{font-family:Georgia,'Times New Roman',serif;font-weight:400;color:var(--orange)}h1 em{font-size:1.14em}.lead{font-size:18px;line-height:1.65;margin-bottom:30px}.button{display:inline-block;border:0;border-radius:40px;padding:19px 28px;font-size:15px;font-weight:600;transition:transform .2s,background .2s}.dark{background:var(--ink);color:#fff}.dark:hover{background:#383838;transform:translateY(-3px)}.hero-foot{display:flex;justify-content:space-between;gap:16px;align-items:end;border-top:1px solid var(--line);padding-top:25px;margin-top:55px;font-size:13px;line-height:1.6}.scroll-label{font-size:10px;letter-spacing:1px;text-align:right}.scroll-track{display:block;margin:12px 0 0 auto;width:1px;height:29px;background:var(--ink);transform-origin:top;animation:scrollhint 2s infinite}.hero-art{background:#edb19c;position:relative;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;padding:34px 36px 45px;transition:background .65s}.art-top,.art-bottom{display:flex;justify-content:space-between;position:relative;z-index:2;gap:20px}.art-top{font-size:11px;letter-spacing:1.6px}.art-bottom{align-items:end}.art-bottom p{font-size:26px;line-height:1.2;letter-spacing:-.7px;margin:0;font-weight:400}.logo-stage{position:relative;width:100%;height:360px;transform:rotate(-7deg);background:var(--paper);box-shadow:14px 18px 0 rgba(0,0,0,.08);border-radius:4px;max-width:500px;align-self:center;margin:30px 0;will-change:transform}.hero-logo{position:absolute;width:110%;height:110%;object-fit:contain;top:-5%;left:-5%;opacity:0;transform:translateY(25px) scale(.92);transition:opacity .5s,transform .7s}.hero-logo.active{opacity:1;transform:translateY(0) scale(1)}.slide-controls{display:flex;gap:9px}.slide-controls button{width:32px;height:32px;background:none;border:1px solid #171717;border-radius:50%;padding:8px}.slide-controls button[aria-pressed=true]{background:var(--ink)}.color-edge{position:absolute;bottom:0;left:0;width:100%;height:10px;display:flex}.color-edge i{flex:1;background:#d93631}.color-edge i:nth-child(2){background:#dd5c35}.color-edge i:nth-child(3){background:#229e8d}.color-edge i:nth-child(4){background:#557fb8}.color-edge i:nth-child(5){background:#573c76}.color-edge i:nth-child(6){background:#704038}.ticker{overflow:hidden;border-block:1px solid var(--ink);background:var(--orange);padding:22px 0}.ticker div{width:max-content;font-size:22px;letter-spacing:-.4px;font-weight:700;animation:ticker 35s linear infinite}.ticker span{margin:0 50px;color:#fff}.section{padding:100px 6%}.intro-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:8%;align-items:start;margin-bottom:55px}h2{font-size:clamp(38px,4.3vw,68px);line-height:1.05;letter-spacing:-.052em;font-weight:500}.orange{color:var(--orange)}.intro-text p{font-size:17px;line-height:1.7;max-width:470px}.intro-text p+p{color:#555}.world-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.world-card{--accent:#d93631;border:1px solid var(--line);border-top:6px solid var(--accent);padding:24px 26px 30px;transition:transform .3s;position:relative;overflow:hidden;background:#fff}.world-card:hover{transform:translateY(-7px)}.teal{--accent:#229e8d}.purple{--accent:#573c76}.terracotta{--accent:#dd5c35}.blue{--accent:#557fb8}.brown{--accent:#704038}.card-top{display:flex;justify-content:space-between;gap:12px;font-size:11px;font-weight:700;letter-spacing:1.2px}.card-top span:first-child{color:var(--accent)}.card-logo{height:190px;overflow:hidden;position:relative;margin:6px 0 20px}.card-logo img{width:120%;height:auto;position:absolute;left:-10%;top:50%;transform:translateY(-50%);transition:transform .6s}.world-card:hover .card-logo img{transform:translateY(-50%) scale(1.06)}h3{font-weight:500;font-size:24px;letter-spacing:-.7px;line-height:1.2}.world-card h3{font-size:22px;margin-bottom:14px}.world-card p{font-size:15px;line-height:1.65;color:#555;margin:0}.method{background:#1b1b1b;color:#fff;display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:start}.method-title{position:sticky;top:155px}.method-title p:not(.eyebrow){line-height:1.7;color:#bababa}.method .eyebrow{color:#bababa}.method-progress{height:4px;background:#444;margin-top:40px;width:75%;overflow:hidden}.method-progress span{display:block;width:100%;height:100%;background:var(--orange);transform:scaleX(var(--progress,.05));transform-origin:left}.step{display:flex;gap:28px;align-items:start;padding:48px 0 58px;border-top:1px solid #4b4b4b;min-height:220px}.step-number{font-size:16px;color:var(--orange);padding-top:4px}.step h3{font-size:29px}.step p{color:#bfbfbf;font-size:17px;line-height:1.7;margin:0}.statement{background:#573c76;color:#fff;text-align:center;padding:90px 20px;overflow:hidden}.statement-copy{font-size:clamp(42px,6.7vw,105px);line-height:1.02;letter-spacing:-.055em;margin-bottom:38px}.statement-copy span{font-family:Georgia,serif;font-style:italic;color:#f9b199}.statement-note{font-size:14px;letter-spacing:1px}.audience h2{margin-bottom:60px}.audience-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:50px}.audience-grid article{border-top:1px solid var(--ink);padding-top:25px}.audience-index{font-size:65px;color:var(--orange);letter-spacing:-5px;display:block;margin-bottom:30px}.audience-grid p{font-size:17px;line-height:1.7;color:#555}.contact{background:#edb19c;display:grid;grid-template-columns:1fr 1fr;gap:8%}.contact h2 em{color:#171717}.contact p{font-size:17px;line-height:1.6}.contact .eyebrow{font-size:12px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:24px}label{display:block;font-size:13px;font-weight:600;margin-bottom:24px}label span{font-weight:400}input,select,textarea{display:block;width:100%;padding:13px 0;border:0;border-bottom:1px solid #9f7465;background:transparent;color:var(--ink);border-radius:0;font-size:15px;line-height:1.4}input::placeholder,textarea::placeholder{color:#5f504a;opacity:1}textarea{resize:vertical}select{min-height:48px}form .form-notice{font-size:13px;line-height:1.5;margin-bottom:20px}footer{padding:50px 6%;display:flex;align-items:center;justify-content:space-between;gap:30px;background:#171717;color:white}.footer-brand{font-size:68px;font-weight:700;letter-spacing:5px;display:flex;gap:18px;align-items:center}.footer-brand span{font-size:12px;line-height:1;letter-spacing:0;font-weight:600}footer p{margin-bottom:10px;font-size:18px}footer small{color:#aaa;font-size:12px}footer>a{font-size:14px;border-bottom:1px solid #888;padding:10px 0}.skip{position:fixed;left:10px;top:-80px;z-index:100;background:white;padding:15px}.skip:focus{top:10px}.js .reveal{opacity:0;transform:translateY(28px);transition:opacity .7s,transform .7s}.js .reveal.visible{opacity:1;transform:none}@keyframes ticker{to{transform:translateX(-50%)}}@keyframes scrollhint{50%{transform:scaleY(.4)}}
@media(min-width:1600px){body{max-width:2000px;margin:auto}.hero{min-height:780px}.hero-copy{padding-top:90px}.logo-stage{height:430px}}
@media(max-width:1050px){nav{gap:18px;font-size:12px}.hero{min-height:590px}.hero-copy{padding-top:50px}.logo-stage{height:300px}.hero-art{padding:30px 25px 35px}.hero-foot{margin-top:38px}.scroll-label{display:none}.world-grid{gap:14px}.world-card{padding:20px}.card-logo{height:150px}.method{gap:6%}.contact{gap:5%}}
@media(max-width:760px){html{scroll-padding-top:85px}header{height:84px;padding:0 6%}.logo-crop{width:93px;height:60px}.logo-crop img{width:137px;left:-22px;top:-39px}.menu-toggle{display:block;border:1px solid var(--ink);padding:11px 18px;background:none;border-radius:30px;font-size:14px}nav{display:none;position:absolute;top:84px;left:0;right:0;padding:20px 6% 30px;background:var(--paper);border-bottom:1px solid var(--line);align-items:stretch;font-size:17px}nav.open{display:flex;flex-direction:column;gap:8px}.nav-cta{text-align:center;margin-top:10px}.hero{display:block}.hero-copy{padding:45px 6% 30px}h1{font-size:clamp(54px,11vw,82px)}.eyebrow{font-size:11px;margin-bottom:24px}.lead{font-size:17px}.hero-foot{margin-top:30px;padding-top:18px}.hero-art{min-height:420px;padding:25px 8% 35px}.logo-stage{width:88%;height:245px;max-width:350px;margin:24px 0}.art-bottom p{font-size:22px}.art-top{font-size:10px}.ticker{padding:18px 0}.ticker div{font-size:17px}.section{padding:65px 6%}.intro-grid{display:block;margin-bottom:35px}h2{font-size:43px}.intro-text p{font-size:16px}.world-grid{grid-template-columns:1fr 1fr;gap:12px}.world-card{padding:17px 14px 22px}.card-top{font-size:9px;letter-spacing:.5px}.card-logo{height:135px;margin-bottom:10px}.world-card h3{font-size:21px}.world-card p{font-size:14px}.method{display:block}.method-title{position:relative;top:auto}.method-progress{display:none}.steps{margin-top:40px}.step{padding:30px 0;min-height:0;gap:22px}.step h3{font-size:27px}.step p{font-size:16px}.statement{padding:65px 6%}.statement-copy{font-size:clamp(43px,9vw,66px)}.audience-grid{grid-template-columns:1fr;gap:26px}.audience-grid article{display:grid;grid-template-columns:55px 1fr;column-gap:20px;padding-top:22px}.audience-index{grid-row:span 2;font-size:44px;letter-spacing:-3px;margin:0}.audience-grid h3{margin-bottom:12px}.audience-grid p{font-size:16px;margin:0}.audience h2{margin-bottom:40px}.contact{grid-template-columns:1fr;gap:35px}.contact h2{font-size:48px}footer{flex-wrap:wrap;padding:35px 6%;gap:22px}.footer-brand{font-size:52px}footer div:nth-child(2){width:100%;order:3}footer>a{font-size:13px}}
@media(max-width:390px){.world-grid{grid-template-columns:1fr}.card-logo{height:200px}.card-top{font-size:11px}.form-row{grid-template-columns:1fr;gap:0}h2{font-size:37px}.contact h2{font-size:43px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.js .reveal{opacity:1;transform:none}.logo-stage{transform:none!important}}
/* Scroll chapters: native scrolling, no wheel interception. */
.journey{background:#edb19c}.journey-stage{position:relative;overflow:hidden}.journey-top,.journey-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:28px 6%;font-size:10px;font-weight:700;letter-spacing:1.4px;position:relative;z-index:3}.journey-top a{border-bottom:1px solid;padding-bottom:6px;letter-spacing:0;font-size:13px}.journey-scene{position:relative;min-height:620px;overflow:hidden;padding:60px 6%;display:flex;align-items:center}.scene-1{background:#edb19c}.scene-2{background:#c5b6d5}.journey-word{position:absolute;top:2%;left:5%;font-size:clamp(120px,25vw,400px);line-height:1;letter-spacing:-.08em;font-weight:700;color:rgba(255,255,255,.52);pointer-events:none}.journey-copy{position:relative;z-index:2;width:40%;margin-top:90px}.journey-copy h2{font-size:clamp(42px,5.5vw,85px)}.journey-copy>p:last-child{font-size:17px;line-height:1.65;max-width:350px}.journey-object{position:absolute;right:7%;bottom:0;width:48%;height:85%;object-fit:contain;object-position:center bottom;filter:drop-shadow(0 24px 20px #17171716)}.journey-progress{height:2px;background:#17171730;width:28%}.journey-progress i{display:block;background:var(--ink);height:100%;transform:scaleX(var(--journey-progress,0));transform-origin:left}
.motion .journey{height:330svh}.motion .journey-stage{position:sticky;top:104px;height:calc(100svh - 104px);min-height:460px;background:#edb19c}.motion .journey-top{position:absolute;top:0;left:0;right:0}.motion .journey-bottom{position:absolute;bottom:0;left:0;right:0}.motion .journey-scene{position:absolute;inset:0;min-height:0;padding-bottom:80px;will-change:transform,opacity;visibility:hidden}.motion .journey-scene:first-of-type{visibility:visible}.motion .journey-object{bottom:60px;height:77%;will-change:transform}.motion .journey-word{top:10%;will-change:transform}.motion .method{clip-path:inset(0 var(--method-inset,0%) round var(--method-radius,0px));}.mission-line{display:block!important;color:#fff!important;font-family:Arial,Helvetica,sans-serif!important;font-style:normal!important;transform:translateX(var(--line-x,0px));opacity:var(--line-opacity,1)}.mission-line.mission-em{color:#f9b199!important;font-family:Georgia,serif!important;font-style:italic!important}.motion .statement{border-radius:var(--statement-radius,0px) var(--statement-radius,0px) 0 0}.motion .world-card{transition:opacity .7s,transform .7s}.world-card:nth-child(3n+2){transition-delay:.09s}.world-card:nth-child(3n+3){transition-delay:.18s}
@media(max-width:760px){.motion .journey{height:270svh}.motion .journey-stage{top:84px;height:calc(100svh - 84px);min-height:480px}.journey-top{padding:20px 6%;font-size:8px}.journey-top>span{max-width:150px;line-height:1.5}.journey-top a{font-size:11px}.journey-scene{min-height:620px;align-items:start;padding-top:65px}.journey-copy{width:100%;margin-top:0}.journey-copy h2{font-size:40px;max-width:280px;margin-bottom:14px}.journey-copy .eyebrow{margin-bottom:14px}.journey-copy>p:last-child{font-size:14px;max-width:290px}.journey-word{font-size:31vw;top:42%!important}.journey-object,.motion .journey-object{height:48%;width:80%;right:0;bottom:45px}.journey-bottom{padding:20px 6%;font-size:8px}.motion .journey-scene{padding-top:75px}.journey-progress{width:20%}}
@media(prefers-reduced-motion:reduce){.mission-line{transform:none!important;opacity:1!important}.journey-progress{display:none}}
/* Colours sampled directly from the supplied BEL 3D logos. */
.journey,.journey-stage,.motion .journey-stage,.scene-0{background:#dc4d3d}.scene-1{background:#da383d}.scene-2{background:#593a74;color:#fff}.journey-word{color:rgba(255,255,255,.22)}.journey[data-scene="2"] .journey-top,.journey[data-scene="2"] .journey-bottom{color:#fff}.journey[data-scene="2"] .journey-progress{background:#ffffff40}.journey[data-scene="2"] .journey-progress i{background:white}
/* Separate brand, colour field and original artwork for reversible transitions. */
.world-grid{isolation:isolate}.world-card{z-index:0;transform-origin:center}.world-card:focus-visible{outline:3px solid var(--accent);outline-offset:5px}
.card-logo.composition{height:220px;overflow:visible;perspective:900px;margin:12px 0 24px;isolation:isolate}
.brand-brick{position:absolute;left:4%;top:55%;width:61%;height:40%;background:var(--accent);z-index:0;transition:all .55s cubic-bezier(.2,.75,.25,1)}
.bel-wordmark{position:absolute;left:4%;top:5%;width:92%;height:auto;z-index:2;overflow:hidden;transition:all .6s cubic-bezier(.2,.75,.25,1)}
.brand-tagline{position:absolute;left:76%;top:59%;font-size:17px;font-weight:700;line-height:.95;z-index:2;transition:all .5s}
.subject-position{position:absolute;left:12%;top:40%;width:49%;height:60%;z-index:3;transition:all .6s cubic-bezier(.2,.75,.25,1)}
.subject-tilt{width:100%;height:100%;display:flex;justify-content:center;align-items:end;transform:rotateX(0deg) rotateY(0deg);transition:transform .3s;transform-style:preserve-3d}
.subject-rig{position:relative;height:100%;max-width:100%;transform-origin:50% 90%;}
.composition img.subject-image{position:relative;display:block;width:100%;height:100%;left:auto;top:auto;object-fit:contain;transform:none!important;transition:filter .4s;filter:drop-shadow(0 6px 4px #00000016)}
.lamp-glow,.bulb-glow{position:absolute;z-index:1;opacity:0;pointer-events:none;transition:opacity .4s}.lamp-glow{inset:18% -42% 1%;background:radial-gradient(ellipse at 50% 0%,#fff9bada, #ffe68a55 30%,transparent 70%);mix-blend-mode:screen}.bulb-glow{inset:-15% -28% 30%;border-radius:50%;background:radial-gradient(ellipse,#fffbd6d9,#fff6a766 40%,transparent 70%);mix-blend-mode:screen}
.pull-cord{position:absolute;left:73%;top:22%;width:1px;height:15%;background:#e9d8a9;z-index:4;transform-origin:top;transition:transform .3s}.pull-cord:after{content:'';position:absolute;bottom:0;left:-2px;width:5px;height:8px;border-radius:4px;background:#e9d8a9}
.subject-luce .subject-image{filter:brightness(.77) drop-shadow(0 6px 4px #0002)}
/* Duplicate masked parts from the supplied crane keep the actual load artwork. */
.subject-cantiere .subject-rig>.subject-image{clip-path:polygon(0 0,100% 0,100% 42%,55% 42%,55% 100%,35% 100%,35% 42%,0 42%)}
.cargo{position:absolute;inset:0;z-index:2}.cargo-a{clip-path:inset(68% 69% 6% 18%)}.cargo-b{clip-path:inset(53% 26% 36% 66%)}
.hoist-cable{position:absolute;z-index:0;width:1px;background:#292929;transform-origin:top}.cable-a{left:25%;top:38%;height:33%}.cable-b{left:69%;top:27%;height:29%}
@media(hover:hover) and (pointer:fine){
 .world-card,.motion .world-card,.js .world-card.reveal{transition:transform .4s,box-shadow .4s,opacity .7s;transition-delay:0s}
 .world-card:is(:hover,:focus-visible),.js .world-card.reveal.visible:is(:hover,:focus-visible){transform:translateY(-12px) scale(1.1);z-index:4;box-shadow:0 28px 65px #17171726;overflow:visible}
 .world-card:is(:hover,:focus-visible) .brand-brick{left:-3%;top:0;width:106%;height:100%;border-radius:3px}
 .world-card:is(:hover,:focus-visible) .bel-wordmark{left:4%;top:32%;width:40%}
 .world-card:is(:hover,:focus-visible) .brand-tagline{left:5%;top:58%;font-size:13px}
 .world-card.purple:is(:hover,:focus-visible) .bel-wordmark,.world-card.brown:is(:hover,:focus-visible) .bel-wordmark{filter:invert(1)}
 .world-card.purple:is(:hover,:focus-visible) .brand-tagline,.world-card.brown:is(:hover,:focus-visible) .brand-tagline{color:white}
 .world-card:is(:hover,:focus-visible) .subject-position{left:45%;top:-7%;width:57%;height:111%}
 .world-card:is(:hover,:focus-visible) .subject-tilt{transform:rotateX(var(--tilt-x,-4deg)) rotateY(var(--tilt-y,8deg))}
 .world-card:is(:hover,:focus-visible) .subject-design .subject-rig,.world-card:is(:hover,:focus-visible) .subject-materiali .subject-rig{animation:object-turn 3.2s ease-in-out infinite}
 .world-card:is(:hover,:focus-visible) .subject-benessere .subject-rig{animation:happy-sway 3s ease-in-out infinite}
 .world-card:is(:hover,:focus-visible) .lamp-glow{opacity:1;transition-delay:.28s}
 .world-card:is(:hover,:focus-visible) .subject-luce .subject-image{filter:brightness(1.15) drop-shadow(0 0 10px #ffdf8a88);transition-delay:.28s}
 .world-card:is(:hover,:focus-visible) .pull-cord{animation:cord-pull .65s ease both}
 .world-card:is(:hover,:focus-visible) .bulb-glow{animation:bulb-light 2.6s ease-in-out infinite}
 .world-card:is(:hover,:focus-visible) .subject-energia .subject-image{filter:brightness(1.14) drop-shadow(0 0 12px #fff2a488)}
 .world-card:is(:hover,:focus-visible) .cargo-a{animation:cargo-lift 3s ease-in-out infinite}
 .world-card:is(:hover,:focus-visible) .cargo-b{animation:cargo-lift 3.6s ease-in-out -.8s infinite reverse}
 .world-card:is(:hover,:focus-visible) .cable-a{animation:cable-lift 3s ease-in-out infinite}
 .world-card:is(:hover,:focus-visible) .cable-b{animation:cable-lift 3.6s ease-in-out -.8s infinite reverse}
}
@keyframes object-turn{0%,100%{transform:rotateY(-17deg) rotateZ(-3deg)}50%{transform:rotateY(20deg) rotateZ(3deg)}}
@keyframes happy-sway{0%,100%{transform:rotate(-3deg) translateY(0)}50%{transform:rotate(3deg) translateY(-5px)}}
@keyframes cord-pull{0%,100%{transform:scaleY(1)}45%{transform:scaleY(1.6)}}
@keyframes bulb-light{0%,100%{opacity:.2}45%,65%{opacity:1}}
@keyframes cargo-lift{0%,100%{transform:translateY(0)}50%{transform:translateY(-13%)}}
@keyframes cable-lift{0%,100%{transform:scaleY(1)}50%{transform:scaleY(.6)}}
@media(max-width:1050px){.card-logo.composition{height:190px}.brand-tagline{font-size:14px}}
@media(max-width:760px){.card-logo.composition{height:165px}.brand-tagline{font-size:11px}}
@media(max-width:390px){.card-logo.composition{height:220px}.brand-tagline{font-size:17px}}
@media(hover:none){.world-card:hover{transform:none}}
@media(prefers-reduced-motion:reduce){.world-card:is(:hover,:focus-visible),.js .world-card.reveal.visible:is(:hover,:focus-visible){transform:none}.world-card:is(:hover,:focus-visible) .subject-tilt{transform:none}.world-card:is(:hover,:focus-visible) .bulb-glow{opacity:1}}
@media(hover:hover) and (pointer:fine){.world-card:is(:hover,:focus-visible) .subject-position{top:2%;height:96%}}
