
:root{
  --purple:#6f22b8;
  --purple-dark:#4b117f;
  --pink:#f43ba7;
  --gold:#f5aa1c;
  --blue:#18a8d6;
  --ink:#2a1d35;
  --muted:#6c6072;
  --cream:#fffaf6;
  --lav:#f7efff;
  --white:#ffffff;
  --shadow:0 18px 50px rgba(75,17,127,.12);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:Arial, Helvetica, sans-serif;
  color:var(--ink);
  background:var(--white);
  line-height:1.6;
}
img{max-width:100%;display:block}
a{color:inherit}
.wrap{width:min(1120px, calc(100% - 40px));margin:0 auto}

.site-header{
  position:sticky;top:0;z-index:20;
  background:rgba(255,255,255,.94);
  backdrop-filter:blur(10px);
  border-bottom:1px solid #eee6f3;
}
.nav-wrap{
  min-height:86px;
  display:flex;align-items:center;justify-content:space-between;gap:28px;
}
.brand img{width:260px;height:auto}
nav{display:flex;gap:24px;flex-wrap:wrap}
nav a{
  text-decoration:none;
  font-weight:700;
  color:var(--purple-dark);
}
nav a:hover{color:var(--pink)}

.hero{
  overflow:hidden;
  background:
    radial-gradient(circle at 85% 15%, rgba(244,59,167,.16), transparent 28%),
    radial-gradient(circle at 10% 25%, rgba(24,168,214,.13), transparent 30%),
    linear-gradient(180deg, #fff 0%, #fff8fd 100%);
}
.hero-grid{
  min-height:650px;
  display:grid;
  grid-template-columns:1.04fr .96fr;
  align-items:center;
  gap:48px;
  padding:74px 0 84px;
}
.eyebrow{
  margin:0 0 10px;
  text-transform:uppercase;
  letter-spacing:.14em;
  font-size:.79rem;
  font-weight:800;
  color:var(--pink);
}
.center{text-align:center}
h1,h2,h3{line-height:1.12;margin-top:0}
h1{
  font-family:Georgia, 'Times New Roman', serif;
  font-size:clamp(2.8rem,5vw,5.35rem);
  letter-spacing:-.035em;
  margin-bottom:22px;
  color:var(--purple-dark);
}
h2{
  font-family:Georgia, 'Times New Roman', serif;
  font-size:clamp(2.2rem,4vw,3.6rem);
  color:var(--purple-dark);
  text-align:center;
  margin-bottom:38px;
}
h3{
  font-family:Georgia, 'Times New Roman', serif;
  color:var(--purple-dark);
  font-size:2rem;
  margin-bottom:14px;
}
.lead{font-size:1.2rem;color:var(--muted);max-width:650px}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:30px}
.button{
  display:inline-block;
  padding:13px 21px;
  border-radius:999px;
  font-weight:800;
  text-decoration:none;
}
.button.primary{background:var(--purple);color:#fff;box-shadow:0 10px 26px rgba(111,34,184,.24)}
.button.secondary{border:2px solid var(--purple);color:var(--purple)}
.hero-art{
  position:relative;
  min-height:490px;
}
.hero-art img{
  position:absolute;
  width:58%;
  aspect-ratio:1/1;
  object-fit:cover;
  border-radius:28px;
  box-shadow:var(--shadow);
  border:7px solid #fff;
}
.hero-art img:first-child{left:0;top:8%;transform:rotate(-5deg)}
.hero-art img:last-child{right:0;bottom:2%;transform:rotate(5deg)}

.section{padding:90px 0}
.books-section{background:var(--cream)}
.book-grid{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:34px;
}
.book-card{
  background:#fff;
  border-radius:28px;
  overflow:hidden;
  box-shadow:var(--shadow);
  display:grid;
  grid-template-columns:44% 56%;
  min-height:470px;
}
.book-cover{width:100%;height:100%;object-fit:cover}
.book-copy{padding:42px 34px;align-self:center}
.book-copy p{color:var(--muted);font-size:1.05rem}
.coming-link{display:inline-block;margin-top:12px;color:var(--purple);font-weight:800}

.about-section{
  background:linear-gradient(135deg,var(--lav),#fff 60%);
}
.about-grid{
  display:grid;
  grid-template-columns:.78fr 1.22fr;
  align-items:center;
  gap:64px;
}
.about-grid h2{text-align:left;margin-bottom:24px}
.about-grid p{font-size:1.12rem;color:var(--muted)}
.portrait-wrap{
  padding:13px;
  border-radius:50% 50% 46% 54% / 46% 52% 48% 54%;
  background:linear-gradient(145deg,var(--purple),var(--pink),var(--gold));
  box-shadow:var(--shadow);
}
.portrait{
  width:100%;
  aspect-ratio:4/5;
  object-fit:cover;
  object-position:center 28%;
  border-radius:inherit;
  border:8px solid #fff;
}
.signature{
  font-family:Georgia,'Times New Roman',serif;
  color:var(--purple)!important;
  font-weight:700;
  font-size:1.3rem!important;
}

.fun-section{background:#fff}
.fun-card{
  border-radius:30px;
  background:linear-gradient(115deg,var(--purple-dark),var(--purple));
  color:white;
  padding:56px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:40px;
  box-shadow:var(--shadow);
}
.fun-card h2{color:#fff;text-align:left;margin-bottom:14px}
.fun-card .eyebrow{color:#ffc8eb}
.fun-card p{max-width:720px;margin-bottom:0}
.sparkles{
  font-size:3.2rem;
  letter-spacing:.12em;
  color:#ffd36a;
  white-space:nowrap;
}

.contact-section{background:var(--cream)}
.contact-card{text-align:center;max-width:760px}
.contact-card h2{margin-bottom:16px}
.contact-card p{color:var(--muted);font-size:1.1rem}
.email-link{
  display:inline-block;
  margin-top:8px;
  color:var(--purple);
  font-size:clamp(1.25rem,3vw,1.8rem);
  font-weight:800;
  text-decoration:none;
  border-bottom:2px solid rgba(111,34,184,.25);
}

footer{
  background:var(--purple-dark);
  color:#fff;
  padding:24px 0;
  font-size:.92rem;
}
.footer-inner{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}

@media (max-width:900px){
  .nav-wrap{padding:16px 0;align-items:flex-start}
  .brand img{width:210px}
  nav{justify-content:flex-end}
  .hero-grid{grid-template-columns:1fr;padding-top:54px}
  .hero-art{min-height:430px}
  .book-card{grid-template-columns:1fr}
  .book-cover{aspect-ratio:1/1;height:auto}
  .about-grid{grid-template-columns:1fr;gap:38px}
  .portrait-wrap{max-width:430px;margin:0 auto}
}
@media (max-width:640px){
  .wrap{width:min(100% - 26px,1120px)}
  .nav-wrap{display:block;text-align:center}
  .brand img{margin:0 auto 12px}
  nav{justify-content:center;gap:14px;font-size:.9rem}
  .hero-grid{min-height:auto;padding:45px 0 66px}
  .hero-art{min-height:330px}
  .section{padding:64px 0}
  .book-grid{grid-template-columns:1fr}
  .fun-card{padding:38px 26px;display:block}
  .sparkles{margin-top:28px;font-size:2rem}
}

.book-button{margin-top:14px}
