@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600&family=Space+Grotesk:wght@400;500;600;700&display=swap');
:root{--navy:#06101e;--deep:#020610;--blue:#00b8e6;--teal:#31edf3;--ink:#effaff;--muted:#91a8ba;--cream:#050b15;--line:rgba(68,211,237,.2);--violet:#8b5cf6}html{background:#020610}body{background:#020610;color:var(--ink);font-family:Inter,Arial,sans-serif;overflow-x:hidden}body:before{content:'';position:fixed;inset:0;pointer-events:none;z-index:9999;opacity:.032;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.7'/%3E%3C/svg%3E")}.container{width:min(1220px,calc(100% - 72px))}.site-header{height:86px;background:rgba(2,6,16,.78);border-bottom:1px solid var(--line);backdrop-filter:blur(18px);position:absolute}.brand img{filter:drop-shadow(0 0 13px rgba(49,237,243,.28))}.brand strong{font-family:'Space Grotesk',sans-serif;color:#fff}.brand small{font-family:'Space Grotesk',sans-serif;color:var(--teal)}nav a{font-family:'Space Grotesk',sans-serif;color:#9fb6c8}nav a:hover{color:var(--teal)}nav .nav-contact{color:var(--teal);border:1px solid rgba(49,237,243,.55);background:linear-gradient(135deg,rgba(49,237,243,.08),rgba(139,92,246,.06));clip-path:polygon(0 0,calc(100% - 10px) 0,100% 10px,100% 100%,10px 100%,0 calc(100% - 10px))}nav .nav-contact:hover{background:var(--teal);color:#021019;box-shadow:0 0 28px rgba(49,237,243,.22)}
.hero{min-height:780px;background:radial-gradient(circle at 77% 43%,rgba(0,184,230,.17),transparent 27%),radial-gradient(circle at 66% 88%,rgba(139,92,246,.12),transparent 29%),linear-gradient(125deg,#020610,#071423 56%,#050d1a)}.hero:before{content:'GLOBAL MARITIME / 25.2048° N 55.2708° E';position:absolute;left:18px;top:50%;writing-mode:vertical-rl;transform:rotate(180deg);font:500 10px 'Space Grotesk';letter-spacing:.23em;color:#506b7e;z-index:2}.hero-grid{opacity:.2;background-image:linear-gradient(rgba(49,237,243,.2) 1px,transparent 1px),linear-gradient(90deg,rgba(49,237,243,.17) 1px,transparent 1px);background-size:72px 72px;mask-image:linear-gradient(90deg,transparent 6%,#000 58%,transparent)}.hero-glow{right:6%;top:19%;width:470px;height:470px;border:1px solid rgba(49,237,243,.3);border-radius:50%;background:transparent;box-shadow:0 0 110px rgba(0,184,230,.1),inset 0 0 80px rgba(49,237,243,.04)}.hero-glow:before,.hero-glow:after{content:'';position:absolute;border:1px dashed rgba(49,237,243,.24);border-radius:50%;animation:futureSpin 30s linear infinite}.hero-glow:before{inset:34px}.hero-glow:after{inset:100px;animation-direction:reverse;animation-duration:21s}@keyframes futureSpin{to{transform:rotate(360deg)}}.hero-content{padding-top:198px;padding-bottom:155px}.eyebrow,.eyebrow.light{font-family:'Space Grotesk',sans-serif;color:var(--teal)}.eyebrow-line{box-shadow:0 0 8px var(--teal)}h1,h2{font-family:'Space Grotesk',sans-serif;letter-spacing:-.055em}h1{font-size:clamp(58px,7.2vw,106px);line-height:.99;font-weight:500;max-width:920px;margin-bottom:36px}h1 em,h2 em{background:linear-gradient(90deg,var(--teal),#9bf5ff 50%,#ab8cff);-webkit-background-clip:text;background-clip:text;color:transparent}.hero-lead{color:#a7bdcc;border-left:1px solid var(--teal);padding-left:21px}.button{font-family:'Space Grotesk',sans-serif;clip-path:polygon(0 0,calc(100% - 10px) 0,100% 10px,100% 100%,10px 100%,0 calc(100% - 10px))}.button:hover{box-shadow:0 0 30px rgba(49,237,243,.2)}.button-light{background:linear-gradient(110deg,var(--teal),#92f0ff);color:#021019}.text-link{font-family:'Space Grotesk',sans-serif;color:#c7dbe5}.text-link:hover{color:var(--teal);border-color:var(--teal)}.hero-bottom{position:absolute;bottom:0;left:50%;transform:translateX(-50%);padding:0;gap:0;border-top:1px solid var(--line);font-family:'Space Grotesk',sans-serif}.hero-bottom span{flex:1;padding:21px 17px;border-right:1px solid var(--line);white-space:nowrap}.hero-bottom span:first-child{border-left:1px solid var(--line)}.hero-bottom span:before{content:'';display:inline-block;width:4px;height:4px;margin:0 10px 2px 0;background:var(--teal);box-shadow:0 0 8px var(--teal)}.hero-bottom span:not(:last-child):after{display:none}.hero-art{right:-20px;top:125px;width:610px;height:610px;opacity:.72}.arc{border-color:rgba(49,237,243,.28)}.arc:before{content:'';position:absolute;inset:-1px;border-radius:50%;border-top:2px solid var(--teal);border-right:2px solid transparent;animation:futureSpin 14s linear infinite}.arc-two{border-style:dashed}.arc-two:before{animation-direction:reverse;animation-duration:23s}.arc-three{border-color:rgba(139,92,246,.55)}.art-center{color:var(--teal);background:rgba(2,9,19,.7);border-color:rgba(49,237,243,.45);box-shadow:0 0 50px rgba(49,237,243,.08),inset 0 0 30px rgba(49,237,243,.08)}.art-dot{background:#fff;box-shadow:0 0 7px 3px var(--teal),0 0 32px 10px rgba(49,237,243,.3)}
.section{padding:130px 0}.intro{position:relative;background:linear-gradient(180deg,#07101d,#040914)}.intro:before,.services:before,.contact:before{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,transparent 49.94%,rgba(49,237,243,.035) 50%,transparent 50.06%)}.intro-layout,.principles,.section-top,.service-list,.contact-layout{position:relative;z-index:1}.intro-copy{color:var(--muted);font-size:16px}.intro-copy .large{color:#dcecf3}.inline-link{color:var(--teal);border-color:var(--teal);font-family:'Space Grotesk',sans-serif}.principles{gap:18px}.principles>div{border:1px solid var(--line);padding:29px;min-height:195px;background:linear-gradient(145deg,rgba(13,28,49,.82),rgba(5,12,24,.62));clip-path:polygon(0 0,calc(100% - 18px) 0,100% 18px,100% 100%,0 100%)}.principles span{color:var(--teal);font-family:'Space Grotesk',sans-serif}.principles strong{color:#effaff;font-family:'Space Grotesk',sans-serif}.principles p{font-size:15px;color:var(--muted)}.services{position:relative;background:#020711}.section-top>p{font-size:16px;color:var(--muted)}.service-list{border-color:var(--line)}.service-list article{border-color:var(--line);padding:34px 16px;transition:.25s}.service-list article:hover{background:linear-gradient(90deg,rgba(49,237,243,.055),rgba(139,92,246,.035),transparent);padding-left:27px}.service-no,.service-arrow{color:var(--teal);font-family:'Space Grotesk',sans-serif}.service-list h3{font:600 27px 'Space Grotesk',sans-serif;color:#edfaff}.service-list p{font-size:15px;color:var(--muted)}
.intelligence{background:radial-gradient(circle at 72% 44%,rgba(139,92,246,.13),transparent 28%),linear-gradient(145deg,#071426,#08101e);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.intelligence p:not(.eyebrow){font-size:16px;color:var(--muted)}.button-outline{border-color:rgba(49,237,243,.55);color:var(--teal);background:rgba(49,237,243,.035)}.intel-visual{background:rgba(4,12,25,.78);border-color:var(--line);clip-path:polygon(0 0,calc(100% - 22px) 0,100% 22px,100% 100%,0 100%);box-shadow:0 28px 80px rgba(0,0,0,.35)}.intel-visual:before{content:'';position:absolute;inset:0;background-image:linear-gradient(rgba(49,237,243,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(49,237,243,.055) 1px,transparent 1px);background-size:35px 35px}.intel-head,.intel-foot{font-family:'Space Grotesk',sans-serif;position:relative;z-index:2}.intel-head span:last-child{color:var(--teal)}.ring{border-color:rgba(49,237,243,.22)}.radar:before,.radar:after{background:rgba(49,237,243,.17)}.radar-line{background:linear-gradient(90deg,var(--teal),transparent);animation:radarSweep 4.5s ease-in-out infinite alternate}@keyframes radarSweep{to{transform:rotate(55deg)}}.point{background:#fff;box-shadow:0 0 6px 2px var(--teal),0 0 18px var(--teal)}
.contact{position:relative;background:linear-gradient(180deg,#040914,#020610)}.contact-intro{color:var(--muted)}.contact-details span{font-family:'Space Grotesk',sans-serif;color:var(--teal)}.contact-details p,.contact-details a{color:#c4d6e0}.inquiry{background:linear-gradient(150deg,rgba(14,31,53,.92),rgba(6,14,27,.96));border:1px solid var(--line);clip-path:polygon(0 0,calc(100% - 22px) 0,100% 22px,100% 100%,0 100%);box-shadow:0 30px 90px rgba(0,0,0,.28)}.inquiry h3{font-family:'Space Grotesk',sans-serif}.inquiry>p,.inquiry .form-note{color:var(--muted)}.inquiry label{color:#bed1dc}.inquiry input,.inquiry textarea{background:rgba(1,7,15,.72);border-color:rgba(97,164,190,.3);color:var(--ink)}.inquiry input:focus,.inquiry textarea:focus{border-color:var(--teal);box-shadow:0 0 0 2px rgba(49,237,243,.08),0 0 18px rgba(49,237,243,.06)}.button-dark{background:linear-gradient(100deg,var(--teal),#7beaff);color:#021019}footer{background:#01040a;border-top:1px solid var(--line)}.footer-main p,.footer-bottom{color:#708898}.footer-main>a{color:var(--teal)}.footer-bottom{border-color:rgba(49,237,243,.13)}
@media(max-width:950px){.hero-art{right:-260px;opacity:.45}}@media(max-width:700px){.container{width:min(100% - 36px,1220px)}.site-header{height:72px}.menu-button span{background:var(--teal);box-shadow:0 0 5px var(--teal)}nav{background:rgba(2,6,16,.98);border-bottom:1px solid var(--line)}.hero{min-height:735px}.hero:before{display:none}.hero-content{padding-top:145px;padding-bottom:125px}h1{font-size:clamp(49px,14vw,69px)}.hero-bottom{width:calc(100% - 36px)}.hero-art{right:-420px;top:110px}.principles>div{min-height:auto}.service-list article:hover{padding-left:8px}}@media(prefers-reduced-motion:reduce){.arc:before,.hero-glow:before,.hero-glow:after,.radar-line{animation:none}}

/* Maritime watch */
.news-section { background: #eaf3f7; color: #082a43; position: relative; }
.news-section .section-top { align-items: end; }
.news-section .section-top > p { max-width: 390px; }
.news-controls { display: flex; gap: 9px; flex-wrap: wrap; margin: 36px 0 22px; }
.news-filter { border: 1px solid rgba(8,42,67,.23); background: transparent; color: #19465b; border-radius: 99px; padding: 10px 17px; cursor: pointer; font: inherit; font-size: 13px; transition: background .2s, color .2s; }
.news-filter:hover, .news-filter.active { background: #082a43; color: white; }
.news-filter:focus-visible, .news-card a:focus-visible, .news-bottom a:focus-visible { outline: 3px solid #2fd2db; outline-offset: 3px; }
.news-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 13px; min-height: 170px; }
.news-card { min-height: 190px; padding: 23px; background: #fff; border: 1px solid rgba(8,42,67,.08); position: relative; display: flex; flex-direction: column; justify-content: space-between; box-shadow: 0 14px 32px rgba(5,35,58,.04); }
.news-card:hover { border-color: rgba(0,155,171,.42); transform: translateY(-2px); transition: .2s; }
.news-meta { display: flex; justify-content: space-between; gap: 12px; color: #467184; font-size: 11px; letter-spacing: .04em; text-transform: uppercase; }
.news-card a { color: #082a43; font-size: 17px; font-weight: 600; line-height: 1.35; text-decoration: none; padding: 13px 18px 13px 0; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.news-arrow { color: #078b9b; align-self: flex-end; font-size: 22px; line-height: 1; }
.news-message { grid-column: 1 / -1; padding: 32px; background: #fff; color: #456779; }
.news-bottom { display: flex; justify-content: space-between; gap: 18px; align-items: center; margin-top: 21px; color: #547486; font-size: 12px; }
.news-bottom p { margin: 0; }
.news-bottom div { display: flex; flex-wrap: wrap; gap: 21px; }
.news-bottom a { color: #096d7b; text-decoration: none; }
.news-bottom a:hover { text-decoration: underline; }
@media(max-width: 900px) { .news-grid { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media(max-width: 620px) { .news-grid { grid-template-columns: 1fr; } .news-card { min-height: 150px; } .news-bottom { align-items: flex-start; flex-direction: column; } }

/* Expanded site */
.site-header { gap: 52px; }
.site-header .brand { flex: 0 0 auto; margin-right: auto; }
.site-header nav { flex: 0 0 auto; gap: clamp(18px,2vw,34px); }
.news-section { background: linear-gradient(180deg,#041120,#070d1c); color: #eaf7ff; }
.news-section .section-top > p { color: var(--muted); }
.news-filter { color: #b9d7e2; border-color: rgba(49,237,243,.28); background: #0a1929; }
.news-filter:hover,.news-filter.active { color: #021019; background: var(--teal); }
.news-card,.news-message { background: #0b1929; color: #b5ceda; border: 1px solid rgba(49,237,243,.18); }
.news-card a { color: #effaff; }
.news-meta,.news-bottom { color: #95b0bf; }
.news-bottom a { color: var(--teal); }
.tools { background: #030a15; }
.tool-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 18px; }
.tool-card { display:flex; flex-direction:column; gap:16px; padding: 30px; border:1px solid var(--line); background:linear-gradient(145deg,rgba(14,31,52,.85),rgba(4,11,21,.9)); min-height:250px; }
.tool-tag { color:var(--teal); font:700 11px 'Space Grotesk',sans-serif; letter-spacing:.14em; }
.tool-card h3 { margin:0; font:600 27px 'Space Grotesk',sans-serif; }
.tool-card p { color:var(--muted); line-height:1.7; margin:0; }
.tool-card a { color:var(--teal); font-size:14px; font-weight:700; margin-top:auto; }
.tool-card label { display:grid; gap:8px; font-size:12px; color:#b2cbd8; }
.tool-card input { width:100%; padding:12px; background:#030d1b; color:#f0fcff; border:1px solid rgba(49,237,243,.28); border-radius:0; }
.tool-pair { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.tool-card output { display:block; color:#f1fcff; background:rgba(49,237,243,.07); padding:14px; line-height:1.5; }
.tool-note { margin:24px 0 0; color:var(--muted); font-size:12px; }
.vetting { background:linear-gradient(135deg,#081829,#0d1530); }
.vetting-layout { display:grid; grid-template-columns:1fr 1fr; gap:80px; align-items:center; }
.vetting-layout > div:first-child > p:not(.eyebrow) { color:var(--muted); line-height:1.8; margin:28px 0; max-width:560px; }
.vetting-points { border-top:1px solid var(--line); }
.vetting-points div { display:flex; gap:20px; border-bottom:1px solid var(--line); padding:23px 0; line-height:1.5; }
.vetting-points b { color:var(--teal); }
.vetting-points p { color:var(--muted); font-size:13px; line-height:1.6; margin:22px 0 0; }
.inquiry select { width:100%; padding:12px; background:rgba(1,7,15,.72); border:1px solid rgba(97,164,190,.3); color:var(--ink); }
.inquiry input[type=file] { width:100%; font-size:13px; }
.inquiry input[type=checkbox] { width:auto; }
.brief-fields { border:1px solid var(--line); padding:16px; margin:4px 0 18px; }
.brief-fields[hidden],.contract-consent[hidden] { display:none; }
.contract-consent { border:1px solid rgba(49,237,243,.4); background:rgba(49,237,243,.05); padding:17px; font-size:13px; line-height:1.6; }
.contract-consent p { color:#d4e5ec; }
.inquiry .consent-line { display:flex; gap:12px; align-items:flex-start; }
@media(max-width:1000px) { .site-header { gap:20px; } .site-header nav { gap:16px; } .site-header nav a { font-size:12px; } }
@media(max-width:820px) { .site-header { padding:0 18px; } .site-header .menu-button { display:flex; flex-direction:column; gap:5px; border:0; background:none; padding:12px; cursor:pointer; } .site-header .menu-button span { width:23px; height:2px; background:var(--teal); } .site-header nav { display:none; position:absolute; top:72px; left:0; right:0; background:#030b17; padding:20px 18px 28px; flex-direction:column; align-items:stretch; gap:0; } .site-header nav.open { display:flex; } .site-header nav a { padding:13px 4px; } .site-header { height:72px; } .vetting-layout { gap:35px; } }
@media(max-width:700px) { .tool-grid,.vetting-layout { grid-template-columns:1fr; } .tool-card { min-height:auto; } .tool-pair { grid-template-columns:1fr 1fr; } }
.tool-card [hidden] { display:none; }
.tool-action { padding:12px 15px; border:1px solid var(--teal); background:rgba(49,237,243,.08); color:var(--teal); cursor:pointer; font:600 13px 'Space Grotesk',sans-serif; align-self:flex-start; }
.tool-action:hover { background:var(--teal); color:#03101c; }
#route-status,#ai-brief-result { color:#b5d7df; font-size:13px; white-space:pre-line; }
.inquiry .upload-auth { display:flex; gap:12px; align-items:flex-start; margin:10px 0 20px; font-size:13px; line-height:1.5; }
.market-brief { border:1px solid var(--line); padding:20px; margin-top:22px; background:#0b1929; }
.market-brief[hidden] { display:none; }
.market-brief p { white-space:pre-line; line-height:1.7; color:#c5dfe7; margin:14px 0 0; }
.tool-card[hidden] { display:none; }
.tool-card .ai-optin { display:flex; gap:10px; align-items:flex-start; line-height:1.5; }
.tool-card .ai-optin input { width:auto; margin-top:3px; }
/* Header actions and accessible Tools dropdown */
.site-header { gap: 30px; }
.site-header nav { gap: clamp(12px,1.35vw,24px); }
.site-header .nav-dropdown { position:relative; }
.site-header .nav-tools { background:none; border:0; color:#9fb6c8; font:700 13px 'Space Grotesk',sans-serif; cursor:pointer; padding:10px 0; white-space:nowrap; }
.site-header .nav-tools:hover,.site-header .nav-tools[aria-expanded="true"] { color:var(--teal); }
.site-header .nav-submenu { display:none; position:absolute; top:calc(100% + 14px); left:-19px; min-width:230px; border:1px solid var(--line); background:#081727; box-shadow:0 24px 52px #0008; padding:8px; z-index:40; }
.site-header .nav-submenu.open { display:grid; }
.site-header .nav-submenu a { display:block; padding:11px 13px; color:#c9dfeb; white-space:nowrap; }
.site-header .nav-submenu a:hover,.site-header .nav-submenu a:focus-visible { color:#06101e; background:var(--teal); }
.site-header .nav-submenu a[hidden] { display:none; }
.site-header .nav-vetting { color:var(--teal); border-bottom:1px solid rgba(49,237,243,.5); padding:9px 0; white-space:nowrap; }
.site-header nav .nav-contact { white-space:nowrap; }
.site-header .nav-tools:focus-visible,.site-header nav a:focus-visible { outline:2px solid var(--teal); outline-offset:4px; }
/* The voyage estimator presents the actual components and their shares. */
.tool-card select { width:100%; padding:12px; background:#030d1b; color:#f0fcff; border:1px solid rgba(49,237,243,.28); }
.tool-card .tool-help { font-size:12px; }
.tool-card .tool-action:disabled { opacity:.5; cursor:not-allowed; }
.tool-card #route-status { display:block; padding:13px; color:#cae4ec; border:1px solid var(--line); }
.estimate-output { padding:20px; background:rgba(49,237,243,.08); border:1px solid var(--line); font:600 19px/1.5 'Space Grotesk',sans-serif; color:#eaffff; }
.cost-breakdown[hidden] { display:none; }
.cost-bar { display:flex; height:16px; background:#0c2637; overflow:hidden; }
.cost-bar span { display:block; height:100%; }
.cost-breakdown dl { margin:14px 0 0; }
.cost-breakdown dl div { display:flex; justify-content:space-between; gap:16px; border-bottom:1px solid var(--line); padding:9px 0; }
.cost-breakdown dt { color:#aecbd8; }
.cost-breakdown dd { margin:0; font-weight:600; text-align:right; white-space:nowrap; }
@media(max-width:1050px) { .site-header { height:72px; padding:0 18px; } .site-header .menu-button { display:flex; flex-direction:column; gap:5px; border:0; background:none; padding:12px; cursor:pointer; } .site-header .menu-button span { width:23px; height:2px; background:var(--teal); } .site-header nav { display:none; position:absolute; top:72px; left:0; right:0; background:#030b17; padding:18px; flex-direction:column; align-items:stretch; gap:0; max-height:calc(100vh - 72px); overflow:auto; } .site-header nav.open { display:flex; } .site-header nav a { padding:13px 4px; } .site-header .nav-tools { width:100%; text-align:left; padding:13px 4px; } .site-header .nav-submenu { position:static; min-width:0; box-shadow:none; margin:0 0 10px; padding:4px 10px; } .site-header .nav-vetting { align-self:flex-start; } .site-header nav .nav-contact { align-self:stretch; } }
