@font-face{font-family:Raleway;src:url('assets/raleway.ttf');font-weight:100 900;font-display:swap}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:#111313;color:#efefea;font-family:Raleway,Arial,sans-serif;font-size:16px;--orange:#f5a000;--liquid:#8e4c15;--liquid-light:#b16b2d}button,input,textarea{font:inherit}button,a,input,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}button{color:inherit;background:none;border:0}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--orange);outline-offset:6px}header{height:100px;display:flex;align-items:center;justify-content:space-between;padding:0 5%;position:absolute;top:0;left:0;right:0;z-index:10;border-bottom:1px solid #ffffff12}header img{width:144px}nav{display:flex;gap:30px;align-items:center;font-size:13px}nav a:hover{color:var(--orange)}.nav-contact{border-bottom:1px solid var(--orange);padding-bottom:7px}#motion{font-size:10px;text-transform:uppercase;letter-spacing:1px;color:#a8afab}section{scroll-margin-top:30px}.hero{min-height:900px;height:100vh;max-height:1120px;position:relative;overflow:hidden;display:flex;align-items:center;background:radial-gradient(ellipse at 75% 45%,#20303355,transparent 65%)}.hero-copy{z-index:2;position:relative;margin:70px 0 0 7%;width:51%;pointer-events:none}.hero-copy a{pointer-events:auto}.eyebrow{font-size:10px;letter-spacing:2.3px;color:var(--orange);font-weight:600;line-height:1.6}h1,h2,h3,p{margin-top:0}h1{font-weight:300;font-size:clamp(45px,4.6vw,76px);line-height:1.13;letter-spacing:-2px;margin:30px 0}em{font-style:normal;color:var(--orange)}p{font-size:15px;line-height:1.9;color:#a8afad;max-width:530px;font-weight:400}.hero p{font-size:16px}.text-link{display:inline-flex;gap:38px;align-items:center;font-size:13px;padding:15px 0;border-bottom:1px solid #747d774a;margin-top:15px}.text-link span{color:var(--orange);font-size:22px}.network-wrap{position:absolute;right:0;top:120px;bottom:130px;width:67%}canvas{width:100%;height:100%;display:block}.network-caption{position:absolute;right:8%;bottom:80px;font-size:12px;color:#b9c1bd}.network-caption small{display:block;font-size:8px;letter-spacing:2px;margin:10px 0 0 18px;color:#687773}.dot{display:inline-block;width:6px;height:6px;background:var(--orange);border-radius:50%;margin-right:10px;box-shadow:0 0 12px #f5a00066}.event-toast{position:absolute;right:8%;bottom:0;background:#18201ff2;border:1px solid #f5a00033;padding:18px 22px;display:flex;gap:14px;font-size:12px;align-items:center;color:var(--orange)}.event-toast span{color:#c2c7bf}.hero-bottom{position:absolute;bottom:45px;left:7%;right:7%;display:flex;justify-content:space-between;border-top:1px solid #ffffff16;padding-top:24px;font-size:9px;letter-spacing:1.6px;color:#7f8984}.section{padding:110px 7%;border-top:1px solid #ffffff10;max-width:1800px;margin:auto}.section-top{display:flex;justify-content:space-between;margin-bottom:55px}.quiet{font-size:11px;color:#78837e}.split{display:grid;grid-template-columns:1fr 1.13fr;gap:8%;align-items:center}h2{font-size:clamp(32px,3.4vw,54px);font-weight:300;line-height:1.2;letter-spacing:-1.5px;margin-bottom:25px}h3{font-weight:400;font-size:27px}.choice-list{display:flex;flex-wrap:wrap;gap:8px;margin:30px 0 18px}.choice-list button{font-size:11px;border:1px solid #ffffff20;padding:12px 16px;color:#a7b0aa;transition:.3s}.choice-list button.active,.choice-list button:hover{background:#f5a00013;border-color:#f5a000;color:var(--orange)}.small-note{font-size:11px;line-height:1.7;color:#78837e}.scene-panel{background:linear-gradient(135deg,#1b2221,#131817);border:1px solid #ffffff12;padding:24px}.panel-label{display:flex;justify-content:space-between;font-size:8px;letter-spacing:1.8px;color:#a7b1a8}.panel-label span{color:#66746c}.scene-panel svg{width:100%;overflow:visible}svg text{font-family:Raleway,Arial;fill:#8b9991;font-size:10px;letter-spacing:1px}.route-original{fill:none;stroke:#667976;stroke-width:1.5;stroke-dasharray:5 8;opacity:.5}.route-alternative{fill:none;stroke:#f5a000;stroke-width:2;stroke-dasharray:5 7;opacity:.8}.metrics{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #ffffff16;padding-top:20px;gap:10px}.metrics small{display:block;font-size:8px;letter-spacing:1px;color:#7a8a7d}.metrics strong{display:block;font-size:21px;font-weight:400;margin-top:10px}.demo-note{display:block;color:#647069;font-size:9px;line-height:1.7;margin-top:20px}.product-section{background:radial-gradient(ellipse at 70% 50%,#47321c27,transparent 55%)}.product-options{display:flex;flex-direction:column;margin:30px 0}.product-options button{text-align:left;border-bottom:1px solid #ffffff14;padding:14px 0;display:flex;justify-content:space-between;color:#828d86;font-size:15px}.product-options button.active{color:var(--orange)}.product-options button span{font-size:12px}.product-info{min-height:180px;margin-top:30px}.product-info h3{margin:12px 0}.lab-scene{height:590px;position:relative;display:flex;align-items:center;justify-content:center;flex-direction:column;perspective:900px}.lab-halo{position:absolute;width:440px;height:440px;border-radius:50%;background:radial-gradient(ellipse,#9a65252c,transparent 70%)}.vessel{width:300px;position:relative;transform-origin:50% 90%;filter:drop-shadow(0 15px 18px #0008)}.vessel svg{width:100%;overflow:visible;display:block}.lab-table{position:absolute;top:435px;width:95%;height:90px;background:radial-gradient(ellipse,#4c4d4129,#151716 70%);border-top:1px solid #ffffff18;transform:rotateX(60deg);z-index:-1}.lab-caption{width:100%;display:flex;justify-content:space-between;margin-top:40px;font-size:8px;letter-spacing:1.3px;color:#8e9b90}#flame{opacity:0}#liquid-body,#liquid-surface{transition:fill 1.5s}.wide-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:12%;margin-bottom:50px}.wide-heading p{max-width:350px}.match-board{background:#181d1b;border:1px solid #ffffff16;padding:30px}.board-heading{display:flex;justify-content:space-between;align-items:center;font-size:10px;letter-spacing:1px;padding-bottom:25px}.board-heading button{color:var(--orange);font-size:11px;letter-spacing:0;border:1px solid #f5a00055;padding:10px 15px}.board-columns,.match-row{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.board-columns{font-size:8px;letter-spacing:1px;color:#68796d;margin-bottom:12px}.match-row{margin-bottom:10px;transition:.6s}.match-row span{border:1px solid #ffffff13;background:#222b25;padding:17px 12px;font-size:12px;color:#9ba99c}.match-row.matched span{border-color:#f5a000;color:var(--orange);background:#f5a00015}.transaction{display:flex;align-items:center;justify-content:space-around;gap:30px;padding:35px 0;min-height:200px}.transaction>div:first-child{width:230px;font-size:19px;font-weight:300;color:var(--orange)}.contract{width:140px;height:150px;background:#e1ded0;transform:rotate(-5deg);color:#263025;padding:20px 12px;box-shadow:8px 10px 0 #0003;transition:transform .6s,opacity .6s}.contract span{font-size:8px;font-weight:700}.contract i{display:block;width:85%;height:1px;background:#66735f55;margin-top:14px}.contract #signatures{font-size:8px;margin-top:18px;opacity:.3}.folder{width:190px;height:120px;position:relative;background:#75521f;border:1px solid #bd8b38;border-radius:0 6px 6px 6px;padding:32px 20px;transition:.6s;box-shadow:9px 9px 0 #0004}.folder:before{content:'';position:absolute;top:-15px;left:-1px;width:70px;height:16px;background:#75521f;border:1px solid #bd8b38;border-bottom:0;border-radius:4px 4px 0 0}.folder span{font-size:10px;letter-spacing:1px}.folder small{display:block;font-size:9px;margin-top:15px;color:#d0b686}.workflow{display:flex;justify-content:space-between;border-top:1px solid #ffffff10;padding-top:24px}.workflow span{font-size:10px;color:#6f7d72}.workflow span.active{color:var(--orange)}.voyage-scene{background:#141b1c;border:1px solid #ffffff10}.voyage-scene svg{width:100%;display:block}.voyage-status{padding:22px;display:flex;align-items:center;font-size:11px}.voyage-status strong{font-weight:400}.voyage-status>span:last-child{margin-left:auto;color:#687c73}.cargo-label{display:flex;justify-content:space-between;font-size:8px;letter-spacing:1px;color:#6f7f74;margin:30px 0 15px}.cargo-label b{color:#ccd3c8;font-size:11px;font-weight:400;letter-spacing:0}input[type=range]{width:100%;accent-color:var(--orange)}.risk-list button{display:flex;gap:20px;width:100%;padding:21px 0;border-bottom:1px solid #ffffff15;text-align:left}.risk-list button span{color:#78897d;font-size:10px}.risk-list button b{margin-left:auto;color:var(--orange)}.risk-list button.active{color:var(--orange)}.risk-list p{min-height:50px;font-size:12px;margin-top:22px}.compact-section{padding-top:90px;padding-bottom:90px}.about-image{height:470px;position:relative;overflow:hidden}.about-image img{width:100%;height:100%;object-fit:cover;opacity:.65}.about-image:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#111313,transparent)}.about-image>div{position:absolute;top:110px;left:35px;z-index:1}.about-image h2{margin-top:20px;max-width:600px}.leadership{display:grid;grid-template-columns:1fr 1.2fr;gap:9%;margin-top:70px}.leadership h3{font-size:25px}.leadership p{font-size:13px}#leaders button{display:flex;align-items:center;gap:22px;text-align:left;width:100%;border-bottom:1px solid #ffffff18;padding:20px 0}#leaders button span{font-size:10px;color:var(--orange)}#leaders button strong{font-size:14px;font-weight:400}#leaders button b{margin-left:auto;color:var(--orange)}#leaders button.active strong{color:var(--orange)}#leader-description{margin-top:20px;font-size:12px}.partnership-options{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.partnership-options button{display:flex;flex-wrap:wrap;text-align:left;border-top:1px solid #f5a00077;padding:25px 0;gap:25px;font-size:10px;color:var(--orange)}.partnership-options strong{display:block;width:100%;font-size:24px;font-weight:300;color:#c6cfc6}.partnership-options span{margin-left:auto;font-size:22px}.partnership-options button.active strong{color:var(--orange)}#partner-description{font-size:13px;min-height:30px}.contact-section{background:radial-gradient(ellipse at 10% 80%,#65401025,transparent 70%)}.contact-section h2{font-size:clamp(50px,6vw,88px);margin:30px 0 50px}.contact-section .split{align-items:start}form label{font-size:10px;color:#8b978e;display:block;margin-bottom:20px}form input,textarea{display:block;width:100%;background:transparent;border:0;border-bottom:1px solid #ffffff22;padding:14px 0;color:#eee;border-radius:0;resize:vertical}form input:focus,textarea:focus{border-color:var(--orange)}.solid-button{background:var(--orange);color:#111;padding:18px 25px;margin-top:20px;font-size:12px}.selection-summary{font-size:11px;color:#aaad9e;padding:15px 0}.symbols{position:absolute;overflow:hidden}footer{display:flex;justify-content:space-between;align-items:center;margin:0 7%;padding:40px 0;border-top:1px solid #ffffff18;gap:20px;font-size:10px;color:#75837a}footer img{width:110px}footer a{color:#b0b9b0}@media(min-width:1800px){.hero-copy{margin-left:calc((100vw - 1550px)/2)}}@media(max-width:950px){header{height:85px;padding:0 5%}header img{width:120px}nav{gap:16px}nav a{font-size:11px}nav a:nth-child(1),nav a:nth-child(4){display:none}#motion{font-size:8px}.hero{height:auto;min-height:1000px;align-items:start}.hero-copy{margin-top:160px;width:85%}.hero-copy h1{font-size:58px}.network-wrap{top:400px;bottom:100px;width:100%}.network-caption{bottom:60px}.event-toast{bottom:0}.hero-bottom>span:last-child{display:none}.split{grid-template-columns:1fr;gap:45px}.section{padding:75px 7%}.section-top{margin-bottom:35px}.quiet{display:none}.product-layout{gap:0}.lab-scene{height:540px}.wide-heading{display:block}.wide-heading p{max-width:530px}.metrics strong{font-size:18px}.leadership{grid-template-columns:1fr;gap:25px}.about-image h2{font-size:38px}.board-heading{gap:15px}.board-columns{font-size:7px}.match-row span{padding:14px 8px;font-size:10px}.transaction{gap:15px}.transaction>div:first-child{font-size:15px;width:160px}.contract{width:110px;height:140px}.folder{width:145px}.partnership-options{gap:15px}.partnership-options strong{font-size:20px}}@media(max-width:550px){nav a:not(.nav-contact){display:none}.hero{min-height:950px}.hero-copy h1{font-size:43px;letter-spacing:-1.5px}.hero-copy{margin-top:145px}.hero p{font-size:13px}.network-wrap{top:400px}.event-toast{font-size:10px;padding:14px}.section-top .eyebrow{font-size:9px}.scene-panel{padding:16px}.metrics small{font-size:7px}.metrics strong{font-size:14px}.board-heading{font-size:8px;letter-spacing:0}.board-heading button{font-size:9px;padding:10px}.match-board{padding:16px}.board-columns,.match-row{gap:5px}.board-columns{font-size:6px;letter-spacing:0}.match-row span{font-size:8px;padding:12px 5px}.transaction{flex-wrap:wrap}.transaction>div:first-child{width:100%;text-align:center}.workflow{gap:8px;flex-wrap:wrap}.workflow span{font-size:8px}.lab-scene{height:510px}.vessel{width:265px}.lab-table{top:395px}.lab-caption{font-size:6px}.partnership-options{grid-template-columns:1fr}.partnership-options button{padding:20px 0;gap:10px}.partnership-options strong{width:auto;flex:1}.about-image{height:400px}.about-image>div{left:20px}.about-image h2{font-size:29px}.contact-section h2{font-size:52px}footer{flex-wrap:wrap}footer span{font-size:8px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

#deal-voyage{width:100%;height:90px;opacity:0;transition:opacity .7s}.network-wrap{mask-image:linear-gradient(90deg,transparent,#000 14%)}@media(max-width:950px){.network-wrap{mask-image:linear-gradient(0deg,#000 88%,transparent);top:455px}}
.lab-halo{max-width:100%;aspect-ratio:1}.split>div{min-width:0}
.brand-intro[hidden]{display:none}.brand-intro{position:fixed;inset:0;z-index:100;background:radial-gradient(ellipse at 50% 40%,#25302a,#111313 65%);display:flex;flex-direction:column;justify-content:center;overflow:hidden}.intro-top,.intro-bottom{position:absolute;left:6%;right:6%;display:flex;justify-content:space-between;align-items:center;font-size:9px;letter-spacing:1.8px;color:#879489;gap:25px}.intro-top{top:35px}.intro-top button{font-size:11px;letter-spacing:0;color:#c4cec5;padding:12px;border-bottom:1px solid #f5a00055}.intro-bottom{bottom:35px}.intro-progress{height:1px;background:#ffffff18;flex:1;max-width:380px}.intro-progress i{display:block;background:#f5a000;height:1px;width:0}.intro-stage{position:relative;width:min(1000px,88vw);height:min(460px,45vh);margin:0 auto}.intro-world{width:100%;height:100%;transition:opacity .8s}.intro-world text{font-size:9px;letter-spacing:2px}.intro-logo-wrap{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;opacity:0;transition:opacity .8s}.intro-master{width:min(500px,72vw);height:auto;overflow:visible}.intro-logo-wrap p{text-align:center;font-size:17px;color:#e7e8df;margin:35px 0 0;font-weight:300;line-height:1.8}.intro-logo-wrap p span{color:#f5a000}.intro-caption{text-align:center;position:relative;margin:25px 5% 0;min-height:110px}.intro-caption>span{font-size:9px;letter-spacing:2px;color:#f5a000}.intro-caption h2{font-size:clamp(23px,3vw,38px);margin:15px 0 8px;letter-spacing:-.5px}.intro-caption p{margin:0 auto;font-size:13px}.intro-master #ENR,.intro-master #horizon,.intro-master #i-dot,.intro-master #inner-corner-fillets,.intro-master #R-orange-accent{opacity:0;transition:opacity .6s}.intro-master #orange-wave{stroke-dasharray:1500;stroke-dashoffset:1500}.intro-logo-wrap.complete .intro-master #ENR,.intro-logo-wrap.complete .intro-master #horizon,.intro-logo-wrap.complete .intro-master #i-dot,.intro-logo-wrap.complete .intro-master #inner-corner-fillets,.intro-logo-wrap.complete .intro-master #R-orange-accent{opacity:1}#intro-replay{font-size:10px;color:#d5a34a}#intro-pipeline,#intro-port,#intro-plant{transition:opacity .8s}@media(max-width:600px){.intro-top{top:20px;font-size:7px;letter-spacing:1px}.intro-stage{width:100vw;height:33vh}.intro-caption{margin-top:30px}.intro-caption p{font-size:11px}.intro-bottom{font-size:7px;letter-spacing:.8px}.intro-bottom>span:last-child{display:none}.intro-logo-wrap p{font-size:14px}.intro-progress{max-width:180px}}
/* Cinematic 3D direction, based on the corporate presentation. */
.hero{min-height:1000px;height:100vh;max-height:1300px;display:block;background:#080b0c}.hero-copy{margin:0;position:absolute;top:160px;left:7%;width:86%;text-align:center;pointer-events:none}.hero-copy h1{font-size:clamp(40px,4.2vw,70px);line-height:1.1;letter-spacing:-2px;margin:22px 0}.hero-copy h1 br:first-child{display:none}.hero-copy h1 br:first-child:after{content:' '}.hero-copy h1 em{display:inline-block}.hero-copy p{margin:18px auto 0;font-size:13px;max-width:650px}.hero-copy .text-link{margin-top:7px;font-size:11px;padding:7px 0}.network-wrap{width:100%;right:0;top:390px;bottom:0;mask-image:none;background:url('assets/globe-reference.png') center / cover}.network-wrap:has(#globe3d[data-ready=true]){background:none}#globe3d{position:absolute;inset:0;width:100%;height:100%;cursor:grab;touch-action:pan-y}#globe3d.dragging{cursor:grabbing}#network{display:none}.globe-controls{position:absolute;left:7%;right:7%;bottom:105px;display:flex;justify-content:space-between;align-items:center;gap:20px;pointer-events:none}.globe-controls>span{font-size:9px;letter-spacing:2px;color:#c9c1ad}.globe-controls>div{display:flex;gap:10px;pointer-events:auto}.globe-controls button{padding:9px 13px;font-size:10px;background:#0b1010b3;border:1px solid #ffffff25;backdrop-filter:blur(10px);color:#aaa}.globe-controls button.active{color:#f5a000;border-color:#f5a00088}.network-caption{right:auto;left:7%;bottom:165px}.network-caption small{font-size:7px}.event-toast{right:7%;bottom:165px;padding:13px 18px;background:#0d1211c9}.hero-bottom{z-index:3;pointer-events:none;bottom:28px}.physical-scene{width:100%;height:420px;display:block;background:radial-gradient(ellipse at 50% 70%,#27353444,transparent 70%)}#route-scene,#voyage{display:none}.scene-panel{padding:20px;background:#0e1415;border-color:#ffffff13}.voyage-scene{background:#0d1415}.lab-scene{height:610px;background:radial-gradient(ellipse at 50% 65%,#4a35221f,transparent 60%)}#lab3d{position:absolute;inset:0;width:100%;height:100%;z-index:2}.lab-scene .vessel,.lab-halo,.lab-table{display:none}.lab-caption{position:absolute;bottom:34px;z-index:3;margin:0}.lab-scene>.demo-note{position:absolute;bottom:0;z-index:3}.product-layout{gap:6%}.product-section{background:#0d1011}.section{border-color:#ffffff0c}.intro-top{display:none}@media(max-width:950px){.hero{min-height:950px}.hero-copy{top:150px;width:86%;left:7%}.hero-copy h1{font-size:46px}.network-wrap{top:385px}.globe-controls{bottom:100px;flex-direction:column;gap:15px}.network-caption{bottom:195px}.event-toast{bottom:145px}.hero-bottom>span:nth-child(2){display:none}.physical-scene{height:390px}}@media(max-width:550px){.hero{min-height:930px}.hero-copy{top:145px}.hero-copy h1{font-size:36px;letter-spacing:-1.2px}.hero-copy h1 br:first-child{display:block}.hero-copy p{font-size:11px}.hero-copy p br{display:none}.network-wrap{top:390px}.network-caption{display:none}.event-toast{bottom:180px;left:7%;right:7%;justify-content:center;font-size:10px}.globe-controls>div{gap:5px}.globe-controls button{font-size:8px;padding:8px}.globe-controls>span{font-size:7px}.physical-scene{height:310px}.lab-scene{height:490px}.hero-bottom{font-size:7px}.hero-copy .eyebrow{font-size:8px}.globe-controls{bottom:95px}#globe3d{touch-action:none}}
@media(min-width:951px){.hero{height:1000px;min-height:1000px;max-height:1000px}.network-wrap{top:320px}.hero-copy{top:155px}.hero-copy h1{font-size:clamp(40px,3.8vw,62px)}.hero-copy .text-link{display:none}.hero-copy p{font-size:12px}.globe-controls{bottom:85px}.event-toast{bottom:145px}.network-caption{bottom:145px}}.hero-copy h1 br:first-child{display:block}
#deal-voyage{display:none}#deal3d{height:220px;transition:opacity 1s}.hero-copy{max-width:1280px;left:50%;transform:translateX(-50%)}@media(min-width:951px){.network-wrap{top:400px}.hero-copy{top:130px}.hero-copy h1{font-size:clamp(40px,3.8vw,58px);margin:15px 0}.hero-copy p{margin-top:10px}}@media(max-width:950px){.hero-copy{left:50%}}

.hero-headline-line{white-space:nowrap}.hero-copy h1{font-size:clamp(22px,3.6vw,58px)}@media(max-width:600px){.hero-copy h1{font-size:clamp(18px,4.2vw,25px);letter-spacing:-.7px}}

.hero-copy h1 em{font-weight:600}

.route-inspector{position:absolute;right:5%;top:25px;width:min(350px,90%);max-height:calc(100% - 155px);overflow:auto;z-index:6;padding:20px;background:linear-gradient(135deg,#172024ed,#080f13ee);border:1px solid #f5a00065;border-top:2px solid #ffd08a;box-shadow:0 15px 60px #0009,0 0 24px #f5a00012;backdrop-filter:blur(18px);animation:route-reveal .4s ease-out;color:#e7e9e4}.route-inspector[hidden]{display:none}.route-card-top{display:flex;justify-content:space-between;align-items:center;color:#f5b749;font-size:8px;letter-spacing:1.6px}.route-card-top button{font-size:24px;color:#d9dfdc}.route-inspector h3{font-size:22px;line-height:1.25;margin:13px 0 18px}.route-endpoints{display:grid;grid-template-columns:1fr auto 1fr;gap:12px;font-size:11px;line-height:1.6}.route-endpoints b{color:#f5a000;transform:rotate(-90deg)}.route-inspector .route-via{font-size:10px;color:#a4afab;margin:12px 0 18px}.route-stats{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid #ffffff20;border-bottom:1px solid #ffffff20;padding:14px 0;gap:12px}.route-inspector small{display:block;font-size:8px;letter-spacing:1px;color:#8c9c9f}.route-stats strong{display:block;font-size:22px;font-weight:400;margin-top:6px}.route-stats i{font-size:11px;font-style:normal;color:#a1aca8}.route-market{padding:16px 0}.route-market>strong{display:block;font-size:15px;color:#b6c1bd;margin-top:7px}.route-inspector p{font-size:10px;line-height:1.6;margin:8px 0;color:#93a1a3}.route-inspector summary{font-size:11px;color:#e5b261;cursor:pointer}.route-inspector label{display:block;font-size:10px;margin-top:10px;color:#a6b2b3}.route-inspector input{display:block;width:100%;background:#080d11;border:1px solid #ffffff30;color:#fff;padding:8px;margin-top:5px;font-size:12px}.route-inspector output{display:block;font-size:11px;color:#f5c77e;margin:12px 0}.route-alert{display:flex;gap:10px;padding:13px;background:#f5a0000a;border-left:2px solid #f5a00080}.route-alert>span{color:#f5a000}.route-alert b{font-size:8px;letter-spacing:1px;color:#e8b96a}.route-alert a{font-size:10px;color:#ffd08a}.route-inspector footer{margin-top:14px;font-size:8px;line-height:1.5;color:#73858b}.route-tether{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:5;overflow:hidden}.route-tether[hidden]{display:none}.route-tether line{stroke:#f5bd6a;stroke-width:.8;stroke-dasharray:3 5;opacity:.65}.route-tether circle{fill:#ffe3b4;stroke:#f5a000;stroke-width:2}.route-menu{position:absolute;left:7%;top:18px;z-index:6;max-width:280px;background:#0c151bcc;border:1px solid #ffffff20;padding:10px 14px;backdrop-filter:blur(12px)}.route-menu summary{font-size:10px;color:#f5c274;cursor:pointer}.route-menu button{display:block;text-align:left;font-size:10px;padding:9px 0;color:#c7d3d0}.route-menu button:hover{color:#f5a000}@keyframes route-reveal{from{opacity:0;transform:translateY(15px) scale(.97)}to{opacity:1;transform:none}}@media(max-width:600px){.route-inspector{right:4%;top:55px;padding:15px;width:92%;max-height:calc(100% - 160px)}.route-menu{left:4%}}

/* Cyan holographic route link; independent of the amber shipping network. */
.route-inspector{width:min(330px,90%);padding:18px 20px;background:linear-gradient(125deg,#062032dd,#07131fee 60%,#061722dd);border:1px solid #48cfff55;border-top:1px solid #91e7ffb3;border-radius:2px 18px 2px 18px;box-shadow:0 18px 55px #0008,inset 0 0 28px #34c8ff09,0 0 24px #0db4ff17;backdrop-filter:blur(16px);color:#d7f2ff;animation:hud-arrive .55s ease-out}.route-card-top{color:#6ccdf0;font-size:8px;letter-spacing:1.8px}.route-card-top .hud-close{color:#92cfe3;font-size:22px}.hud-status-dot{display:inline-block;width:4px;height:4px;border-radius:50%;background:#74dfff;box-shadow:0 0 9px #16baff;margin-right:5px}.route-inspector h3{font-weight:300;font-size:22px;letter-spacing:-.4px;margin:18px 0}.route-endpoints{display:flex;gap:12px;align-items:center;font-size:10px;color:#b7cfd8}.route-endpoints b{display:inline;color:#53d3ff;transform:none}.route-inspector .route-via{font-size:9px;color:#638da2;margin:10px 0 16px}.route-stats{border-color:#46b7e52b;padding:14px 0}.route-stats>div{display:flex;gap:10px;align-items:center}.route-stats strong{font-size:20px;color:#e5f7ff;margin:0}.route-stats i{font-size:10px;color:#84aec1}.hud-icon{position:relative;flex:0 0 26px;width:26px;height:26px;padding:3px;color:#55d1ff;border:1px solid #37aee433;background:#15a3de0b;border-radius:5px;overflow:visible}.hud-icon svg{display:block;width:100%;height:100%;overflow:visible}.hud-icon path{fill:none;stroke:currentColor;stroke-width:1.2;stroke-linecap:round;stroke-linejoin:round}.hud-icon:after{content:attr(data-tip);position:absolute;left:0;bottom:calc(100% + 9px);width:180px;padding:9px 11px;background:#061724f5;border:1px solid #45c8ff65;color:#c5e6f6;font-size:10px;line-height:1.5;text-align:left;opacity:0;visibility:hidden;pointer-events:none;z-index:20;box-shadow:0 4px 16px #0009;transform:translateY(4px);transition:.18s}.hud-icon:hover:after,.hud-icon:focus-visible:after{opacity:1;visibility:visible;transform:none}.route-stats>div:last-child .hud-icon:after{left:auto;right:0}.hud-market-row{display:flex;align-items:center;gap:12px;padding-top:17px}.hud-market-row>span{font-size:20px;color:#d7ecf5}.hud-market-row i{font-size:10px;font-style:normal;color:#709eb3}.hud-market-row small{margin-left:auto;color:#6a8b9b;font-size:7px}.route-market{padding:12px 0 16px}.route-inspector summary,.route-inspector output{color:#7ddcff}.route-alert{background:#1e9bc808;border-left:1px solid #48cfff66;gap:12px;padding:12px 8px}.route-alert b{color:#83b9ce;letter-spacing:1.4px;font-size:7px}.route-alert a{color:#7ad8fa}.route-inspector p{color:#84a5b5}.route-inspector footer{font-size:7px;letter-spacing:1.1px;color:#527889;border-top:1px solid #3abcf51f;padding-top:12px}.route-tether line{stroke:#4fcfff;stroke-dasharray:none}.route-tether .thread-halo{stroke-width:5;opacity:.3;filter:url(#route-photon-glow)}.route-tether .thread-base{stroke-width:.7;opacity:.55}.route-tether .thread-photons{stroke:#b4f3ff;stroke-width:1.7;stroke-dasharray:4 21 9 35;animation:route-photons 1.4s linear infinite;filter:drop-shadow(0 0 3px #21baff)}.route-tether .thread-anchor{fill:#bcf4ff;stroke:#20b9ff;stroke-width:1.5;filter:drop-shadow(0 0 5px #1dbaff)}.route-tether .thread-pulse{fill:none;stroke:#43cfff;stroke-width:.8;transform-box:fill-box;transform-origin:center;animation:route-anchor-pulse 1.8s ease-out infinite}.route-menu summary{color:#81d9f4}.route-menu{border-color:#32bfff30}.route-menu button:hover{color:#6bdcff}@keyframes route-photons{to{stroke-dashoffset:-69}}@keyframes route-anchor-pulse{0%{transform:scale(.5);opacity:.8}100%{transform:scale(1.65);opacity:0}}@keyframes hud-arrive{0%{opacity:0;transform:scale(.9,.01)}45%{opacity:1;transform:scale(1,.025)}100%{opacity:1;transform:scale(1)}}@media(prefers-reduced-motion:reduce){.route-inspector,.thread-photons,.thread-pulse{animation:none!important}}@media(max-width:600px){.route-inspector{width:92%}}

.route-inspector{border-color:#62c9ed88;border-top-color:#62c9ed;box-shadow:0 18px 55px #0008,inset 0 0 28px #34c8ff09,0 0 14px #32b8ec13}.route-card-top{cursor:grab;touch-action:none;user-select:none}.route-card-top:active{cursor:grabbing}.route-tether .thread-base{stroke:#62c9ed;stroke-width:1;opacity:.8}.route-tether .thread-halo{stroke:#62c9ed;stroke-width:2;opacity:.13;filter:none}.route-tether .thread-anchor{fill:#91e4ff;stroke:#62c9ed;stroke-width:1;filter:none}.hud-object-preview{position:relative;margin-top:10px;border-bottom:1px solid #62c9ed20;height:78px}.hud-object-preview>span{position:absolute;top:3px;left:0;font-size:7px;letter-spacing:1.6px;color:#6da6ba}.hud-object-preview svg{width:100%;height:65px;margin-top:12px}.hud-object-preview path{fill:none;stroke:#62c9ed;stroke-width:1}.hud-object-preview .hud-orbit{stroke:#62c9ed20;stroke-dasharray:2 4}.hud-object-preview .hud-route-mini{stroke:#a6e8ff;stroke-width:1.3}.hud-object-preview circle{fill:#a6e8ff}.hud-object-preview .hud-mini-ship{fill:#244655;stroke:#9cdaed;stroke-width:1}.route-inspector h3{margin-top:13px}

.route-inspector{pointer-events:auto;border:1px solid #62c9ed88}.route-card-top{min-height:36px;margin:-18px -20px 0;padding:8px 20px}.route-tether .thread-halo{display:none}.route-tether .thread-base{stroke:#62c9ed;stroke-width:1;opacity:.533333}.route-tether .thread-anchor{fill:#62c9ed;stroke:#62c9ed;opacity:.533333}

.route-card-top h3{margin:0;padding-right:12px;font-size:21px;line-height:1.25;letter-spacing:-.4px;color:#e5f7ff;font-weight:400}.route-card-top{min-height:44px}.route-card-top .hud-close{flex-shrink:0}.hud-object-preview{margin-top:2px;margin-bottom:16px;height:66px}.hud-object-preview svg{margin-top:0}

.route-inspector .route-card-top h3{margin:0}.route-inspector .route-card-top{min-height:36px}.route-inspector .hud-object-preview{margin-top:0;margin-bottom:12px;height:48px}.route-inspector .hud-object-preview svg{display:block;margin:0;width:100%;height:48px}

.hud-object-preview .hud-mini-ship{fill:#17303d;stroke:#a6d6e7;stroke-width:1.1;stroke-linecap:round;stroke-linejoin:round}.hud-object-preview .hud-orbit{display:none}

.route-notice{margin:12px 0 10px;padding-top:12px;border-top:1px solid #62c9ed20}.route-notice small{letter-spacing:.3px;line-height:1.7}.route-alert a{display:inline-block;margin-top:8px}

.route-inspector .route-stats{border-bottom:0}.route-inspector .route-alert{display:flex;align-items:flex-start;gap:10px;background:none;border:0;border-top:1px solid #62c9ed20;margin:0;padding:16px 0}.route-risk-list{flex:1;min-width:0}.route-risk-list details{margin:0 0 10px}.route-inspector .route-risk-list summary{font-size:10px;line-height:1.7;color:#b7cfd8;letter-spacing:0;list-style:none;display:flex;align-items:start;justify-content:space-between;gap:8px}.route-risk-list summary::-webkit-details-marker{display:none}.route-risk-list summary:after{content:"+";color:#84aec1;font-size:13px}.route-risk-list details[open] summary:after{content:"−"}.route-risk-list p{padding:2px 0 5px}.route-risk-list>a{font-size:9px}

.route-stations{display:flex;margin:20px 0 18px;padding:0 0 2px}.route-station{position:relative;flex:1;min-width:0;text-align:center;font-size:8px;line-height:1.4;color:#9cb5bf;padding:0 3px}.route-station:before,.route-station:after{content:"";position:absolute;top:4px;width:50%;height:1px;background:#62c9ed66}.route-station:before{left:0}.route-station:after{right:0}.route-station:first-child:before,.route-station:last-child:after{display:none}.station-dot{position:relative;z-index:1;display:block;width:9px;height:9px;margin:0 auto 9px;border-radius:50%;border:1px solid #86c7df;background:#11212b}.route-station>span:last-child{display:block;overflow-wrap:anywhere}

.route-inspector .route-alert{border-bottom:0}.route-inspector .route-risk-list{border-bottom:0}.route-inspector .route-risk-list details:last-child{margin-bottom:0}

/* Balanced spacing for the route card. */
.route-inspector{padding:24px 20px 18px}.route-inspector .route-card-top{margin:0;padding:0;min-height:26px;gap:12px}.route-inspector .route-card-top h3{margin:0;line-height:1.25}.route-inspector .hud-object-preview{margin-top:12px;margin-bottom:14px}.route-inspector .route-alert{padding:16px 0 0}.route-inspector .route-risk-list details:last-child{margin-bottom:0}

.route-inspector{border-radius:18px;overflow:visible}.route-inspector .route-card-top{position:relative;display:block;text-align:center}.route-inspector .route-card-top h3{padding:0;text-align:center;width:100%}.route-inspector .hud-close{position:absolute;right:-34px;top:-36px;width:28px;height:28px;display:grid;place-items:center;border-radius:50%;background:#0c1a24;border:1px solid #62c9ed66;color:#b7dbe8;font-size:20px;line-height:1;cursor:pointer}.route-card-content{overflow:auto;max-height:calc(var(--route-card-max-height,600px) - 78px);scrollbar-width:thin;scrollbar-color:#62c9ed55 transparent}

.route-inspector .hud-close{right:-20px;top:-60px}

#network-event{display:none!important}.globe-controls{top:0;bottom:0;display:block}.globe-controls>span{position:absolute;left:0;bottom:105px}.globe-controls>div{position:absolute;top:18px;left:50%;transform:translateX(-50%);display:flex;align-items:center;justify-content:center;gap:24px;white-space:nowrap}.globe-controls button{padding:6px 0;background:none;border:0;border-bottom:1px solid transparent;backdrop-filter:none;font-size:10px;color:#92999b;letter-spacing:.2px}.globe-controls button.active{color:#f5a000;border-color:#f5a00088}.globe-controls button:hover{color:#e7e9e4}@media(max-width:600px){.globe-controls>div{top:55px;gap:18px}.globe-controls button{font-size:9px;padding:6px 0}.globe-controls>span{bottom:95px}}

.hero-copy p{max-width:none;white-space:nowrap;font-size:clamp(8px,1.15vw,13px)}.hero-bottom,.network-caption{display:none!important}@media(max-width:600px){.hero-copy p{white-space:normal;font-size:11px;line-height:1.6}}

.route-inspector .route-card-top{position:static}.route-inspector .hud-close{right:-14px;top:-14px;padding:0;display:flex;align-items:center;justify-content:center;width:28px;height:28px;box-sizing:border-box}.route-inspector .hud-close svg{display:block;width:16px;height:16px;flex:none}.route-inspector .hud-close path{fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round}

.route-inspector .hud-object-preview{height:52px;padding-bottom:4px}

.route-inspector .hud-icon{display:flex;align-items:center;justify-content:center;padding:0;box-sizing:border-box}.route-inspector .hud-icon svg{display:block;width:19px;height:19px;flex:none;margin:0}

.route-inspector .hud-icon:after{display:none}.route-tooltip{position:fixed;z-index:1000;max-width:min(250px,calc(100vw - 24px));padding:11px 13px;border:1px solid #62c9ed66;border-radius:9px;background:#0b1b28f7;color:#c5e6f6;font-size:11px;line-height:1.55;box-shadow:0 8px 24px #0006;pointer-events:none}.route-tooltip[hidden]{display:none}

.country-flag{display:inline-block;font-size:25px;margin-right:10px;vertical-align:-2px;filter:saturate(.75);line-height:1}.country-section{display:flex;gap:10px;padding:18px 0;border-bottom:1px solid #62c9ed20}.country-section:last-of-type{border-bottom:0}.country-section>div{flex:1;min-width:0}.country-section small{font-size:8px;letter-spacing:1px;color:#84aec1}.country-section p{font-size:11px;line-height:1.65}.country-section a{font-size:9px;color:#84cce6}

#home{border-bottom:0}#approach{position:relative;border-top:0}#approach:before{content:"";position:absolute;top:0;left:7%;right:7%;height:1px;background:#ffffff20;pointer-events:none}

#approach:before{z-index:5;background:#ffffff28}

.country-coverage{display:flex;flex-wrap:wrap;gap:6px 12px;padding:12px 0 3px;font-size:9px;line-height:1.5}.country-coverage .has-data{color:#bcecf8}.country-coverage .no-data,.country-section .country-missing{color:#87959e}.country-section .country-role{color:#a5b5bf;font-size:10px}.country-source-date{font-size:8px;color:#87959e;line-height:1.6;margin:14px 0 0}.country-pending{padding:12px 0;font-size:10px;color:#87959e}.country-pending summary{cursor:pointer}.country-pending p{padding-top:8px}

.country-section>div{min-width:0;width:100%}.country-section .country-data-note{font-size:9px;line-height:1.6;color:#8fa2ad;margin:8px 0}.country-coverage .partial-data{color:#d2b681}.country-data-list{padding:0;margin:9px 0;list-style:none;font-size:10.5px;line-height:1.65;overflow-wrap:anywhere}.country-data-list li+li{margin-top:4px}.country-more{font-size:10px;color:#b5d5e1;margin:10px 0 0}.country-more summary{cursor:pointer;line-height:1.5}.country-more p{font-size:9px;line-height:1.6;color:#93a8b2;margin-top:8px}.country-trade-list{list-style:none;padding:0;margin:10px 0;font-size:9.5px;line-height:1.5}.country-trade-list li{display:grid;grid-template-columns:1fr auto;gap:0 8px;margin:8px 0}.country-trade-list b{font-weight:500;color:#d5edf5}.country-trade-list small{grid-column:1/-1;font-size:8px;color:#8fa2ad}.country-operators{font-size:10px;color:#b5d5e1;padding:14px 0}.country-operators>details{width:100%;margin:0}.country-source-date a{margin-left:8px;color:#9bbdc9}.country-section details .risk-detail-body{overflow:hidden}.country-coverage{gap:5px 9px;font-size:8.5px}

.country-infrastructure{position:absolute;inset:0;pointer-events:none;z-index:4}.infra-map-point{position:absolute;pointer-events:auto;transform:translate(-50%,-50%);width:30px;height:30px;border:1px solid #dca664;border-radius:50%;background:#152128e8;color:#ffd49c;box-shadow:0 0 14px #ff9c282b;cursor:pointer;transition:color .25s,border-color .25s,box-shadow .25s}.infra-map-point svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.3;stroke-linecap:round;stroke-linejoin:round;display:block;margin:auto}.infra-map-point:hover,.infra-map-point.selected{color:#bcecff;border-color:#6bc9ed;box-shadow:0 0 18px #62c9ed66}.infra-back{display:block;margin:0 auto 10px;padding:0;border:0;background:none;color:#96cbdc;font-size:11px;cursor:pointer}.infra-country-list{padding:0 0 16px;margin-bottom:16px;border-bottom:1px solid #ffffff13}.infra-country-list>span,.infra-property>span{font-size:10px;letter-spacing:.08em;color:#9bb1bb}.infra-country-list button,.infra-siblings button{display:block;border:0;background:none;color:#c4e4ed;padding:5px 0;font-size:12px;cursor:pointer;text-align:left}.infra-object-symbol{display:flex;align-items:center;gap:14px;margin:4px 0 20px;color:#a5dceb}.infra-object-symbol svg{width:46px;height:46px;fill:none;stroke:currentColor;stroke-width:.8;stroke-linecap:round;stroke-linejoin:round}.infra-object-symbol span{font-size:12px}.infra-property{padding:13px 0;border-top:1px solid #ffffff13}.infra-property p{font-size:12px;line-height:1.6;margin:6px 0;color:#d2dfe4}.infra-property a{font-size:10px;color:#a5dceb}.infra-siblings{padding-top:10px;border-top:1px solid #ffffff13}
.route-card-top .infra-back{font-size:11px;font-weight:400;line-height:1.3;margin:0 auto 10px;padding:0;color:#96cbdc;letter-spacing:0}.infra-map-point{animation:infra-appear .4s ease-out both}@keyframes infra-appear{from{opacity:0}to{opacity:1}}

.infra-map-point{width:26px;height:26px;border:0;background:none;box-shadow:none;color:#82d9fa}.infra-map-point::before{content:"";position:absolute;left:9px;top:9px;width:8px;height:8px;border-radius:50%;background:#80d9fb;box-shadow:0 0 8px #5ccaff80}.infra-map-point:hover,.infra-map-point.selected{border:0;box-shadow:none;color:#bcecff}.infra-map-point:hover::after,.infra-map-point:focus-visible::after{content:"";position:absolute;inset:5px;border:1px solid #7fdafa;border-radius:50%;animation:infra-pulse 1.3s ease-out infinite}.infra-map-point.selected::before{background:#e3f8ff;box-shadow:0 0 13px #70d9ff}.infra-map-point:focus-visible{outline:1px solid #80d9fb;outline-offset:2px}@keyframes infra-pulse{from{transform:scale(.4);opacity:.8}to{transform:scale(1.6);opacity:0}}.infra-preview{height:170px;margin:-5px -8px 0}.infra-preview-canvas{display:block;width:100%;height:100%}.infra-preview-caption{text-align:center;font-size:10px;color:#92aeb9;margin:0 0 18px}.infra-metrics{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}.infra-metrics .infra-property p{font-size:14px;color:#e0f3fa;line-height:1.45}.infra-source-date{display:block;margin-top:7px;font-size:9px;color:#91a7b1}@media(prefers-reduced-motion:reduce){.infra-map-point:hover::after,.infra-map-point:focus-visible::after{animation:none}}
.route-inspector .route-card-top .infra-back{position:absolute;left:-14px;top:-14px;margin:0;padding:0;width:28px;height:28px;box-sizing:border-box;display:flex;align-items:center;justify-content:center;border-radius:50%;background:#0c1a24;border:1px solid #62c9ed66;color:#b7dbe8;cursor:pointer}.route-card-top .infra-back svg{display:block;width:16px;height:16px;flex:none}.route-card-top .infra-back path{fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}.route-card-top .infra-back:hover{background:#153141}.route-card-top .infra-back:focus-visible{outline:2px solid #8ddcff;outline-offset:3px}

.route-card-top .infra-back svg{width:16px;height:16px;overflow:visible}.route-card-top .infra-back path{stroke-width:1.35;stroke-linecap:round;stroke-linejoin:round}

.infra-map-point[data-count]:not([data-count=""])::before{width:17px;height:17px;left:4px;top:4px;background:#174b63;border:1px solid #7fdafa}.infra-map-point[data-count]:not([data-count=""])::after{content:attr(data-count);position:absolute;inset:0;display:grid;place-items:center;font-size:9px;color:#d5f4ff;animation:none;border:0}.infra-cluster-options button{display:block;width:100%;padding:12px 0;text-align:left;background:none;border:0;border-bottom:1px solid #ffffff15;color:#d2edf7;cursor:pointer}.infra-cluster-options strong{display:block;font-size:12px;font-weight:400}.infra-cluster-options span{display:block;margin-top:4px;font-size:10px;color:#8fb6c6}.infra-cluster-options button:hover strong{color:#7bddff}
.route-inspector{z-index:8}

.infra-route-guide{position:absolute;width:48px;height:24px;margin:0;padding:0;border:0;background:none;pointer-events:auto;transform-origin:0 50%;cursor:pointer;z-index:-1}.infra-route-guide svg{display:block;width:48px;height:24px;overflow:visible}.infra-route-guide .guide-hit{fill:none;stroke:transparent;stroke-width:14}.infra-route-guide .guide-line{fill:none;stroke:#8cdcff;stroke-width:1.1;stroke-linecap:round;opacity:.6}.infra-route-guide:hover .guide-line,.infra-route-guide:focus-visible .guide-line{opacity:1;filter:drop-shadow(0 0 3px #62c9ed)}.infra-route-guide:focus-visible{outline:1px solid #62c9ed66;border-radius:10px}

/* Group counts share the exact centre of their circular marker. */
.infra-map-point[data-count]:not([data-count=""])::before{box-sizing:border-box;width:20px;height:20px;left:50%;top:50%;transform:translate(-50%,-50%)}
.infra-map-point[data-count]:not([data-count=""])::after{content:none}
.infra-group-count{position:absolute;inset:0;display:grid;place-items:center;font:500 10px/1 Arial,sans-serif;color:#d5f4ff;pointer-events:none;padding:0;margin:0}
.infra-group-popup{position:absolute;z-index:10;width:244px;max-width:calc(100% - 24px);padding:12px;background:radial-gradient(ellipse at 50% 35%,rgba(51,173,242,.32),rgba(25,104,147,.22) 65%,rgba(10,47,68,.15)),rgba(7,28,42,.92);border:1px solid rgba(98,201,237,.95);border-radius:14px;box-shadow:0 0 18px rgba(98,201,237,.22),inset 0 0 24px rgba(98,201,237,.12),0 12px 32px #0006;backdrop-filter:blur(16px);pointer-events:auto;color:#d2edf7}
.infra-group-popup[hidden]{display:none}
.infra-group-heading{display:flex;align-items:center;justify-content:space-between;font-size:11px;color:#a8c8d6;padding:0 0 6px 4px}
.infra-group-heading button{display:grid;place-items:center;width:24px;height:24px;padding:0;background:none;border:0;color:#a8c8d6;cursor:pointer}
.infra-group-heading svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.2}
.infra-group-popup .infra-cluster-options{max-height:240px;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin}
.infra-group-popup .infra-cluster-options button{padding:10px 4px}
.infra-group-popup .infra-cluster-options button:last-child{border-bottom:0}

.infra-group-popup .infra-group-heading,.infra-group-popup .infra-group-heading button{color:#9de3ff}
.infra-group-popup .infra-cluster-options button{color:#e0f5ff;border-bottom-color:#62c9ed30;border-radius:5px}
.infra-group-popup .infra-cluster-options span{color:#a6d8ed}
.infra-group-popup .infra-cluster-options button:hover,.infra-group-popup .infra-cluster-options button:focus-visible{background:#62c9ed1c;outline:none}

.infra-map-point{padding:0;box-sizing:border-box}.infra-map-point::before{left:50%;top:50%;transform:translate(-50%,-50%)}

#approach .scene-panel{background:none;border:0;border-radius:0;box-shadow:none;padding:0;overflow:visible}#approach #supply3d{background:none}#approach .panel-label{display:none}#approach .metrics{border-top:0}

#approach #supply3d{mask-image:linear-gradient(to right,transparent 0%,#000 16%,#000 84%,transparent 100%),linear-gradient(to bottom,transparent 0%,#000 18%,#000 68%,transparent 100%);mask-composite:intersect}

#approach .split{align-items:start}#approach #condition-description{margin-top:18px;margin-bottom:0}

#approach .split{grid-template-columns:.82fr 1.3fr;gap:5%}#approach #supply3d{height:470px}@media(max-width:950px){#approach .split{grid-template-columns:1fr}#approach #supply3d{height:420px}}

#conditions button{display:inline-flex;align-items:center;justify-content:center;gap:8px}#conditions .condition-icon{display:block;flex:none;width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.35;stroke-linecap:round;stroke-linejoin:round}

#conditions{display:flex;flex-direction:column;align-items:flex-start;gap:9px;position:relative;z-index:5}
#conditions .condition-control{position:relative;width:192px}
#conditions .condition-trigger{width:100%;min-height:44px;justify-content:flex-start;border-radius:8px;text-align:left;padding:12px 14px;gap:11px}
#conditions .condition-menu{position:absolute;left:calc(100% + 12px);top:0;width:210px;padding:7px;border:1px solid #62c9ed99;border-radius:12px;background:radial-gradient(ellipse at 50% 30%,#2185b34d,transparent),#092331f5;box-shadow:0 0 18px #62c9ed26,0 10px 30px #0006;backdrop-filter:blur(15px);opacity:0;visibility:hidden;transform:translateX(-10px);transition:opacity .2s,transform .25s,visibility .2s;pointer-events:none}
#conditions .condition-menu::before{content:"";position:absolute;right:100%;top:0;bottom:0;width:14px}
#conditions .condition-control:hover .condition-menu,#conditions .condition-control:focus-within .condition-menu,#conditions .condition-control.menu-open .condition-menu{opacity:1;visibility:visible;transform:translateX(0);pointer-events:auto}
#conditions .condition-menu button{width:100%;justify-content:flex-start;gap:9px;text-align:left;padding:11px 9px;border:0;border-radius:6px;color:#bde8fa;font-size:11px;background:none}
#conditions .condition-menu button:hover,#conditions .condition-menu button[aria-pressed=true]{background:#62c9ed20;color:#e1f6ff}
.setting-dot{width:6px;height:6px;border:1px solid #7ddcff;border-radius:50%;flex:none}.condition-menu button[aria-pressed=true] .setting-dot{background:#98e5ff;box-shadow:0 0 6px #62c9ed88}
@media(max-width:550px){#conditions .condition-control{width:160px}#conditions .condition-menu{width:170px;left:calc(100% + 8px)}}

#conditions .condition-menu{left:calc(100% - 8px);top:0;height:44px;width:154px;display:flex;align-items:center;gap:3px;padding:4px 5px 4px 12px;border-radius:0 9px 9px 0;z-index:-1;transform:translateX(-36px);transition:opacity .2s,transform .3s,visibility .2s}
#conditions .condition-menu button{display:grid;place-items:center;width:42px;height:34px;padding:6px;flex:none}
#conditions .condition-menu svg,#conditions .condition-selected svg{display:block;width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.35;stroke-linecap:round;stroke-linejoin:round}
#conditions .condition-trigger{position:relative;z-index:2;background:#111313}
#conditions .condition-trigger.active{background:#251f12}
#conditions .condition-selected{position:absolute;left:calc(100% + 12px);top:0;width:42px;height:44px;display:grid;place-items:center;color:#91def9;opacity:1;transition:opacity .2s;pointer-events:none}
#conditions .condition-control:hover:not(.menu-dismissed) .condition-selected,#conditions .condition-control:focus-within:not(.menu-dismissed) .condition-selected{opacity:0}
#conditions .condition-control.menu-dismissed .condition-menu{opacity:0;visibility:hidden;transform:translateX(-36px);pointer-events:none}
#conditions .condition-menu button{position:relative}
#conditions .condition-menu button::after{content:attr(data-tooltip);position:absolute;top:calc(100% + 12px);left:50%;transform:translateX(-50%);white-space:nowrap;padding:7px 9px;border:1px solid #62c9ed55;border-radius:7px;background:#092331fa;color:#c4ebfa;font-size:10px;opacity:0;visibility:hidden;transition:opacity .15s;pointer-events:none;z-index:20}
#conditions .condition-menu button:hover::after,#conditions .condition-menu button:focus-visible::after{opacity:1;visibility:visible}
@media(max-width:550px){#conditions .condition-menu{width:145px;left:calc(100% - 8px)}#conditions .condition-menu button{width:39px}}

#conditions button.condition-selected{padding:0;border:0;background:none;border-radius:8px;pointer-events:auto;cursor:pointer}#conditions button.condition-selected:hover{background:#62c9ed15;color:#d5f4ff}#conditions .condition-control.menu-open .condition-selected{opacity:0;pointer-events:none}

#conditions .condition-control:has(.condition-selected:hover):not(.menu-open) .condition-selected{opacity:1;z-index:3}#conditions .condition-control:has(.condition-selected:hover):not(.menu-open) .condition-menu{opacity:0;visibility:hidden;pointer-events:none}

.scenario-assumptions{margin-top:10px;font-size:10px;color:#81918f}.scenario-assumptions summary{cursor:pointer}.scenario-assumptions p{font-size:10px;line-height:1.7;margin:10px 0 0}

#conditions .factor-excluded .condition-selected{color:#657b85}#conditions .factor-excluded .condition-selected::after{content:"";position:absolute;width:25px;height:1px;background:#657b85;transform:rotate(-45deg)}

/* Invisible grab margin lets the upper card edge behave like its header. */
.route-inspector::before{content:"";position:absolute;left:-10px;right:-10px;top:-12px;height:34px;background:transparent;pointer-events:auto;cursor:grab;z-index:1}.route-inspector .hud-close,.route-inspector .infra-back{z-index:3}.route-inspector:active::before{cursor:grabbing}

/* Independent product filter, beneath continent navigation. */
.globe-product-filter{position:absolute;top:49px;left:50%;transform:translateX(-50%);z-index:12;color:#9aa3a6;font-size:10px;letter-spacing:.2px;pointer-events:auto}
.globe-product-filter summary{list-style:none;display:flex;align-items:center;justify-content:center;gap:9px;cursor:pointer;padding:7px 12px;border-bottom:1px solid #ffffff20;white-space:nowrap}
.globe-product-filter summary::-webkit-details-marker{display:none}.globe-product-filter summary svg{width:12px;height:12px;fill:none;stroke:currentColor;stroke-width:1.2;transition:transform .2s}.globe-product-filter[open] summary svg{transform:rotate(180deg)}.globe-product-filter[open] summary,.globe-product-filter summary:hover{color:#b8eaff;border-color:#8edcff80}
.product-filter-menu{position:absolute;top:37px;left:50%;transform:translateX(-50%);width:174px;padding:6px;background:#0c171deF;border:1px solid #8edcff45;border-radius:12px;box-shadow:0 12px 35px #0007;backdrop-filter:blur(18px)}
.product-filter-menu button{display:flex;align-items:center;justify-content:space-between;width:100%;padding:9px 11px;color:#acb9bf;background:transparent;border:0;border-radius:6px;font:inherit;text-align:left;cursor:pointer}.product-filter-menu button:hover{background:#8edcff12;color:#d4f3ff}.product-filter-menu button span{visibility:hidden}.product-filter-menu button[aria-pressed=true]{color:#a8e3ff;background:#8edcff0c}.product-filter-menu button[aria-pressed=true] span{visibility:visible}
@media(max-width:600px){.globe-product-filter{top:86px}.product-filter-menu{width:162px}}
/* One navigation row: regions left, product selector right. */
.globe-controls>div{left:0;transform:none;justify-content:flex-start}
.globe-product-filter{top:18px;left:auto;right:7%;transform:none}
.globe-product-filter summary{padding:6px 0}
.product-filter-menu{left:auto;right:0;transform:none}
@media(max-width:600px){.globe-controls>div{top:55px;gap:12px}.globe-product-filter{top:55px;right:7%;font-size:9px}.globe-product-filter summary{gap:5px}}
@media(max-width:390px){.globe-controls>div{gap:8px}.globe-controls button{font-size:8px}.globe-product-filter{font-size:8px}}
.route-menu{top:58px!important}
@media(max-width:600px){.route-menu{top:91px!important}}
/* Align map navigation with the main headline width. */
.globe-controls>div{left:max(0px,calc(50% - 260px))}
.globe-product-filter{right:max(7%,calc(50% - 260px))}
@media(max-width:600px){.globe-controls>div{left:0}.globe-product-filter{right:7%}}

.network-wrap{overflow:visible}.route-inspector{z-index:30;box-sizing:border-box}.route-inspector .route-card-content{overscroll-behavior:contain}

.globe-ranking-control{position:absolute;top:55px;right:max(7%,calc(50% - 260px));display:flex;gap:12px;z-index:12}.globe-ranking-control button{font:inherit;font-size:9px;background:none;border:0;padding:3px 0;color:#73838c;cursor:pointer;border-bottom:1px solid transparent}.globe-ranking-control button[aria-pressed=true]{color:#f4b854;border-color:#f4b85470}.globe-trade-coverage{position:absolute;top:92px;right:max(7%,calc(50% - 260px));font-size:8px;color:#718088;z-index:11}.product-filter-menu{z-index:15}@media(max-width:600px){.globe-ranking-control{top:91px;right:7%}.globe-trade-coverage{top:120px;right:7%;font-size:7px}}
.route-menu button[hidden]{display:none!important}.route-menu[open]{max-height:min(400px,60vh);overflow:auto;scrollbar-width:thin;scrollbar-color:#8edcff55 transparent}

/* Shared continent and product group interaction. */
.globe-controls>div{left:50%;transform:translateX(-50%);gap:22px}.globe-product-groups{position:absolute;top:53px;left:50%;transform:translateX(-50%);display:flex;gap:20px;align-items:center;z-index:16;white-space:nowrap}.map-filter-group{position:relative;display:flex;align-items:center;gap:5px}.map-group-select,.map-group-arrow{background:none;border:0;border-bottom:1px solid transparent;color:#92999b;font-size:10px;padding:6px 0;cursor:pointer;font-family:inherit}.map-group-select[aria-pressed=true],.map-group-select.active{color:#f5b657;border-bottom-color:#f5b65780}.map-group-arrow{font-size:13px;line-height:1;padding:6px 2px;color:#7a969f}.group-funnel{display:none;width:11px;height:11px;margin-left:5px;fill:none;stroke:#8edcff;stroke-width:1.2;vertical-align:middle}.filtered .group-funnel{display:inline-block}.map-group-menu{display:none;position:absolute;left:0;top:100%;min-width:170px;max-height:300px;overflow:auto;padding:7px;background:#0b1b25f5;border:1px solid #8edcff50;border-radius:10px;box-shadow:0 12px 30px #0008;backdrop-filter:blur(18px);z-index:50;scrollbar-width:thin}.map-filter-group.open .map-group-menu{display:block}.map-group-menu button{display:block;width:100%;text-align:left;white-space:nowrap;border:0!important;background:none;color:#b9d8e6;padding:9px 10px!important;font:inherit;font-size:10px;border-radius:5px;cursor:pointer}.map-group-menu button:hover,.map-group-menu button[aria-pressed=true]{background:#8edcff15;color:#d5f2ff}.map-group-menu button:disabled{opacity:.35;cursor:default}.globe-ranking-control{top:91px}.globe-trade-coverage{top:117px}.globe-controls{z-index:17}.globe-controls>span{pointer-events:none}.route-menu{top:91px!important}
@media(max-width:600px){.globe-controls>div{top:55px;gap:14px}.globe-product-groups{top:91px;gap:10px;max-width:96%}.map-group-select{font-size:8px}.map-group-menu{min-width:145px}.map-group-menu button{font-size:9px}.globe-ranking-control{top:130px}.globe-trade-coverage{top:156px}.route-menu{top:130px!important}}
.globe-product-groups:has(.map-filter-group.open){z-index:40}.globe-controls:has(.map-filter-group.open){z-index:41}
.map-filter-group.open .map-group-menu{animation:enr-group-menu .18s ease-out}@keyframes enr-group-menu{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.map-filter-group.open .map-group-menu{animation:none}}
/* Shared single row, constrained to the headline span. */
.globe-controls>div{top:18px;left:max(0px,calc(50% - 260px));transform:none;gap:10px}
.globe-product-groups{top:18px;left:auto;right:max(7%,calc(50% - 260px));transform:none;gap:9px}
.globe-controls>div .map-group-select,.globe-product-groups .map-group-select{font-size:9px;letter-spacing:-.15px}
.map-filter-group{gap:3px}.globe-ranking-control{top:55px}.globe-trade-coverage{top:81px}.route-menu{top:55px!important}
@media(max-width:600px){.globe-controls>div{top:55px;left:0;gap:6px}.globe-product-groups{top:55px;right:7%;gap:5px}.globe-controls>div .map-group-select,.globe-product-groups .map-group-select{font-size:7px}.map-group-arrow{font-size:10px;padding:6px 0}.map-filter-group{gap:1px}.globe-ranking-control{top:91px}.globe-trade-coverage{top:117px}.route-menu{top:91px!important}}
.globe-controls>div{gap:8px}.globe-product-groups{gap:7px}.map-filter-group{gap:1px}.map-group-arrow{font-size:9px;padding:6px 0}
.globe-trade-coverage{display:none}
.globe-product-groups{right:max(7%,calc(50% - 175px));gap:5px}
.globe-controls>div{gap:6px}
.globe-ranking-control{top:18px;right:max(7%,calc(50% - 260px));gap:10px;align-items:center}
.globe-ranking-control button{padding:6px 0;font-size:8px}
.globe-controls>div .map-group-select,.globe-product-groups .map-group-select{font-size:8px}
@media(max-width:600px){.globe-product-groups{top:55px;right:calc(7% + 61px);gap:3px}.globe-ranking-control{top:55px;right:7%;gap:6px}.globe-ranking-control button{font-size:7px}.globe-controls>div{gap:4px}.globe-controls>div .map-group-select,.globe-product-groups .map-group-select{font-size:6px}}

/* Give continent names enough room to read separately. */
.globe-controls>div{gap:18px}
@media(max-width:600px){.globe-controls>div{gap:10px}}

.hero-copy>.eyebrow{display:block;font-size:clamp(8px,.95vw,12px);letter-spacing:.15px;line-height:1.6;color:var(--orange);text-transform:none;max-width:100%;text-wrap:balance}

/* Size the navigation to the actual headline rather than a fixed narrow span. */
.globe-filter-row{position:absolute;top:18px;display:flex;align-items:center;justify-content:space-between;gap:24px;z-index:17;white-space:nowrap;--filter-size:12px}
.globe-filter-row>.globe-product-groups,.globe-filter-row>.globe-ranking-control,.globe-filter-row>div:first-child{position:static;inset:auto;transform:none;display:flex;align-items:center;gap:12px;width:auto}
.globe-filter-row .map-group-select,.globe-filter-row .globe-ranking-control button{font-size:var(--filter-size);letter-spacing:0;padding:8px 0}
.globe-filter-row:has(.map-filter-group.open){z-index:41}
@media(max-width:600px){.globe-filter-row{top:55px;gap:12px}.globe-filter-row>.globe-product-groups,.globe-filter-row>.globe-ranking-control,.globe-filter-row>div:first-child{gap:7px}}

/* Keep the filter row clear of the atmospheric glow. */
.globe-filter-row{top:-10px}
@media(max-width:600px){.globe-filter-row{top:27px}}

.globe-ranking-control button:disabled{opacity:.35;cursor:default;border-bottom-color:transparent}

/* The overview density is fixed; centre the two navigation groups together. */
.globe-filter-row>.globe-ranking-control{display:none}
.globe-filter-row{justify-content:center;gap:32px}
@media(max-width:600px){.globe-filter-row{gap:18px}}

/* Draw infrastructure markers over their centre-anchored connector. */
.country-infrastructure{z-index:6}
.infra-map-point::before{z-index:1}
.infra-group-count{z-index:2}

/* Give the supply scene a full-width stage, with larger live KPIs. */
#approach .split{grid-template-columns:1fr;gap:30px;align-items:start}
#approach .split>div:first-child{display:grid;grid-template-columns:1.1fr 1fr;column-gap:9%;align-items:start}
#approach .split>div:first-child>h2,#approach .split>div:first-child>p:not(#condition-description){grid-column:1}
#approach #conditions{grid-column:2;grid-row:1 / span 2;margin:0;align-self:center}
#approach #condition-description{grid-column:2;grid-row:3;margin-top:12px}
#approach .scene-panel{position:relative;left:50%;transform:translateX(-50%);width:min(1700px,calc(100vw - 32px));min-width:0}
#approach #supply3d{height:940px;max-height:none}
#approach .metrics{max-width:1100px;width:86%;margin:0 auto;gap:24px;padding-top:8px}
#approach .metrics strong{font-size:clamp(30px,4.3vw,48px);line-height:1.2;font-weight:500;white-space:nowrap;margin-top:12px}
#approach .metrics small{font-size:11px;letter-spacing:1.3px}
#approach .scene-panel>.demo-note,#approach .scenario-assumptions{width:86%;max-width:1100px;margin:20px auto 0}
@media(max-width:600px){#approach .split>div:first-child{display:block}#approach #conditions{margin:24px 0}#approach #supply3d{height:640px}#approach .metrics{width:92%;gap:12px}#approach .metrics strong{font-size:24px}#approach .metrics small{font-size:8px;letter-spacing:.5px}}

#approach .split{grid-template-columns:minmax(0,1fr)}
#approach .split>div:first-child{min-width:0}

#approach #supply3d{height:640px;mask-image:linear-gradient(to right,transparent 0%,#000 6%,#000 94%,transparent 100%),linear-gradient(to bottom,transparent 0%,#000 8%,#000 85%,transparent 100%)}
@media(max-width:600px){#approach #supply3d{height:520px}}

/* Keep scenario controls beside the enlarged scene. */
#approach .split{grid-template-columns:220px minmax(0,1fr);column-gap:32px;row-gap:28px}
#approach .split>div:first-child{display:contents}
#approach .split>div:first-child>h2{grid-column:1 / -1;grid-row:1;margin-bottom:0}
#approach .split>div:first-child>p:not(#condition-description){grid-column:1 / -1;grid-row:2;margin-bottom:0;max-width:650px}
#approach #conditions{grid-column:1;grid-row:3;margin:130px 0 0;align-self:start;z-index:3}
#approach #condition-description{grid-column:1;grid-row:3;align-self:start;margin-top:390px;max-width:200px}
#approach .scene-panel{grid-column:2;grid-row:3;left:auto;transform:none;width:100%;min-width:0}
#approach #supply3d{height:640px}
#approach .metrics{width:100%;gap:18px}
#approach .metrics strong{font-size:clamp(26px,3.6vw,48px)}
#approach .scene-panel>.demo-note,#approach .scenario-assumptions{width:100%}
@media(max-width:600px){#approach .split{grid-template-columns:48px minmax(0,1fr);column-gap:12px}#approach #conditions{margin-top:100px;width:44px}#approach .condition-trigger{width:44px!important;padding:10px!important}#approach .condition-trigger>span{display:none}#approach .condition-selected{left:0;top:44px;display:none}#approach #condition-description{grid-column:1 / -1;grid-row:4;margin:0;max-width:none}#approach .metrics{gap:8px}#approach .metrics strong{font-size:19px}#approach .metrics small{font-size:7px}#approach #supply3d{height:480px}}

/* Keep enlarged KPI figures across the section below the scene. */
@media(min-width:601px){#approach .metrics{width:calc(100% + 252px);margin-left:-252px;max-width:none}#approach .metrics strong{font-size:clamp(30px,4.3vw,48px)}}

/* Align the KPI row with the outer delivery circle. */
@media(min-width:601px){#approach .metrics{transform:translateX(9%)}}

/* Keep the calculation disclosure at the delivery-circle edge. */
#approach .scenario-assumptions{text-align:right}
#approach .scenario-assumptions summary{display:block;list-style:none}
#approach .scenario-assumptions summary::-webkit-details-marker{display:none}
#approach .scenario-assumptions summary::before{content:"▸";display:inline-block;margin-right:5px}
#approach .scenario-assumptions[open] summary::before{content:"▾"}
#approach .scenario-assumptions p{max-width:none;width:100%;margin-right:0}

/* Numeric values lead; units and currency symbols are secondary. */
#approach .metrics .kpi-unit,#approach .metrics .kpi-prefix{font-size:.52em;font-weight:400;letter-spacing:0}
#approach .metrics .kpi-prefix{margin-right:.12em}
#approach .metrics .kpi-unit{margin-left:.12em}

/* Scenario hints stay above neighbouring controls and the scene. */
#approach #conditions{position:relative;z-index:10}
#conditions .condition-control:hover,#conditions .condition-control:focus-within,#conditions .condition-control.menu-open{z-index:30}
#conditions .condition-menu{z-index:3;overflow:visible}
#conditions .condition-trigger{z-index:4}
#conditions .condition-menu button::after{top:auto;bottom:calc(100% + 12px);z-index:50}

#approach .metrics .kpi-unit,#approach .metrics .kpi-prefix{font-family:Raleway,Arial,sans-serif;font-weight:200}

/* The flask rests on a textured tabletop that dissolves into the page. */
#products{background:transparent}
#products .lab-scene{border:0;outline:0;box-shadow:none;background:none;overflow:visible}
#products #lab3d{background:none;mask-image:linear-gradient(to right,transparent,#000 9%,#000 91%,transparent),linear-gradient(to bottom,#000 82%,transparent 100%);mask-composite:intersect}

.route-menu{display:none!important}

#products .lab-caption{display:none}

/* Product categories, specification matrix and enquiry requirements. */
#products .catalog{display:block;margin:24px 0 0}
.catalog-categories{display:flex;gap:20px;border-bottom:1px solid #ffffff20;margin-bottom:18px}
#products .catalog-categories button{padding:10px 0;font-size:12px;border:0;background:none;color:#9ba4a3;border-bottom:1px solid transparent}
#products .catalog-categories button.active{color:var(--orange);border-bottom-color:var(--orange)}
.matrix-head{display:grid;grid-template-columns:1fr 1.5fr;gap:12px;color:#7d8887;font-size:9px;letter-spacing:1px;text-transform:uppercase;padding:8px 0}
#products .matrix-product{display:grid;grid-template-columns:1fr 1.5fr 14px;gap:12px;align-items:center;width:100%;padding:14px 0;text-align:left;border:0;border-bottom:1px solid #ffffff12;background:none;color:#b7bfbd;font-size:13px}
#products .matrix-product.active{color:#f5b550;background:none}
#products .matrix-product small{font-size:10px;line-height:1.6;color:#8e9a98}
.product-check{font-size:12px!important}.catalog-note{font-size:10px;line-height:1.7;margin:15px 0 24px;color:#7e8986}
.spec-form{display:grid;grid-template-columns:1fr 1fr;gap:16px 18px}.spec-heading{grid-column:1 / -1;font-size:12px;color:#c6ceca;margin-bottom:2px}
.spec-form label{display:grid;gap:7px;font-size:10px;color:#97a29f}
.spec-form input{width:100%;min-width:0;padding:9px 0;background:none;border:0;border-bottom:1px solid #ffffff24;border-radius:0;color:#e2e8e3;font:inherit;font-size:12px;outline-offset:3px}.spec-form input::placeholder{color:#596461}
#products .product-layout{align-items:start}#products .lab-scene{position:sticky;top:70px}#products .text-link{margin-top:28px}
@media(max-width:600px){.catalog-categories{gap:14px}#products .catalog-categories button{font-size:10px}.spec-form{gap:14px}#products .lab-scene{position:relative;top:0}}

/* Specification controls follow the type of requirement. */
.catalog-products{display:flex;gap:18px;overflow-x:auto;white-space:nowrap;margin:0 0 22px;padding:2px 0 10px;scrollbar-width:thin}
#products .catalog-products button{padding:8px 0;border:0;background:none;font-size:12px;color:#939f9a;flex:none}
#products .catalog-products button.active{color:#a7e6fa;border-bottom:1px solid #7cd5f4}
.technical-requirements{border-top:1px solid #ffffff16}
.tech-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.35fr);gap:15px;align-items:center;padding:17px 0;border:0;border-bottom:1px solid #ffffff13;margin:0;min-width:0}
.tech-label,.multi-row legend{font-size:12px;color:#b5bfbb;line-height:1.6}.tech-label small{display:block;color:#7b8b84;font-size:10px}
.range-values{display:flex;justify-content:space-between;gap:8px;margin-bottom:10px}.range-values label{display:flex;gap:6px;align-items:baseline;font-size:9px;color:#75867e}
.range-values input{width:62px;min-width:0;background:none;border:0;border-bottom:1px solid #ffffff20;padding:2px;color:#d8e5de;font:inherit;font-size:12px;appearance:textfield}.range-values input::-webkit-inner-spin-button{appearance:none}
.dual-range{height:22px;position:relative;--low:0%;--high:100%}
.range-rail{position:absolute;left:0;right:0;top:10px;height:2px;background:linear-gradient(to right,#3b4943 var(--low),#8edbfa var(--low),#8edbfa var(--high),#3b4943 var(--high))}
.dual-range input{position:absolute;inset:0;width:100%;height:22px;margin:0;appearance:none;background:none;pointer-events:none;z-index:3;outline-offset:3px}
.dual-range input::-webkit-slider-thumb{appearance:none;width:12px;height:12px;border:2px solid #abe9ff;background:#172d38;border-radius:50%;pointer-events:auto;cursor:ew-resize;box-shadow:0 0 6px #6ed3fb33}
.dual-range input::-moz-range-thumb{width:9px;height:9px;border:2px solid #abe9ff;background:#172d38;border-radius:50%;pointer-events:auto;cursor:ew-resize}
.tech-row select,.tech-text{width:100%;min-width:0;border:1px solid #ffffff24;background:#151b18;color:#c7d9cf;border-radius:7px;padding:9px 10px;font:inherit;font-size:11px}.tech-row select option{background:#151b18}.tech-text::placeholder{color:#64766c}
.multi-row{display:block;padding-top:12px}.multi-row legend{padding-top:15px}.multi-options{display:flex;flex-wrap:wrap;gap:8px 14px;margin-top:8px}.multi-options label{display:flex;align-items:center;gap:6px;color:#98a9a0;font-size:10px;cursor:pointer}.multi-options input{accent-color:#90dbf6;width:13px;height:13px}
#products .requirements-send{display:flex;justify-content:space-between;align-items:center;width:100%;padding:17px 20px;margin-top:24px;border:1px solid #f5a00070;border-radius:9px;background:#f5a00012;color:#ffc36c;font-size:14px;font-weight:400}.requirements-send[hidden]{display:none!important}
.requirements-dialog{max-width:570px;width:calc(100% - 32px);max-height:88vh;overflow:auto;background:#111917;color:#e1e6df;border:1px solid #73958a60;border-radius:18px;padding:34px;box-shadow:0 30px 100px #000a}.requirements-dialog::backdrop{background:#000a;backdrop-filter:blur(8px)}.requirements-dialog h2{font-size:30px;margin:15px 0 25px}.dialog-close{position:absolute;right:14px;top:10px;width:30px;height:30px;color:#a0b6aa;font-size:26px}.requirements-dialog .selection-summary{line-height:1.8;font-size:10px;margin:20px 0;color:#9ec4b1}.requirements-dialog .solid-button{width:100%;border-radius:8px}.contact-section .split{align-items:start}
@media(max-width:600px){.tech-row{gap:12px}.tech-label{font-size:11px}.requirements-dialog{padding:26px 20px}.catalog-products{gap:15px}}

.dual-range{touch-action:none}

.gravity-value{font-size:12px;color:#b8d7e2;text-align:right}.catalog-note a{color:#97b7c3}

/* Document options use quiet rings and cyan selected labels. */
.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.documents-row{display:flex;align-items:center;gap:12px;padding:18px 0}
.documents-icon{width:21px;height:21px;flex:none;fill:none;stroke:#839d92;stroke-width:1.25;stroke-linecap:round;stroke-linejoin:round}
.documents-row .multi-options{display:flex;flex-wrap:nowrap;gap:12px;margin:0;flex:1;justify-content:space-between}
.documents-row .multi-options label{font-size:9px;gap:5px;white-space:nowrap}
.multi-options input[type=checkbox]{appearance:none;-webkit-appearance:none;width:11px;height:11px;flex:none;border:1px solid #687b73;border-radius:50%;background:transparent;margin:0;cursor:pointer;transition:background .18s,border-color .18s,box-shadow .18s}
.multi-options input[type=checkbox]:checked{background:#8dddff;border-color:#9ae5ff;box-shadow:0 0 7px #78d6ff55}
.multi-options label:has(input:checked){color:#9ae5ff}
@media(max-width:600px){.documents-row{gap:9px}.documents-row .multi-options{gap:8px}.documents-row .multi-options label{font-size:8px}}

.documents-row .multi-options{margin-left:10px;justify-content:space-between;align-items:center;gap:10px}.documents-row .multi-options label{align-items:center;line-height:1.3}
@media(max-width:600px){.documents-row .multi-options{margin-left:6px;gap:7px}}

.documents-row .multi-options{margin-left:48px;gap:10px}
@media(max-width:600px){.documents-row .multi-options{margin-left:28px;gap:7px}}

.documents-row .multi-options input[type=checkbox]{transform:translateY(-1px)}

/* One horizontal range: lower value, rail, upper value. */
.range-controls{display:flex;align-items:center;gap:9px;min-width:0}
.range-values{display:contents}
.range-values label{display:block;position:relative;flex:none;font-size:0;margin:0}
.range-values label:first-child{order:0}.range-values label:last-child{order:2}
.range-values input{width:47px;padding:4px 0;border:0;text-align:center;font-size:12px}
.range-controls .dual-range{order:1;flex:1;min-width:45px}
.range-row{padding:15px 0}
@media(max-width:600px){.range-controls{gap:5px}.range-values input{width:39px;font-size:11px}.range-controls .dual-range{min-width:35px}}

/* API and its derived specific gravity share one requirement block. */
[data-field=api] .derived-gravity-inline{grid-column:1 / -1;display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:-5px;color:#7e9388;font-size:10px}
.derived-gravity-inline small{font-size:9px;color:#63786c;margin-left:7px}
.derived-gravity-inline .gravity-value{font-size:11px;color:#a6c9d7}

.range-values input{border-radius:7px}
.range-values input:focus-visible{outline:1px solid var(--orange);outline-offset:3px}

[data-field=api] .derived-gravity-inline{justify-content:flex-start;gap:10px}
.derived-gravity-inline .gravity-value{text-align:left}

.tech-label small{display:inline;margin-left:7px;white-space:nowrap}

.dual-range input[type=range]{border-radius:9px}
.dual-range input[type=range]:focus-visible{outline:1px solid var(--orange);outline-offset:4px;border-radius:9px}

#products #lab3d{mask-image:radial-gradient(ellipse at 50% 50%,#000 0%,#000 48%,transparent 74%);mask-composite:add}

/* A translucent pill represents the selected interval. */
.range-rail{background:#52645b;height:1px;top:11px}
.range-rail::after{content:"";position:absolute;left:var(--low);width:calc(var(--high) - var(--low));top:-6px;height:13px;border-radius:8px;background:#65c7ee60;border:1px solid #78d4f580;box-shadow:0 0 5px #69cbef18;box-sizing:border-box}
.dual-range input::-webkit-slider-thumb{width:12px;height:12px;border-color:#d2f3ff;background:#1b4c63;box-shadow:none}
.dual-range input::-moz-range-thumb{border-color:#d2f3ff;background:#1b4c63;box-shadow:none}

/* Make specification labels and values readable without crowding the rail. */
.tech-label,.multi-row legend{font-size:14px}
.tech-label small{font-size:11px;margin-left:6px}
.range-values input{font-size:15px;width:49px}
.range-row{padding:18px 0}
.tech-row select,.tech-text{font-size:13px}
[data-field=api] .derived-gravity-inline{font-size:11px}
.derived-gravity-inline .gravity-value{font-size:12px}
#products .catalog-categories button,#products .catalog-products button{font-size:13px}
@media(max-width:600px){.tech-label{font-size:13px}.range-values input{font-size:14px;width:42px}.tech-label small{font-size:10px}#products .catalog-categories button,#products .catalog-products button{font-size:12px}}

#products #lab3d{mask-image:radial-gradient(ellipse at 50% 50%,#000 0%,#000 48%,transparent 74%),linear-gradient(to bottom,#000 0%,#000 84%,transparent 98%,transparent 100%);mask-composite:intersect;-webkit-mask-composite:source-in}

/* Restore the light line treatment for specification ranges. */
.range-rail{height:2px;top:10px;background:linear-gradient(to right,#3b4943 var(--low),#8edbfa var(--low),#8edbfa var(--high),#3b4943 var(--high))}
.range-rail::after{display:none}

/* Only category and product/specification boundaries remain. */
#products .technical-requirements .tech-row{border-bottom:0}
#products .catalog-products{border-bottom:0}
#products .catalog-categories{border-bottom:1px solid #ffffff20}
#products .technical-requirements{border-top:1px solid #ffffff16}

/* Separate requirements; leave product navigation open. */
#products .catalog-categories{border-bottom:0}
#products .technical-requirements{border-top:0}
#products .technical-requirements .tech-row{border-bottom:1px solid #ffffff13}

/* Focus is communicated by colour rather than a surrounding frame. */
.range-row:focus-within .tech-label,.range-row:focus-within .tech-label small,.range-row:focus-within .range-values input{color:var(--orange)}
.range-row:focus-within .range-rail{background:var(--orange)}
.range-row:focus-within .range-rail::after{display:block;left:var(--low);width:calc(var(--high) - var(--low));top:0;height:2px;background:#8edbfa;border:0;border-radius:1px;box-shadow:none}
.range-values input:focus-visible,.dual-range input[type=range]:focus-visible{outline:none}

.range-row:focus-within .range-rail{height:3px}

#products .technical-requirements .range-row:focus-within{border-bottom-color:#ffffff13}

.range-row:focus-within .range-rail{height:1px;top:11px}
.range-row:focus-within .range-rail::after{height:2px;top:-.5px}

.documents-row .multi-options label{font-size:14px;line-height:1.5;white-space:normal}
.documents-row .multi-options{margin-left:16px;gap:15px;min-width:0}
.documents-row .multi-options label{flex:1;align-items:center}
.documents-row .multi-options input[type=checkbox]{width:12px;height:12px}
@media(max-width:600px){.documents-row .multi-options label{font-size:13px}.documents-row .multi-options{margin-left:12px;gap:10px}}

.documents-row .multi-options{margin-left:48px}
@media(max-width:600px){.documents-row .multi-options{margin-left:28px}}

/* Selected documents: cyan ring with a separate centre dot. */
.documents-row .multi-options input[type=checkbox]:checked{background:radial-gradient(circle,#9ae5ff 0 2px,#18313b 2.5px);border-color:#9ae5ff;box-shadow:0 0 5px #78d6ff30}

/* Document selection is signalled by the icon and control, keeping labels quiet. */
.documents-row .multi-options label:has(input:checked){color:inherit}
.documents-row:has(input:checked) .documents-icon{stroke:#9ae5ff}

#products .technical-requirements .documents-row{border-bottom:0}

/* Keep the note stationary while the request action becomes available. */
#products .requirements-send[hidden]{display:flex!important;visibility:hidden;pointer-events:none}
#products .catalog-note{white-space:nowrap;width:max-content;max-width:86vw;overflow-x:auto}

#products .documents-row .multi-options{flex-direction:column;align-items:stretch;margin-left:0;gap:16px}
#products .documents-row .multi-options label{flex:none;gap:12px;font-size:14px;line-height:1.5;color:#a8afad}
.document-option-icon{width:22px;height:22px;flex:none;fill:none;stroke:#839d92;stroke-width:1.25;stroke-linecap:round;stroke-linejoin:round;transition:stroke .18s}
.documents-row label:has(input:checked) .document-option-icon{stroke:#9ae5ff}

.single-options{display:flex;align-items:center;gap:24px}
.single-options button{display:flex;align-items:center;gap:8px;padding:8px 0;font-size:14px;color:#a8afad}
.single-options i{width:12px;height:12px;border:1px solid #687b73;border-radius:50%;flex:none}
.single-options button[aria-pressed=true] i{border-color:#9ae5ff;background:radial-gradient(circle,#9ae5ff 0 2px,#18313b 2.5px);box-shadow:0 0 5px #78d6ff30}

/* Align the first odorisation control with the minimum slider thumb. */
.single-options{margin-left:58px;gap:16px;white-space:nowrap}
@media(max-width:600px){.single-options{margin-left:47px;gap:12px}}

.single-options{flex-direction:column;align-items:flex-start;gap:10px}
.single-options button{gap:12px}
.odor-icon{width:22px;height:22px;flex:none;fill:none;stroke:#839d92;stroke-width:1.25;stroke-linecap:round;stroke-linejoin:round;transition:stroke .18s}
.single-options button[aria-pressed=true] .odor-icon{stroke:#9ae5ff}

#products .single-row{display:block}
#products .single-options{margin-left:0;gap:10px}
#products .single-options button{padding:0;min-height:22px;line-height:1.5}

#products .season-options{flex-direction:row;align-items:center;justify-content:space-between;margin-left:0;gap:10px}
#products .season-options button{flex-direction:column;gap:7px;padding:8px 2px;font-size:12px;color:#a8afad}
.season-options svg{width:26px;height:26px;fill:none;stroke:#839d92;stroke-width:1.25;stroke-linecap:round;stroke-linejoin:round;transition:stroke .18s}
#products .season-options button[aria-pressed=true]{color:#9ae5ff}
.season-options button[aria-pressed=true] svg{stroke:#9ae5ff}

/* Seasonal icons follow the same 22px outline system as document options. */
#products .season-options{justify-content:flex-start;gap:24px}
#products .season-options button{position:relative;flex-direction:row;padding:8px 0;gap:0}
.season-options svg{width:22px;height:22px;stroke-width:1.25}
.season-options button::after{content:attr(data-tooltip);position:absolute;bottom:calc(100% + 8px);left:50%;transform:translateX(-50%);padding:6px 9px;border:1px solid #8dddff45;border-radius:6px;background:#172124;color:#c9d5d5;font-size:12px;white-space:nowrap;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .15s;z-index:20}
.season-options button:hover::after,.season-options button:focus-visible::after{opacity:1;visibility:visible}

#products .season-options{gap:42px}

/* Quiet rounded hover plates, matching the scenario controls. */
#products .season-options button::before{content:"";position:absolute;left:50%;top:50%;width:38px;height:38px;transform:translate(-50%,-50%);background:#ffffff0c;border:1px solid #ffffff12;border-radius:8px;opacity:0;transition:opacity .18s;pointer-events:none}
#products .season-options button:hover::before,#products .season-options button:focus-visible::before{opacity:1}
#products .season-options button svg{position:relative;z-index:1}

.document-requirements-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;padding:18px 0}
#products .document-requirements-grid .documents-row{padding:0;border:0;min-width:0}
#products .document-requirements-grid .multi-options{gap:16px}
#products .document-requirements-grid label{min-height:42px}
#products .document-requirements-grid label span{white-space:normal}

/* Seasonal choices use the same labelled column as other single choices. */
#products .season-row{display:block}
#products .season-options{flex-direction:column;align-items:flex-start;gap:10px;margin-left:0}
#products .season-options button{flex-direction:row;gap:12px;padding:0;min-height:22px;font-size:14px;line-height:1.5;color:#a8afad}
#products .season-options button[aria-pressed=true]{color:#a8afad}
#products .season-options button::before,#products .season-options button::after{display:none}

/* One vertical rhythm for all icon choice lists across the catalogue. */
#products .single-options,#products .season-options,#products .documents-row .multi-options,#products .document-requirements-grid .multi-options{gap:12px}
#products .single-options button,#products .season-options button,#products .documents-row .multi-options label,#products .document-requirements-grid label{height:44px;min-height:44px;padding:0;align-items:center;gap:12px;line-height:1.5}
#products .documents-row .multi-options input[type=checkbox]{transform:none}

/* Contact fields share a single underline with their inline labels. */
.requirements-dialog #contact-form>label{display:grid;grid-template-columns:120px minmax(0,1fr);gap:16px;align-items:baseline;border-bottom:1px solid #ffffff20;padding:12px 0;margin-bottom:12px;color:#a8afad;transition:color .18s,border-color .18s}
.requirements-dialog #contact-form>label:focus-within{color:var(--orange);border-bottom-color:var(--orange)}
.requirements-dialog #contact-form input,.requirements-dialog #contact-form textarea{width:100%;min-width:0;margin:0;padding:0 0 8px;border:0;border-radius:0;background:none;outline:none!important;box-shadow:none;color:#e1e6df}
@media(max-width:450px){.requirements-dialog #contact-form>label{grid-template-columns:95px minmax(0,1fr);gap:10px}}

.requirements-dialog{max-width:760px}
.requirements-dialog h2{white-space:nowrap;font-size:clamp(20px,3vw,30px);letter-spacing:-1px}
.requirements-dialog .selection-summary{font-size:14px;line-height:1.8;color:#c2d9d0;padding:20px 0 24px;margin:0 0 20px;border-bottom:1px solid #ffffff20}
.requirements-dialog .solid-button:disabled{opacity:.3;cursor:default}
@media(max-width:550px){.requirements-dialog h2{font-size:clamp(15px,4vw,22px);letter-spacing:-.6px}}

.requirements-dialog .selection-summary strong{display:block;font-size:20px;font-weight:400;margin-bottom:12px;color:#e1e6df}
.selected-spec-line{padding:3px 0;color:#b9d4ca}

/* Give the opening globe a wider panoramic composition. */
@media(min-width:951px){#home .network-wrap{width:110%;left:-5%;right:auto}}

#approach::before{left:50%;right:auto;width:100vw;transform:translateX(-50%)}
#expertise .match-board{display:none!important}
.replacement-scene{position:relative;padding:35px 0 20px;isolation:isolate}
.replacement-scene::before{content:"";position:absolute;inset:0 -6% -30px;z-index:-1;background:linear-gradient(110deg,#ffffff07,transparent 50%),var(--replacement-leather,none) center top/512px;opacity:.2;mask-image:radial-gradient(ellipse,#000 10%,transparent 70%);pointer-events:none}
.replacement-request{max-width:480px;margin-bottom:42px}.replacement-kicker{font-size:10px;letter-spacing:2px;color:#839d92}.replacement-request h3{font-size:26px;margin:12px 0 18px}.reference-unavailable{display:flex;align-items:center;gap:20px}.reference-unavailable>span{color:#858b89;text-decoration:line-through;font-size:17px}.reference-unavailable small{color:#f5b657;font-size:12px}.replacement-request p{font-size:13px;margin:12px 0}
.analyser-zone{display:flex;gap:7%;align-items:center}.analyser-drums{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;flex:1;min-width:0}.analyser-drum{text-align:center;min-width:0;perspective:800px}.drum-label{display:block;font-size:13px;color:#a8afad;height:42px}.drum-body{height:180px;position:relative;overflow:hidden;border-radius:32px;background:linear-gradient(90deg,#090d0e,#2c3334 18%,#404747 49%,#232a2b 80%,#080c0d);box-shadow:inset 0 1px 0 #ffffff35,inset 0 -1px 0 #000,0 25px 30px #0005;transform:rotateX(8deg);border:1px solid #ffffff18}.drum-body::after{content:"";position:absolute;inset:0;background:linear-gradient(#000b,transparent 38%,transparent 60%,#000b);pointer-events:none}.drum-roll{position:absolute;inset:-70px 0;display:flex;flex-direction:column;justify-content:center;gap:35px;opacity:.35}.drum-roll span{font-size:19px;letter-spacing:3px;font-weight:500;color:#bbc8c7}.drum-result{position:absolute;inset:55px 0;display:flex;flex-direction:column;justify-content:center;background:#07161bcc;border-top:1px solid #8dddff45;border-bottom:1px solid #8dddff45;opacity:0;transition:opacity .4s}.drum-result b{font-size:25px;font-weight:400;color:#9ae5ff}.drum-result small{color:#d0e7eb;font-size:12px;margin-top:8px}.matched .drum-result{opacity:1}.matched .drum-roll{opacity:0}.matched .drum-body{box-shadow:inset 0 1px 0 #8dddff50,0 20px 35px #0005,0 0 22px #8dddff0d}.drum-index{display:block;font-size:10px;margin:18px 0;color:#607572;letter-spacing:2px}.running .drum-roll{animation:analyse-roll .35s linear infinite;opacity:.8}.running .drum-body{box-shadow:0 0 28px #f5a00015}
@keyframes analyse-roll{from{transform:translateY(-50px)}to{transform:translateY(45px)}}
.candidate-counter{width:160px;flex:none}.candidate-counter strong{display:block;font-size:78px;font-weight:300;color:#9ae5ff;line-height:1.1}.candidate-counter span{display:block;font-size:12px;color:#899c98;margin-top:12px}.count-update{animation:count-in .4s ease-out}@keyframes count-in{from{transform:translateY(10px);opacity:.5}to{transform:translateY(0);opacity:1}}
.analyser-actions{display:flex;justify-content:space-between;align-items:center;gap:25px;min-height:85px;margin-top:22px}.analyser-status{font-size:13px;margin:0;max-width:440px}.analyser-run{border-radius:9px;font-size:13px;padding:16px 24px;min-width:220px}.analyser-run:disabled{opacity:.5;cursor:wait}
.replacement-results{margin-top:35px;animation:count-in .6s ease}.replacement-results-heading{display:flex;justify-content:space-between;gap:20px;font-size:12px;color:#95aaa5;margin-bottom:22px}.alternative-products{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.alternative-product{text-align:left;padding:20px;border-radius:12px;background:linear-gradient(145deg,#262d2c,#151a19);border:1px solid #ffffff17;box-shadow:0 12px 22px #0003;animation:count-in .5s both;animation-delay:calc(var(--offer-index)*.12s)}.alternative-product small{font-size:9px;color:#82968e;letter-spacing:1px}.alternative-product strong{display:block;font-size:16px;font-weight:400;margin:10px 0}.alternative-product>span{font-size:11px;color:#a5bbb4}.alternative-product>div{display:flex;justify-content:space-between;gap:10px;margin-top:24px;font-size:11px;color:#8eaaa0}.alternative-product b{font-weight:400;color:#f5b657}.alternative-product.selected{border-color:#8dddff75;background:linear-gradient(145deg,#18343d,#122026);box-shadow:0 0 20px #8dddff0a}.contract-proposal{display:flex;align-items:center;gap:25px;margin:35px 0 0;padding:28px 0;animation:count-in .6s ease}.proposal-seal{border:1px solid #f5a00070;border-radius:10px;padding:24px 16px;color:#f5b657;letter-spacing:2px;font-size:18px;transform:rotate(-4deg);background:#1c211e;box-shadow:0 12px 20px #0004}.contract-proposal small{font-size:9px;letter-spacing:2px;color:#f5b657}.contract-proposal h3{font-size:20px;margin:10px 0}.contract-proposal p{font-size:12px;margin:0}.proposal-review{margin-left:auto;font-size:12px;white-space:nowrap}.replacement-foot{display:flex;justify-content:space-between;align-items:center;margin-top:30px;gap:20px}.replacement-foot small{font-size:10px;color:#65746e}.replacement-reset{color:#8aaba0;font-size:12px}
@media(max-width:700px){.analyser-zone{gap:20px}.analyser-drums{gap:10px}.drum-body{height:140px;border-radius:22px}.drum-result{inset:40px 0}.drum-result b{font-size:20px}.drum-label{font-size:11px;height:45px}.candidate-counter{width:70px}.candidate-counter strong{font-size:50px}.candidate-counter span{font-size:10px}.analyser-actions{flex-direction:column;align-items:flex-start}.alternative-products{grid-template-columns:repeat(2,1fr)}.contract-proposal{flex-wrap:wrap}.proposal-review{margin-left:0}.replacement-results-heading{flex-direction:column}}
.replacement-scene [hidden]{display:none!important}
.auto-supply-story{padding:55px 0 20px;position:relative}.story-flow{display:grid;grid-template-columns:1.05fr .22fr 1fr .22fr 1.3fr .35fr 1.15fr .22fr 1.05fr;align-items:center;min-height:360px}.story-step{position:relative;opacity:.2;transform:translateY(14px);transition:opacity .9s,transform .9s;min-width:0}.story-caption{display:block;position:absolute;bottom:calc(100% + 28px);width:100%;font-size:12px;color:#9caea9;text-align:center}.story-paper{background:linear-gradient(135deg,#303735,#171d1c);padding:22px 16px;border:1px solid #a6bab52a;border-radius:3px 3px 20px 3px;box-shadow:7px 12px 25px #0006;transform:rotate(-3deg)}.story-paper>small,.story-contract>small{font-size:8px;letter-spacing:1.5px;color:#8eaaa0}.story-paper h3{font-size:18px;margin:14px 0 10px}.story-paper p{font-size:11px;line-height:1.6;margin-bottom:20px}.paper-spec{display:flex;gap:9px;margin:12px 0;font-size:10px;align-items:center}.paper-spec>b{color:#9ae5ff;font-size:12px;font-weight:400}.paper-spec small{display:block;color:#718a80;font-size:9px;margin-top:4px}.story-alert{text-align:center}.alert-orbit{display:inline-flex;align-items:center;justify-content:center;width:46px;height:46px;border:1px solid #f5a00070;border-radius:50%;color:#f5b657;font-size:24px;box-shadow:0 0 28px #f5a00012}.story-alert h3{font-size:17px;margin:18px 0 8px;color:#f5b657}.story-alert p{font-size:12px;margin:0;line-height:1.6}.story-alert>small{display:block;font-size:9px;color:#758880;margin-top:12px}.story-link{height:1px;background:#ffffff15;position:relative}.story-link:after{content:"";position:absolute;inset:0;background:#8dddff;transform:scaleX(0);transform-origin:left;transition:transform 1s;box-shadow:0 0 8px #8dddff44}.story-scanner{position:relative;padding:24px 14px;border-radius:18px;background:linear-gradient(140deg,#1f2a2d,#101719);border:1px solid #8dddff30;box-shadow:0 16px 35px #0005;overflow:hidden}.scanner-light{position:absolute;top:0;left:0;width:100%;height:1px;background:#9ae5ff;box-shadow:0 0 22px 7px #8dddff15;animation:scanner-sweep 3s linear infinite;opacity:.5}.scanner-check{display:flex;gap:10px;align-items:center;margin:13px 0;color:#81928f;transition:color .5s}.scanner-check>span{width:23px;height:23px;display:grid;place-items:center;border:1px solid #8dddff30;border-radius:7px;font-size:11px}.scanner-check>div{flex:1;min-width:0}.scanner-check small{display:block;font-size:9px;line-height:1.5}.scanner-check b{font-size:11px;font-weight:400}.scanner-check>i{font-style:normal;opacity:0;color:#9ae5ff}.scanner-check.checking{color:#f5b657}.scanner-check.passed{color:#a8d9e8}.scanner-check.passed>i{opacity:1}.scanner-count{margin-top:25px;display:flex;align-items:center;gap:10px;border-top:1px solid #ffffff12;padding-top:18px}.scanner-count strong{font-size:36px;font-weight:300;color:#9ae5ff}.scanner-count small{font-size:9px;color:#7f9990}.story-options{display:flex;flex-direction:column;gap:18px}.story-option{display:flex;gap:10px;align-items:center;padding:15px 12px;border:1px solid #8dddff25;border-radius:12px;background:#122027;transition:background .8s,border-color .8s,opacity .8s,transform .8s}.story-option svg{width:20px;height:20px;flex:none;fill:none;stroke:#9ae5ff;stroke-width:1.25;stroke-linecap:round;stroke-linejoin:round}.story-option span{font-size:12px;color:#c1d6da}.story-option small{display:block;font-size:9px;color:#78949e;margin-top:6px}.story-contract{padding:22px 16px;background:linear-gradient(145deg,#30332b,#171c18);border:1px solid #f5a00040;border-radius:5px;transform:rotate(3deg);box-shadow:8px 14px 25px #0006}.contract-mark{display:block;color:#f5b657;letter-spacing:2px;font-size:17px;margin-bottom:20px}.story-contract h3{font-size:17px;margin:14px 0}.contract-lines i{display:block;height:1px;background:#a5b39c30;margin:10px 0}.contract-lines i:last-child{width:65%}.story-contract p{font-size:10px;margin:22px 0 0;line-height:1.5;color:#a8beb2}.story-narrative{min-height:60px;margin:50px auto 15px;text-align:center;max-width:650px;font-size:15px;line-height:1.8;color:#afbeb9}.story-demo{display:block;text-align:center;font-size:9px;color:#63796e}.branch-link i{position:absolute;width:100%;height:1px;background:#ffffff15;left:0;transform-origin:left}.branch-link i:first-child{transform:rotate(-55deg)}.branch-link i:last-child{transform:rotate(55deg)}
.auto-supply-story[data-phase] .request-step{opacity:1;transform:translateY(0)}
.auto-supply-story:not([data-phase="0"]) .availability-step,.auto-supply-story[data-phase="2"] .search-step,.auto-supply-story[data-phase="3"] .search-step,.auto-supply-story[data-phase="4"] .search-step,.auto-supply-story[data-phase="5"] .search-step,.auto-supply-story[data-phase="6"] .search-step,.auto-supply-story[data-phase="7"] .search-step{opacity:1;transform:translateY(0)}
.auto-supply-story[data-phase="5"] .options-step,.auto-supply-story[data-phase="6"] .options-step,.auto-supply-story[data-phase="7"] .options-step,.auto-supply-story[data-phase="7"] .agreement-step{opacity:1;transform:translateY(0)}
.auto-supply-story[data-phase="6"] .cost-option,.auto-supply-story[data-phase="7"] .cost-option{border-color:#f5a00090;background:#30291b;transform:translateX(5px)}
.auto-supply-story[data-phase="6"] .story-option:not(.cost-option),.auto-supply-story[data-phase="7"] .story-option:not(.cost-option){opacity:.3}
.auto-supply-story[data-phase="7"] .story-link:after{transform:scaleX(1)}
@keyframes scanner-sweep{from{transform:translateY(0)}to{transform:translateY(270px)}}
@media(max-width:850px){.story-flow{grid-template-columns:1fr 20px 1fr 20px 1.2fr;gap:10px;row-gap:75px}.branch-link{display:none}.options-step{grid-column:1/4}.agreement-step{grid-column:5}.final-link{grid-column:4;grid-row:2}.story-caption{font-size:11px}.story-narrative{margin-top:35px}.auto-supply-story{padding-top:65px}}

/* Animated correspondence: request, search, reply and contract. */
.auto-supply-story .story-step{opacity:0;transition:opacity .65s,transform .8s}
.auto-supply-story .request-step{opacity:1}
.auto-supply-story .availability-step,.auto-supply-story .search-step,.auto-supply-story .options-step,.auto-supply-story .agreement-step{opacity:0!important}
.auto-supply-story.reference-searching .availability-step,.auto-supply-story.story-reference-unavailable .availability-step,.auto-supply-story.search-active .search-step,.auto-supply-story.options-visible .options-step,.auto-supply-story.reply-visible .agreement-step{opacity:1!important;transform:translateY(0)}
.request-step{perspective:700px}.incoming-envelope{position:absolute;inset:55px -5px 35px;z-index:3;transform:translateX(-65vw) rotate(-18deg);animation:mail-arrives 1.6s cubic-bezier(.2,.7,.2,1) forwards;filter:drop-shadow(0 16px 15px #0006);pointer-events:none}
.envelope-body{position:absolute;inset:0;border:1px solid #a1c4c055;border-radius:8px;background:linear-gradient(150deg,#354540,#15221f)}
.envelope-body:after{content:"";position:absolute;inset:0;background:linear-gradient(32deg,transparent 49.5%,#809e8c55 50%,transparent 50.5%),linear-gradient(-32deg,transparent 49.5%,#809e8c55 50%,transparent 50.5%)}
.envelope-flap{position:absolute;inset:0 0 40%;background:#34473f;clip-path:polygon(0 0,100% 0,50% 100%);transform-origin:top;transition:transform 1s,opacity .7s;border-top:1px solid #9cc0ae60}.envelope-seal{position:absolute;left:calc(50% - 16px);top:45%;width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:#bc871b;color:#121713;font-size:14px;transition:opacity .4s}
.auto-supply-story .story-paper{opacity:0;transform:translateY(40px) rotate(-3deg);transition:opacity .8s,transform 1.2s}
.letter-open .envelope-flap{transform:rotateX(180deg);opacity:0}.letter-open .envelope-seal{opacity:0}.letter-open .incoming-envelope{opacity:0;transition:opacity 1s .7s}.letter-open .story-paper{opacity:1;transform:translateY(0) rotate(-3deg)}
.reference-searching .alert-orbit{animation:reference-seek 1.2s linear infinite;border-style:dashed;color:transparent}.story-reference-unavailable .alert-orbit{animation:alarm-in .6s ease-out}
.auto-supply-story .story-option{opacity:1!important;transform:none!important;background:#122027!important;border-color:#8dddff25!important}
.auto-supply-story.fast-selected .fast-option{background:#30291b!important;border-color:#f5a00090!important;box-shadow:0 0 25px #f5a00012;transform:translateX(5px)!important}
.auto-supply-story.fast-selected .story-option:not(.fast-option){opacity:.3!important}
.client-reply{display:flex;align-items:center;gap:12px;padding:16px 4px;color:#b7d6db;opacity:0;transform:translateX(50px);transition:opacity .7s,transform .9s}.client-reply svg{width:28px;flex:none;fill:none;stroke:#9ae5ff;stroke-width:1.2}.client-reply span{font-size:10px}.client-reply strong{display:block;margin-top:8px;font-size:15px;font-weight:400;color:#9ae5ff}.reply-visible .client-reply{opacity:1;transform:none}
.auto-supply-story .story-contract{opacity:0;transform:translateY(25px) rotate(3deg);transition:opacity .8s,transform 1s}.contract-sent .story-contract{opacity:1;transform:translateY(0) rotate(3deg);animation:contract-dispatch 5s 1.5s ease-in-out forwards}.contract-sent .client-reply{opacity:.4}
.auto-supply-story .story-link:after{transform:scaleX(0)!important}.reference-searching .request-step+.story-link:after,.story-reference-unavailable .request-step+.story-link:after,.search-active .availability-step+.story-link:after,.options-visible .branch-link:after,.contract-sent .final-link:after{transform:scaleX(1)!important}
@keyframes mail-arrives{to{transform:translateX(0) rotate(-3deg)}}
@keyframes reference-seek{to{transform:rotate(360deg)}}
@keyframes alarm-in{0%,50%{box-shadow:0 0 40px #f5a00055}100%{box-shadow:0 0 28px #f5a00012}}
@keyframes contract-dispatch{0%,40%{transform:translateY(0) rotate(3deg);opacity:1}100%{transform:translateX(180px) translateY(-45px) rotate(12deg);opacity:0}}
.auto-supply-story{overflow:hidden;padding-right:12px;padding-left:12px}
.auto-supply-story .incoming-envelope{animation:none}
.auto-supply-story[data-phase="0"] .incoming-envelope{animation:mail-arrives 1.6s cubic-bezier(.2,.7,.2,1) forwards}
.auto-supply-story.letter-open .incoming-envelope{transform:translateX(0) rotate(-3deg)}
/* The requirement sheet slides out of the envelope at full opacity. */
.auto-supply-story .story-paper{opacity:1;position:relative;z-index:2;transform:translateY(125px) rotate(-3deg);clip-path:inset(100% -20px -30px -20px);transition:transform 1.5s .45s cubic-bezier(.22,.7,.25,1),clip-path 1.5s .45s cubic-bezier(.22,.7,.25,1)}
.auto-supply-story.letter-open .story-paper{opacity:1;transform:translateY(0) rotate(-3deg);clip-path:inset(0 -20px -30px -20px)}
.auto-supply-story .incoming-envelope{z-index:3;opacity:1;transition:none}
.auto-supply-story.letter-open .incoming-envelope{opacity:1;transform:translateY(170px) rotate(-3deg);transition:transform 1.2s 1.7s ease-in,opacity .3s 2.7s;opacity:0}
.auto-supply-story .envelope-flap{transition:transform .65s,opacity .65s}

/* A single envelope pocket: back, contained sheet, front folds, matching flap. */
.auto-supply-story .request-mail{position:relative;height:270px;perspective:800px;transform:translateX(-65vw) rotate(-10deg)}
.auto-supply-story[data-phase="0"] .request-mail{animation:mail-arrives 1.6s cubic-bezier(.2,.7,.2,1) forwards}
.auto-supply-story.letter-open .request-mail{transform:translateX(0) rotate(-3deg)}
.request-mail .envelope-back,.request-mail .envelope-front{position:absolute;left:0;right:0;top:135px;height:125px;border-radius:5px;background:linear-gradient(145deg,#46544f,#24362d);border:1px solid #90b3a46b}
.request-mail .envelope-back{z-index:0}
.auto-supply-story .request-mail .sheet-pocket{position:absolute;left:5px;right:5px;top:0;height:260px;overflow:hidden;z-index:1}
.auto-supply-story .request-mail .story-paper{padding:14px 10px;border-radius:3px;background:linear-gradient(135deg,#404b44,#28332d);opacity:1;transform:translateY(145px);clip-path:none;box-shadow:none;transition:transform 1.5s .65s cubic-bezier(.2,.7,.2,1);height:235px;box-sizing:border-box}
.auto-supply-story.letter-open .request-mail .story-paper{transform:translateY(0);clip-path:none}
.request-mail .envelope-front{z-index:2;clip-path:polygon(0 0,50% 53%,100% 0,100% 100%,0 100%);background:linear-gradient(35deg,#2d4035,#4a5c50);box-shadow:0 14px 25px #0005}
.request-mail .envelope-front:after{content:"";position:absolute;inset:0;background:linear-gradient(32deg,transparent 49.4%,#99b3a34f 50%,transparent 50.6%),linear-gradient(-32deg,transparent 49.4%,#99b3a34f 50%,transparent 50.6%)}
.auto-supply-story .request-mail .envelope-flap{z-index:3;left:0;right:0;top:135px;bottom:auto;height:67px;clip-path:polygon(0 0,100% 0,50% 100%);background:linear-gradient(#4e6255,#364a3c);opacity:1;transform:rotateX(0deg);transform-origin:50% 0;transition:transform .7s;backface-visibility:visible}
.auto-supply-story.letter-open .request-mail .envelope-flap{transform:rotateX(180deg);opacity:1;z-index:0}
.request-mail .envelope-seal{z-index:4;top:184px;width:26px;height:26px;left:calc(50% - 13px);font-size:11px}
.request-mail .story-paper>small{font-size:8px;letter-spacing:.8px}
.request-mail .story-paper h3{font-size:15px;margin:9px 0}
.request-mail .story-paper p{font-size:10px;white-space:nowrap;margin:0 0 10px;line-height:1.7}
.request-mail .paper-spec{gap:5px;font-size:9px;margin:10px 0;white-space:nowrap}
.request-mail .paper-spec>span{display:flex;align-items:baseline;gap:5px;font-size:9px;letter-spacing:-.2px}
.request-mail .paper-spec small{display:inline;font-size:9px;margin:0;color:#adbbb3}
.auto-supply-story .story-flow{grid-template-columns:1.25fr .16fr .9fr .16fr 1.25fr .25fr 1.1fr .16fr 1fr}
@media(max-width:850px){.auto-supply-story .story-flow{grid-template-columns:1.3fr 12px 1fr 12px 1.2fr}}
.request-mail .envelope-back,.request-mail .envelope-front{transition:top 1.5s .65s cubic-bezier(.2,.7,.2,1)}
.auto-supply-story.letter-open .request-mail .envelope-back,.auto-supply-story.letter-open .request-mail .envelope-front{top:230px}
.auto-supply-story.letter-open .request-mail .envelope-flap{top:230px;transition:transform .7s,top 1.5s .65s cubic-bezier(.2,.7,.2,1)}
.request-mail .envelope-seal{transition:opacity .3s}

/* Three tangible Arctic diesel alternatives. */
.request-penguin{width:20px;height:23px;fill:none;stroke:#bce9f8;stroke-width:1.25;stroke-linecap:round;stroke-linejoin:round;flex:none}
.request-mail .story-paper h3{display:flex;align-items:center;gap:7px}
.auto-supply-story .story-link{opacity:0;background:none;transition:opacity .5s}
.auto-supply-story.reference-searching .request-step+.story-link,.auto-supply-story.story-reference-unavailable .request-step+.story-link,.auto-supply-story.search-active .availability-step+.story-link,.auto-supply-story.options-visible .branch-link,.auto-supply-story.contract-sent .final-link{opacity:1}
.auto-supply-story .branch-link i{opacity:0;transition:opacity .5s}.auto-supply-story.options-visible .branch-link i{opacity:1;background:#8dddff55}
.auto-supply-story .barrel-option{background:none!important;border:0!important;padding:0!important;gap:13px;box-shadow:none!important}
.auto-supply-story .story-options{gap:22px}
.product-barrel{position:relative;width:54px;height:70px;flex:none;border-radius:50% / 8%;background:linear-gradient(90deg,#68736d,#e4e9e4 28%,#c4cdc6 60%,#77837a);box-shadow:7px 8px 12px #0005;transition:filter .7s,transform .7s}
.barrel-top{position:absolute;top:-4px;left:0;width:100%;height:10px;border-radius:50%;background:linear-gradient(140deg,#ebf0e9,#88958d);border:1px solid #dbe5db99}
.barrel-top:after{content:"";position:absolute;left:12px;top:2px;width:5px;height:3px;border-radius:50%;background:#617168}
.barrel-bottom{position:absolute;bottom:-3px;left:0;width:100%;height:8px;border-radius:50%;border-bottom:2px solid #a4b4aa80}
.barrel-rib{position:absolute;left:-1px;width:calc(100% + 2px);height:7px;border-radius:50%;border-top:2px solid #edf4ec66;border-bottom:2px solid #39463c66}.rib-one{top:18px}.rib-two{top:47px}
.product-barrel>span{position:absolute;inset:28px 0 auto;text-align:center;color:#35453a;font-size:12px}
.barrel-blue{background:linear-gradient(90deg,#173f58,#6aaad0 28%,#387ba6 60%,#173c55)}.barrel-blue .barrel-top{background:linear-gradient(140deg,#6fb8de,#245373);border-color:#98d6f399}.barrel-blue>span{color:#d4edf9}
.barrel-gold{background:linear-gradient(90deg,#775110,#f9ce66 28%,#dca83a 60%,#805211)}.barrel-gold .barrel-top{background:linear-gradient(140deg,#ffdc7d,#a47820);border-color:#ffdf8c99}.barrel-gold>span{color:#674711}
.auto-supply-story.fast-selected .barrel-option.fast-option{background:none!important;border:0!important;transform:none!important;box-shadow:none}
.fast-selected .barrel-gold{filter:drop-shadow(0 0 10px #f5ae3544);transform:translateY(-5px)}
.auto-supply-story .barrel-option>span{font-size:13px}.auto-supply-story .barrel-option small{font-size:10px}

/* Product icons use the site's quiet outline family. */
.auto-supply-story .barrel-icon{width:60px;height:76px;flex:none;fill:#e1e7e008;stroke:#d5ded7;stroke-width:1.35;stroke-linecap:round;stroke-linejoin:round;overflow:visible;transition:opacity .7s,transform .7s,filter .7s}
.auto-supply-story .barrel-icon.barrel-blue{stroke:#91d5f0;fill:#91d5f008;background:none}
.auto-supply-story .barrel-icon.barrel-gold{stroke:#f2bc52;fill:#f2bc5208;background:none}
.barrel-icon.pose-0{transform:rotate(-12deg)}.barrel-icon.pose-1{transform:rotate(10deg)}.barrel-icon.pose-2{transform:rotate(-3deg)}
.auto-supply-story.fast-selected .barrel-icon.barrel-gold{transform:translateY(-4px) rotate(-3deg);filter:drop-shadow(0 0 5px #f2bc5225)}
.request-mail .story-paper{height:235px!important;padding:15px 12px!important}
.request-mail .story-paper>small{font-size:9px;letter-spacing:.6px}
.request-mail .story-paper h3{font-size:17px;gap:8px;margin:10px 0 12px}
.request-mail .request-penguin{width:25px;height:29px;stroke-width:1.3}
.request-mail .story-paper p{font-size:12px;line-height:1.6;margin-bottom:13px}
.request-mail .paper-spec{font-size:11px;gap:6px;margin:12px 0}
.request-mail .paper-spec>b{font-size:12px}
.request-mail .paper-spec>span{font-size:11px;gap:6px;letter-spacing:-.25px}
.request-mail .paper-spec small{font-size:11px}
.auto-supply-story .story-flow{grid-template-columns:1.45fr .12fr .9fr .12fr 1.2fr .2fr 1.1fr .12fr 1fr}
@media(max-width:850px){.auto-supply-story .story-flow{grid-template-columns:1.45fr 12px 1fr 12px 1.2fr}}

/* Readable specification rows, quiet units and grouped barrels. */
.auto-supply-story .story-flow{grid-template-columns:1.85fr .1fr .85fr .1fr 1.5fr .15fr 1.15fr .1fr 1fr}
.request-mail .story-paper h3{font-size:21px;gap:9px;white-space:nowrap}
.request-mail .request-penguin{width:32px;height:37px}
.request-mail .reference-line{font-size:11px;white-space:nowrap;letter-spacing:-.2px}
.request-mail .reference-line>span,.request-mail .reference-line>b,.request-mail .paper-spec>b{color:var(--orange);font-weight:400}
.request-mail .paper-spec{margin:10px 0}
.spec-number{font-size:15px!important;font-weight:400!important;color:#d7e2dc;white-space:nowrap}
.spec-unit{font-size:11px;font-weight:200;color:#a8b9af;margin-left:4px;white-space:nowrap}
.request-mail .paper-spec>span{display:flex;align-items:center;font-size:11px}
.request-mail .paper-spec small{display:flex;align-items:baseline;gap:0}
.scanner-check>div{display:flex;align-items:center;justify-content:space-between;gap:7px}
.scanner-check small{font-size:10px;white-space:nowrap}
.scanner-check b{display:flex;align-items:baseline;white-space:nowrap;font-weight:400}
.scanner-check{gap:7px}.scanner-check>span{width:20px;height:20px;flex:none}.scanner-check>i{font-size:11px}
.scanner-count{justify-content:flex-end;gap:12px}.scanner-count small{font-size:11px}.scanner-count strong{font-size:34px}
.barrel-group{width:75px;height:65px;flex:none;fill:#d7e2dc06;stroke:#d7e2dc;stroke-width:1.3;stroke-linecap:round;stroke-linejoin:round;overflow:visible}
.barrel-group.barrel-blue{background:none;stroke:#91d5f0;fill:#91d5f006}.barrel-group.barrel-gold{background:none;stroke:#f2bc52;fill:#f2bc5206}
.fast-selected .barrel-group.barrel-gold{filter:drop-shadow(0 0 5px #f2bc5225)}
.auto-supply-story .barrel-option{gap:10px}.auto-supply-story .barrel-option>span{font-size:12px}
@media(max-width:850px){.auto-supply-story .story-flow{grid-template-columns:1.7fr 10px 1fr 10px 1.5fr}}
.auto-supply-story .story-option svg.barrel-group{width:75px;height:65px;stroke-width:1.3}
.auto-supply-story .story-option svg.barrel-group{fill:#101411;stroke:#d7e2dc}
.auto-supply-story .story-option svg.barrel-blue{stroke:#91d5f0}
.auto-supply-story .story-option svg.barrel-gold{stroke:#f2bc52}

/* Quiet icons and a signed, sealed conclusion. */
.auto-supply-story .simple-option{padding:13px 10px!important;border:1px solid #8dddff25!important;border-radius:12px;background:#122027!important;gap:12px}
.auto-supply-story .story-option svg.supply-option-icon{width:30px;height:30px;fill:none;stroke:#a9d7e7;stroke-width:1.3;stroke-linecap:round;stroke-linejoin:round}
.auto-supply-story.fast-selected .simple-option.fast-option{background:#30291b!important;border:1px solid #f5a00070!important}
.contract-sent .story-contract{animation:none!important;transform:rotate(3deg)!important;opacity:1!important}
.contract-signatures{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:17px}
.contract-signatures small{font-size:7px;letter-spacing:1px;color:#9bafa2}
.contract-signatures svg{width:100%;height:28px;display:block;fill:none;stroke:#d4e4da;stroke-width:1.3;stroke-linecap:round;stroke-linejoin:round}
.contract-signatures path{stroke-dasharray:1;stroke-dashoffset:1}
.contract-sent .contract-signatures>div:first-child path{animation:sign-contract 1.3s .9s ease forwards}
.contract-sent .contract-signatures>div:last-child path{animation:sign-contract 1.3s 2.5s ease forwards}
.contract-stamp{margin:14px auto 0;width:83px;padding:9px 3px;border:1px solid #e9ba587f;border-radius:5px;color:#e9ba58;text-align:center;font-size:12px;letter-spacing:1px;opacity:0;transform:scale(1.5) rotate(-10deg)}
.contract-stamp span{display:block;font-size:6px;letter-spacing:.8px;margin-top:4px}
.contract-sent .contract-stamp{animation:seal-contract .45s 4.1s ease-out forwards}
.story-contract .contract-success{opacity:0;color:#bfded3;font-size:11px;text-align:center;margin-top:13px}
.contract-sent .contract-success{animation:agreement-complete .7s 4.5s forwards}
@keyframes sign-contract{to{stroke-dashoffset:0}}
@keyframes seal-contract{to{opacity:1;transform:scale(1) rotate(-10deg)}}
@keyframes agreement-complete{to{opacity:1}}
/* Product choices remain unframed, including the selected one. */
.auto-supply-story .simple-option,.auto-supply-story.fast-selected .simple-option.fast-option{background:none!important;border:0!important;box-shadow:none!important;padding:13px 10px!important}
.auto-supply-story.fast-selected .simple-option.fast-option>span,.auto-supply-story.fast-selected .simple-option.fast-option svg{color:#f2bc52;stroke:#f2bc52}

.story-contract .contract-logo{display:block;width:100%;height:auto;max-height:40px;object-fit:contain;object-position:left;margin:0 0 20px}

/* Clear approval marks and curved supply connections. */
.story-contract .contract-logo{width:85%;max-height:33px;margin-bottom:20px}
.scanner-check>i{width:24px;height:24px;flex:none;margin-left:3px}
.scanner-check>i svg{width:24px;height:24px;fill:none;stroke:var(--orange);stroke-width:2.2;stroke-linecap:butt;stroke-linejoin:miter}
.scanner-check>div{gap:4px}.scanner-check b{padding-right:3px}
.auto-supply-story .branch-link,.auto-supply-story .final-link{height:260px;align-self:center}
.auto-supply-story .branch-link:after,.auto-supply-story .final-link:after{display:none}
.story-link>svg{width:100%;height:100%;overflow:visible;fill:none;stroke:#8dddff80;stroke-width:1;vector-effect:non-scaling-stroke}
.story-link>svg path{vector-effect:non-scaling-stroke;filter:drop-shadow(0 0 2px #8dddff22)}
.client-reply{padding:12px 0;gap:9px}
.client-reply svg{width:24px;stroke:var(--orange);stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter}
.client-reply strong{font-size:14px}
.auto-supply-story .story-flow{grid-template-columns:1.85fr .1fr .85fr .1fr 1.5fr .25fr 1.1fr .25fr 1fr}
@media(max-width:850px){.auto-supply-story .story-flow{grid-template-columns:1.7fr 10px 1fr 10px 1.5fr}}
.contract-sent .client-reply{opacity:1}
/* One shared heading baseline for the five story stages. */
.auto-supply-story .story-flow{align-items:start}
.auto-supply-story .story-caption{top:0;bottom:auto;height:18px}
.auto-supply-story .story-step{padding-top:48px;transform:none!important}
.auto-supply-story .story-link{align-self:start;margin-top:183px}
.auto-supply-story .branch-link,.auto-supply-story .final-link{margin-top:48px;align-self:start}
.auto-supply-story .availability-step{padding-top:106px}
.auto-supply-story .client-reply{margin:0 0 15px;padding:10px 0}
.auto-supply-story .story-narrative{margin-top:65px}
@media(max-width:850px){.auto-supply-story .story-caption{top:0}.auto-supply-story .story-flow{row-gap:50px}}
.scanner-count small{font-size:14px;color:#aabdb5}
.auto-supply-story .simple-option{display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding:12px 7px!important}
.auto-supply-story .simple-option .product-option-title{font-size:12px;color:#aebdb7}
.auto-supply-story .simple-option .product-option-benefit{display:flex;align-items:center;gap:8px;font-size:15px;color:#c8dad4;white-space:nowrap}
.auto-supply-story .story-option svg.supply-option-icon{width:20px;height:20px;stroke-width:1.3}
.auto-supply-story.fast-selected .simple-option.fast-option .product-option-benefit{color:#f2bc52}
.auto-supply-story .simple-option .product-option-benefit>span{font-size:15px;color:inherit}
.story-alert .alert-orbit{border:0;border-radius:0;background:none;box-shadow:none;width:46px;height:46px}
.story-alert .alert-orbit svg{width:46px;height:46px;fill:var(--orange)}
.reference-searching .story-alert .alert-orbit{animation:reference-seek-pulse 1.2s ease-in-out infinite;border:0;color:inherit}
.story-reference-unavailable .story-alert .alert-orbit{animation:none}
@keyframes reference-seek-pulse{50%{opacity:.35}}

/* Background shipping continues independently through story cycles. */
#expertise{position:relative;isolation:isolate}
.auto-supply-story{position:relative;z-index:1}
.story-sea-background{position:absolute;left:0;right:0;bottom:5px;height:230px;pointer-events:none;z-index:0;overflow:hidden;mask-image:linear-gradient(transparent,#000 23%,#000 75%,transparent)}
.story-sea-background svg{width:100%;height:100%;overflow:visible}
.sea-track{fill:none;stroke:#86c3d321;stroke-width:.7;stroke-dasharray:3 8}
.sea-tanker{fill:#101a18;stroke:#a5c9c67a;stroke-width:.8}
.sea-port{fill:#16231d;stroke:#8daf9b65;stroke-width:.8}
.sea-port-alert{opacity:0;fill:#f5a000;stroke:none;transition:opacity .8s}
.sea-alert-mark{fill:none;stroke:#172016;stroke-width:2;stroke-linecap:round}
.port-unavailable .sea-port-alert{opacity:.8}
@media(prefers-reduced-motion:reduce){.story-sea-background{opacity:.4}}

/* A night chart fills the scene; foreground process softly dims it. */
.story-sea-background{inset:210px -5% 0;height:auto;min-height:560px;opacity:.8;transition:opacity 1.8s;mask-image:radial-gradient(ellipse at 52% 53%,#000 20%,#000c 45%,transparent 75%)}
.story-sea-background.process-overlay{opacity:.25}
.story-sea-background svg{height:100%;min-height:560px}
.night-route{fill:none;stroke:#ffb143;stroke-width:1;stroke-linecap:round}
.night-route-glow{fill:none;stroke:#f5a000;stroke-width:3;filter:url(#route-glow);opacity:.5}
.night-tanker{fill:#9fa99f;stroke:#e2e9db;stroke-width:.6}
.night-port{fill:#ffd28a;filter:drop-shadow(0 0 4px #f5a000)}
.auto-supply-story{background:none}
.night-tanker{fill:#39738a;stroke:#9ae5ff;stroke-width:.8;transition:fill .5s,stroke .5s}
.ship-alert-active .signal-tanker{fill:#b78222;stroke:#ffd06a;filter:drop-shadow(0 0 4px #f5a00055)}
.ship-signal-overlay{position:absolute;inset:0;width:100%;height:100%;z-index:2;pointer-events:none;overflow:visible;opacity:0;transition:opacity .7s}
.ship-signal-overlay.active{opacity:.85}
.ship-signal-path{fill:none;stroke:#f5b657;stroke-width:1.15;stroke-dasharray:4 6;animation:signal-travel 1.2s linear infinite}
.ship-signal-overlay marker path{fill:#f5b657}
@keyframes signal-travel{to{stroke-dashoffset:-20}}
.ship-signal-path{stroke:#ffc15a;stroke-width:1.7}
.ship-alert-active .signal-tanker{fill:#f5a000;stroke:#ffe6ad;stroke-width:1.6}
/* Keep the night chart lower and quieter beneath the business process. */
.story-sea-background{top:340px;bottom:-115px;min-height:560px}
.story-sea-background.process-overlay{opacity:.14}
.story-alert .alert-orbit{position:relative}
.story-alert .alert-orbit .reference-search-icon{fill:#9ae5ff;display:block;animation:search-arrows-spin 2s linear infinite}
.story-alert .alert-orbit .reference-warning-icon{display:none}
.story-reference-unavailable .alert-orbit .reference-search-icon{display:none}
.story-reference-unavailable .alert-orbit .reference-warning-icon{display:block}
.reference-searching .story-alert .alert-orbit{animation:none;opacity:1}
.ship-signal-overlay.active{animation:ship-signal-arrival 2.2s linear both}
@keyframes search-arrows-spin{to{transform:rotate(360deg)}}
@keyframes ship-signal-arrival{from{clip-path:inset(100% 0 0)}to{clip-path:inset(0 0 0)}}
.ship-signal-overlay{transition:opacity .6s}
/* Heading, context and live status precede the animated process. */
#expertise .wide-heading{display:block;margin-bottom:0}
#expertise .wide-heading h2{font-size:clamp(28px,3.15vw,48px);white-space:nowrap}
#expertise .wide-heading h2 br{display:none}
#expertise .wide-heading h2 em:before{content:" "}
#expertise .wide-heading p{max-width:850px;width:auto;margin:22px 0 0;line-height:1.8}
.story-status{color:var(--orange);font-size:15px;line-height:1.8;min-height:54px;margin:24px 0 0;position:relative;z-index:1}
#expertise .auto-supply-story{padding-top:35px}
.story-narrative{display:none}
#expertise .story-sea-background{top:420px}
@media(max-width:700px){#expertise .wide-heading h2{white-space:normal}#expertise .wide-heading h2 br{display:block}}
/* Fade the night chart on every edge before the canvas boundary. */
.story-sea-background{-webkit-mask-image:linear-gradient(to right,transparent 0%,#000 16%,#000 80%,transparent 100%),linear-gradient(to bottom,transparent 0%,#000 20%,#000 70%,transparent 100%);-webkit-mask-composite:source-in;mask-image:linear-gradient(to right,transparent 0%,#000 16%,#000 80%,transparent 100%),linear-gradient(to bottom,transparent 0%,#000 20%,#000 70%,transparent 100%);mask-composite:intersect}
.story-status{text-align:center;max-width:850px;margin:42px auto 0;min-height:32px;font-size:15px;line-height:1.8}
#expertise .auto-supply-story{padding-top:22px}
.story-status.status-change{animation:story-status-change .55s ease-out}
@keyframes story-status-change{from{opacity:.25;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){.story-status.status-change{animation:none}}
/* Finish the chart fade inside the section, before either viewport edge. */
#expertise .story-sea-background{left:0;right:0;-webkit-mask-image:linear-gradient(to right,transparent 0%,#000 20%,#000 64%,transparent 88%,transparent 100%),linear-gradient(to bottom,transparent 0%,#000 20%,#000 65%,transparent 90%);-webkit-mask-composite:source-in;mask-image:linear-gradient(to right,transparent 0%,#000 20%,#000 64%,transparent 88%,transparent 100%),linear-gradient(to bottom,transparent 0%,#000 20%,#000 65%,transparent 90%);mask-composite:intersect}
.stage-status-thread{position:absolute;inset:0;width:100%;height:100%;z-index:3;pointer-events:none;overflow:visible}
.stage-status-thread path{fill:none;stroke:var(--orange);stroke-width:1;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:1;opacity:0;filter:drop-shadow(0 0 3px #f5a00055)}
.stage-status-thread.firing path{animation:stage-thread-pulse 1.8s ease-out both}
@keyframes stage-thread-pulse{0%{stroke-dashoffset:1;opacity:0}15%{opacity:.8}50%{stroke-dashoffset:0;opacity:.65}100%{stroke-dashoffset:0;opacity:0}}
@media(prefers-reduced-motion:reduce){.stage-status-thread{display:none}}
.stage-status-thread.firing path{animation:stage-thread-fast .65s ease-out both}
@keyframes stage-thread-fast{0%{stroke-dashoffset:1;opacity:0}12%{opacity:.9}35%{stroke-dashoffset:0;opacity:.75}100%{stroke-dashoffset:0;opacity:0}}

/* Stationary explanation, with a brief dashed signal from the stage title. */
.story-status,.story-status.status-change{animation:none;transform:none;opacity:1}
.stage-status-thread path{stroke:#f5b657;stroke-width:1.15;stroke-dasharray:4 6;stroke-dashoffset:0;stroke-linecap:butt;filter:none}
.stage-status-thread.firing path{animation:stage-status-signal 1s ease-out both,signal-travel .6s linear infinite}
@keyframes stage-status-signal{0%{opacity:0}18%{opacity:.9}60%{opacity:.85}100%{opacity:0}}
/* More breathing room inside the request and comparison sheets. */
.auto-supply-story .request-mail .story-paper{padding:19px 23px!important}
.auto-supply-story .story-scanner{padding-left:24px;padding-right:25px}
/* Bring route endpoints close to product labels. */
.auto-supply-story .simple-option{padding-left:0!important;padding-right:0!important}
.auto-supply-story .branch-link svg{width:calc(100% + 6px)}
.auto-supply-story .final-link svg{width:calc(100% + 16px);margin-left:-16px}
.auto-supply-story .request-step+.story-link:after{right:calc(-1 * var(--heading-extension,0px))}
.auto-supply-story .availability-step+.story-link:after{left:calc(-1 * var(--heading-extension,0px))}
/* Add roughly one centimetre below the section introduction. */
#expertise .story-status{margin-top:80px}
#expertise .story-sea-background{top:458px}
/* Separate the animated scene from its stationary status line. */
#expertise .auto-supply-story{padding-top:60px}
#expertise .story-sea-background{top:496px}

/* Align the comparison sheet’s B row with the incoming route. */
.auto-supply-story .search-step .story-scanner{margin-top:48.5px}

/* Keep the complete animated scene and its map inside this section. */
#expertise{padding-bottom:225px}
#expertise .story-sea-background{bottom:0;min-height:0}

/* Closing sequence: leadership, Dubai, presentation, contact. */
section[hidden]{display:none!important}
#leadership .leadership{margin-top:0;padding-top:0;border-top:0}

/* Corporate presentation: original meeting artwork on the page. */
#downloads{position:relative;isolation:isolate;overflow:hidden;min-height:680px;padding-bottom:150px}
#downloads .presentation-background{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:-2;mask-image:linear-gradient(to bottom,transparent,#000 14%,#000 78%,transparent);-webkit-mask-image:linear-gradient(to bottom,transparent,#000 14%,#000 78%,transparent)}
#downloads:after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(90deg,#111313e8 0%,#111313b8 28%,transparent 62%)}
#downloads .split{display:block;max-width:390px}
#downloads .split p{max-width:340px}
#downloads .text-link{display:inline-flex;align-items:center;gap:22px;color:var(--orange);margin-top:18px;padding-bottom:12px;border-bottom:1px solid #f5a00066}
#downloads .small-note{margin-top:14px}
@media(max-width:700px){#downloads{min-height:780px;padding-bottom:350px}#downloads .presentation-background{object-position:65% bottom;object-fit:cover;opacity:.65}#downloads:after{background:linear-gradient(to bottom,#111313 0%,#111313d9 38%,transparent 75%)}}

/* Individual avatar windows and understated role controls. */
.leadership-avatars{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px;margin-top:48px;align-items:start}
.avatar-screen{position:relative;overflow:hidden;aspect-ratio:1/1;border-radius:22px;background:#111313;border:1px solid #94dffb24;box-shadow:inset 0 0 45px #9ae5ff05}
.avatar-screen:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(transparent 76%,#111313);border-radius:inherit}
.leader-avatar{height:100%;width:100%;background-image:url('assets/leadership-avatars-v2.png');background-size:300% 400%;background-position-y:0%;animation:avatar-welcome 8s steps(1,end) infinite;animation-play-state:paused}
.avatar-0{background-position-x:0%;animation-delay:-1s}.avatar-1{background-position-x:50%;animation-delay:-3.6s}.avatar-2{background-position-x:100%;animation-delay:-6s}
.avatars-visible .leader-avatar{animation-play-state:running}
@keyframes avatar-welcome{0%,40%,100%{background-position-y:0%}45%{background-position-y:33.333333%}51%,58%{background-position-y:66.666667%}64%,70%{background-position-y:100%}76%{background-position-y:0%}}
.leader-role{display:block;position:relative;margin:22px auto 0;padding:0 0 12px;font-size:17px;font-weight:400;color:#a8afad;line-height:1.5;text-align:center;transition:color .25s}
.leader-role:after{content:"";position:absolute;bottom:0;left:0;right:0;height:1px;background:#8dddff;transform:scaleX(.24);opacity:.4;transition:transform .3s,opacity .3s}
.leader-role:hover,.leader-role:focus-visible,.is-open .leader-role{color:#9ae5ff}.leader-role:hover:after,.is-open .leader-role:after{transform:scaleX(1);opacity:1}
.leader-responsibility{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows .45s ease,opacity .35s ease,margin .45s;margin-top:0}
.leader-responsibility>div{overflow:hidden;border-radius:14px;background:#12415570;box-shadow:inset 0 0 0 1px #8dddff26}
.leader-responsibility p{margin:0;padding:20px 22px;color:#b9dfea;font-size:15px;line-height:1.8}
.is-open .leader-responsibility{grid-template-rows:1fr;opacity:1;margin-top:18px}
@media(max-width:700px){.leadership-avatars{grid-template-columns:1fr;gap:38px;max-width:390px;margin-left:auto;margin-right:auto}#leadership h2{font-size:34px}.leader-role{font-size:18px}}
@media(prefers-reduced-motion:reduce){.leader-avatar{animation:none}.leader-responsibility{transition:none}}

/* Blend the greeting poses instead of jumping between sprite frames. */
.leader-avatar{position:relative;background-image:none;animation:none}
.avatar-frame{position:absolute;inset:0;background-image:url('assets/leadership-avatars-v2.png');background-size:300% 400%;background-position-x:0%;opacity:0;animation:avatar-pose 8s ease-in-out infinite;animation-play-state:paused}
.avatar-1 .avatar-frame{background-position-x:50%}.avatar-2 .avatar-frame{background-position-x:100%}
.frame-0{background-position-y:0%;opacity:1;animation-name:avatar-rest}
.frame-1{background-position-y:33.333333%;animation-name:avatar-begin}
.frame-2{background-position-y:66.666667%;animation-name:avatar-peak}
.frame-3{background-position-y:100%;animation-name:avatar-return}
.avatar-0 .avatar-frame{animation-delay:-1s}.avatar-1 .avatar-frame{animation-delay:-3.6s}.avatar-2 .avatar-frame{animation-delay:-6s}
.avatars-visible .avatar-frame{animation-play-state:running}
@keyframes avatar-rest{0%,38%,82%,100%{opacity:1}46%,74%{opacity:0}}
@keyframes avatar-begin{0%,38%,58%,100%{opacity:0}46%,50%{opacity:1}}
@keyframes avatar-peak{0%,50%,72%,100%{opacity:0}58%,64%{opacity:1}}
@keyframes avatar-return{0%,64%,86%,100%{opacity:0}72%,78%{opacity:1}}
@media(prefers-reduced-motion:reduce){.avatar-frame{animation:none;opacity:0}.avatar-frame.frame-0{opacity:1}}

/* Selected leadership role follows the orange active-menu treatment. */
.is-open .leader-role{color:var(--orange)}
.is-open .leader-role:after{background:var(--orange)}

/* Plain role descriptions; presentation download belongs to Dubai. */
.leader-responsibility>div{background:none;box-shadow:none;border-radius:0}
.leader-responsibility p{color:#efefea;padding:0 8px;text-align:center}
#about .dubai-download{display:inline-flex;align-items:center;gap:22px;margin-top:18px;padding-bottom:12px;border-bottom:1px solid #f5a00066;color:var(--orange)}
@media(max-width:550px){#about .about-image{height:490px}#about .dubai-download{font-size:14px}}

/* Balance each role summary across three short lines. */
.leader-responsibility p{font-size:15px;padding:0;line-height:1.85}

/* Dubai closes the page with the final invitation. */
#about .about-image h2.dubai-closing-title{max-width:none;font-size:clamp(24px,3vw,44px);line-height:1.4}
.dubai-closing-title>span,.dubai-closing-title>em{display:block}
.dubai-closing-title>span{color:#efefea}
.dubai-closing-title>em{margin-top:10px;color:var(--orange)}
#about .about-image>div{right:25px}
@media(min-width:900px){.dubai-closing-title>span{white-space:nowrap}}

/* Smaller portraits and independently expanded contact details. */
.avatar-screen{display:block;width:78%;margin:0 auto;padding:0;color:inherit}
.leader-contact{display:grid;gap:12px;margin:22px auto 0;width:max-content;max-width:100%;text-align:left}
.leader-contact>div{display:flex;align-items:center;gap:12px;color:#a8afad;font-size:15px}
.leader-contact svg{width:20px;height:20px;flex:none;fill:none;stroke:#9ae5ff;stroke-width:1.3;stroke-linecap:round;stroke-linejoin:round}

/* Photograph fills the Dubai section, with an extended dissolving right edge. */
#about{position:relative;isolation:isolate;overflow:hidden}
#about .section-top{position:relative;z-index:2}
#about .about-image{position:static;overflow:visible}
#about .about-image img{position:absolute;top:0;left:max(7%,calc((100% - 1548px)/2));width:min(86%,1548px);height:100%;object-fit:cover;object-position:center;opacity:.85;z-index:-2;mask-image:linear-gradient(to right,transparent 0%,#000 24%,#000 68%,rgba(0,0,0,.7) 78%,rgba(0,0,0,.2) 88%,transparent 96%,transparent 100%);-webkit-mask-image:linear-gradient(to right,transparent 0%,#000 24%,#000 68%,rgba(0,0,0,.7) 78%,rgba(0,0,0,.2) 88%,transparent 96%,transparent 100%)}
#about .about-image:after{inset:0;z-index:-1;background:linear-gradient(90deg,#111313cc,transparent 72%);pointer-events:none}
#about .about-image>div{top:128px;left:calc(max(7%,(100% - 1548px)/2) + 35px);right:max(7%,calc((100% - 1548px)/2))}
@media(max-width:700px){#about .about-image img{left:0;width:100%;object-position:65% center;mask-image:linear-gradient(to right,transparent,#000 20%,#000 80%,transparent);-webkit-mask-image:linear-gradient(to right,transparent,#000 20%,#000 80%,transparent)}#about .about-image>div{top:116px;left:7%;right:7%}}

/* Section boundaries span the viewport, including the footer. */
main>.section{max-width:none;width:100%;margin-left:0;margin-right:0;padding-left:max(7%,calc((100% - 1548px)/2));padding-right:max(7%,calc((100% - 1548px)/2))}
body>footer{margin-left:0;margin-right:0;padding-left:max(7%,calc((100% - 1548px)/2));padding-right:max(7%,calc((100% - 1548px)/2))}

#products .product-section-title{white-space:nowrap}
@media(max-width:650px){#products .product-section-title{white-space:normal}}

#approach .supply-section-title{white-space:nowrap}
@media(max-width:650px){#approach .supply-section-title{white-space:normal}}

/* Keep the specification column independent of the single-line heading. */
#products .split{grid-template-columns:minmax(0,1fr) minmax(0,1.13fr)}
#products .split>div{min-width:0}
#products .product-section-title{width:max-content;max-width:none}
@media(max-width:900px){#products .split{grid-template-columns:minmax(0,1fr)}}
@media(max-width:650px){#products .product-section-title{width:auto;max-width:100%}}

/* Raise the supply animation by approximately three centimetres. */
#approach .scene-panel{margin-top:-152px}

/* Tighten the space below the raised supply scene. */
#approach .metrics{position:relative;top:-38px}
#approach .scenario-assumptions{position:relative;top:-38px}

/* Give both map filter groups more breathing room. */
.globe-filter-row{gap:56px}
.globe-filter-row>.globe-product-groups,.globe-filter-row>div:first-child{gap:24px}
@media(max-width:800px){.globe-filter-row{gap:28px}.globe-filter-row>.globe-product-groups,.globe-filter-row>div:first-child{gap:16px}}
@media(max-width:600px){.globe-filter-row{gap:18px}.globe-filter-row>.globe-product-groups,.globe-filter-row>div:first-child{gap:10px}}

/* Bring the brand closer to the first navigation item. */
@media(min-width:1100px){header>a:first-child{transform:translateX(55px)}}

/* Keep the animation state control out of the header layout. */
#motion[hidden]{display:none!important}
header{justify-content:flex-start;gap:48px}
@media(min-width:1100px){header>a:first-child{transform:none}header{padding-left:calc(5% + 55px)}}
@media(max-width:1099px){header{justify-content:space-between;gap:20px}}

/* Remove the globe instruction and clock caption. */
.globe-controls>span{display:none!important}

.hero-copy>.hero-section-number{font-size:10px;letter-spacing:2.3px;font-weight:600;text-transform:uppercase;margin-bottom:18px}

/* Centre the logo and navigation as a single header group. */
@media(min-width:1100px){header{justify-content:center;padding-left:5%;padding-right:5%;gap:48px}header>a:first-child{transform:none}}

/* Match the two navigation rows by their left and right edges. */
.globe-filter-row{justify-content:space-between}

/* Align the footer brand with the header brand. */
body>footer{padding-left:var(--brand-left,7%)}
body>footer>img{width:144px;height:auto;flex:none}

/* Keep the footer details close to the brand. */
body>footer{justify-content:flex-start;gap:30px}
@media(max-width:700px){body>footer{gap:18px}}

/* Single-line hero heading follows the section text alignment. */
#home .hero-copy{left:max(7%,calc((100% - 1548px)/2));transform:none;width:calc(100% - 14%);max-width:1548px;text-align:left}
#home .hero-copy h1{white-space:nowrap;font-size:clamp(30px,3.15vw,58px)}
#home .hero-copy>.eyebrow{text-align:left;margin-left:0}
@media(max-width:850px){#home .hero-copy h1{white-space:normal}}

/* Header and footer logos align with all section headings. */
header{justify-content:flex-start;padding-left:max(7%,calc((100% - 1548px)/2));padding-right:7%;gap:48px}
header>a:first-child{transform:none}
body>footer{padding-left:max(7%,calc((100% - 1548px)/2))}
@media(max-width:1099px){header{gap:24px}}

#home .hero-copy h1 em{font-family:inherit;font-size:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit}

/* Match the opening section's top spacing to the following sections. */
#home .hero-copy{top:210px}
@media(min-width:951px){#home .network-wrap{top:518px}#home{height:1346px;min-height:1346px;max-height:1346px}}
@media(max-width:950px){#home .network-wrap{top:573px}#home{min-height:1356px}}

/* Opening hierarchy follows the section label, title and body spacing. */
#home .hero-copy>.hero-section-number{margin-bottom:55px}
#home .hero-copy h1{margin:0;line-height:1.13}
#home .hero-copy .hero-description{color:#efefea;font-size:15px;font-weight:400;line-height:1.9;letter-spacing:0;text-transform:none;text-align:left;margin:22px 0 0;max-width:100%;width:auto}

/* Extend the opening section below the existing globe stage. */
#home .network-wrap{bottom:0}

/* Two relaxed, left-aligned map navigation rows. */
.globe-filter-row{top:24px;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:18px}
.globe-filter-row>.globe-product-groups,.globe-filter-row>div:first-child{gap:30px;justify-content:flex-start}
@media(max-width:600px){.globe-filter-row{top:24px;gap:14px}.globe-filter-row>.globe-product-groups,.globe-filter-row>div:first-child{gap:18px}}

/* Keep equal spacing after putting products before continents. */
.globe-filter-row>div:not(.globe-ranking-control){gap:30px;justify-content:flex-start}
@media(max-width:600px){.globe-filter-row>div:not(.globe-ranking-control){gap:18px}}

/* Both product and continent groups remain horizontal rows. */
.globe-filter-row>div:not(.globe-ranking-control){position:static;inset:auto;transform:none;display:flex;flex-direction:row;align-items:center;width:auto;gap:30px;justify-content:flex-start}
@media(max-width:600px){.globe-filter-row>div:not(.globe-ranking-control){gap:18px}}

/* Products on the left, continents on the right at the same height. */
.globe-filter-row{flex-direction:row;align-items:center;justify-content:space-between;gap:48px}
@media(max-width:700px){.globe-filter-row{gap:24px;flex-wrap:wrap}.globe-filter-row>div:not(.globe-ranking-control){gap:16px}}
