/* Aquarius Ventures webfonts — SELF-HOSTED (no third-party requests).
   Noto Sans is the corporate face: the widest Unicode coverage of any open family, so
   imported member names, place names and operator data render without fallback glyphs.

   GDPR: nothing here calls fonts.googleapis.com or fonts.gstatic.com. No visitor IP
   ever reaches Google, so fonts need no consent-banner entry. Do not reintroduce a CDN
   @import — that is the whole point of this file.

   Two variable files, supplied by the company. Each carries two axes:
     wght 100-900  — the system uses 400 body, 600 label, 700 heading, 800 display
     wdth  62-100  — NOT used. Leave at 100. Condensed Noto is not part of the identity.
   Both faces are SIL OFL 1.1: self-hosting, PDF embedding and installing on managed
   devices are all permitted. Keep the licence text with the files.

   Noto Sans Mono carries every figure, ID and measurement. Same two axes; the mono
   file's wdth axis is likewise unused and pinned at 100. */

@font-face{font-family:"Noto Sans";font-style:normal;font-weight:100 900;font-stretch:62% 100%;font-display:swap;src:url("fonts/NotoSans-VariableFont_wdth_wght.ttf") format("truetype-variations")}
@font-face{font-family:"Noto Sans Mono";font-style:normal;font-weight:100 900;font-stretch:62% 100%;font-display:swap;src:url("fonts/NotoSansMono-VariableFont_wdth_wght.ttf") format("truetype-variations")}
:root{
/* ---- Brand: the three currents of the mark ---- */
--aq-blue:#0263BE;      /* deep water — PRIMARY */
--aq-cyan:#2DB9D9;      /* surface light — highlight (secondary) */
--aq-teal:#02B0AF;      /* clear water — secondary */
--aq-blue-700:#014E97;
--aq-blue-800:#013B73;
--aq-blue-900:#012A53;
--aq-cyan-300:#7FD6EA;
--aq-cyan-600:#1F9AB8;
--aq-teal-300:#6FD6D5;
--aq-teal-600:#019190;

/* ---- Neutrals: cool, blue-shifted depth ramp ---- */
--ink-1000:#03080D;
--ink-950:#060D14;
--ink-900:#0A141D;
--ink-850:#0E1B26;
--ink-800:#132433;
--ink-700:#1B3242;
--ink-600:#24485E;
--ink-500:#3A6480;
--ink-400:#6D8EA6;
--ink-300:#9DB6C7;
--ink-200:#C6D6E0;
--ink-100:#E4EDF3;
--ink-050:#F4F8FB;
--white:#FFFFFF;

/* ---- Semantic status ---- */
--ok:#17A97A;
--ok-dim:#0C5C43;
--watch:#E8A317;
--watch-dim:#6B4A07;
--alert:#E0453F;
--alert-dim:#6B1A17;
--offline:#6D8EA6;

/* ---- Surfaces (dark is the default mode) ---- */
--surface-page:var(--ink-950);
--surface-sunken:var(--ink-1000);
--surface-card:var(--ink-900);
--surface-raised:var(--ink-850);
--surface-hover:var(--ink-800);
--surface-active:var(--ink-700);
--surface-glass:rgba(19,36,51,.62);
--surface-brand:var(--aq-blue);
--surface-brand-soft:rgba(2,99,190,.16);
--surface-teal-soft:rgba(2,176,175,.14);
--surface-cyan-soft:rgba(45,185,217,.14);

/* ---- Text ---- */
--text-strong:var(--ink-050);
--text-body:var(--ink-200);
--text-muted:var(--ink-400);
--text-faint:var(--ink-500);
--text-on-brand:#FFFFFF;
--text-link:var(--aq-cyan);
--text-link-hover:var(--aq-cyan-300);
--text-accent:var(--aq-teal-300);

/* ---- Lines ---- */
--border-subtle:rgba(157,182,199,.12);
--border-default:rgba(157,182,199,.20);
--border-strong:rgba(157,182,199,.34);
--border-brand:rgba(45,185,217,.55);
--focus-ring:var(--aq-cyan);

/* ---- Flow gradients: always along a current, never vertical rainbow ---- */
--flow-current:linear-gradient(100deg,var(--aq-blue) 0%,var(--aq-teal) 62%,var(--aq-cyan) 100%); /* @kind color */
--flow-deep:linear-gradient(160deg,#071624 0%,#0A2137 46%,#061420 100%); /* @kind color */
--flow-hairline:linear-gradient(90deg,transparent,var(--aq-cyan) 45%,var(--aq-teal) 55%,transparent); /* @kind color */
--flow-veil:radial-gradient(120% 90% at 12% 0%,rgba(2,99,190,.30),transparent 60%),radial-gradient(90% 80% at 92% 8%,rgba(2,176,175,.20),transparent 62%); /* @kind color */
}

/* Light scope — flyers, Word documents, printed collateral. */
[data-theme="light"]{
--surface-page:#F7F7F7;
--surface-sunken:#EDF3F7;
--surface-card:#FFFFFF;
--surface-raised:#FFFFFF;
--surface-hover:#EDF3F7;
--surface-active:#E0EAF1;
--surface-glass:rgba(255,255,255,.72);
--text-strong:var(--ink-950);
--text-body:var(--ink-800);
--text-muted:var(--ink-600);
--text-faint:var(--ink-500);
--text-link:var(--aq-blue);
--text-link-hover:var(--aq-blue-700);
--text-accent:var(--aq-teal-600);
--border-subtle:rgba(19,36,51,.10);
--border-default:rgba(19,36,51,.16);
--border-strong:rgba(19,36,51,.28);
}
:root{
--font-stretch-brand:100%; /* @kind font */
--font-display:"Noto Sans",system-ui,-apple-system,"Segoe UI",sans-serif; /* @kind font */
--font-ui:"Noto Sans",system-ui,-apple-system,"Segoe UI",sans-serif; /* @kind font */
--font-body:"Noto Sans",system-ui,-apple-system,"Segoe UI",sans-serif; /* @kind font */
--font-mono:"Noto Sans Mono",ui-monospace,"SF Mono",Menlo,monospace; /* @kind font */

--fs-display-xl:clamp(44px,5.4vw,76px); /* @kind font */
--fs-display-l:clamp(34px,3.8vw,54px); /* @kind font */
--fs-display-m:clamp(28px,2.6vw,38px); /* @kind font */
--fs-h1:32px; /* @kind font */
--fs-h2:24px; /* @kind font */
--fs-h3:19px; /* @kind font */
--fs-h4:16px; /* @kind font */
--fs-body-l:18px; /* @kind font */
--fs-body:16px; /* @kind font */
--fs-body-s:14px; /* @kind font */
--fs-caption:13px; /* @kind font */
--fs-micro:11px; /* @kind font */

--lh-tight:1.06; /* @kind font */
--lh-heading:1.18; /* @kind font */
--lh-snug:1.38; /* @kind font */
--lh-body:1.6; /* @kind font */
--lh-loose:1.75; /* @kind font */

--fw-regular:400; /* @kind font */
--fw-medium:500; /* @kind font */
--fw-semibold:600; /* @kind font */
--fw-bold:700; /* @kind font */
--fw-black:800; /* @kind font */

--ls-display:-0.022em; /* @kind font */
--ls-heading:-0.014em; /* @kind font */
--ls-body:0em; /* @kind font */
--ls-label:0.02em; /* @kind font */
--ls-eyebrow:0.16em; /* @kind font */

--measure-narrow:46ch; /* @kind font */
--measure-body:68ch; /* @kind font */
--measure-wide:82ch; /* @kind font */
}
:root{
--space-0:0px;
--space-1:4px;
--space-2:8px;
--space-3:12px;
--space-4:16px;
--space-5:24px;
--space-6:32px;
--space-7:48px;
--space-8:64px;
--space-9:96px;
--space-10:128px;

--radius-xs:3px;
--radius-sm:6px;
--radius-md:10px;
--radius-lg:16px;
--radius-xl:24px;
--radius-pill:999px;

--border-w:1px; /* @kind spacing */
--border-w-thick:2px; /* @kind spacing */

--control-h-sm:32px; /* @kind spacing */
--control-h-md:40px; /* @kind spacing */
--control-h-lg:48px; /* @kind spacing */
--tap-min:44px; /* @kind spacing */

--container-max:1240px; /* @kind spacing */
--container-prose:760px; /* @kind spacing */
--gutter:24px; /* @kind spacing */
--gutter-wide:48px; /* @kind spacing */
--grid-cols:12; /* @kind spacing */
}
:root{
--shadow-none:none; /* @kind shadow */
--shadow-1:0 1px 2px rgba(3,8,13,.55); /* @kind shadow */
--shadow-2:0 4px 14px -4px rgba(3,8,13,.66); /* @kind shadow */
--shadow-3:0 14px 38px -12px rgba(3,8,13,.74); /* @kind shadow */
--shadow-4:0 30px 70px -22px rgba(3,8,13,.80); /* @kind shadow */
--inset-hairline:inset 0 1px 0 rgba(228,237,243,.06); /* @kind shadow */
--glow-cyan:0 0 0 1px rgba(45,185,218,.40),0 8px 28px -10px rgba(45,185,218,.45); /* @kind shadow */
--glow-teal:0 0 0 1px rgba(2,176,175,.40),0 8px 28px -10px rgba(2,176,175,.42); /* @kind shadow */
--ring-focus:0 0 0 2px var(--surface-page),0 0 0 4px var(--focus-ring); /* @kind shadow */
--blur-glass:blur(14px) saturate(1.2); /* @kind shadow */
--blur-veil:blur(56px); /* @kind shadow */
}
:root{
--dur-instant:80ms; /* @kind other */
--dur-fast:140ms; /* @kind other */
--dur-base:220ms; /* @kind other */
--dur-slow:380ms; /* @kind other */
--dur-flow:900ms; /* @kind other */
--ease-flow:cubic-bezier(.22,.61,.36,1); /* @kind other */
--ease-out:cubic-bezier(.16,1,.3,1); /* @kind other */
--ease-in-out:cubic-bezier(.62,0,.38,1); /* @kind other */
--ease-standard:cubic-bezier(.4,0,.2,1); /* @kind other */
}
@media (prefers-reduced-motion:reduce){:root{
--dur-instant:0ms; /* @kind other */
--dur-fast:0ms; /* @kind other */
--dur-base:0ms; /* @kind other */
--dur-slow:0ms; /* @kind other */
--dur-flow:0ms; /* @kind other */
}}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--surface-page);color:var(--text-body);font-family:var(--font-body);font-size:var(--fs-body);font-stretch:var(--font-stretch-brand);line-height:var(--lh-body);letter-spacing:var(--ls-body);-webkit-font-smoothing:antialiased}
h1,h2,h3,h4,h5,h6{font-family:var(--font-display);color:var(--text-strong);letter-spacing:var(--ls-heading);line-height:var(--lh-heading);font-weight:var(--fw-bold);margin:0}
p{margin:0}
a{color:var(--text-link);text-decoration:none;transition:color var(--dur-fast) var(--ease-standard)}
a:hover{color:var(--text-link-hover)}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:none;box-shadow:var(--ring-focus)}
code,kbd,samp,pre{font-family:var(--font-mono);font-size:.92em}
::selection{background:rgba(45,185,218,.30);color:var(--text-strong)}
::-webkit-scrollbar{width:10px;height:10px}
::-webkit-scrollbar-thumb{background:var(--ink-700);border-radius:var(--radius-pill);border:2px solid transparent;background-clip:content-box}
::-webkit-scrollbar-track{background:transparent}
.aq-eyebrow{font-family:var(--font-ui);font-size:var(--fs-micro);font-weight:var(--fw-semibold);letter-spacing:var(--ls-eyebrow);text-transform:uppercase;color:var(--text-muted)}
.aq-mono-num{font-family:var(--font-mono);font-variant-numeric:tabular-nums}
@keyframes aq-spin{to{transform:rotate(360deg)}}
@keyframes aq-slide{0%{transform:translateX(-100%)}100%{transform:translateX(250%)}}
@keyframes aq-rise{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@keyframes aq-shimmer{0%{background-position:-200% 0}100%{background-position:200% 0}}
@keyframes aq-draw{from{stroke-dashoffset:var(--len,600)}to{stroke-dashoffset:0}}