/* =====================================================================
   THEME · WEDDING & PORTRAIT
   Romantic, soft, airy. Pastel palette + elegant serif fonts.
   Scoped under body.theme-wedding.
   ===================================================================== */
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;0,600;1,300;1,400;1,500&family=Jost:wght@300;400;500;600&display=swap');

body.theme-wedding {
  --blush: #f8efe9;
  --cream: #fdf9f4;
  --rose:  #e4c4bb;
  --rose-deep: #c98f80;
  --sage:  #d4ddc9;
  --sage-deep: #8fa07e;
  --wink:  #5c4f48;       /* warm ink */
  --wmuted:#9a8a80;
  --wgold: #c6a35f;
  --wline: rgba(92,79,72,0.14);

  background: var(--cream);
  color: var(--wink);
  font-family: 'Jost', system-ui, sans-serif;
  font-weight: 300;
}
body.theme-wedding h1, body.theme-wedding h2,
body.theme-wedding h3, body.theme-wedding h4 {
  font-family: 'Cormorant Garamond', serif;
  font-weight: 400; letter-spacing: 0; line-height: 1.08;
}
body.theme-wedding .eyebrow {
  font-family: 'Jost', sans-serif; color: var(--rose-deep);
  letter-spacing: .38em; font-weight: 400; font-size: .7rem;
}
body.theme-wedding ::selection { background: var(--rose); color: var(--wink); }

/* Header override — light page needs darker header text at top */
body.theme-wedding .site-header:not(.scrolled) .nav__link,
body.theme-wedding .site-header:not(.scrolled) .logo { color: var(--cream); }

/* Full-width slideshow hero */
.wd-hero { position: relative; height: 100svh; min-height: 620px; display: flex; align-items: center; justify-content: center; text-align: center; color: #fff; overflow: hidden; }
.wd-hero__slides { position: absolute; inset: 0; }
.wd-hero__slide { position:absolute; inset:0; background-image: var(--img, none); background-color: var(--rose); background-size:cover; background-position:center; opacity:0; transform:scale(1.06); transition: opacity 1.8s var(--ease), transform 8s linear; }
.wd-hero__slide.active { opacity:1; transform:scale(1); }
.wd-hero__slides::after { content:""; position:absolute; inset:0; background: linear-gradient(180deg, rgba(60,48,42,0.42), rgba(60,48,42,0.18) 45%, rgba(60,48,42,0.5)); }
.wd-hero__inner { position:relative; z-index:2; padding: 0 1.5rem; }
.wd-hero__inner .eyebrow { color: #f3e3da; }
.wd-hero h1 { font-size: clamp(3rem, 10vw, 8rem); font-weight: 300; margin: 1rem 0; }
.wd-hero h1 em { font-style: italic; color: #f0d8cb; }
.wd-hero p { max-width: 44ch; margin: 0 auto; font-size: clamp(1rem,1.6vw,1.2rem); color: rgba(255,255,255,0.9); font-weight: 300; }
.wd-hero__cta { margin-top: 2.2rem; display:flex; gap:1rem; justify-content:center; flex-wrap:wrap; }

.wd-btn { display:inline-flex; align-items:center; gap:.55rem; padding:.9rem 1.9rem; border-radius:100px; font-family:'Jost',sans-serif; font-weight:400; font-size:.78rem; letter-spacing:.18em; text-transform:uppercase; transition: transform .35s var(--ease), background .35s, color .35s, border-color .35s; }
.wd-btn--rose { background: var(--rose-deep); color:#fff; }
.wd-btn--rose:hover { background: var(--wink); transform: translateY(-2px); }
.wd-btn--line { border:1px solid currentColor; }
.wd-btn--line:hover { background:#fff; color: var(--wink); border-color:#fff; transform: translateY(-2px); }
.wd-btn .arrow { transition: transform .3s var(--ease); }
.wd-btn:hover .arrow { transform: translateX(4px); }

/* Section heads */
.wd-head { text-align:center; max-width: 720px; margin-inline:auto; }
.wd-head h2 { font-size: clamp(2.4rem, 6vw, 4.6rem); font-weight: 300; }
.wd-head h2 em { font-style: italic; color: var(--rose-deep); }
.wd-head p { margin-top: 1rem; color: var(--wmuted); font-weight:300; }
.wd-divider { width:60px; height:1px; background: var(--rose); margin: 1.4rem auto 0; }

/* Intro */
.wd-intro { background: var(--blush); text-align:center; }
.wd-intro p.big { font-family:'Cormorant Garamond',serif; font-size: clamp(1.8rem,4vw,3rem); font-weight:300; line-height:1.4; max-width: 22ch; margin-inline:auto; }
.wd-intro p.big em { font-style:italic; color: var(--rose-deep); }

/* Love stories gallery */
.wd-gallery { display:grid; grid-template-columns: repeat(3,1fr); gap: 1.4rem; }
@media (max-width: 860px){ .wd-gallery { grid-template-columns: repeat(2,1fr);} }
@media (max-width: 540px){ .wd-gallery { grid-template-columns: 1fr;} }
.wd-story { position:relative; overflow:hidden; border-radius: 4px; }
.wd-story .media { aspect-ratio: 4/5; transition: transform 1s var(--ease); }
.wd-story:nth-child(3n+2) .media { aspect-ratio: 4/6; }
.wd-story:hover .media { transform: scale(1.05); }
.wd-story__cap { position:absolute; inset:auto 0 0 0; padding:1.5rem; text-align:center; color:#fff; background: linear-gradient(transparent, rgba(60,48,42,0.6)); }
.wd-story__cap h4 { font-size:1.6rem; font-weight:300; }
.wd-story__cap span { font-family:'Jost',sans-serif; font-size:.66rem; letter-spacing:.24em; text-transform:uppercase; }

/* Pricing */
.wd-prices { display:grid; grid-template-columns: repeat(3,1fr); gap:1.6rem; }
@media (max-width: 880px){ .wd-prices { grid-template-columns:1fr; max-width:420px; margin-inline:auto;} }
.wd-collection { background: var(--cream); border:1px solid var(--wline); border-radius: 6px; padding: 2.6rem 2rem; text-align:center; transition: transform .4s var(--ease), box-shadow .4s, background .4s; }
.wd-collection:hover { transform: translateY(-6px); box-shadow: 0 26px 60px rgba(92,79,72,0.12); }
.wd-collection--mid { background: var(--blush); border-color: var(--rose); }
.wd-collection__name { font-size: 2rem; font-weight:300; }
.wd-collection__name em { font-style:italic; color: var(--rose-deep); }
.wd-collection__price { font-family:'Jost',sans-serif; font-size: 1.05rem; letter-spacing:.06em; color: var(--rose-deep); margin:.6rem 0 1.4rem; font-weight:500; }
.wd-collection ul { display:grid; gap:.7rem; text-align:left; margin-bottom: 1.8rem; }
.wd-collection li { padding-left:1.6rem; position:relative; font-family:'Jost',sans-serif; font-weight:300; font-size:.95rem; color:var(--wink); }
.wd-collection li::before { content:"♡"; position:absolute; left:0; color: var(--rose-deep); }

/* Inquiry */
.wd-inquiry { background: var(--blush); }
.wd-inquiry__card { background: var(--cream); border-radius: 8px; padding: clamp(2rem,5vw,3.5rem); max-width: 820px; margin-inline:auto; box-shadow: 0 30px 70px rgba(92,79,72,0.08); }
body.theme-wedding .field label { color: var(--wmuted); font-family:'Jost',sans-serif; font-weight:400; letter-spacing:.16em; }
body.theme-wedding .field input,
body.theme-wedding .field textarea,
body.theme-wedding .field select { border-bottom: 1px solid var(--wline); font-family:'Jost',sans-serif; font-weight:300; }
body.theme-wedding .field input:focus,
body.theme-wedding .field textarea:focus,
body.theme-wedding .field select:focus { border-color: var(--rose-deep); }
body.theme-wedding .form__ok { background: rgba(228,196,187,0.28); border-left-color: var(--rose-deep); }

/* Footer on wedding */
body.theme-wedding .footer { background: var(--wink); }
body.theme-wedding .footer__col h5 { color: #f0d8cb; }
body.theme-wedding .footer__col a:hover,
body.theme-wedding .footer__bottom a:hover { color: #f0d8cb; }
body.theme-wedding .logo__mark { border-color: var(--rose); color: #f0d8cb; }
