@import url('https://fonts.googleapis.com/css2?family=Cinzel:wght@400;500&family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;1,300;1,400;1,500&family=DM+Sans:wght@300;400;500&display=swap');
:root{
  --rose:#B07A7A;   --blush:#C9A8A8;   --petal:#D8BFC0;
  --cream:#F2EDE8;  --linen:#FAF7F4;   --sand:#BEB09A;
  --charcoal:#2C2420; --gray:#7A6E68;  --hair:#E3D8D2;
  --white:#FFFFFF;  --soft:#EDE6DF;
}
*{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{font-family:'DM Sans',sans-serif;color:var(--charcoal);background:var(--linen);padding-top:70px;}
a{text-decoration:none;color:inherit;}
img{max-width:100%;display:block;}

/* ── NAV ─────────────────────── */
.nav{position:fixed;top:0;left:0;right:0;z-index:200;
  background:rgba(250,247,244,0.97);backdrop-filter:blur(8px);
  border-bottom:0.5px solid var(--hair);}
.nav-inner{max-width:1160px;margin:0 auto;padding:0 5%;
  display:flex;align-items:center;justify-content:space-between;height:70px;}
.nav-logo img{height:46px;width:46px;object-fit:contain;
  border-radius:50%;border:0.5px solid var(--rose);}
.nav-links{display:flex;gap:28px;align-items:center;}
.nav-links a{font-family:'Cinzel',serif;font-size:9px;letter-spacing:0.16em;
  color:var(--gray);text-transform:uppercase;transition:color .2s;}
.nav-links a:hover,.nav-links a.active{color:var(--charcoal);}
.nav-cta{font-family:'Cinzel',serif;font-size:9px;letter-spacing:0.16em;
  text-transform:uppercase;color:var(--white);background:var(--rose);
  border:none;padding:9px 20px;cursor:pointer;transition:background .2s;}
.nav-cta:hover{background:#9A5F5F;}
.hamburger{display:none;flex-direction:column;gap:5px;
  cursor:pointer;padding:4px;background:none;border:none;}
.hamburger span{display:block;width:22px;height:1px;background:var(--gray);}
.mobile-menu{display:none;position:fixed;top:70px;left:0;right:0;
  background:var(--linen);border-top:0.5px solid var(--hair);
  padding:20px 5%;z-index:199;flex-direction:column;gap:16px;}
.mobile-menu a{font-family:'Cinzel',serif;font-size:10px;letter-spacing:0.18em;
  color:var(--gray);text-transform:uppercase;}
.mobile-menu.open{display:flex;}

/* ── HERO ────────────────────── */
.hero{background:var(--linen);padding:90px 5% 80px;
  position:relative;overflow:hidden;border-bottom:0.5px solid var(--hair);}
.hero-deco{position:absolute;right:-40px;top:-40px;width:55%;
  height:100%;pointer-events:none;opacity:0.55;}
.hero-inner{max-width:1160px;margin:0 auto;position:relative;z-index:1;}
.hero-eyebrow{font-family:'Cinzel',serif;font-size:9.5px;letter-spacing:0.3em;
  color:var(--rose);text-transform:uppercase;margin-bottom:18px;}
.hero h1{font-family:'Cormorant Garamond',serif;font-style:italic;font-weight:300;
  font-size:clamp(36px,5vw,68px);color:var(--charcoal);line-height:1.08;
  max-width:640px;margin-bottom:22px;}
.hero h1 em{font-style:normal;color:var(--rose);}
.hero-lead{font-size:15.5px;color:var(--gray);line-height:1.8;
  max-width:440px;font-weight:300;margin-bottom:34px;}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap;}
.btn-rose{font-family:'Cinzel',serif;font-size:9.5px;letter-spacing:0.18em;
  text-transform:uppercase;color:var(--white);background:var(--rose);
  border:none;padding:14px 32px;cursor:pointer;transition:background .2s;display:inline-block;}
.btn-rose:hover{background:#9A5F5F;}
.btn-outline{font-family:'Cinzel',serif;font-size:9.5px;letter-spacing:0.18em;
  text-transform:uppercase;color:var(--charcoal);background:transparent;
  border:0.5px solid var(--rose);padding:14px 32px;cursor:pointer;
  transition:all .2s;display:inline-block;}
.btn-outline:hover{background:var(--rose);color:var(--white);}

/* ── SECTIONS ────────────────── */
.section{padding:80px 5%;}
.section-inner{max-width:1160px;margin:0 auto;}
.section-white{background:var(--white);}
.section-cream{background:var(--cream);}
.section-linen{background:var(--linen);}
.section-rose-light{background:#F8F0EE;}
.section-accent{background:var(--rose);}
.eyebrow{font-family:'Cinzel',serif;font-size:9.5px;letter-spacing:0.28em;
  color:var(--rose);text-transform:uppercase;margin-bottom:12px;}
.section-title{font-family:'Cormorant Garamond',serif;font-style:italic;
  font-weight:300;font-size:clamp(26px,3.5vw,44px);
  color:var(--charcoal);line-height:1.18;margin-bottom:16px;}
.hair{width:40px;height:0.5px;background:var(--rose);margin:18px 0;border:none;}
.body-text{font-size:15px;color:var(--gray);line-height:1.85;font-weight:300;}

/* ── CARDS ───────────────────── */
.card{background:var(--white);border:0.5px solid var(--hair);padding:26px 24px;}
.card-cream{background:var(--cream);border:0.5px solid var(--soft);padding:26px 24px;}
.card-label{font-family:'Cinzel',serif;font-size:8.5px;letter-spacing:0.18em;
  color:var(--rose);text-transform:uppercase;margin-bottom:8px;}
.card h3{font-family:'Cormorant Garamond',serif;font-style:italic;font-weight:300;
  font-size:22px;color:var(--charcoal);margin-bottom:8px;line-height:1.2;}
.card p{font-size:13px;color:var(--gray);line-height:1.65;}

/* ── GRID ────────────────────── */
.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:20px;}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;}
.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;}
.grid-7{display:grid;grid-template-columns:repeat(7,1fr);gap:10px;}

/* ── QUOTE ───────────────────── */
.quote-block{border-left:2px solid var(--rose);padding:14px 22px;}
.quote-block p{font-family:'Cormorant Garamond',serif;font-style:italic;
  font-size:20px;color:var(--charcoal);line-height:1.55;font-weight:300;}

/* ── DIVIDER ─────────────────── */
.divider{width:100%;height:0.5px;background:var(--hair);margin:48px 0;border:none;}

/* ── MOSAIC TILES DECORATION ── */
.tiles-deco{display:flex;gap:3px;margin-bottom:28px;}
.tiles-deco span{display:block;width:10px;height:10px;}

/* ── PODCAST ─────────────────── */
.episode-card{background:var(--white);border:0.5px solid var(--hair);
  padding:22px 24px;display:flex;gap:18px;align-items:flex-start;
  transition:border-color .2s;}
.episode-card:hover{border-color:var(--rose);}
.ep-num{font-family:'Cormorant Garamond',serif;font-style:italic;
  font-size:28px;color:var(--petal);line-height:1;flex-shrink:0;width:36px;}
.ep-label{font-family:'Cinzel',serif;font-size:8px;letter-spacing:0.16em;
  color:var(--rose);text-transform:uppercase;margin-bottom:5px;}
.ep-title{font-family:'Cormorant Garamond',serif;font-style:italic;
  font-size:18px;color:var(--charcoal);margin-bottom:6px;font-weight:300;}
.ep-desc{font-size:12.5px;color:var(--gray);line-height:1.6;}
.ep-tag{display:inline-block;font-family:'Cinzel',serif;font-size:7.5px;
  letter-spacing:0.1em;text-transform:uppercase;color:var(--rose);
  background:var(--cream);border:0.5px solid var(--petal);
  padding:3px 9px;margin-top:8px;}

/* ── TRANSCRIPT ──────────────── */
.transcript-block{background:var(--cream);border-left:2px solid var(--petal);
  padding:20px 24px;margin-top:12px;}
.transcript-block .t-label{font-family:'Cinzel',serif;font-size:8px;
  letter-spacing:0.2em;color:var(--blush);text-transform:uppercase;margin-bottom:8px;}
.transcript-block p{font-size:13px;color:var(--gray);line-height:1.75;font-style:italic;}

/* ── FORM ────────────────────── */
.form-group{display:flex;flex-direction:column;gap:6px;margin-bottom:16px;}
.form-label{font-family:'Cinzel',serif;font-size:9px;letter-spacing:0.14em;
  color:var(--rose);text-transform:uppercase;}
.form-input{border:0.5px solid var(--hair);background:var(--white);
  padding:13px 16px;font-size:14px;font-family:'DM Sans',sans-serif;
  color:var(--charcoal);outline:none;transition:border-color .2s;}
.form-input:focus{border-color:var(--rose);}
.form-input::placeholder{color:var(--blush);}
textarea.form-input{resize:vertical;min-height:120px;}

/* ── FOOTER ──────────────────── */
footer{background:var(--charcoal);padding:52px 5% 28px;}
.footer-inner{max-width:1160px;margin:0 auto;}
.footer-top{display:grid;grid-template-columns:1.5fr 1fr 1fr;
  gap:44px;padding-bottom:36px;border-bottom:0.5px solid #3A2E2A;margin-bottom:22px;}
.footer-brand img{height:52px;width:52px;object-fit:contain;
  border-radius:50%;border:0.5px solid var(--rose);margin-bottom:14px;}
.footer-brand p{font-size:13px;color:var(--gray);line-height:1.7;max-width:250px;}
.footer-brand .tagline{font-family:'Cormorant Garamond',serif;font-style:italic;
  font-size:15px;color:var(--blush);margin-bottom:10px;}
.footer-col h4{font-family:'Cinzel',serif;font-size:9px;letter-spacing:0.22em;
  color:var(--rose);text-transform:uppercase;margin-bottom:14px;}
.footer-col a{display:block;font-size:13px;color:var(--gray);
  margin-bottom:9px;transition:color .2s;}
.footer-col a:hover{color:var(--linen);}
.footer-bottom{display:flex;justify-content:space-between;align-items:center;
  font-size:11px;color:#5A4E48;}
.footer-bottom em{font-family:'Cormorant Garamond',serif;font-style:italic;color:var(--blush);}

/* ── RESPONSIVE ──────────────── */
@media(max-width:960px){
  .grid-3,.grid-4{grid-template-columns:1fr 1fr;}
  .grid-7{grid-template-columns:repeat(4,1fr);}
  .footer-top{grid-template-columns:1fr 1fr;}
  .footer-brand{grid-column:1/-1;}
}
@media(max-width:640px){
  .nav-links,.nav-cta{display:none;}
  .hamburger{display:flex;}
  .grid-2,.grid-3,.grid-4,.grid-7{grid-template-columns:1fr;}
  .footer-top{grid-template-columns:1fr;}
  .hero{padding:70px 5% 60px;}
  .section{padding:56px 5%;}
  .hero h1{font-size:34px;}
}
