
*{box-sizing:border-box}
html,body{margin:0;padding:0;background:var(--bg);color:var(--text);font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;line-height:1.6}
:root{
  --bg:#070b12;
  --bg-hero:#091728;
  --bg-alt:#0d1f33;
  --card:#0e1f31;
  --muted:#97a4b3;
  --text:#e9eef5;
  --brand:#94b7ff;
  --accent:#54d6c3;
  --ring:#1d75ff33;
  --shadow:0 10px 30px rgba(0,0,0,.25);
}

.container{max-width:1200px;margin:0 auto;padding:0 20px}
.container.narrow{max-width:900px}

.site-header{position:sticky;top:0;background:rgba(7,11,18,.7);backdrop-filter:blur(8px);border-bottom:1px solid #101828;z-index:10}
.site-header .container{display:flex;align-items:center;justify-content:space-between;height:64px}

/* Brand: v5 style */
.brand{display:flex;align-items:center;gap:12px}
.logo{width:36px;height:36px;border-radius:10px;background:linear-gradient(180deg,#1f3b64,#0b1e33);display:grid;place-items:center;color:#d9e6ff;font-weight:800;box-shadow:var(--shadow)}
.name{font-weight:700;letter-spacing:.3px;color:#dbe7ff}

nav a{color:var(--text);opacity:.8;text-decoration:none;margin-left:18px;font-weight:500}
nav a:hover{opacity:1}

.hero{position:relative;overflow:hidden;background:linear-gradient(160deg,var(--bg-hero),#06101d 60%, #04080f)}
.hero-bg{position:absolute;inset:-20% -10% -10% -10%;background:
  radial-gradient(600px 300px at 10% 10%, #1d75ff22 0, transparent 60%),
  radial-gradient(700px 400px at 90% 30%, #2bd3c322 0, transparent 65%),
  radial-gradient(800px 500px at 50% 110%, #123b7a33 0, transparent 70%);
  filter:saturate(110%);z-index:0}
.hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:center;padding:64px 0 40px}
.hero-media img{width:100%;height:auto;border-radius:20px;box-shadow:var(--shadow);background:#000}
.hero-copy h1{font-size:48px;line-height:1.05;margin:0 0 14px}
.hero-copy .tag{font-size:18px;opacity:.95;color:#dbe7ff;margin:0 0 22px}
.portrait img{width:100%;max-width:420px;border-radius:16px;box-shadow:var(--shadow)}

.section{padding:64px 0;border-top:1px solid #0f1a2a}
.section.alt{background:var(--bg-alt)}
.section h2{font-size:32px;margin:0 0 14px;color:#eaf2ff}
.section p{color:#d8e3f1}
.section .bullets{list-style:none;padding:0;margin:10px 0 0;display:grid;gap:10px}
.section .bullets li{padding-left:30px;position:relative;background:transparent}
.section .bullets li::before{content:"✓";position:absolute;left:0;top:0.2em;color:var(--accent);font-weight:700}

.two-col{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:start}
.rounded{width:100%;height:auto;border-radius:18px;box-shadow:var(--shadow)}

.cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.card{background:var(--card);border:1px solid #13253d;border-radius:18px;padding:22px;box-shadow:var(--shadow)}
.card h3{margin:0 0 8px;font-size:22px;color:#eaf2ff}
.card p{margin:0}

.video-wrap{margin:10px 0 12px;border-radius:16px;overflow:hidden;border:1px solid #12243b}
.video-wrap video{display:block;width:100%;height:auto;background:#000}

.footer{padding:60px 0;background:linear-gradient(180deg,#08111d,#060a12)}
.footer h2{margin-top:0}
.contact-form{display:grid;gap:12px}
.contact-form .row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
input,textarea{width:100%;background:#0b1524;color:var(--text);border:1px solid #13253d;border-radius:12px;padding:12px 14px;font:inherit;outline:none}
input:focus,textarea:focus{border-color:#1d75ff;box-shadow:0 0 0 4px var(--ring)}
textarea{min-height:140px;resize:vertical}
button{background:linear-gradient(180deg,#1d75ff,#0f5ce0);color:#fff;border:none;padding:12px 18px;border-radius:14px;font-weight:700;cursor:pointer;box-shadow:var(--shadow)}
button:hover{filter:brightness(1.05)}

.small{font-size:14px;color:#c6d4e4}
.dim{opacity:.6;margin-top:6px}

@media (max-width: 980px){
  .hero-grid{grid-template-columns:1fr;gap:22px;padding-top:32px}
  .two-col{grid-template-columns:1fr}
  .cards{grid-template-columns:1fr}
  .site-header .container{height:auto;padding:12px 20px;flex-wrap:wrap;gap:10px}
  nav{width:100%;display:flex;flex-wrap:wrap;gap:10px;margin-top:8px}
  nav a{margin:0 12px 0 0}
  .hero-copy h1{font-size:38px}
}


/* Media box used for images/videos inside cards */
.media-wrap{margin:10px 0 12px;border-radius:16px;overflow:hidden;border:1px solid #12243b;background:#000}
.media-wrap img{display:block;width:100%;height:auto}


/* Aspect ratio helper (16:9) for media so images crop like videos */
.media-wrap.ratio-16x9{position:relative;padding-top:56.25%;} /* 9/16 = 56.25% */
.media-wrap.ratio-16x9 img.cover{
  position:absolute;inset:0;width:100%;height:100%;
  object-fit:cover;object-position:50% 42%; /* center with slight vertical bias to eyes */
  display:block;
}

.site-header .logo{width:36px;height:36px;min-width:36px;flex:0 0 36px;border-radius:10px;overflow:hidden;display:flex;align-items:center;justify-content:center;background:linear-gradient(160deg,#0b1626,#0a1a2d);box-shadow:var(--shadow)}
.site-header .logo img{width:100%;height:100%;object-fit:cover;object-position:left center;border-radius:inherit;display:block}
.contact-social{display:flex;gap:14px;margin-top:10px}
.contact-social a{width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:#ffffff;color:#111827;border:1px solid #d0d7e2;box-shadow:0 10px 24px rgba(0,0,0,.60);opacity:0.96;transition:transform 120ms ease, box-shadow 120ms ease, opacity 120ms ease}
.contact-social a:hover{opacity:1;transform:translateY(-1px);box-shadow:0 14px 30px rgba(0,0,0,.75)}
.contact-social svg{width:18px;height:18px;display:block;flex:none}


.blog-social{display:flex;align-items:center;gap:12px;margin-top:10px}
.blog-social-label{font-size:12px;text-transform:uppercase;letter-spacing:.16em;color:var(--muted)}
.blog-social-icons{display:flex;gap:10px}
.blog-social-icons a{width:30px;height:30px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:#f9fafb;color:#111827;border:1px solid #d0d7e2;box-shadow:0 8px 20px rgba(0,0,0,.45)}
.blog-social-icons a svg{width:16px;height:16px}
.blog-social-icons a:hover{background:#ffffff;box-shadow:0 10px 26px rgba(0,0,0,.65)}
