:root{
  --bg1:#0f172a; /* slate-900 */
  --bg2:#0b3b4c; /* deep teal */
  --bg3:#0f766e; /* jade */
  --bg4:#a58b3d; /* muted gold */
  --text:#e5e7eb; /* gray-200 */
  --card:#111827; /* gray-900 */
  --accent:#a7f3d0; /* mint */
}

.logo {
  height: 200px;        /* adjust as needed */
  width: auto;
  vertical-align: middle;
}

*{box-sizing:border-box}
html{min-height: 100%;}
body{min-height: 100svh;}
body{
  margin:0;
  color:var(--text);
  font:16px/1.6 system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  background:
    radial-gradient(60rem 40rem at 10% 10%, color-mix(in oklab, var(--bg3) 22%, transparent) 0%, transparent 60%),
    radial-gradient(50rem 35rem at 90% 20%, color-mix(in oklab, var(--bg4) 16%, transparent) 0%, transparent 60%),
    conic-gradient(from .125turn at 50% 50%, var(--bg1), var(--bg2), var(--bg1));
  background-attachment:fixed;
  animation: swirl 24s linear infinite;
}

@keyframes swirl{ to{ filter:hue-rotate(20deg)} }

.container{max-width:980px;margin:0 auto;padding:2.5rem 1.25rem}

.nav{display:flex;align-items:center;justify-content:space-between;padding:1rem 0}
.brand{font-weight:700;font-size:1.25rem;color:var(--text);text-decoration:none;letter-spacing:.04em}
.nav-links a{color:var(--text);opacity:.85;margin-left:1rem;text-decoration:none}
.nav-links a:hover{opacity:1}

.card{
  background: color-mix(in oklab, var(--card) 90%, white 10%);
  border:1px solid rgba(255,255,255,.06);
  border-radius:16px;
  padding:1.75rem;
  box-shadow:0 10px 30px rgba(0,0,0,.35);
}

h1,h2{margin:.25rem 0 1rem 0;line-height:1.2}
p{margin:0 0 1rem 0}

a{color:var(--accent)}

/* Contact form basics */
form .form-row{display:flex;gap:1rem}
form .form-group{flex:1;display:flex;flex-direction:column;margin-bottom:1rem}
input,textarea,select{
  background:#0b1220;color:var(--text);
  border:1px solid rgba(255,255,255,.08);
  border-radius:10px;padding:.75rem;
}
input::placeholder, textarea::placeholder{color:#9ca3af}
.btn-send{
  background:linear-gradient(90deg, var(--bg3), #10b981);
  border:0;border-radius:10px;
  padding:.7rem 1rem;color:#032b27;font-weight:700;cursor:pointer
}
.btn-send:hover{filter:brightness(1.05)}
.flashwrap{margin-bottom:1rem}
.flash{padding:.75rem 1rem;border-radius:10px;margin:.25rem 0}
.flash.success{background:#063925}
.flash.danger{background:#3a0d0d}



.site-footer{opacity:.8;padding:2rem 0}
select:required:invalid { color:#9ca3af; }
option[value=""] { color:#9ca3af; }
