:root {
  --bg: #fbfdff;
  --surface: #ffffff;
  --text: #0f1722;
  --accent: #00cfa8; /* primary color from logo */
  --accent-dark: #00b08f;
  --accent-2: #f91f82; /* secondary / highlight color from logo */
  --accent-2-dark: #e31c73;
  --muted: #58606b;
  --gradient-accent: linear-gradient(90deg, var(--accent), var(--accent-2));
}
*{box-sizing:border-box}
body{font-family:Inter, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial; margin:0;color:var(--text);background:var(--bg);line-height:1.6}
.container{max-width:1100px;margin:0 auto;padding:1rem}
.site-header{border-bottom:1px solid #e6e6e6}
.site-header .container{display:flex;align-items:center;justify-content:space-between;padding:1rem 0}
.logo{font-weight:700;color:var(--text);text-decoration:none;display:flex;align-items:center}
.site-logo{height:40px;display:block}
.main-nav a{margin-left:1rem;color:var(--muted);text-decoration:none}
.hero{background:linear-gradient(180deg, rgba(0,207,168,0.03) 0%, rgba(249,31,130,0.02) 100%);padding:4rem 0;text-align:center}
.hero h1{font-size:clamp(1.4rem,3vw,2.6rem);margin:0 0 .5rem}
.lead{color:var(--muted);margin-bottom:1rem}
.btn{display:inline-block;background:var(--gradient-accent);color:#fff;padding:.6rem 1rem;border-radius:8px;text-decoration:none;box-shadow:0 6px 18px rgba(0,0,0,0.08);border:none}
.btn:hover{transform:translateY(-3px);box-shadow:0 12px 30px rgba(0,0,0,0.12)}
.btn.ghost{background:transparent;color:var(--accent-2);border:1px solid rgba(0,0,0,0.06)}
.btn.ghost:hover{color:#fff;background:var(--accent-2);border-color:var(--accent-2);box-shadow:0 8px 20px rgba(249,31,130,0.12)}
.btn.ghost{background:transparent;color:var(--accent-2);border:1px solid rgba(0,0,0,0.06)}
.services{padding:2rem 0}
.services h2{margin-top:0}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem}
.grid article{background:var(--surface);padding:1.2rem;border-radius:10px;border:1px solid rgba(15,23,34,0.04);box-shadow:0 6px 18px rgba(0,0,0,0.04);transition:transform .16s ease,box-shadow .16s ease}
.grid article:hover{transform:translateY(-6px);box-shadow:0 18px 40px rgba(0,0,0,0.08)}
.site-footer{border-top:1px solid rgba(15,23,34,0.04);padding:1rem 0;margin-top:2rem;text-align:center;color:var(--muted)}

/* Headings and links */
h2{position:relative;padding-bottom:0.6rem}
h2:after{content:'';position:absolute;left:0;bottom:0;height:3px;width:56px;border-radius:4px;background:var(--gradient-accent)}
a{color:var(--accent-2);text-decoration:none}
a:hover{text-decoration:underline}

/* About layout tweaks */
.about-grid{display:flex;gap:1rem;align-items:center}
.about-photo img{border-radius:12px;border:1px solid rgba(15,23,34,0.04);box-shadow:0 8px 24px rgba(0,0,0,0.06)}

/* Accessibility focus */
:focus{outline:3px solid rgba(0,207,168,0.18);outline-offset:3px}
@media (max-width:600px){.site-header .container{padding:.6rem}.hero{padding:2rem 0}}
