/* ===== Full-width breakout: body class + sidebar hide + content liberation ===== */
body.epl-cat-spiritual #content,
body.epl-cat-spiritual .container,
body.epl-cat-spiritual .row,
body.epl-cat-spiritual .col-md-9,
body.epl-cat-spiritual .col-md-12,
body.epl-cat-spiritual .content-area,
body.epl-cat-spiritual .site-main,
body.epl-cat-spiritual article,
body.epl-cat-spiritual .entry-content { width:100% !important; max-width:100% !important; padding:0 !important; margin:0 !important; }
body.epl-cat-spiritual #secondary,
body.epl-cat-spiritual .sidebar,
body.epl-cat-spiritual aside { display:none !important; }
body.epl-cat-spiritual .page-title-section,
body.epl-cat-spiritual .breadcrumb { display:none !important; }

/* ===== Page-scoped styling (inherits parent theme fonts) ===== */
.epl-spiritual { font-family:inherit; color:#1a1a1a; line-height:1.6; }
.epl-spiritual *, .epl-spiritual *::before, .epl-spiritual *::after { box-sizing:border-box; }
.epl-spiritual a { color:var(--epl-accent); text-decoration:none; }
.epl-spiritual a:hover { color:var(--epl-accent-dk); }

/* Hero */
.epl-spiritual-hero {
  position:relative; min-height:520px; display:flex; align-items:center; justify-content:center;
  background-color:var(--epl-dark);
  background-image:linear-gradient(rgba(15,14,12,.55),rgba(15,14,12,.55)),url('https://egyptplanners.com/wp-content/uploads/2024/07/A-beautiful-foreign-tourist-practices-meditation-and-yoga-next-to-the-Great-Pyramids-of-Giza.jpg');
  background-size:cover; background-position:center; color:#fff; text-align:center; padding:100px 24px;
}
.epl-spiritual-hero h1 { font-size:clamp(1.5rem,4vw,2.4rem); font-weight:700; margin:0 0 16px; letter-spacing:-.5px; color: #fff;}
.epl-spiritual-hero p.lead { font-size:clamp(1.05rem,1.6vw,1.3rem); max-width:780px; margin:0 auto 24px; opacity:.95; color: #fff; font-weight:500; line-height:1.3;}
.epl-spiritual-hero .hero-meta { display:inline-flex; gap:18px; flex-wrap:wrap; justify-content:center; font-size:.95rem; }
.epl-spiritual-hero .hero-meta span { background:rgba(255,255,255,.1); padding:8px 16px; border-radius:30px; backdrop-filter:blur(6px); }

/* Wrapper sections */
.epl-spiritual-wrap { max-width:var(--epl-container); margin:0 auto; padding:64px 24px; box-sizing:border-box; padding-inline:var(--epl-gutter); }
.epl-spiritual h2 { font-size:clamp(1.6rem,2.4vw,2.2rem); font-weight:700; color:var(--epl-ink); margin:0 0 16px; }
.epl-spiritual h3 { font-size:1.25rem; font-weight:700; color:var(--epl-ink); margin:0 0 10px; }
.epl-spiritual p { margin:0 0 14px; color:#3a3a3a; }

/* Author byline (Maro Saeed) */
.epl-author-line { display:flex; align-items:center; gap:14px; padding:20px; background:#f7f5ef; border-left:4px solid var(--epl-accent); border-radius:8px; margin:0 0 32px; }
.epl-author-line img { width:62px; height:62px; border-radius:50%; object-fit:cover; flex-shrink:0; }
.epl-author-line .meta { font-size:.95rem; color:#444; }
.epl-author-line .meta strong { display:block; color:var(--epl-ink); font-size:1.05rem; margin-bottom:2px; }
.epl-author-line .meta a { color:var(--epl-accent); }

/* Tour grid */
.epl-tour-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(320px,1fr)); gap:24px; }
.epl-tour-card { background:#fff; border:1px solid #e7e3d8; border-radius:12px; overflow:hidden; box-shadow:0 2px 8px rgba(0,0,0,.04); transition:transform .25s, box-shadow .25s; display:flex; flex-direction:column; }
.epl-tour-card:hover { transform:translateY(-4px); box-shadow:0 8px 24px rgba(0,0,0,.1); }
.epl-tour-card .img-wrap { position:relative; aspect-ratio:7/5; overflow:hidden; }
.epl-tour-card .img-wrap img { width:100%; height:100%; object-fit:cover; transition:transform .4s; }
.epl-tour-card:hover .img-wrap img { transform:scale(1.05); }
.epl-tour-card .duration-badge { position:absolute; top:12px; right:12px; background:rgba(212,134,82,.95); color:#fff; padding:5px 12px; border-radius:20px; font-size:.82rem; font-weight:600; }
.epl-tour-card .body { padding:20px; flex:1; display:flex; flex-direction:column; }
.epl-tour-card h3 { font-size:1.05rem; line-height:1.35; margin:0 0 12px; min-height:2.7em; }
.epl-tour-card h3 a { color:var(--epl-ink); }
.epl-tour-card h3 a:hover { color:var(--epl-accent); }
.epl-tour-card .price-row { display:flex; justify-content:space-between; align-items:center; margin-top:auto; padding-top:14px; border-top:1px solid #f0ede4; }
.epl-tour-card .price { font-size:1.15rem; font-weight:800; color:var(--epl-accent); }
.epl-tour-card .price small { display:block; font-size:0.75rem; font-weight:400; color:#777; letter-spacing:.5px; text-transform:uppercase; }
.epl-tour-card .reviews { font-size:.82rem; color:#666; }
.epl-tour-card .reviews .stars { color:#f59e0b; letter-spacing:1px; }

/* Travel Tips */
.epl-tips-section { background:linear-gradient(180deg,#faf8f1 0%,#fff 100%); padding:var(--epl-section-y) 24px; margin-top:24px; }
.epl-tips-section .epl-spiritual-wrap { padding:0 24px; }
.epl-tips-intro { display:grid; grid-template-columns:120px 1fr; gap:24px; align-items:start; margin-bottom:36px; padding:24px; background:#fff; border-radius:12px; box-shadow:0 2px 8px rgba(0,0,0,.04); }
.epl-tips-intro img { width:120px; height:120px; border-radius:50%; object-fit:cover; }
.epl-tips-intro .who strong { display:block; color:var(--epl-accent); font-size:.78rem; letter-spacing:1.5px; text-transform:uppercase; margin-bottom:6px; }
.epl-tips-intro .who h2 { font-size:1.5rem; margin:0 0 8px; }
.epl-tips-intro .who p { font-size:.95rem; color:#555; margin:0; }
.epl-tips-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(350px,1fr)); gap:20px; }
.epl-tip { background:#fff; border:1px solid #ece8da; border-radius:10px; padding:22px; }
.epl-tip .num { display:inline-flex; align-items:center; justify-content:center; width:36px; height:36px; background:var(--epl-accent); color:#fff; border-radius:50%; font-weight:700; margin-bottom:12px; }
.epl-tip h3 { font-size:1.05rem; margin:0 0 8px; }
.epl-tip p { font-size:.93rem; line-height:1.6; margin:0; color:#444; }

/* FAQ */
.epl-faq { background:#fff; padding:72px 24px; }
.epl-faq-list { max-width:880px; margin:0 auto; }
.epl-faq details { border:1px solid #e7e3d8; border-radius:10px; margin-bottom:12px; padding:0; background:#fafaf6; }
.epl-faq summary { padding:18px 22px; font-weight:600; color:var(--epl-ink); cursor:pointer; list-style:none; position:relative; padding-right:46px; }
.epl-faq summary::-webkit-details-marker { display:none; }
.epl-faq summary::after { content:"+"; position:absolute; right:22px; top:50%; transform:translateY(-50%); font-size:1.4rem; color:var(--epl-accent); transition:transform .25s; }
.epl-faq details[open] summary::after { content:"–"; }
.epl-faq details p { padding:0 22px 18px; margin:0; color:#444; line-height:1.65; }

/* WhatsApp CTA */
.epl-cta-banner {
  background-color:var(--epl-ink);
  background-image:linear-gradient(135deg,var(--epl-ink) 0%,var(--epl-dark) 100%);
  color:#fff; padding:56px 24px; text-align:center;
}
.epl-cta-banner h2 { color:#fff; margin:0 0 14px; }
.epl-cta-banner p { color:rgba(255,255,255,.85); max-width:680px; margin:0 auto 28px; font-size:1.05rem; }
.epl-cta-banner .btns { display:inline-flex; gap:14px; flex-wrap:wrap; justify-content:center; }
.epl-cta-banner .btn { display:inline-flex; align-items:center; gap:10px; padding:14px 28px; border-radius:50px; font-weight:700; font-size:1rem; transition:transform .2s; }
.epl-cta-banner .btn:hover { transform:translateY(-2px); }
.epl-cta-banner .btn-wa { background:#25d366; color:#fff; }
.epl-cta-banner .btn-mail { background:#fff; color:var(--epl-ink); }

/* Mobile */
@media(max-width:640px){
  .epl-tips-intro { grid-template-columns:1fr; text-align:center; }
  .epl-tips-intro img { margin:0 auto; width:96px; height:96px; }
  .epl-spiritual-wrap { padding:48px 18px; padding-inline:var(--epl-gutter); }
}
.epl-why{background:#fff;padding:72px 24px; padding-inline:0;}
.epl-why .why-inner{max-width:var(--epl-container);margin:0 auto; box-sizing:border-box; padding-inline:var(--epl-gutter);}
.epl-why .why-head{text-align:center;margin-bottom:40px;}
.epl-why .why-head .eyebrow{display:inline-block;color:var(--epl-accent);font-size:.78rem;letter-spacing:1.5px;text-transform:uppercase;font-weight:600;margin-bottom:8px;}
.epl-why .why-head h2{font-size:clamp(1.6rem,2.4vw,2.2rem);font-weight:700;color:var(--epl-ink);margin:0 0 8px;}
.epl-why .why-head p{color:#666;max-width:640px;margin:0 auto;}
.epl-why .pillars{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:20px;}
.epl-why .pillar{padding:24px;background:#faf8f1;border:1px solid #ece8da;border-radius:12px;}
.epl-why .pillar .icon{width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;background:var(--epl-accent);color:#fff;border-radius:50%;font-size:1.2rem;margin-bottom:14px;font-weight:700;}
.epl-why .pillar h3{font-size:1.05rem;margin:0 0 8px;color:var(--epl-ink);}
.epl-why .pillar p{font-size:.92rem;line-height:1.6;color:#444;margin:0;}
.epl-reviews-ta{background:#faf8f1;padding:80px 24px; padding-inline:0;}
.epl-reviews-ta .ta-inner{max-width:var(--epl-container);margin:0 auto; box-sizing:border-box; padding-inline:var(--epl-gutter);}
.epl-reviews-ta .ta-head{text-align:center;margin-bottom:40px;}
.epl-reviews-ta .ta-head .eyebrow{display:inline-block;color:var(--epl-accent);font-size:.78rem;letter-spacing:1.5px;text-transform:uppercase;font-weight:600;margin-bottom:10px;}
.epl-reviews-ta .ta-head h2{font-size:clamp(1.6rem,2.6vw,2.4rem);font-weight:700;color:var(--epl-ink);margin:0 0 12px;}
.epl-reviews-ta .ta-head p{color:#555;font-size:1rem;margin:0;}
.epl-reviews-ta .ta-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:24px;}
.epl-reviews-ta .ta-card{background:#fff;border:1px solid #ece8da;border-radius:14px;padding:28px;display:flex;flex-direction:column;min-height:340px;}
.epl-reviews-ta .ta-card .stars-quote{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:18px;}
.epl-reviews-ta .ta-card .stars-quote .stars{color:#f59e0b;letter-spacing:2px;font-size:1.05rem;}
.epl-reviews-ta .ta-card .stars-quote .qmark{color:#e0d4a8;font-size:2.4rem;line-height:1;font-family:Georgia,serif;}
.epl-reviews-ta .ta-card h3{font-size:1.05rem;font-weight:700;color:var(--epl-ink);margin:0 0 14px;}
.epl-reviews-ta .ta-card .review-body{font-size:.92rem;line-height:1.65;color:#444;margin:0 0 24px;flex:1;}
.epl-reviews-ta .ta-card .ta-foot{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #f0ede4;padding-top:14px;font-size:.82rem;}
.epl-reviews-ta .ta-card .ta-foot .name{color:var(--epl-ink);font-weight:600;}
.epl-reviews-ta .ta-card .ta-foot .src{color:#999;letter-spacing:1.5px;text-transform:uppercase;font-size:0.75rem;}
.epl-reviews-ta .ta-cta{text-align:center;margin-top:36px;}
.epl-reviews-ta .ta-cta a{display:inline-block;background:#fff;border:1px solid #ddd;color:var(--epl-ink);padding:14px 28px;border-radius:50px;font-weight:600;font-size:.95rem;text-decoration:none;transition:all .25s;}
.epl-reviews-ta .ta-cta a:hover{background:var(--epl-ink);color:#fff;border-color:var(--epl-ink);}
.epl-speak{padding:48px 24px;background:#fff;}
.epl-speak .speak-card{max-width:1180px;margin:0 auto;background:linear-gradient(135deg,var(--epl-ink) 0%,var(--epl-dark) 60%,#2a1d24 100%);border-radius:24px;padding:56px 48px;color:#fff;display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center;}
.epl-speak .left .eyebrow{display:inline-block;color:var(--epl-accent);font-size:.78rem;letter-spacing:1.5px;text-transform:uppercase;font-weight:600;margin-bottom:14px;}
.epl-speak .left h2{color:#fff;font-size:clamp(1.6rem,2.6vw,2.3rem);font-weight:700;margin:0 0 16px;letter-spacing:-.5px;}
.epl-speak .left p{color:rgba(255,255,255,.78);font-size:.98rem;line-height:1.65;margin:0 0 24px;}
.epl-speak .left .btns{display:flex;gap:12px;flex-wrap:wrap;}
.epl-speak .left .btn{display:inline-flex;align-items:center;gap:10px;padding:13px 24px;border-radius:50px;font-weight:600;font-size:.95rem;text-decoration:none;transition:transform .2s;}
.epl-speak .left .btn:hover{transform:translateY(-2px);}
.epl-speak .left .btn-wa{background:#25d366;color:#fff;}
.epl-speak .left .btn-pl{background:#fff;color:var(--epl-ink);}
.epl-speak .right{display:flex;flex-direction:column;gap:14px;}
.epl-speak .maro-pill{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);border-radius:60px;padding:12px 18px;display:flex;align-items:center;gap:14px;}
.epl-speak .maro-pill img{width:42px;height:42px;border-radius:50%;object-fit:cover;}
.epl-speak .maro-pill .meta strong{display:block;color:#fff;font-size:.95rem;}
.epl-speak .maro-pill .meta span{color:rgba(255,255,255,.6);font-size:.82rem;}
.epl-speak .stats-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
.epl-speak .stat{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);border-radius:14px;padding:16px 18px;}
.epl-speak .stat .num{color:#fff;font-size:1.5rem;font-weight:700;line-height:1;margin-bottom:6px;}
.epl-speak .stat .label{color:rgba(255,255,255,.55);font-size:0.75rem;letter-spacing:1.2px;text-transform:uppercase;font-weight:600;}
.epl-related{background:#fff;padding:var(--epl-section-y) 24px;border-top:1px solid #f0ede4; padding-inline:0;}
.epl-related .rel-inner{max-width:var(--epl-container);margin:0 auto; box-sizing:border-box; padding-inline:var(--epl-gutter);}
.epl-related .rel-head{text-align:center;margin-bottom:48px;}
.epl-related .rel-head .eyebrow{display:inline-block;color:var(--epl-accent);font-size:.78rem;letter-spacing:1.5px;text-transform:uppercase;font-weight:600;margin-bottom:10px;}
.epl-related .rel-head h2{font-size:clamp(1.6rem,2.6vw,2.4rem);font-weight:700;color:var(--epl-ink);margin:0;letter-spacing:-.5px;}
.epl-related .rel-cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:32px;margin-bottom:40px;}
.epl-related .rel-col h3{font-size:1rem;font-weight:700;color:var(--epl-ink);margin:0 0 14px;padding-bottom:10px;border-bottom:2px solid var(--epl-accent);display:inline-block;}
.epl-related .rel-col ul{list-style:none;margin:0;padding:0;}
.epl-related .rel-col li{margin-bottom:10px;}
.epl-related .rel-col a{font-size:.92rem;color:var(--epl-ink);font-weight:600;text-decoration:none;transition:color .2s;}
.epl-related .rel-col a:hover{color:var(--epl-accent);text-decoration:underline;}
.epl-related .rel-pills{padding-top:32px;border-top:1px solid #ece8da;display:flex;flex-wrap:wrap;gap:10px;}
.epl-related .rel-pills a{display:inline-block;padding:9px 18px;background:#fff;border:1px solid #e0dcc8;border-radius:50px;color:var(--epl-ink);font-size:.85rem;font-weight:600;text-decoration:none;transition:all .2s;}
.epl-related .rel-pills a:hover{background:var(--epl-ink);color:#fff;border-color:var(--epl-ink);}
@media(max-width:780px){.epl-speak .speak-card{grid-template-columns:1fr;padding:40px 28px;gap:32px;}}

/* 2026-09-11: the tips and FAQ sections used to carry the side padding while
   their inner wrap had an inline style="padding:0". The gutter now lives on
   the wrap like every other container: the sections drop their side padding
   and .is-inset only removes the wrap's vertical padding. */
.epl-tips-section, .epl-faq{ padding-inline:0; }
.epl-spiritual-wrap.is-inset{ padding-block:0; }
.epl-tips-section .epl-spiritual-wrap{ padding-inline:var(--epl-gutter); }
