body{
font-family: Arial, Helvetica, sans-serif;
background:#0f172a;
color:#e2e8f0;
margin:0;
}

header.nav{
display:flex;
align-items:center;
justify-content:space-between;
padding:20px 40px;
background:#0f172a;
}

.logo{
padding-left:10px;
}

.logo img{
height:28px;
width:auto;
display:flex;
filter: drop-shadow(0 0 4px rgba(255,255,255,0.15));
}

nav a{
margin-left:20px;
text-decoration:none;
color:#e2e8f0;
}

.hero{
text-align:center;
padding:120px 20px;
max-width:900px;
margin:auto;
}

.cta{
background:#7dd3fc;
padding:14px 28px;
border-radius:6px;
text-decoration:none;
color:#0f172a;
font-weight:bold;
display:inline-block;
margin-top:20px;
}

section{
padding:80px 20px;
max-width:900px;
margin:auto;
}

ul{
line-height:1.8;
}

.patent{
margin-top:20px;
font-style:italic;
}

form{
display:flex;
flex-direction:column;
gap:12px;
margin-top:20px;
}

input, textarea{
padding:12px;
border-radius:6px;
border:none;
font-size:14px;
}

button{
padding:12px;
background:#7dd3fc;
border:none;
border-radius:6px;
font-weight:bold;
cursor:pointer;
}

footer{
text-align:center;
padding:40px;
background:#1e293b;
margin-top:80px;
}

.cta-button {
display:inline-block;
margin-top:20px;
padding:12px 22px;
background:#111;
color:white;
text-decoration:none;
border-radius:6px;
font-weight:600;
}

.cta-button:hover {
background:#333;
}

footer {
margin-top:60px;
padding:30px;
text-align:center;
color:#777;
font-size:14px;
}

footer .legal {
margin-top:10px;
font-size:12px;
color:#999;
}

.subhead {
font-size:20px;
margin-top:20px;
opacity:0.9;
}

.category {
font-size:16px;
margin-top:10px;
opacity:0.75;
}

.tagline {
font-size:14px;
margin-top:12px;
opacity:0.6;
}

/* =========================
   GLOBAL IMPROVEMENTS
========================= */

* {
  box-sizing: border-box;
}

img {
  max-width: 100%;
  height: auto;
}

/* Better typography scaling */
h1 {
  font-size: clamp(28px, 5vw, 48px);
  line-height: 1.2;
}

h2 {
  font-size: clamp(22px, 4vw, 32px);
}

p {
  font-size: clamp(14px, 2.5vw, 18px);
}

/* =========================
   NAV (MOBILE FIX)
========================= */

header.nav {
  flex-wrap: wrap;
}

nav {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  width: 100%;
  margin-top: 10px;
}

nav a {
  margin: 8px 12px;
  font-size: 14px;
}

/* =========================
   HERO IMPROVEMENT
========================= */

.hero {
  padding: 80px 20px;
}

@media (max-width: 600px) {
  .hero {
    padding: 60px 16px;
  }
}

/* =========================
   SECTION SPACING
========================= */

section {
  padding: 60px 16px;
}

@media (max-width: 600px) {
  section {
    padding: 40px 16px;
  }
}

/* =========================
   FORM MOBILE FIX
========================= */

input, textarea, button {
  width: 100%;
  font-size: 16px;
}

/* =========================
   CTA BUTTON IMPROVEMENT
========================= */

.cta-button {
  font-size: 16px;
  padding: 14px 24px;
}

/* =========================
   FOOTER FIX
========================= */

footer {
  padding: 30px 16px;
}

.menu-toggle {
  display: none;
  background: none;
  border: none;
  color: white;
  font-size: 24px;
  cursor: pointer;
}

@media (max-width: 600px) {
  .menu-toggle {
    display: block;
  }

  nav {
    display: none;
    flex-direction: column;
    align-items: center;
  }

  nav.active {
    display: flex;
  }
}

@media (max-width: 768px) {
  .logo {
    height: 32px;   /* adjust as needed */
    max-width: 120px;
  }
}

html {
  scroll-behavior: smooth;
}