:root{
  --pink:#f26a8c;
  --pink-2:#ff88a9;
  --ink:#222222;
  --ink-soft:#555;
  --bg:#fff6f8;
  --card:#ffffff;
  --radius:16px;
}

*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;
  font-family: 'Montserrat', system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, 'Apple Color Emoji','Segoe UI Emoji', 'Segoe UI Symbol';
  color:var(--ink);
  background:var(--bg);
  line-height:1.6;
}

.container{max-width:1000px;margin:0 auto;padding:0 20px}

.site-header{
  position:sticky; top:0; z-index:10;
  background:#fff; border-bottom:1px solid #f0d9e1;
  backdrop-filter:saturate(180%) blur(6px);
}
.header-inner{display:flex; align-items:center; justify-content:space-between; min-height:64px}
.logo{height:40px; width:auto}

.nav a{
  margin-left:16px; text-decoration:none; color:var(--ink);
  font-weight:600;
}
.nav .btn{margin-left:20px}

.hero{
  background: linear-gradient(135deg, var(--pink), var(--pink-2));
  color:#fff; text-align:center;
  padding:96px 0 120px;
}
.hero-inner{display:flex; flex-direction:column; align-items:center}
.hero-mark{height:96px; width:auto; filter:drop-shadow(0 6px 16px rgba(0,0,0,0.12)); margin-bottom:16px}
.hero h1{font-size: clamp(32px, 6vw, 56px); margin:8px 0 8px}
.tagline{font-size: clamp(16px, 2.5vw, 20px); opacity:.95; margin:0 auto 20px; max-width:720px}
.cta-row{display:flex; gap:12px; flex-wrap:wrap; justify-content:center}

.section{padding:72px 0; background:#fff}
.section.alt{background:#fff; border-top:1px solid #f2e3ea; border-bottom:1px solid #f2e3ea}
.section h2{font-size: clamp(24px, 3.5vw, 34px); margin:0 0 20px}
.grid{display:grid; grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); gap:16px}
.card{background:var(--card); border:1px solid #f2e3ea; border-radius:var(--radius); padding:20px; box-shadow:0 2px 8px rgba(0,0,0,0.03)}
.card h3{margin-top:0}

.bullets{padding-left:20px}
.bullets li{margin:8px 0}

.contact{background:#fff}
.contact-rows{display:flex; gap:12px; flex-wrap:wrap; margin:16px 0 8px}

.btn{
  display:inline-block; padding:12px 18px; border-radius:999px;
  text-decoration:none; font-weight:700; border:2px solid var(--pink); color:var(--pink);
  transition: transform .06s ease, box-shadow .2s ease, background .2s ease, color .2s ease;
}
.btn:hover{transform: translateY(-1px); box-shadow:0 6px 18px rgba(242,106,140,.25)}
.btn.primary{background:var(--pink); color:#fff}
.btn.ghost{background:#fff}

.micro{color:var(--ink-soft); font-size:.9rem}
.footnote{color:var(--ink-soft); font-size:.95rem; margin-top:10px}

.site-footer{padding:28px 0; background:#fff; border-top:1px solid #f2e3ea}
.footer-inner{display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:12px}
.footer-inner a{color:var(--ink); font-weight:600; text-decoration:none}

@media (max-width:640px){
  .nav a{margin-left:12px}
}
.about-photo {
  width: 200px;
  height: 200px;
  border-radius: 100%;
  object-fit: cover;
  display: block;
  margin: 20px auto 30px;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15);
}
