:root{
  --bg:#ffffff;
  --text:#1b1b1f;
  --muted:#5a5a6a;
  --line:#e7e3ef;
  --card:#ffffff;
  --shadow: 0 14px 34px rgba(28, 18, 46, .10);
  --radius:18px;

  /* Brand: purple accents on white background */
  --accent:#6a3fbf;      /* royal purple */
  --accent2:#9b7be8;     /* soft lavender */
  --accent3:#3d2a66;     /* deep plum */
  --surface:#fbf9ff;     /* faint lavender tint */
  --font: ui-serif, Georgia, Cambria, "Times New Roman", Times, serif;
  --font2: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;

  --max:1100px;
}

*{box-sizing:border-box}
html,body{margin:0;padding:0;background:var(--bg);color:var(--text);}

body{
  font-family: var(--font2);
  line-height: 1.55;
}

a{color:var(--accent);text-decoration:none}
a:hover{text-decoration:underline}
img{max-width:100%;display:block;border-radius:14px}

.container{max-width:var(--max);margin:0 auto;padding:24px}

.topbar{
  position:sticky;top:0;z-index:20;
  background:rgba(255,255,255,.90);
  backdrop-filter: blur(10px);
  border-bottom:1px solid var(--line);
}

.nav-inner{display:flex;align-items:center;justify-content:space-between;gap:18px}
.brand{display:flex;align-items:center;gap:12px;color:var(--text);font-weight:800}
.brand-mark{
  width:42px;height:42px;border-radius:14px;overflow:hidden;
  display:grid;place-items:center;border:1px solid var(--line);background:#fff;
  box-shadow: 0 10px 22px rgba(28, 18, 46, .08);
}
.brand-mark img{border-radius:0}
.brand-title{display:flex;flex-direction:column;line-height:1.05}
.brand-title span:first-child{font-family:var(--font); letter-spacing:.3px; font-size:1.05rem}
.brand-title span:last-child{font-size:.84rem;color:var(--muted);font-weight:700}

.menu{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.menu a{
  padding:10px 12px;border-radius:12px;color:var(--muted);font-weight:750;
}
.menu a:hover{background:var(--surface);color:var(--accent3);text-decoration:none}

.cta{
  display:inline-flex;align-items:center;justify-content:center;
  padding:12px 16px;border-radius:14px;
  background:linear-gradient(135deg, var(--accent), var(--accent2));
  color:#fff;font-weight:850;
  box-shadow: var(--shadow);
}
.cta:hover{filter:brightness(1.03);text-decoration:none}
.cta.secondary{
  background:#fff;color:var(--accent3);
  border:1px solid rgba(106,63,191,.35);
  box-shadow:none;
}

.hero{
  display:grid;grid-template-columns: 1.1fr .9fr;gap:30px;align-items:center;
  padding:34px;border-radius:var(--radius);
  background:linear-gradient(180deg, var(--surface), #ffffff);
  border:1px solid var(--line);
  box-shadow: var(--shadow);
}

.kicker{
  color:var(--accent);
  font-weight:900;
  letter-spacing:.16em;
  text-transform:uppercase;
  font-size:.78rem
}

.h1{
  font-family:var(--font);
  font-size:2.35rem;
  line-height:1.10;
  margin:10px 0 10px;
  color: var(--accent3);
}
.lead{color:var(--muted);font-size:1.05rem;line-height:1.65}
.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:16px}

.section{margin-top:24px}
.section h2{
  font-family:var(--font);
  margin:0 0 10px;
  color: var(--accent3);
}

.grid{display:grid;gap:16px}
.grid.cards{grid-template-columns: repeat(3, 1fr)}
.card{
  padding:18px;border-radius:var(--radius);
  background:var(--card);
  border:1px solid var(--line);
  box-shadow: 0 10px 24px rgba(28, 18, 46, .07);
}
.card h3{margin:0 0 8px;font-family:var(--font);color:var(--accent3)}
.card p{margin:0;color:var(--muted)}

.split{display:grid;grid-template-columns: 1fr 1fr;gap:18px}

.banner{
  padding:18px;border-radius:var(--radius);
  background:linear-gradient(90deg, rgba(106,63,191,.10), rgba(155,123,232,.12));
  border:1px solid var(--line);
}

.small{font-size:.98rem;color:var(--muted);line-height:1.7}
.note{color:var(--muted);font-size:.92rem}
.pills{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.pill{
  padding:8px 10px;border-radius:999px;
  border:1px solid var(--line);
  background:var(--surface);
  color:var(--accent3);
  font-weight:800;font-size:.88rem;
}

.form{display:grid;gap:12px}
label{font-weight:800;font-size:.92rem;color:var(--accent3)}
input, textarea, select{
  width:100%;
  padding:12px 12px;
  border-radius:14px;
  border:1px solid var(--line);
  background:#fff;
  color:var(--text);
  font-family: var(--font2);
}
textarea{min-height:130px;resize:vertical}

.footer{
  margin-top:34px;padding-top:18px;border-top:1px solid var(--line);
  color:var(--muted);font-size:.95rem
}

.badge-row{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.badge{
  display:inline-flex;align-items:center;gap:10px;
  padding:10px 12px;border-radius:14px;border:1px solid var(--line);
  background:#fff;
}
.badge strong{color:var(--accent3)}
.badge span{color:var(--muted);font-size:.94rem}

@media (max-width: 900px){
  .hero{grid-template-columns: 1fr}
  .grid.cards{grid-template-columns: 1fr}
  .split{grid-template-columns:1fr}
  .menu{display:none}
}
