@font-face {
  font-family: 'Arizona Sans';
  src: url('font/Arizona.woff2') format('woff2');
  font-style: normal;
  font-weight: 200 800;
  font-display: swap;
}

:root { font-family: 'Arizona Sans', 'Helvetica Neue', Arial, sans-serif; color: rgba(255, 255, 255, .84); font-weight: 300; font-variation-settings: 'wght' 300, 'slnt' 0, 'SRFF' 0; }
* { box-sizing: border-box; }
html, body { margin: 0; min-height: 100%; }
body { background: #217aff; }
a { color: inherit; text-decoration: none; }
a:hover { opacity: .55; }
.site-shell { min-height: 100vh; background: #217aff; transition: background 1.4s ease; }
.desktop-site { min-height: 100vh; padding: 14px 15px 10px; position: relative; overflow: hidden; }
.site-header, .mobile-header { display: flex; justify-content: space-between; align-items: center; font-size: 21px; line-height: 1; }
.status-dot { display: block; width: 13px; height: 13px; border-radius: 50%; background: rgba(255,255,255,.85); }
.desktop-content { padding-top: 34px; }
.page h1 { margin: 0; font-size: 80px; line-height: 1.15; font-weight: 300; letter-spacing: .005em; font-kerning: normal; text-rendering: geometricPrecision; }
.page-about h1, .page-services h1, .page-contact h1 { font-size: clamp(60px, 4.4vw, 84px); }
.rule { height: 1px; background: rgba(255,255,255,.78); margin: 17px 0 26px; }
.two-column, .contact-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 8vw; }
.page p, .services-grid, .contact-grid { font-size: clamp(24px, 2vw, 39px); line-height: 1.3; margin: 0; }
.two-column p:last-child { font-size: clamp(20px, 1.45vw, 28px); max-width: 48rem; }
.services-grid { display: grid; grid-template-columns: 1fr 1fr; column-gap: 0; }
.services-left { display: flex; flex-direction: column; gap: 3.85rem; }
.services-left p { margin: 0; }
.services-grid ul { grid-column: 2; grid-row: 1; list-style: none; margin: 0; padding: 0; }
.services-grid li + li { margin-top: 1rem; }
.services-grid li::before { content: '• '; }
.contact-grid { row-gap: 4.2rem; }
.contact-grid > div:first-child, .contact-grid > div:nth-child(2) { display: flex; flex-direction: column; gap: 1.05rem; }
.platforms { display: flex; flex-direction: column; gap: 20px; }
.desktop-nav { position: fixed; bottom: 10px; left: 15px; display: flex; gap: 22px; font-size: 21px; font-weight: 200; font-variation-settings: 'wght' 200, 'slnt' 0, 'SRFF' 0; }
.desktop-nav a[aria-current='page'] { opacity: .45; }
.mobile-site { display: none; }

@media (max-width: 700px) {
  .desktop-site { display: none; }
  .mobile-site { display: block; min-height: 100vh; padding: 13px 12px 7px; font-size: 21px; line-height: 1.35; }
  .mobile-header { font-size: 21px; margin-bottom: 33px; }
  .mobile-site section { border-top: 1px solid rgba(255,255,255,.85); padding: 7px 0 27px; }
  .mobile-site h2 { font-size: 20px; font-weight: 300; line-height: 1; margin: 0 0 13px; }
  .mobile-site p { margin: 0; }
  .mobile-site ul { list-style: none; margin: 0; padding: 0; }
  .mobile-site li::before { content: '• '; }
  .mobile-platforms { display: flex; flex-direction: column; gap: 4px; margin-top: 12px; }
  .mobile-site footer { margin-top: 24px; }
}

@media (prefers-reduced-motion: reduce) { .site-shell { transition: none; } }
