    *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
    html { scroll-behavior: smooth; }
    body {
      font-family: 'DM Sans', sans-serif;
      color: #e0f7ff;
      min-height: 100vh;
      overflow-x: hidden;
      background: linear-gradient(155deg, #020c18 0%, #04192e 20%, #072d50 45%, #0a4d7a 70%, #0891b2 100%);
      background-attachment: fixed;
    }

    /* ── Scrollbar ── */
    ::-webkit-scrollbar { width: 5px; }
    ::-webkit-scrollbar-track { background: #020c18; }
    ::-webkit-scrollbar-thumb { background: rgba(34,211,238,0.3); border-radius: 3px; }

    /* ── Glass ── */
    .glass {
      background: rgba(255,255,255,0.08);
      backdrop-filter: blur(20px); -webkit-backdrop-filter: blur(20px);
      border: 1px solid rgba(255,255,255,0.14);
    }
    .glass-card {
      background: rgba(255,255,255,0.07);
      backdrop-filter: blur(16px); -webkit-backdrop-filter: blur(16px);
      border: 1px solid rgba(255,255,255,0.10);
    }
    .neon-btn {
      background: linear-gradient(135deg, #22d3ee 0%, #0077ff 100%);
      box-shadow: 0 0 24px rgba(34,211,238,0.5), 0 0 64px rgba(34,211,238,0.15), inset 0 1px 0 rgba(255,255,255,0.25);
    }

    /* ── Animations ── */
    @keyframes floatUp {
      0%   { transform: translateY(0) translateX(0) scale(1); opacity: 0; }
      8%   { opacity: 0.65; }
      50%  { transform: translateY(-50vh) translateX(var(--drift)) scale(0.9); opacity: 0.45; }
      92%  { opacity: 0.25; }
      100% { transform: translateY(-105vh) translateX(calc(var(--drift) * 1.4)) scale(0.55); opacity: 0; }
    }
    @keyframes waterSurface {
      0%, 100% { transform: scaleX(1) translateY(0); opacity: 0.5; }
      50%       { transform: scaleX(1.04) translateY(-4px); opacity: 0.75; }
    }
    @keyframes causticsShimmer {
      0%   { opacity: 0;   transform: skewX(-22deg) scaleY(0.7); }
      35%  { opacity: 1; }
      65%  { opacity: 0.8; }
      100% { opacity: 0;   transform: skewX(-22deg) scaleY(1.15); }
    }
    @keyframes waveMove  { from { transform: translateX(0); }   to { transform: translateX(-50%); } }
    @keyframes waveMoveR { from { transform: translateX(-50%); } to { transform: translateX(0); } }
    @keyframes fadeUp {
      from { opacity: 0; transform: translateY(28px); }
      to   { opacity: 1; transform: translateY(0); }
    }
    @keyframes fadeIn { from { opacity:0; } to { opacity:1; } }
    @keyframes floatCard {
      0%, 100% { transform: perspective(1100px) rotateX(5deg) rotateY(-10deg) rotateZ(2deg) translateY(0); }
      50%       { transform: perspective(1100px) rotateX(5deg) rotateY(-10deg) rotateZ(2deg) translateY(-16px); }
    }
    @keyframes msgPop {
      from { opacity:0; transform: translateY(8px) scale(0.96); }
      to   { opacity:1; transform: translateY(0) scale(1); }
    }
    @keyframes ripple {
      from { width:80px; height:80px; opacity:0.5; }
      to   { width:600px; height:600px; opacity:0; }
    }
    @keyframes navSlide {
      from { opacity:0; transform:translateY(-24px); }
      to   { opacity:1; transform:translateY(0); }
    }
    @keyframes pulse { 0%,100%{opacity:1;} 50%{opacity:0.4;} }

    /* ── Realistic Water System ── */
    @keyframes causticBlob {
      0%   { opacity:0;   transform:scale(0.6) rotate(0deg)   skew(0deg,0deg); filter:blur(18px); }
      20%  { opacity:0.7; }
      55%  { opacity:0.55; transform:scale(1.25) rotate(8deg)  skew(4deg,2deg); filter:blur(10px); }
      80%  { opacity:0.4; }
      100% { opacity:0;   transform:scale(1.6) rotate(18deg)  skew(-2deg,5deg); filter:blur(22px); }
    }
    @keyframes lightShaft {
      0%,100% { opacity:0;   transform:scaleY(0.6) translateY(0)   skewX(-18deg); }
      30%     { opacity:0.5; }
      65%     { opacity:0.3; transform:scaleY(1.15) translateY(20px) skewX(-18deg); }
    }
    @keyframes underwaterDust {
      0%   { opacity:0;   transform:translateY(0)    translateX(0)  rotate(0deg); }
      15%  { opacity:0.6; }
      85%  { opacity:0.4; }
      100% { opacity:0;   transform:translateY(-120px) translateX(30px) rotate(360deg); }
    }
    @keyframes deepPulse {
      0%,100% { opacity:0.3; transform:scale(1);   }
      50%     { opacity:0.6; transform:scale(1.12); }
    }
    @keyframes surfaceShimmer {
      0%   { background-position:0% 50%; }
      50%  { background-position:100% 50%; }
      100% { background-position:0% 50%; }
    }
    @keyframes refractionDrift {
      0%,100% { transform:translateX(0)  translateY(0)  scaleX(1); }
      33%      { transform:translateX(6px) translateY(-4px) scaleX(1.01); }
      66%      { transform:translateX(-4px) translateY(3px) scaleX(0.99); }
    }

    /* Caustic blob patches */
    .caustic-blob {
      position:fixed; border-radius:50%; pointer-events:none; z-index:0;
      background: radial-gradient(ellipse at 40% 40%,
        rgba(103,232,249,0.45) 0%, rgba(34,211,238,0.25) 35%,
        rgba(14,165,233,0.12) 65%, transparent 100%);
      animation: causticBlob var(--dur,6s) var(--delay,0s) ease-in-out infinite;
    }
    /* Light shafts (deeper, wider than old caustics) */
    .light-shaft {
      position:fixed; top:-5%; pointer-events:none; z-index:0;
      transform-origin:top center;
      background: linear-gradient(180deg,
        rgba(103,232,249,0.12) 0%,
        rgba(34,211,238,0.07)  40%,
        rgba(14,165,233,0.03)  70%,
        transparent 100%);
      animation: lightShaft var(--dur,5s) var(--delay,0s) ease-in-out infinite;
    }
    /* Floating underwater dust specks */
    .water-dust {
      position:fixed; border-radius:50%; pointer-events:none; z-index:1;
      background:rgba(103,232,249,0.55);
      box-shadow:0 0 4px rgba(103,232,249,0.8);
      animation:underwaterDust var(--dur,8s) var(--delay,0s) ease-in infinite;
    }
    /* Deep glow orbs (larger, blurry, slow pulse) */
    .deep-glow {
      position:fixed; border-radius:50%; pointer-events:none; z-index:0; filter:blur(80px);
      animation:deepPulse var(--dur,8s) var(--delay,0s) ease-in-out infinite;
    }
    /* Animated water surface strip at very top */
    .water-surface-strip {
      position:fixed; top:0; left:0; right:0; height:3px; z-index:2; pointer-events:none;
      background:linear-gradient(90deg,
        transparent 0%, rgba(34,211,238,0.9) 20%,
        rgba(103,232,249,1) 50%, rgba(34,211,238,0.9) 80%, transparent 100%);
      background-size:200% 100%;
      animation:surfaceShimmer 4s linear infinite;
    }
    /* SVG distortion filter wrapper */
    #water-distort { position:fixed; inset:0; pointer-events:none; z-index:0; opacity:0.18; }

    /* ── Ambient orbs (fixed bg) ── */
    .orb {
      position: fixed; border-radius: 50%; pointer-events: none; z-index: 0;
    }
    .orb-1 { top:-200px; left:-200px; width:700px; height:700px; background:radial-gradient(circle,rgba(34,211,238,0.1) 0%,transparent 65%); }
    .orb-2 { bottom:-250px; right:-150px; width:800px; height:800px; background:radial-gradient(circle,rgba(6,182,212,0.08) 0%,transparent 65%); }
    .orb-3 { top:50%; left:50%; width:500px; height:500px; transform:translate(-50%,-50%); background:radial-gradient(circle,rgba(59,130,246,0.05) 0%,transparent 70%); }

    /* ── Caustic rays ── */
    .caustic {
      position: fixed; top:0; pointer-events:none; z-index:0;
      background: linear-gradient(180deg,rgba(34,211,238,0.07) 0%,rgba(34,211,238,0.04) 45%,transparent 100%);
      transform-origin: top center;
    }

    /* ── Bubbles ── */
    .bubble {
      position: fixed; bottom:-30px; border-radius:50%; pointer-events:none; z-index:1;
      background: radial-gradient(circle at 35% 35%, rgba(255,255,255,0.35), rgba(34,211,238,0.12) 60%, transparent);
      animation: floatUp var(--dur) var(--delay) ease-in infinite;
    }

    /* ── Layout utils ── */
    .container { max-width: 1152px; margin: 0 auto; padding: 0 24px; }
    .sr-only { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0,0,0,0); }

    /* ══════════════════════════════
       HEADER
    ══════════════════════════════ */
    header {
      position: sticky; top: 0; z-index: 50;
      padding: 16px 16px 8px;
      animation: navSlide 0.7s cubic-bezier(0.22,1,0.36,1) both;
    }
    nav {
      max-width: 1152px; margin: 0 auto;
      display: flex; align-items: center; justify-content: space-between;
      padding: 14px 28px; border-radius: 16px;
    }
    .nav-logo { display:flex; align-items:center; gap:10px; text-decoration:none; }
    .nav-logo span { font-family:'Outfit',sans-serif; font-size:1.2rem; font-weight:700; color:white; letter-spacing:-0.02em; }
    .nav-links { display:flex; align-items:center; gap:32px; }
    .nav-links a { color:rgba(255,255,255,0.6); font-size:14px; font-weight:500; text-decoration:none; transition:color 0.2s; }
    .nav-links a:hover { color:white; }
    .nav-cta {
      display:flex; align-items:center; gap:8px;
      padding:10px 20px; border-radius:12px; border:none; cursor:pointer;
      font-family:'DM Sans',sans-serif; font-weight:600; font-size:14px; color:white;
      transition:all 0.2s;
    }
    .nav-cta:hover { filter:brightness(1.1); transform:scale(1.05); }
    .nav-cta:active { transform:scale(0.95); }
    .hamburger { display:none; background:none; border:none; cursor:pointer; color:rgba(255,255,255,0.6); padding:4px; transition:color 0.2s; }
    .hamburger:hover { color:white; }
    .mobile-menu {
      display:none; flex-direction:column; gap:16px;
      max-width:1152px; margin:8px auto 0; padding:20px 24px;
      border-radius:16px;
    }
    .mobile-menu.open { display:flex; animation:fadeUp 0.25s ease; }
    .mobile-menu a { color:rgba(255,255,255,0.7); font-size:14px; font-weight:500; text-decoration:none; transition:color 0.2s; }
    .mobile-menu a:hover { color:white; }
    .mobile-menu .mobile-cta {
      display:flex; align-items:center; justify-content:center; gap:8px;
      padding:12px 20px; border-radius:12px; border:none; cursor:pointer;
      font-family:'DM Sans',sans-serif; font-weight:700; font-size:14px; color:white;
      margin-top:4px;
    }

    /* ══════════════════════════════
       HERO
    ══════════════════════════════ */
    .hero { position:relative; padding:64px 24px 32px; }
    @media (min-width:640px) { .hero { padding:96px 24px 64px; } }
    .hero-inner {
      max-width:1152px; margin:0 auto;
      display:flex; flex-direction:column; align-items:center; gap:48px;
    }
    @media (min-width:1024px) {
      .hero-inner { flex-direction:row; gap:80px; }
      .hero-copy { order:1; text-align:left; }
      .hero-mockup-wrap { order:2; }
    }
    .hero-copy { flex:1; text-align:center; }
    .hero-badge {
      display:inline-flex; align-items:center; gap:8px;
      padding:6px 16px; border-radius:999px; margin-bottom:32px;
      animation: fadeUp 0.6s 0.15s cubic-bezier(0.22,1,0.36,1) both;
    }
    .badge-dot {
      width:8px; height:8px; border-radius:50%; background:#22d3ee; flex-shrink:0;
      box-shadow:0 0 6px rgba(34,211,238,0.9); animation:pulse 2s ease-in-out infinite;
    }
    .badge-text { color:#67e8f9; font-size:13px; font-weight:500; }
    .hero-h1 {
      font-family:'Outfit',sans-serif; font-weight:900; line-height:1;
      font-size: clamp(3.2rem,6.5vw,5.8rem); letter-spacing:-0.04em;
      color:white; margin-bottom:24px;
      animation: fadeUp 0.85s 0.25s cubic-bezier(0.22,1,0.36,1) both;
    }
    .hero-h1 .gradient-text {
      background: linear-gradient(135deg,#67e8f9 0%,#22d3ee 45%,#818cf8 100%);
      -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text;
    }
    .hero-sub {
      color:rgba(255,255,255,0.55); font-size:18px; line-height:1.7;
      max-width:480px; margin:0 auto 40px;
      animation: fadeUp 0.7s 0.4s cubic-bezier(0.22,1,0.36,1) both;
    }
    @media (min-width:1024px) { .hero-sub { margin-left:0; } }
    .hero-actions {
      display:flex; flex-wrap:wrap; align-items:center; gap:16px; justify-content:center;
      margin-bottom:40px;
      animation: fadeUp 0.6s 0.55s cubic-bezier(0.22,1,0.36,1) both;
    }
    @media (min-width:1024px) { .hero-actions { justify-content:flex-start; } }
    .btn-primary {
      display:inline-flex; align-items:center; gap:12px;
      padding:16px 32px; border-radius:16px; border:none; cursor:pointer;
      font-family:'DM Sans',sans-serif; font-weight:700; font-size:16px; color:white;
      transition:all 0.2s; text-decoration:none;
    }
    .btn-primary:hover { filter:brightness(1.1); transform:scale(1.05); }
    .btn-primary:active { transform:scale(0.95); }
    .btn-ghost {
      display:inline-flex; align-items:center; gap:8px;
      color:rgba(255,255,255,0.55); font-size:14px; font-weight:500;
      text-decoration:none; transition:color 0.2s;
    }
    .btn-ghost:hover { color:rgba(255,255,255,0.9); }
    .btn-ghost svg { transition:transform 0.2s; }
    .btn-ghost:hover svg { transform:translateX(4px); }

    .hero-social-proof {
      display:flex; align-items:center; gap:16px; justify-content:center;
      animation: fadeIn 0.7s 0.9s both;
    }
    @media (min-width:1024px) { .hero-social-proof { justify-content:flex-start; } }
    .avatars { display:flex; }
    .avatars .av {
      width:32px; height:32px; border-radius:50%; border:2px solid rgba(2,12,24,0.8);
      display:flex; align-items:center; justify-content:center;
      font-size:11px; font-weight:700; color:white; margin-left:-8px; flex-shrink:0;
    }
    .avatars .av:first-child { margin-left:0; }
    .stars { display:flex; gap:2px; margin-bottom:2px; }
    .stars svg { fill:#fbbf24; }
    .proof-text { font-size:13px; color:rgba(255,255,255,0.45); }
    .proof-text strong { color:rgba(255,255,255,0.75); font-weight:600; }

    /* Hero surface line */
    .hero-surface {
      position:absolute; bottom:0; left:0; right:0;
      height:2px; pointer-events:none;
      background: linear-gradient(90deg,transparent 0%,rgba(34,211,238,0.6) 20%,rgba(103,232,249,0.8) 50%,rgba(34,211,238,0.6) 80%,transparent 100%);
      animation: waterSurface 3s ease-in-out infinite;
    }

    /* ── Chat mockup ── */
    .hero-mockup-wrap {
      display:flex; justify-content:center; flex-shrink:0;
      animation: fadeIn 0.9s 0.5s both;
    }
    .chat-mockup {
      position:relative; overflow:hidden; border-radius:24px;
      width:clamp(256px,30vw,320px);
      box-shadow:0 40px 80px rgba(0,0,0,0.55), 0 0 0 1px rgba(255,255,255,0.07), inset 0 1px 0 rgba(255,255,255,0.2);
      transform: perspective(1100px) rotateX(5deg) rotateY(-10deg) rotateZ(2deg);
      animation: floatCard 5s 1.6s ease-in-out infinite;
    }
    .mockup-shine {
      position:absolute; top:0; left:0; right:0; height:38%; border-radius:24px 24px 0 0;
      background:linear-gradient(180deg,rgba(255,255,255,0.07) 0%,transparent 100%);
      pointer-events:none; z-index:1;
    }
    .mockup-header {
      display:flex; align-items:center; gap:12px; padding:12px 16px;
      border-bottom:1px solid rgba(255,255,255,0.1);
      background:rgba(255,255,255,0.04);
    }
    .mockup-avatar {
      width:36px; height:36px; border-radius:50%; flex-shrink:0;
      background:linear-gradient(135deg,#38bdf8,#0284c7);
      display:flex; align-items:center; justify-content:center;
      font-size:13px; font-weight:700; color:white;
    }
    .mockup-name { font-family:'Outfit',sans-serif; font-weight:600; font-size:14px; color:white; }
    .mockup-status { display:flex; align-items:center; gap:6px; }
    .status-dot { width:6px; height:6px; border-radius:50%; background:#34d399; flex-shrink:0; }
    .status-text { font-size:11px; color:rgba(255,255,255,0.5); }
    .mockup-messages { padding:12px 16px; display:flex; flex-direction:column; justify-content:flex-end; gap:10px; min-height:170px; }
    .mock-msg { display:flex; }
    .mock-msg.own { justify-content:flex-end; }
    .mock-bubble {
      max-width:80%; font-size:12.5px; line-height:1.4; color:white;
      padding:8px 12px; border-radius:16px 16px 16px 4px;
    }
    .mock-bubble.own { border-radius:16px 16px 4px 16px; background:linear-gradient(135deg,#22d3ee,#0077ff); }
    .mock-bubble.other { background:rgba(255,255,255,0.13); }
    .mock-sender { font-size:10px; font-weight:600; color:rgba(103,232,249,0.8); margin-bottom:2px; }
    .mock-meta { display:flex; align-items:center; gap:2px; margin-top:2px; justify-content:flex-end; }
    .mock-time { font-size:10px; color:rgba(255,255,255,0.35); }
    .mockup-input-bar {
      display:flex; align-items:center; gap:8px; padding:10px 12px;
      border-top:1px solid rgba(255,255,255,0.08);
    }
    .mockup-input { flex:1; border-radius:999px; padding:8px 12px; font-size:12px; color:rgba(255,255,255,0.3); background:rgba(255,255,255,0.07); }
    .mockup-send {
      width:32px; height:32px; border-radius:50%; flex-shrink:0; border:none; cursor:default;
      background:linear-gradient(135deg,#22d3ee,#0077ff);
      box-shadow:0 0 14px rgba(34,211,238,0.55);
      display:flex; align-items:center; justify-content:center;
    }

    /* Message pop animation */
    .mock-msg { animation: msgPop 0.4s ease both; }
    .mock-msg:nth-child(1) { animation-delay:1.0s; opacity:0; animation-fill-mode:both; }
    .mock-msg:nth-child(2) { animation-delay:1.25s; opacity:0; animation-fill-mode:both; }
    .mock-msg:nth-child(3) { animation-delay:1.5s; opacity:0; animation-fill-mode:both; }
    .mock-msg:nth-child(4) { animation-delay:1.75s; opacity:0; animation-fill-mode:both; }

    /* ══════════════════════════════
       WAVE DIVIDERS
    ══════════════════════════════ */
    .wave-block { position:relative; overflow:hidden; pointer-events:none; }
    .wave-track { position:absolute; bottom:0; display:flex; width:200%; }
    .wave-track svg { width:50%; flex:0 0 50%; display:block; }

    /* ══════════════════════════════
       FEATURES
    ══════════════════════════════ */
    #features { padding:0 24px 112px; }
    .section-eyebrow { color:#22d3ee; font-size:11px; font-weight:700; letter-spacing:0.2em; text-transform:uppercase; margin-bottom:12px; }
    .section-h2 {
      font-family:'Outfit',sans-serif; font-weight:700; color:white; margin-bottom:16px;
      font-size:clamp(2rem,4vw,3rem); letter-spacing:-0.025em;
    }
    .section-sub { color:rgba(255,255,255,0.5); max-width:520px; margin:0 auto; font-size:16px; line-height:1.7; }
    .section-header { text-align:center; margin-bottom:56px; }

    .features-grid { display:grid; grid-template-columns:1fr; gap:20px; }
    @media (min-width:768px) { .features-grid { grid-template-columns:repeat(3,1fr); } }

    .feat-card {
      display:flex; flex-direction:column; gap:20px;
      padding:32px; border-radius:24px; cursor:default;
      transition:transform 0.3s ease;
    }
    .feat-card:hover { transform:translateY(-4px); }
    .feat-icon {
      width:56px; height:56px; border-radius:16px; flex-shrink:0;
      display:flex; align-items:center; justify-content:center;
    }
    .feat-icon svg { width:28px; height:28px; stroke-width:2; }
    .feat-title { font-family:'Outfit',sans-serif; font-weight:700; font-size:20px; color:white; letter-spacing:-0.015em; margin-bottom:10px; }
    .feat-desc { color:rgba(255,255,255,0.5); font-size:14px; line-height:1.7; }
    .feat-line { height:1px; margin-top:auto; opacity:0; transition:opacity 0.3s; }
    .feat-card:hover .feat-line { opacity:1; }

    /* scroll reveal */
    .reveal { opacity:0; transform:translateY(36px); transition:opacity 0.65s ease, transform 0.65s ease; }
    .reveal.visible { opacity:1; transform:translateY(0); }
    .reveal-delay-1 { transition-delay:0.12s; }
    .reveal-delay-2 { transition-delay:0.24s; }

    /* ══════════════════════════════
       CTA BANNER
    ══════════════════════════════ */
    .cta-section { padding:0 24px 112px; }
    .cta-inner {
      max-width:896px; margin:0 auto;
      position:relative; text-align:center; padding:64px 48px; overflow:hidden; border-radius:32px;
    }
    @media (min-width:640px) { .cta-inner { padding:64px 64px; } }
    .cta-glow {
      position:absolute; inset:0; pointer-events:none;
      background:radial-gradient(ellipse at 50% -10%,rgba(34,211,238,0.2) 0%,transparent 65%);
    }
    .ripple-ring {
      position:absolute; left:50%; top:50%; border-radius:50%; pointer-events:none;
      border:1px solid rgba(34,211,238,0.25); transform:translate(-50%,-50%);
      animation:ripple 4s ease-out infinite;
    }
    .ripple-ring:nth-child(2) { animation-delay:1.33s; }
    .ripple-ring:nth-child(3) { animation-delay:2.66s; }
    .cta-eyebrow { position:relative; color:#22d3ee; font-size:11px; font-weight:700; letter-spacing:0.2em; text-transform:uppercase; margin-bottom:16px; }
    .cta-h2 {
      position:relative; font-family:'Outfit',sans-serif; font-weight:900; color:white;
      font-size:clamp(2rem,4vw,3rem); letter-spacing:-0.03em; margin-bottom:20px;
    }
    .cta-sub { position:relative; color:rgba(255,255,255,0.5); font-size:16px; line-height:1.7; max-width:480px; margin:0 auto 40px; }
    .cta-btn {
      position:relative; display:inline-flex; align-items:center; gap:12px;
      padding:16px 40px; border-radius:16px; border:none; cursor:pointer;
      font-family:'DM Sans',sans-serif; font-weight:700; font-size:16px; color:white;
      transition:all 0.2s; text-decoration:none;
    }
    .cta-btn:hover { filter:brightness(1.1); transform:scale(1.05); }
    .cta-btn:active { transform:scale(0.95); }

    /* ══════════════════════════════
       FOOTER
    ══════════════════════════════ */
    footer { padding:0 24px 32px; }
    .footer-inner {
      max-width:1152px; margin:0 auto;
      display:flex; flex-direction:column; align-items:center; gap:20px;
      padding:20px 28px; border-radius:16px;
    }
    @media (min-width:640px) {
      .footer-inner { flex-direction:row; justify-content:space-between; }
    }
    .footer-logo { display:flex; align-items:center; gap:10px; }
    .footer-logo span { font-family:'Outfit',sans-serif; font-weight:700; font-size:16px; color:white; }
    .footer-links { display:flex; align-items:center; gap:24px; }
    .footer-links a { color:rgba(255,255,255,0.35); font-size:14px; text-decoration:none; transition:color 0.2s; }
    .footer-links a:hover { color:rgba(255,255,255,0.65); }
    .footer-copy { color:rgba(255,255,255,0.3); font-size:13px; }

    @media (max-width:767px) {
      .nav-links, .nav-cta { display:none !important; }
      .hamburger { display:block; }
    }
