/* CC Subscribe Page — Design C, Sunday Table style (centered, editorial) */
body.cc-subscribe-page .page-header { display: none; }
.ccs { font-family: 'Jost', sans-serif; color: #141414; background: #FAF6EF; overflow-x: hidden; }
.ccs-inner { max-width: 880px; margin: 0 auto; padding: 0 24px; text-align: center; }
.ccs-lockup { height: 64px; width: auto; margin: 44px auto 6px; display: block; }
.ccs-script { font-family: 'Alex Brush', cursive; font-size: 2.4rem; color: #B76E79; margin: 10px 0 4px; }
.ccs-h1 { font-family: 'Playfair Display', serif; font-weight: 400; font-size: clamp(2.6rem, 6vw, 4.2rem); line-height: 1.08; margin: 6px 0 18px; }
.ccs-h1 em { font-style: italic; color: #B76E79; }
.ccs-intro { font-size: 1.15rem; line-height: 1.6; color: #4a4a4a; max-width: 640px; margin: 0 auto 34px; }
.ccs-photo { margin: 0 0 10px; }
.ccs-photo img { width: 100%; aspect-ratio: 16 / 10; object-fit: cover; object-position: center 22%; border-radius: 26px; display: block; box-shadow: 0 18px 44px rgba(183, 110, 121, .18); }
.ccs-garland { width: 100%; height: auto; display: block; margin: 2px auto 0; }
.ccs-band { background: #F3DFDC; padding: 46px 0 54px; margin-top: 6px; }
.ccs-band-title { font-family: 'Playfair Display', serif; font-weight: 400; font-size: 2rem; margin: 0 0 22px; }
.ccs-form { max-width: 560px; margin: 0 auto; text-align: left; }
.ccs-gift { font-family: 'Playfair Display', serif; font-style: italic; font-size: 1.3rem; color: #B76E79; margin: 38px auto 14px; max-width: 640px; }
.ccs-dibs { font-family: 'Playfair Display', serif; font-size: 1.35rem; line-height: 1.45; max-width: 700px; margin: 0 auto 8px; }
.ccs-saying { font-family: 'Playfair Display', serif; font-weight: 400; font-size: 1.9rem; margin: 44px 0 22px; }
.ccs-cards { display: grid; grid-template-columns: 1fr 1fr; gap: 28px; text-align: left; }
.ccs-card { background: #F3DFDC; border-radius: 22px; padding: 28px 30px 24px; margin: 0; display: flex; flex-direction: column; }
.ccs-quote { font-family: 'Playfair Display', serif; font-size: 3.2rem; line-height: .6; color: #B76E79; display: block; margin-bottom: 14px; }
.ccs-card p { font-size: 1rem; line-height: 1.55; margin: 0 0 18px; }
.ccs-card footer { margin-top: auto; }
.ccs-card footer strong { font-family: 'Playfair Display', serif; font-weight: 400; font-size: 1.15rem; display: block; }
.ccs-card footer span { font-size: .92rem; color: #4a4a4a; }
.ccs-fine { font-size: .95rem; color: #4a4a4a; margin: 34px 0 52px; }

/* MailerLite embedded form, restyled to the brand */
.ccs-form .ml-form-embedContainer { width: 100% !important; }
.ccs-form .ml-form-embedWrapper { background: transparent !important; width: 100% !important; max-width: 560px !important; }
.ccs-form .ml-form-embedContent { display: none !important; }
.ccs-form .ml-form-embedBody { padding: 0 !important; }
.ccs-form .ml-field-group label { font-family: 'Jost', sans-serif !important; font-size: .95rem !important; font-weight: 400 !important; color: #141414 !important; margin-bottom: 6px !important; }
.ccs-form .ml-field-group input { background: #fff !important; border: 2px solid #D9A5A0 !important; border-radius: 12px !important; padding: 14px 16px !important; font-family: 'Jost', sans-serif !important; font-size: 1.05rem !important; color: #141414 !important; height: auto !important; }
.ccs-form .ml-form-embedSubmit { text-align: center; margin-top: 8px; }
.ccs-form .ml-form-embedSubmit button.primary { background: #B76E79 !important; color: #141414 !important; border: none !important; border-radius: 999px !important; padding: 15px 52px !important; font-family: 'Jost', sans-serif !important; font-size: 1.08rem !important; cursor: pointer; width: auto !important; }
.ccs-form .ml-form-embedSubmit button.primary:hover { background: #F3DFDC !important; }
.ccs-form .ml-form-embedPermissions { padding: 10px 0 0 !important; text-align: center !important; }
.ccs-form .ml-form-embedPermissions .label-description, .ccs-form .ml-form-embedPermissions .description { font-family: 'Jost', sans-serif !important; font-size: .85rem !important; color: #4a4a4a !important; }
.ccs-form .ml-form-successContent h4 { font-family: 'Playfair Display', serif !important; font-weight: 400 !important; }
.ccs-form .ml-form-successContent p { font-family: 'Jost', sans-serif !important; }

/* Scroll reveal (armed by reveal.js only) */
.cc-rv { }
.cc-rv-armed { opacity: 0; transform: translateY(26px); transition: opacity .8s ease, transform .8s ease; }
.cc-rv-in { opacity: 1; transform: none; }
@media (prefers-reduced-motion: reduce) { .cc-rv-armed { opacity: 1; transform: none; transition: none; } }

@media (max-width: 700px) {
  .ccs-cards { grid-template-columns: 1fr; }
  .ccs-lockup { height: 50px; }
  .ccs-photo img { aspect-ratio: 4 / 3.4; object-position: center 18%; }
}
