/*
Theme Name: Promised Comforter
Theme URI: https://promisedcomforter.com
Description: Child theme of Prayer Pro (Grace Themes) for The Promised Comforter — Spiritism explained for American readers. Navy/gold identity, EB Garamond + Source Serif 4, glued sections, justified body text.
Author: The Promised Comforter
Template: prayer-pro
Version: 1.0.0
Text Domain: promised-comforter
*/

/* ============ Base identity ============ */
body{ background:#F3EFE7; color:#3A4149; font-family:'Source Serif 4', Georgia, 'Times New Roman', serif; font-size:18px; line-height:1.75; }
h1,h2,h3,h4,h5,h6{ font-family:'EB Garamond', Georgia, serif; font-weight:600; color:#22384C; line-height:1.2; }
a{ color:#33566E; }
a:hover{ color:#A98B4F; }
body p{ text-align:justify; }
::selection{ background:#C0A062; color:#fff; }

/* ============ Header ============ */
.header{ position:relative; background:#FFFFFF; box-shadow:0 1px 0 rgba(34,56,76,.08), 0 6px 18px rgba(34,56,76,.05); }
.pp_topstrip{ background:#22384C; color:#E9E3D6; }
.logo{ padding:12px 0; }
.logo img{ height:44px; width:auto; }
.sitenav ul{ font-family:'Source Sans 3', Arial, sans-serif; }
.sitenav ul li a{ color:#22384C; font-size:15px; font-weight:600; letter-spacing:.2px; padding:30px 11px; }
.sitenav ul li a:hover, .sitenav ul li.current-menu-item > a, .sitenav ul li.current-menu-parent > a{ color:#A98B4F; }
.sitenav ul li:hover > ul{ background:#FFFFFF; box-shadow:0 10px 24px rgba(34,56,76,.16); border-top:3px solid #C0A062; }
.sitenav ul li ul li a{ padding:9px 14px; font-size:14.5px; }
.toggle a{ background:#22384C; color:#fff; font-family:'Source Sans 3',sans-serif; }

/* hide the (empty) native slider container: the hero lives in the page */
.slider-main{ display:none; }

/* ============ Buttons ============ */
.pc-btn{ display:inline-block; background:#C0A062; color:#FFFFFF !important; padding:13px 30px; border-radius:4px; font-family:'Source Sans 3', Arial, sans-serif; font-size:16px; font-weight:600; letter-spacing:.4px; text-decoration:none !important; transition:background .2s ease; }
.pc-btn:hover{ background:#A98B4F; color:#fff !important; }
.pc-btn-navy{ background:#33566E; }
.pc-btn-navy:hover{ background:#22384C; }
.pc-btn-outline{ background:transparent; border:2px solid #FFFFFF; padding:11px 28px; }
.pc-btn-outline:hover{ background:transparent; border-color:#C0A062; color:#C0A062 !important; }

/* ============ Home sections (glued) ============ */
section{ padding:0; }
.pc-sec{ padding:66px 0; margin:0; }
.pc-wrap{ max-width:1170px; margin:0 auto; padding:0 20px; }
.pc-sec h2{ text-align:center; font-size:36px; margin:0 0 14px; }
.pc-sec .pc-lead{ text-align:center; max-width:840px; margin:0 auto; }
.pc-center{ text-align:center; }

.pc-hero{ background:linear-gradient(135deg,#1B2C3E 0%,#22384C 48%,#33566E 100%); color:#FFFFFF; text-align:center; padding:88px 0 80px; margin:0; }
.pc-hero .pc-eyebrow{ color:#C0A062; font-family:'Source Sans 3', Arial, sans-serif; font-size:13px; letter-spacing:3px; font-weight:600; text-align:center; margin:0 0 10px; }
.pc-hero h1{ color:#FFFFFF; font-size:clamp(38px,5.4vw,60px); line-height:1.12; margin:0 0 20px; text-align:center; }
.pc-hero .pc-sub{ color:#E9E3D6; font-size:19.5px; line-height:1.7; max-width:800px; margin:0 auto; text-align:center; }
.pc-hero .pc-hero-btns{ margin-top:36px; text-align:center; }
.pc-hero .pc-hero-btns .pc-btn{ margin:0 7px 10px; }

.pc-intro{ background:#FFFFFF; }
.pc-doctrine{ background:#F3EFE7; }
.pc-diff{ background:#FFFFFF; }
.pc-figures{ background:#F3EFE7; }
.pc-centers-sec{ background:#FFFFFF; }
.pc-latest{ background:#F3EFE7; }
.pc-astral{ background:linear-gradient(135deg,#1B2C3E 0%,#22384C 55%,#33566E 100%); color:#E9E3D6; }
.pc-astral h2{ color:#FFFFFF; text-align:left; }
.pc-astral p{ color:#E9E3D6; }
.pc-final{ background:linear-gradient(135deg,#1B2C3E 0%,#22384C 55%,#33566E 100%); color:#E9E3D6; text-align:center; }
.pc-final h2{ color:#FFFFFF; }
.pc-final p{ color:#E9E3D6; text-align:center; max-width:760px; margin:0 auto 30px; }

.pc-quote{ font-family:'EB Garamond', Georgia, serif; font-size:23px; font-style:italic; line-height:1.5; color:#FFFFFF; text-align:left; margin:30px 0 6px; }
.pc-quote-by{ color:#C0A062; font-family:'Source Sans 3', Arial, sans-serif; font-size:13px; letter-spacing:1.5px; font-weight:600; text-align:left; }

/* doctrine cards */
.pc-cards{ display:grid; grid-template-columns:repeat(3,1fr); gap:26px; margin-top:38px; }
.pc-card{ background:#FFFFFF; border:1px solid #E3DCCB; border-top:4px solid #C0A062; border-radius:6px; padding:32px 28px 28px; box-shadow:0 4px 14px rgba(34,56,76,.05); }
.pc-card .pc-kicker{ color:#A98B4F; font-family:'Source Sans 3', Arial, sans-serif; font-size:12.5px; letter-spacing:2px; font-weight:700; text-align:left; margin:0 0 10px; }
.pc-card h3{ font-size:25px; margin:0 0 10px; text-align:left; }
.pc-card p{ text-align:left; font-size:16.5px; line-height:1.65; }
.pc-card .pc-more{ font-family:'Source Sans 3', Arial, sans-serif; font-weight:600; font-size:15.5px; }

/* figure cards (home + /spiritists/) */
.pc-fig-grid{ display:grid; grid-template-columns:repeat(5,1fr); gap:24px; margin-top:40px; }
.pc-fig-card{ background:#FFFFFF; border:1px solid #E3DCCB; border-radius:8px; overflow:hidden; text-align:center; padding:0 0 20px; box-shadow:0 4px 14px rgba(34,56,76,.05); }
.pc-fig-card img{ width:100%; height:auto; display:block; }
.pc-fig-card h3{ font-size:22px; margin:16px 10px 2px; text-align:center; }
.pc-fig-meta{ color:#33566E; font-family:'Source Sans 3', Arial, sans-serif; font-size:12px; letter-spacing:1.4px; font-weight:600; text-transform:uppercase; text-align:center !important; margin:0 12px 10px; }
.pc-fig-card p{ text-align:center; font-size:15.5px; line-height:1.6; margin:0 16px 10px; }
.pc-fig-card .pc-more{ font-family:'Source Sans 3', Arial, sans-serif; font-weight:600; font-size:15px; }

/* latest posts (home + blog grid) */
.pc-blog-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:26px; margin-top:38px; }
.pc-post-card{ background:#FFFFFF; border:1px solid #E3DCCB; border-radius:8px; overflow:hidden; box-shadow:0 4px 14px rgba(34,56,76,.05); display:flex; flex-direction:column; }
.pc-post-thumb{ display:block; aspect-ratio:16/9; overflow:hidden; background:#22384C; }
.pc-post-thumb img{ width:100%; height:100%; object-fit:cover; display:block; }
.pc-post-thumb-none{ display:flex; align-items:center; justify-content:center; background:linear-gradient(135deg,#22384C,#33566E); }
.pc-post-thumb-none span{ font-family:'EB Garamond', Georgia, serif; font-size:30px; color:#C0A062; padding:0 18px; text-align:center; line-height:1.25; }
.pc-post-body{ padding:22px 24px 24px; display:flex; flex-direction:column; flex:1; }
.pc-post-date{ display:inline-block; align-self:flex-start; background:#C0A062; color:#FFFFFF; font-family:'Source Sans 3', Arial, sans-serif; font-size:12.5px; font-weight:700; letter-spacing:1px; text-transform:uppercase; padding:4px 10px; border-radius:3px; margin:0 0 12px; text-align:left; }
.pc-post-body h3{ font-size:23px; margin:0 0 10px; text-align:left; }
.pc-post-body h3 a{ color:#22384C; text-decoration:none; }
.pc-post-body h3 a:hover{ color:#A98B4F; }
.pc-post-body p{ text-align:left; font-size:16px; line-height:1.65; flex:1; }
.pc-post-body .pc-more{ font-family:'Source Sans 3', Arial, sans-serif; font-weight:600; font-size:15.5px; }

/* ============ Inner pages ============ */
.pc-page{ padding-bottom:70px; }
.pc-page-hero{ background:linear-gradient(135deg,#1B2C3E 0%,#22384C 48%,#33566E 100%); padding:66px 20px 56px; margin:0 0 50px; }
.pc-page-hero p, .pc-page-hero h1{ margin-left:auto; margin-right:auto; }
.pc-page > *:not(.pc-page-hero){ max-width:1100px; margin-left:auto; margin-right:auto; padding-left:20px; padding-right:20px; }
.pc-page h2{ margin-top:38px; }
.pc-page img{ border-radius:6px; }

/* events list as date rows */
.pc-events p{ background:#FFFFFF; border:1px solid #E3DCCB; border-left:4px solid #C0A062; border-radius:6px; padding:16px 20px; }
.pc-events p strong:first-child{ color:#22384C; }
.pc-events h3{ font-size:26px; border-bottom:2px solid #C0A062; padding-bottom:6px; }

/* blog index head */
.pc-blog-head{ background:linear-gradient(135deg,#1B2C3E 0%,#22384C 48%,#33566E 100%); padding:60px 20px 50px; text-align:center; }
.pc-blog-head h1{ color:#FFFFFF; font-size:clamp(32px,4.6vw,46px); margin:0 0 10px; text-align:center; }
.pc-blog-head p{ color:#E9E3D6; text-align:center; max-width:720px; margin:0 auto; }
.pc-blog-main{ padding:56px 0 70px; }
.pc-blog-main .pc-wrap > .pc-blog-grid{ margin-top:0; }
.pc-pagination{ text-align:center; margin-top:44px; font-family:'Source Sans 3', Arial, sans-serif; }
.pc-pagination a, .pc-pagination span{ display:inline-block; padding:8px 14px; margin:0 3px; border:1px solid #C0A062; border-radius:4px; }
.pc-pagination .current{ background:#C0A062; color:#fff; }

/* single post */
.pc-single{ max-width:840px; margin:0 auto; padding:54px 20px 70px; }
.pc-single .pc-eyebrow{ color:#A98B4F; font-family:'Source Sans 3', Arial, sans-serif; font-size:13px; letter-spacing:2px; font-weight:700; text-transform:uppercase; text-align:left; margin:0 0 10px; }
.pc-single h1{ font-size:clamp(30px,4.2vw,44px); margin:0 0 12px; text-align:left; }
.pc-single .pc-meta{ color:#33566E; font-family:'Source Sans 3', Arial, sans-serif; font-size:14.5px; text-align:left; margin:0 0 26px; }
.pc-single .pc-featured{ margin:0 0 30px; }
.pc-single .pc-featured img{ width:100%; height:auto; border-radius:8px; display:block; }
.pc-single h2{ margin-top:36px; }
.pc-single-nav{ display:flex; justify-content:space-between; gap:20px; margin-top:48px; padding-top:24px; border-top:1px solid #E3DCCB; font-family:'Source Sans 3', Arial, sans-serif; font-weight:600; font-size:15.5px; }

/* ============ Footer ============ */
#footer-wrapper{ background:#22384C; }
#footer-wrapper .container.footer{ padding-top:0; padding-bottom:0; min-height:0; }
.copyright-wrapper{ background:#1B2C3E; color:#D8DEE4; padding:22px 0; }
.copyright-wrapper .designby{ float:none; text-align:center; font-family:'Source Sans 3', Arial, sans-serif; font-size:14.5px; color:#D8DEE4; }
.copyright-wrapper a{ color:#BFD0DE; }
.copyright-wrapper a:hover{ color:#FFFFFF; }

/* ============ Responsive ============ */
@media screen and (max-width:1100px){
  .pc-fig-grid{ grid-template-columns:repeat(3,1fr); }
}
@media screen and (max-width:980px){
  .sitenav ul li a{ padding:10px 12px !important; text-align:left; }
  .logo{ width:auto; max-width:64%; }
  .logo img{ height:34px; width:auto; max-width:100%; }
  .toggle a{ padding:9px 18px; font-size:15px; }
}
@media screen and (max-width:640px){
  .logo{ float:none; max-width:100%; text-align:center; padding:12px 0 2px; }
  .logo img{ height:29px; margin:0 auto; }
  .header_right{ float:none; }
  .toggle{ text-align:center; margin:4px 0 10px; }
}
@media screen and (max-width:860px){
  .pc-cards, .pc-blog-grid{ grid-template-columns:1fr; }
  .pc-fig-grid{ grid-template-columns:repeat(2,1fr); }
  .pc-sec{ padding:48px 0; }
  .pc-hero{ padding:60px 0 54px; }
  .pc-astral h2, .pc-quote{ text-align:center; }
  .pc-quote-by{ text-align:center; }
  .pc-astral .pc-center-m{ text-align:center; }
}
@media screen and (max-width:520px){
  .pc-fig-grid{ grid-template-columns:1fr; }
  .pc-hero .pc-hero-btns .pc-btn{ display:block; margin:0 auto 12px; max-width:300px; }
  body{ font-size:17px; }
  .container{ max-width:100%; }
}
