/* Consistent surfaces, clear hierarchy and motion that follows the visitor. */
:root{--ease-out:cubic-bezier(.22,1,.36,1);--surface-border:#dee5ef;--soft-shadow:0 18px 50px #1023420c}
body{background:#fff}
h1,h2,h3{text-wrap:balance}
p{text-wrap:pretty}
.wrap{max-width:1400px}
.site-header{background:#fffffff2;border-bottom-color:#e6ebf3;backdrop-filter:blur(20px)}
.site-header.is-scrolled{background:#fffffff0;box-shadow:0 8px 32px #112b4e0a}
.header-inner{height:88px}
.brand-symbol{font-size:54px}
.brand-name{font-size:10px}
nav{font-size:13px;gap:24px}
.nav-cta{border-radius:100px;padding:12px 18px;gap:20px;transition:background .25s,box-shadow .25s}
.nav-cta:hover{box-shadow:0 6px 20px #2563eb20}
.hero{position:relative;isolation:isolate;padding-block:55px 65px;gap:60px;min-height:720px}
.hero:before{content:'';position:absolute;inset:0 -40px;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 15% 8%,#eaf2ff 0,transparent 60%)}
.hero-copy>.eyebrow{padding:8px 12px;border:1px solid #d4e2f8;background:#f4f8ff;border-radius:100px;color:#264774;font-size:10px;letter-spacing:.1em}
.hero h1{font-size:clamp(48px,5.15vw,76px);line-height:1.05;letter-spacing:-.058em;margin-top:26px}
.hero-intro{font-size:18px;line-height:1.75;color:#596579;max-width:505px}
.hero-services{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;max-width:470px;gap:10px;counter-reset:service;margin-top:32px}
.hero-services a{position:relative;counter-increment:service;border-radius:10px;padding:13px 14px;gap:10px;background:#ffffffb3;border-color:#dfe6f0;font-size:12px;color:#334258}
.hero-services a:before{content:'0' counter(service);font-size:9px;color:#6281b1;font-weight:650;letter-spacing:.05em}
.hero-services a>span{margin-left:auto;width:24px;height:24px;border-radius:50%;background:#edf3ff;display:grid;place-items:center;transition:background .25s,color .25s,transform .35s}
.hero-services a:hover>span{background:#2563eb;color:white;transform:rotate(45deg)}
.hero-foot{margin-top:25px;padding-top:22px;border-top:1px solid #e3e9f3;width:100%;max-width:470px}
.hero-foot p{font-size:11px;line-height:1.7}
.hero-foot .mini-mark{font-size:29px}
.hero-visual{border-radius:24px;min-height:610px;box-shadow:0 22px 60px #142a5020;outline:1px solid #11203812;outline-offset:7px}
.image-topline{left:25px;right:25px;top:25px;line-height:1.6}
.image-topline>span:first-child{padding:7px 10px;border:1px solid #ffffff38;background:#06101d40;border-radius:100px;backdrop-filter:blur(8px)}
.image-topline>span:last-child{align-self:center;font-size:8px}
.image-caption{left:22px;right:22px;bottom:22px;padding:23px;border:1px solid #ffffff2b;border-radius:17px;background:linear-gradient(120deg,#0f1c30bd,#101c3045);backdrop-filter:blur(18px);align-items:center}
.image-caption p{font-size:32px;margin-top:10px}
.image-caption a{width:48px;height:48px;background:white;color:#13213b}
.focus-strip{background:#f8faff;border-color:#e5ebf5}
.focus-strip>.wrap{padding-block:25px}
.focus-strip p{font-size:15px;gap:25px;color:#3c4b61}
.focus-strip p span{font-size:18px}
.button,.hero .button{border-radius:100px;min-height:56px;padding:10px 12px 10px 23px;gap:22px;font-size:14px;box-shadow:0 6px 18px #0e21480b;transition:background .25s,transform .35s var(--ease-out),box-shadow .35s}
.button>span{width:34px;height:34px;display:grid;place-items:center;background:#ffffff1c;border:1px solid #ffffff29;border-radius:50%;font-size:19px;flex-shrink:0}
.button:hover{box-shadow:0 10px 28px #173b7424}
.text-link{line-height:1.5}
.text-link:hover{text-decoration:none;color:#2563eb}
.text-link>span{display:inline-block}
.section-top .eyebrow{display:flex;align-items:center;gap:12px}
.section-top .eyebrow:before{content:'';width:20px;height:2px;background:currentColor;opacity:.6}
.brands-section{background:#f7f9fc;padding-bottom:25px}
.brand-rail{border-color:#e7ecf3}
.brand-logo-list img{opacity:.68;transition:opacity .3s,scale .4s var(--ease-out)}
.brand-logo-list li:hover img{opacity:1;scale:1.07}
.offering,.logistics-services article,.industrial-services article{border-radius:18px;transition:translate .45s var(--ease-out),box-shadow .45s,border-color .35s,background .35s}
.offering{box-shadow:0 6px 20px #112a4f06;border-color:var(--surface-border)}
.offering-body{padding:30px}
.offering-art{height:260px}
.offering h3{font-size:27px;letter-spacing:-.04em}
.offering-body>p,.logistics-services p,.industrial-services p{line-height:1.8}
.offering .text-link{border-color:#e3e9f2;color:#174b9e}
.offering .text-link>span{border-radius:50%;background:#edf3ff;padding:7px;font-size:18px}
.service-points{gap:10px}
.digital-section{background:#101b2c;isolation:isolate}
.digital-section:before,.industrial-section:before{content:'';position:absolute;width:700px;height:700px;right:-300px;top:-220px;border-radius:50%;background:radial-gradient(circle,#3474e02b,transparent 68%);z-index:-1;pointer-events:none}
.digital-services{display:grid;gap:15px;align-content:start}
.digital-services article{border:1px solid #324058;border-radius:16px;padding:27px;background:#ffffff03;transition:background .35s,border-color .35s,translate .35s var(--ease-out)}
.digital-services article:first-child{border-top:1px solid #324058;padding-top:27px}
.digital-services article>.index{color:#95baff;font-size:11px}
.digital-services h3{font-size:27px;letter-spacing:-.035em}
.digital-services p{font-size:16px;color:#b9c5d8}
.digital-services .service-tag{display:inline-block;margin-top:19px;color:#9dbbed}
.digital-mark{font-size:160px;opacity:.65;letter-spacing:-.085em}
.logistics-section{background:linear-gradient(140deg,#f7f9fc,#edf3fd);border-color:#e4eaf3}
.logistics-visual{border-radius:22px;box-shadow:var(--soft-shadow)}
.service-icon{border-radius:17px;background:linear-gradient(135deg,#3575ef,#1c4db9)}
.logistics-services article{box-shadow:0 6px 22px #10234205;border-color:#dfe6f2}
.shipping-journey{border:1px solid #344d73;border-radius:18px;background:linear-gradient(120deg,#10203c,#18325b)}
.industrial-section{position:relative;isolation:isolate;background:linear-gradient(145deg,#101b2d,#132641);border-top:1px solid #304764}
.industrial-section:after{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background-image:linear-gradient(#a3c2ef06 1px,transparent 1px),linear-gradient(90deg,#a3c2ef06 1px,transparent 1px);background-size:56px 56px;mask-image:linear-gradient(transparent,#000 30%,transparent)}
.industrial-copy h2{font-size:clamp(40px,4.3vw,65px)}
.supply-map{border-radius:22px;background:linear-gradient(145deg,#ffffff0c,#ffffff03);border-color:#a5c6ff33;box-shadow:0 26px 65px #060e1b26;padding:34px}
.supply-map-top{padding-bottom:24px}
.supply-map ol{gap:30px;margin-block:30px}
.supply-step{box-shadow:0 0 0 6px #8bb6ff06}
.industrial-services article{position:relative;background:linear-gradient(135deg,#ffffff08,#ffffff03);border-color:#8baad12b;overflow:hidden}
.industrial-services article:after{content:'';position:absolute;top:0;left:24px;right:24px;height:1px;background:linear-gradient(90deg,transparent,#91baff,transparent);opacity:0;transition:opacity .4s}
.industrial-services article:hover:after{opacity:1}
.industrial-card-top svg{width:42px;height:42px;background:#7cadff10;padding:8px;border-radius:10px;border:1px solid #8bb6ff26;transition:transform .4s var(--ease-out)}
.industrial-services h3{font-size:27px}
.industrial-brief{background:#ffffff04;border:1px solid #91acd12b;border-radius:14px;padding:27px 30px}
.approach-grid article{border-top:2px solid #dae4f3;padding-top:27px}
.approach-grid article>span{border:1px solid #dce6f5;background:#edf3ff;color:#2563eb;border-radius:50%}
.faq-list{display:grid;gap:12px}
.faq-list details{border:1px solid #e1e7f0;border-radius:13px;background:#f9fbfe;padding:0 22px;transition:background .3s,border-color .3s}
.faq-list details[open]{border-color:#b6cdf2;background:#f1f6ff}
.faq-list summary{padding-block:23px;font-weight:550}
.faq-list details p{padding-bottom:23px}
.contact-section{background:radial-gradient(ellipse at 10% 20%,#dceaff,transparent 60%),#f2f6fc;border-top:1px solid #dce6f4}
#enquiry-form{padding:32px;border:1px solid #dce5f2;border-radius:22px;background:#fff;box-shadow:0 16px 50px #173c7410}
input,textarea,select{border-radius:9px;border-color:#d6e0ee;background:#f9fbfe;transition:border-color .25s,box-shadow .25s,background .25s}
input:focus,textarea:focus,select:focus{background:#fff;border-color:#2563eb;box-shadow:0 0 0 4px #2563eb0d;outline:0}
#enquiry-submit{width:100%}
.form-privacy{color:#607087}
.company-contact a{font-size:27px}
.site-footer{background:#101b2d;color:white;border-top:1px solid #2c3e59}
.site-footer.wrap{width:100%;max-width:none;padding:40px max(56px,calc((100vw - 1400px)/2)) 30px}
.site-footer .brand-dot{color:#89b4ff}
.site-footer .footer-main{border-color:#334257}
.site-footer .footer-main p,.site-footer .footer-bottom,.site-footer .legal-details{color:#acbdd5}
.site-footer .back-top{color:#c2d8fc}
@keyframes logo-polish{0%,32%,100%{transform:translateY(0);color:inherit}10%{transform:translateY(-2px);color:#2563eb}20%{transform:translateY(0);color:#2563eb}}
@keyframes ambient-drift{to{transform:translate(-90px,75px) scale(1.1)}}
@keyframes step-focus{0%,12%,44%,100%{border-color:#608cc9;box-shadow:0 0 0 6px #8bb6ff06}22%,32%{border-color:#c4dcff;box-shadow:0 0 0 7px #8bb6ff18}}
@keyframes menu-enter{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}
@keyframes answer-enter{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:no-preference){
 .animated-logo .logo-letter{animation:logo-polish 8s ease-in-out infinite}
 .animated-logo .logo-letter:nth-child(2){animation-delay:.15s}
 .animated-logo .logo-letter:nth-child(3){animation-delay:.3s}
 .digital-section:before,.industrial-section:before{animation:ambient-drift 14s ease-in-out infinite alternate}
 .supply-step,.journey-node{animation:step-focus 6s ease-in-out infinite}
 li:nth-child(2)>.supply-step,li:nth-child(2)>.journey-node{animation-delay:1.5s}
 li:nth-child(3)>.supply-step,li:nth-child(3)>.journey-node{animation-delay:3s}
 .faq-list details[open] p{animation:answer-enter .35s var(--ease-out)}
 .reveal-ready{transform:translateY(28px);transition-property:opacity,transform,translate,box-shadow,border-color,background;transition-duration:.85s,.85s,.4s,.4s,.3s,.3s;transition-delay:var(--reveal-delay,0ms),var(--reveal-delay,0ms),0s,0s,0s,0s;transition-timing-function:var(--ease-out)}
 .reveal-ready.is-visible{transform:none}
 .motion-zone:not(.motion-in-view) .brand-track,.motion-zone:not(.motion-in-view) .digital-mark,.motion-zone:not(.motion-in-view) .supply-step,.motion-zone:not(.motion-in-view) .journey-node,.motion-zone:not(.motion-in-view) .service-icon,.motion-zone:not(.motion-in-view) .logo-letter,.motion-zone:not(.motion-in-view) .brand-dot,.motion-zone:not(.motion-in-view) .supply-map ol:after,.motion-zone:not(.motion-in-view).shipping-journey ol:after,.motion-zone:not(.motion-in-view):before{animation-play-state:paused}
 .motion-paused *,.motion-paused *:before,.motion-paused *:after{animation-play-state:paused!important}
}
@media(hover:hover) and (prefers-reduced-motion:no-preference){
 .offering:hover,.logistics-services article:hover,.industrial-services article:hover{translate:0 -6px;box-shadow:0 22px 48px #132f5914}
 .digital-services article:hover{translate:5px 0;background:#ffffff07}
 .industrial-services article:hover .industrial-card-top svg{transform:rotate(-5deg) scale(1.08)}
}
@media(max-width:1200px){.hero{gap:35px}.hero-visual{min-height:590px}.hero h1{font-size:clamp(45px,5.2vw,63px)}.hero-intro{font-size:17px}.offering-body{padding:24px}.offering-art{height:220px}.focus-strip p{font-size:13px;gap:18px}.digital-services article{padding:23px}.digital-services article:first-child{padding-top:23px}.digital-services h3{font-size:25px}.digital-services p{font-size:15px}}
@media(max-width:1000px){
 .site-footer.wrap{padding-inline:32px}
 .header-inner{height:82px}.brand-symbol{font-size:49px}.brand-name{font-size:9px}
 .menu-toggle{border-radius:50%;background:#f5f8fc;border-color:#e3e9f2;align-items:center;padding:0;width:44px;height:44px}
 .menu-toggle>span{transition:transform .3s var(--ease-out);height:1px;width:18px}
 .menu-toggle[aria-expanded=true]>span:first-child{transform:translateY(3.5px) rotate(45deg)}
 .menu-toggle[aria-expanded=true]>span:last-child{transform:translateY(-3.5px) rotate(-45deg)}
 nav{top:81px;left:16px;right:16px;padding:14px;border:1px solid #dce5f2;border-radius:0 0 20px 20px;box-shadow:0 20px 45px #122b4e20;max-height:calc(100dvh - 100px);overflow-y:auto}
 nav>a{border-radius:8px;font-size:14px!important}nav>a:not(.nav-cta):hover,nav>a.is-current:not(.nav-cta){background:#eff5ff}nav>a:not(.nav-cta):after{display:none}.nav-cta{border-radius:10px}
 .hero{gap:28px}.hero h1{font-size:48px}.hero-visual{min-height:560px}.hero-services a{font-size:11px;padding:10px}.hero-services a:before{display:none}
 .image-caption{padding:20px;left:18px;right:18px;bottom:18px}.image-caption p{font-size:28px}
 .offering h3{font-size:24px}.offering-body{padding:21px}.industrial-intro{gap:35px}.industrial-copy h2{font-size:43px}.supply-map{padding:26px}
}
@media(max-width:1000px) and (prefers-reduced-motion:no-preference){nav.is-open{animation:menu-enter .3s var(--ease-out)}nav.is-open>a{animation:menu-enter .4s var(--ease-out) both}nav.is-open>a:nth-child(2){animation-delay:30ms}nav.is-open>a:nth-child(3){animation-delay:60ms}nav.is-open>a:nth-child(4){animation-delay:90ms}nav.is-open>a:nth-child(5){animation-delay:120ms}nav.is-open>a:nth-child(6){animation-delay:150ms}}
@media(max-width:700px){
 .site-footer.wrap{padding-inline:20px}
 html{scroll-padding-top:102px}.hero{padding-block:32px 42px;gap:38px}.hero:before{inset:0 -15px}.hero-copy{padding-top:8px}.hero-copy>.eyebrow{font-size:9px;padding:8px 10px}
 .hero h1{font-size:clamp(42px,10.6vw,62px);line-height:1.06;margin-top:25px}.hero-intro{font-size:17px;line-height:1.75;margin-top:23px}
 .hero-actions{margin-top:27px;gap:18px}.hero .button{font-size:13px;padding-left:19px;gap:16px}.hero-services{margin-top:27px;gap:10px}.hero-services a{font-size:12px;padding:12px}.hero-services a:before{display:block}.hero-foot{margin-top:23px}
 .hero-visual{min-height:410px;border-radius:21px;outline-offset:5px}.image-caption{padding:19px;left:17px;right:17px;bottom:17px;border-radius:14px}.image-caption p{font-size:28px}.image-caption a{width:42px;height:42px}.image-topline{left:20px;top:20px}
 .focus-strip>.wrap{padding-block:20px}.focus-strip p{font-size:11px;gap:9px;line-height:1.8;flex-wrap:wrap}.focus-strip p span{font-size:13px}
 .section,.logistics-section,.industrial-section{padding-block:76px}.brands-section{padding-top:60px}.brands-heading h2{font-size:37px}
 .offering-grid{gap:25px}.offering-art{height:auto;aspect-ratio:3/2}.offering-body{padding:25px}.offering h3{font-size:27px}.offering .text-link{font-size:14px}
 .digital-grid{gap:35px}.digital-mark{font-size:95px;margin-top:35px}.digital-services article,.digital-services article:first-child{padding:24px 20px;gap:14px}.digital-services h3{font-size:25px}.digital-services p{font-size:15px}.digital-services .service-arrow{font-size:20px}
 .industrial-copy h2{font-size:clamp(38px,9.5vw,54px)}.industrial-intro{gap:32px}.industrial-services{gap:16px}.industrial-services article{padding:26px}.supply-map{padding:26px 23px}.industrial-brief{padding:25px}.industrial-services h3{font-size:27px}
 .faq-list details{padding-inline:19px}.faq-list summary{font-size:16px}.questions-section{gap:30px}
 #enquiry-form{padding:25px 21px;border-radius:18px}.contact-grid{gap:33px}.company-contact a{font-size:26px}.site-footer .footer-main p{max-width:150px}
}
@media(max-width:380px){.hero h1{font-size:39px}.hero-services a{font-size:11px;gap:7px}.hero-services a:before{display:none}.hero .button{font-size:12px}.brand-name{font-size:8px}.hero-visual{min-height:380px}.industrial-copy h2{font-size:36px}}
@media(prefers-reduced-motion:reduce){.offering:hover,.logistics-services article:hover,.industrial-services article:hover,.digital-services article:hover{translate:none}.hero-services a:hover>span,.industrial-services article:hover .industrial-card-top svg{transform:none}.brand-logo-list li:hover img{scale:1}}
