a.brand
{
display:flex;
align-items:center;
gap:0.7em;
text-decoration:none;
color:#e8eef6;
}

a.brand:visited,a.brand:hover
{
text-decoration:none;
color:#e8eef6;
}

img.logo
{
height:2.6em;
width:auto;
display:block;
}

.wordmark
{
display:flex;
flex-direction:column;
line-height:1.05em;
}

.wordmark-name
{
font-size:1.15em;
font-weight:bold;
letter-spacing:0.14em;
text-transform:uppercase;
color:#2e7fff;
}

.wordmark-trade
{
font-size:0.72em;
letter-spacing:0.28em;
text-transform:uppercase;
color:#c5cdd8;
}

img.hero-logo
{
display:block;
width:min(36em,92%);
height:auto;
margin:0 auto 1em auto;
}

.tagline
{
font-size:0.95em;
letter-spacing:0.22em;
text-transform:uppercase;
color:#3ec4ff;
margin:0.4em 0 0 0;
text-align:center;
}

img.hero-wave
{
position:absolute;
left:0;
right:0;
bottom:0;
width:100%;
height:7em;
object-fit:cover;
object-position:center bottom;
pointer-events:none;
opacity:0.85;
animation:wave-drift 14s ease-in-out infinite;
}

@keyframes wave-drift
{
0%,100% {transform:translateY(0);opacity:0.75;}
50% {transform:translateY(-0.35em);opacity:1;}
}

@media (prefers-reduced-motion:reduce)
{
img.hero-wave
{
animation:none;
}
}

.cards
{
display:flex;
flex-wrap:wrap;
gap:0.85em;
margin:0.8em 0 0.3em 0;
}

.card
{
flex:1 1 12em;
padding:0.9em 1em;
border-radius:0.4em;
background-color:rgba(8,24,48,0.55);
border:1px solid rgba(62,196,255,0.16);
}

.card h3
{
margin-top:0;
}

.card p
{
font-size:0.88em;
}

img.figure
{
max-width:100%;
height:auto;
border:1px solid rgba(62,196,255,0.2);
border-radius:0.25em;
margin:0.6em 0;
}

.figure-row
{
display:flex;
flex-wrap:wrap;
justify-content:center;
gap:0.7em;
margin:0.8em 0 1em 0;
}

.figure-row a
{
display:block;
}

.figure-row img
{
width:13em;
max-width:100%;
height:auto;
margin:0;
}

img.float-right
{
float:right;
width:min(18em,42%);
margin:0.3em 0 0.8em 1.1em;
}

img.float-left
{
float:left;
width:min(18em,42%);
margin:0.3em 1.1em 0.8em 0;
}

.meta
{
color:#9aacbf;
font-size:0.85em;
}

.contact-block h3
{
margin-bottom:0.15em;
}

.contact-block p
{
margin:0;
padding:0.1em 0;
}

.news-list
{
list-style:none;
margin:0.3em 0 0.8em 0;
}

.news-list li
{
border-top:1px solid rgba(62,196,255,0.14);
padding:0.55em 0;
}

.news-list li:first-child
{
border-top:none;
padding-top:0.15em;
}

.news-list time
{
display:inline;
margin:0 0.7em 0 0;
font-size:0.8em;
}

.client-list
{
columns:2;
column-gap:1.5em;
list-style:none;
margin-left:0;
}

.client-list li
{
padding:0.25em 0;
border-top:1px solid rgba(62,196,255,0.12);
}

.skill-list
{
columns:2;
column-gap:1.5em;
}

@media screen and (max-width:600px)
{
img.float-right,img.float-left
{
float:none;
width:100%;
margin:0.5em 0;
}
.client-list,.skill-list
{
columns:1;
}
img.hero-wave
{
height:5em;
}
}
