
:root{
  --lavender:#BDA7D6;
  --dusty:#6D5B7F;
  --charcoal:#1F1F23;
  --gold:#D4AF37;
  --cream:#F7F2E6;
  --paper:#FFFDF8;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:Georgia, "Times New Roman", serif;
  color:var(--charcoal);
  background:var(--cream);
  line-height:1.6;
}
a{color:inherit}
.site-header{
  position:sticky; top:0; z-index:10;
  display:flex; align-items:center; justify-content:space-between;
  padding:14px 5vw;
  background:rgba(247,242,230,.96);
  border-bottom:1px solid rgba(109,91,127,.18);
  backdrop-filter:blur(8px);
}
.brand img{width:92px; height:92px; object-fit:contain; border-radius:50%}
nav{display:flex; gap:24px; flex-wrap:wrap}
nav a{text-decoration:none; font-weight:700; letter-spacing:.03em}
.hero{
  min-height:78vh;
  display:grid; grid-template-columns:1.1fr .9fr; gap:40px;
  align-items:center; padding:70px 7vw;
  background:
    radial-gradient(circle at 75% 25%, rgba(189,167,214,.28), transparent 30%),
    linear-gradient(135deg, #fffaf0, var(--cream));
}
.hero h1,.section h2{font-size:clamp(2.2rem,5vw,4.8rem); line-height:1.05; margin:.2em 0}
.hero-copy p:not(.eyebrow){max-width:650px; font-size:1.12rem}
.hero-mark{text-align:center}
.hero-mark img{width:min(540px,90%); filter:drop-shadow(0 20px 35px rgba(31,31,35,.12))}
.eyebrow{
  text-transform:uppercase; letter-spacing:.18em; font-size:.82rem;
  color:var(--dusty); font-weight:800;
}
.actions{display:flex; gap:14px; flex-wrap:wrap; margin-top:28px}
.btn{
  display:inline-block; text-decoration:none; padding:14px 22px; border-radius:999px;
  font-weight:800; letter-spacing:.02em; border:1px solid var(--charcoal);
}
.btn.primary{background:var(--charcoal); color:var(--cream)}
.btn.secondary{background:transparent}
.btn.large{padding:16px 28px}
.section{padding:80px 7vw}
.two-col{display:grid; grid-template-columns:1fr 1fr; gap:60px; align-items:start}
.alt{background:var(--dusty); color:white}
.alt .eyebrow{color:#e9dcf5}
.section-head{text-align:center; margin-bottom:34px}
.cards{display:grid; grid-template-columns:repeat(3,1fr); gap:22px}
.card{
  background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.18);
  padding:28px; border-radius:24px;
}
.card .icon{font-size:2rem; color:var(--gold)}
.order-panel{
  display:flex; justify-content:space-between; gap:40px; align-items:center;
  background:var(--paper); border-top:1px solid rgba(31,31,35,.08); border-bottom:1px solid rgba(31,31,35,.08)
}
.order-panel > div{max-width:760px}
.contact{text-align:center}
.contact a{color:var(--dusty); font-weight:700}
footer{text-align:center; padding:28px; background:var(--charcoal); color:var(--cream)}
@media(max-width:800px){
  .site-header{align-items:flex-start}
  nav{gap:12px; font-size:.9rem; justify-content:flex-end}
  .brand img{width:72px;height:72px}
  .hero,.two-col{grid-template-columns:1fr}
  .hero{padding-top:40px}
  .hero-mark{order:-1}
  .cards{grid-template-columns:1fr}
  .order-panel{flex-direction:column; align-items:flex-start}
}

.journal-teaser{
  display:flex;justify-content:space-between;gap:42px;align-items:center;
  background:linear-gradient(135deg,#efe6f4,#fffaf0);
  border-top:1px solid rgba(109,91,127,.16);
  border-bottom:1px solid rgba(109,91,127,.16);
}
.journal-teaser>div{max-width:760px}
@media(max-width:800px){.journal-teaser{flex-direction:column;align-items:flex-start}}
