@font-face{font-family:Newsreader;font-style:normal;font-weight:300 400;font-display:swap;src:url(/fonts/newsreader-latin.woff2)format("woff2")}@font-face{font-family:Newsreader;font-style:italic;font-weight:300;font-display:swap;src:url(/fonts/newsreader-italic-latin.woff2)format("woff2")}@font-face{font-family:Archivo;font-style:normal;font-weight:400 600;font-display:swap;src:url(/fonts/archivo-latin.woff2)format("woff2")}@font-face{font-family:Martian Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/martian-mono-latin.woff2)format("woff2")}:root{--paper:#f2efe7;--paper-deep:#e8e3d7;--ink:#0b1f3a;--ink-soft:#3c4c61;--navy:#12336b;--deep:#071629;--deep-2:#0b1f3a;--blue:#3275be;--blue-ink:#1f5a9c;--shoal:#d3e1ea;--orange:#ff8f29;--orange-ink:#a84a00;--dusk:#ffb066;--rule:#0b1f3a24;--rule-strong:#0b1f3a4d;--serif:"Newsreader", "Iowan Old Style", Georgia, serif;--sans:"Archivo", "Helvetica Neue", Arial, sans-serif;--mono:"Martian Mono", ui-monospace, "SF Mono", Menlo, monospace;--side:max(clamp(20px, 5.5vw, 88px), calc((100vw - 1320px) / 2));--ease:cubic-bezier(.16, 1, .3, 1);--ease-curtain:cubic-bezier(.76, 0, .24, 1)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:84px}body{background:var(--paper);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-size:17px;line-height:1.6}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;padding:0}a,button{-webkit-tap-highlight-color:transparent}:focus-visible{outline:2px solid var(--orange);outline-offset:4px}main:focus{outline:none}img,video{max-width:100%;height:auto;display:block}h1,h2,h3{font-size:inherit;font-weight:inherit}h1,h2,h3,p,ul,ol,dl,dd,figure{margin:0}ul,ol{padding:0;list-style:none}::selection{background:var(--orange);color:var(--ink)}.wrap{margin-inline:var(--side);position:relative}.skip-link{z-index:200;background:var(--orange);color:var(--ink);padding:14px 18px;font-weight:600;position:fixed;top:-100px;left:16px}.skip-link:focus{top:16px}.display{font-family:var(--serif);letter-spacing:-.028em;font-weight:300;line-height:.98}.display em,.motion-line-accent>span{color:var(--accent-text,var(--blue));font-style:italic}.section-title{font-size:clamp(2.7rem,5.6vw,5.9rem)}.lead{color:var(--ink);font-size:clamp(1.15rem,1.5vw,1.4rem);line-height:1.45}.btn{min-height:54px;font:600 13px/1 var(--sans);letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;border:1px solid #0000;border-radius:2px;justify-content:space-between;align-items:center;gap:22px;padding:0 20px 0 24px;transition:background .3s,color .3s,border-color .3s;display:inline-flex}.btn svg,.text-link svg{transition:transform .4s var(--ease);flex:none}.btn:hover svg,.text-link:hover svg{transform:translate(3px,-3px)}.btn-primary{background:var(--orange);color:var(--ink)}.btn-primary:hover{background:var(--paper);color:var(--ink)}.btn-ghost{color:#fff;border-color:#ffffff80}.btn-ghost:hover{background:#ffffff1a;border-color:#fff}.text-link{transition:background-size .5s var(--ease);background:linear-gradient(currentColor,currentColor) 0 100%/100% 1px no-repeat;align-items:center;gap:10px;padding-bottom:6px;font-size:15px;font-weight:600;display:inline-flex}.text-link:hover{background-size:30% 1px}.neatline{--c:currentColor;--band:5px;--tick:44px;border:1px solid var(--c);pointer-events:none;position:absolute;inset:12px}.neatline:before{content:"";opacity:.85;background:repeating-linear-gradient(90deg, var(--c) 0 var(--tick), transparent 0 calc(var(--tick) * 2)) top / 100% var(--band) no-repeat, repeating-linear-gradient(90deg, var(--c) 0 var(--tick), transparent 0 calc(var(--tick) * 2)) bottom / 100% var(--band) no-repeat, repeating-linear-gradient(180deg, var(--c) 0 var(--tick), transparent 0 calc(var(--tick) * 2)) left / var(--band) 100% no-repeat, repeating-linear-gradient(180deg, var(--c) 0 var(--tick), transparent 0 calc(var(--tick) * 2)) right / var(--band) 100% no-repeat;position:absolute;inset:0}.neatline:after{content:"";inset:var(--band);border:1px solid var(--c);position:absolute}.waypoint{font:400 11px/1.4 var(--mono);letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:16px;display:flex;position:relative}.wp-index{color:var(--orange-ink)}.wp-name{font-weight:400}.wp-rule{background:var(--rule-strong);flex:1;height:1px}.wp-note{color:var(--ink-soft);text-align:right}.wp-marker{display:none}.passage{position:relative}.rail{display:none}@media (min-width:1100px){.rail{--progress:0;top:0;bottom:0;left:calc(var(--side) / 2);z-index:4;pointer-events:none;width:0;display:block;position:absolute}.rail:before{content:"";background:repeating-linear-gradient(#536e8c8c 0 6px,#0000 0 12px);width:1px;position:absolute;inset:0 auto 0 -.5px}.rail-run{background:var(--orange);width:2px;height:100%;transform:scaleY(var(--progress));transform-origin:top;position:absolute;top:0;left:-1px}.rail-ship{top:calc(var(--progress) * 100%);border:2px solid var(--orange);background:var(--paper);border-radius:50%;width:15px;height:15px;position:absolute;left:0;transform:translate(-50%,-50%);box-shadow:0 0 0 5px #ff8f292e}.rail-ship:after{content:"";background:var(--orange);width:2px;height:26px;position:absolute;top:100%;left:50%;transform:translate(-50%)}.wp-marker{top:50%;left:calc(var(--side) / -2);z-index:5;border:1.5px solid var(--ink);background:var(--paper);border-radius:50%;width:13px;height:13px;transition:background .6s .3s,border-color .6s .3s;display:block;position:absolute;transform:translate(-50%,-50%)rotate(45deg)}.wp-marker:after{content:"";background:var(--ink);border-radius:50%;position:absolute;inset:3px}.waypoint.in-view .wp-marker{border-color:var(--orange)}.waypoint.in-view .wp-marker:after{background:var(--orange)}}.ticker{background:var(--deep-2);color:#e6ecf2;border-top:1px solid #ffffff14;grid-template-columns:auto 1fr;display:grid;position:relative}.ticker-title{padding:28px 36px 28px var(--side);font:400 11px/1.6 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:#ffffffb3;border-right:1px solid #ffffff1f;grid-row:span 2;align-items:center;display:flex}.ticker-specialisms{border-bottom:1px solid #ffffff1f;grid-template-columns:repeat(4,1fr);display:grid}.ticker-specialisms li{align-items:center;gap:12px;padding:22px 28px;font-size:15px;font-weight:500;display:flex}.ticker-specialisms li+li{border-left:1px solid #ffffff1f}.ticker-specialisms li:before{content:"";background:var(--orange);flex:none;width:7px;height:7px;transform:rotate(45deg)}.ticker-track{padding:14px 0;display:flex;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000,#000 8% 92%,#0000);mask-image:linear-gradient(90deg,#0000,#000 8% 92%,#0000)}.ticker-run{flex:none;animation:110s linear infinite ticker;display:flex}.ticker-run span{font:italic 300 19px/1.2 var(--serif);color:#ffffff9e;white-space:nowrap;align-items:center;gap:26px;padding-right:26px;display:flex}.ticker-run span:after{content:"";border:1px solid var(--orange);width:5px;height:5px;transform:rotate(45deg)}@keyframes ticker{to{transform:translate(-100%)}}.company{padding-block:clamp(96px,12vw,176px) clamp(88px,10vw,150px);position:relative}.company-grid{grid-template-columns:minmax(0,7fr) minmax(0,5fr);align-items:end;gap:clamp(32px,6vw,104px);margin-top:clamp(48px,6vw,88px);display:grid}.company-copy{color:var(--ink-soft);justify-items:start;gap:22px;display:grid}.company-copy .text-link{color:var(--ink);margin-top:10px}.chart-plate{--vessel:clamp(92px, 10.5vw, 158px);--x:24%;aspect-ratio:16/7;isolation:isolate;color:var(--ink);background:radial-gradient(at 14% 30%,#c4d8e6 0%,#0000 55%),linear-gradient(100deg,#d3e1ea 0%,#e3ebee 40%,#eef0ea 100%);margin-top:clamp(56px,8vw,112px);position:relative;overflow:hidden}.plate-contours{z-index:-1;background:#12336b4d;position:absolute;inset:0;-webkit-mask:url(/images/contours.svg) 50%/cover;mask:url(/images/contours.svg) 50%/cover}.plate-rings{z-index:-1;background:repeating-radial-gradient(circle at var(--x) 50%, transparent 0 119px, #12336b38 119px 120px);position:absolute;inset:0}.plate-track{width:var(--x);background:var(--ink);opacity:.55;height:2px;position:absolute;top:50%;left:0}.plate-course{top:50%;left:var(--x);border-top:2px dashed var(--orange);height:0;position:absolute;right:10%}.plate-course:after{content:"";border:2px solid var(--orange);background:#ff8f2926;border-radius:50%;width:20px;height:20px;position:absolute;top:-11px;right:-10px}.plate-course span{font:400 10px/1 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--orange-ink);white-space:nowrap;position:absolute;bottom:12px;right:0}.plate-vessel{top:50%;left:var(--x);width:var(--vessel);filter:drop-shadow(-18px 10px 18px #07162947);height:auto;position:absolute;translate:-50% -50%;rotate:90deg}.plate-label{font:400 10px/1 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);position:absolute;top:28px;left:30px}.chart-plate figcaption{pointer-events:none;justify-content:space-between;align-items:end;gap:24px;display:flex;position:absolute;inset:auto 28px 28px 30px}.plate-statement{font-size:clamp(1.9rem,3.2vw,3.3rem);line-height:1}.plate-fix{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border:1px solid var(--rule-strong);background:#f2efe7eb;grid-template-columns:repeat(2,minmax(0,1fr));width:min(440px,46%);display:grid}.plate-fix div{padding:14px 16px}.plate-fix div:nth-child(odd){border-right:1px solid var(--rule)}.plate-fix div:nth-child(-n+2){border-bottom:1px solid var(--rule)}.plate-fix dt{font:400 9.5px/1.4 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--orange-ink)}.plate-fix dd{margin-top:4px;font-size:14px;font-weight:500;line-height:1.35}@supports (animation-timeline:view()){@media (prefers-reduced-motion:no-preference){.plate-vessel{animation:linear both underway;animation-timeline:view();animation-range:entry 10% exit 90%}}}@keyframes underway{0%{translate:-120% -50%}to{translate:30% -50%}}.expertise{border-top:1px solid var(--rule);background:#f8f6f1;padding-block:clamp(80px,9vw,140px) clamp(96px,10vw,160px);position:relative}.expertise-head{grid-template-columns:minmax(0,7fr) minmax(0,5fr);align-items:end;gap:clamp(32px,6vw,104px);margin-top:clamp(48px,6vw,88px);display:grid}.expertise-intro{gap:28px;display:grid}.area-nav{border-top:1px solid var(--rule-strong);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.area-nav a{border-bottom:1px solid var(--rule);align-items:baseline;gap:12px;padding:13px 0;font-size:15px;font-weight:500;transition:color .25s;display:flex}.area-nav a:hover{color:var(--blue-ink)}.area-nav span{font:400 10px var(--mono);color:var(--orange-ink)}.approach{--accent-text:var(--dusk);isolation:isolate;background:var(--deep);color:#e6ecf2;padding-block:clamp(96px,11vw,170px);position:relative;overflow:hidden}.approach .waypoint{color:#ffffffd9}.approach .wp-index{color:var(--orange)}.approach .wp-rule{background:#ffffff40}.approach .wp-note{color:#fff9}.approach .wp-marker{background:var(--deep);border-color:#fff}.approach .wp-marker:after{background:#fff}.approach-contours{z-index:-1;background:#78a0cd21;position:absolute;inset:0;-webkit-mask:url(/images/contours.svg) 50%/cover;mask:url(/images/contours.svg) 50%/cover}.approach-rose{z-index:-1;color:#ffffff12;width:min(62vw,860px);animation:240s linear infinite rose-drift;position:absolute;top:50%;right:max(-22vw,-360px);translate:0 -50%}.approach-rose .rose-hub{fill:currentColor}@keyframes rose-drift{to{rotate:360deg}}.approach-head{grid-template-columns:minmax(0,7fr) minmax(0,4fr);align-items:end;gap:clamp(32px,6vw,104px);margin-top:clamp(48px,6vw,88px);display:grid}.approach .lead{color:#e6ecf2cc}.values{counter-reset:value;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(20px,2.4vw,40px);margin-top:clamp(72px,9vw,136px);display:grid}.value{border-top:1px solid #ffffff38;align-content:start;gap:16px;padding-top:26px;display:grid;position:relative}.value:before{content:"";background:var(--orange);transform-origin:0;width:100%;height:2px;transition:transform 1.2s var(--ease) calc(var(--reveal-delay,0s) + .3s);position:absolute;top:-1px;left:0}.value-index{font:400 11px/1 var(--mono);color:var(--orange)}.value h3{font:300 clamp(1.7rem, 2.3vw, 2.3rem) / 1.05 var(--serif);letter-spacing:-.02em}.value p{color:#e6ecf2b8;max-width:34ch;font-size:15.5px;line-height:1.6}.contact{padding-block:clamp(96px,11vw,170px);position:relative}.contact-grid{grid-template-columns:minmax(0,7fr) minmax(0,4fr);align-items:stretch;gap:clamp(40px,6vw,104px);display:grid}.contact-copy{flex-direction:column;display:flex}.contact-title{margin-top:clamp(48px,6vw,88px);font-size:clamp(3rem,6.6vw,7.2rem);line-height:.95}.contact-actions{gap:32px;margin-top:auto;padding-top:clamp(48px,6vw,80px);display:grid}.contact-email{border-bottom:1px solid var(--ink);font:300 clamp(1.8rem, 3.6vw, 3.4rem) / 1 var(--serif);letter-spacing:-.02em;justify-content:space-between;align-items:center;gap:20px;padding-bottom:18px;transition:color .3s;display:flex}.contact-email:hover{color:var(--blue-ink)}.contact-email svg{transition:transform .4s var(--ease);flex:none}.contact-email:hover svg{transform:translate(4px,-4px)}.contact-row{flex-wrap:wrap;align-items:center;gap:18px 36px;display:flex}.contact-row .btn-primary:hover{background:var(--ink);color:var(--paper)}.contact-visual{color:#fff;background:var(--deep);min-height:560px;position:relative;overflow:hidden}.contact-visual img{object-fit:cover;object-position:45% 50%;width:100%;height:100%;position:absolute;inset:0}.contact-visual .neatline{--c:#fff9}.contact-visual figcaption{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#071629b8;gap:6px;padding:14px 18px;display:grid;position:absolute;bottom:34px;left:34px}.contact-visual figcaption span{font:400 10px/1 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--orange)}.contact-visual figcaption strong{font:400 19px/1.2 var(--serif)}@media (max-width:1100px){.ticker{grid-template-columns:1fr}.ticker-title{padding:22px var(--side) 0;border-right:0;grid-row:auto}.ticker-title br{display:none}.ticker-specialisms{padding-inline:calc(var(--side) - 14px);grid-template-columns:repeat(2,1fr)}.ticker-specialisms li{padding:14px}.ticker-specialisms li+li{border-left:0}.values{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:56px}}@media (max-width:960px){.company-grid,.expertise-head,.approach-head,.contact-grid{grid-template-columns:1fr}.chart-plate{--vessel:clamp(78px, 21vw, 124px);--canvas:min(112vw, 640px);--y:calc(var(--canvas) * .6);aspect-ratio:auto;padding-top:var(--canvas)}.plate-rings{background:repeating-radial-gradient(circle at 50% var(--y), transparent 0 79px, #12336b38 79px 80px)}.plate-vessel{top:var(--y);left:50%;rotate:0deg}.plate-track{top:var(--y);width:2px;height:calc(var(--canvas) - var(--y));left:50%;transform:translate(-50%)}.plate-course{top:calc(var(--canvas) * .1);height:calc(var(--y) - var(--canvas) * .1);border-top:0;border-left:2px dashed var(--orange);left:50%;right:auto;transform:translate(-1px)}.plate-course:after{top:-10px;left:-11px;right:auto}.plate-course span{inset:-4px auto auto 20px}.chart-plate figcaption{background:linear-gradient(#eef0ea00 0%,#eef0ead9 30%);flex-direction:column;align-items:stretch;gap:22px;padding:28px 20px 20px;position:relative;inset:auto}.plate-fix{width:100%}@supports (animation-timeline:view()){@media (prefers-reduced-motion:no-preference){.plate-vessel{animation-name:underway-north}}}.contact-visual{aspect-ratio:4/3;min-height:0}.approach-rose{width:100vw;top:auto;bottom:-30vw;translate:none}}@keyframes underway-north{0%{translate:-50% 10%}to{translate:-50% -110%}}@media (max-width:640px){body{font-size:16px}.waypoint{flex-wrap:wrap;gap:8px 12px}.wp-rule{min-width:40px}.wp-note{text-align:left;flex-basis:100%}.ticker-specialisms{grid-template-columns:1fr 1fr}.ticker-specialisms li{font-size:14px}.values{grid-template-columns:1fr;row-gap:40px}.contact-email{font-size:clamp(1.5rem,8vw,2.2rem)}.contact-row .btn{width:100%}.plate-label{top:20px;left:20px}.plate-course span{display:none}.plate-fix div{padding:12px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.ticker-run,.approach-rose{animation:none}}
