/*
Theme Name: The Prophetic Corner v1.7.1
Theme URI: https://example.com/the-prophetic-corner
Author: The Prophetic Corner
Description: Custom WooCommerce-ready WordPress theme for The Prophetic Corner coaching, shop, prayer wall, and Prophets Deck experiences.
Version: 1.7.1
Text Domain: prophetic-corner
Requires at least: 6.5
Requires PHP: 8.1
*/

:root {
  --tpc-navy:#071427;
  --tpc-navy-2:#0d2036;
  --tpc-cream:#f4ead7;
  --tpc-parchment:#e8d5b7;
  --tpc-gold:#b8872d;
  --tpc-gold-light:#d5b36b;
  --tpc-walnut:#2a1710;
  --tpc-green:#3f553d;
  --tpc-amethyst:#6c4b7d;
  --tpc-ink:#17120f;
  --tpc-white:#fffdf8;
  --tpc-shadow:0 18px 50px rgba(0,0,0,.2);
  --tpc-radius:20px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--tpc-cream);color:var(--tpc-ink);font-family:Georgia,'Times New Roman',serif;line-height:1.6}
a{color:inherit;text-decoration:none}
img{max-width:100%;height:auto}
button,input,select,textarea{font:inherit}
.tpc-container{width:min(1180px,calc(100% - 36px));margin-inline:auto}
.tpc-kicker{font-size:.78rem;letter-spacing:.18em;text-transform:uppercase;font-weight:700;color:var(--tpc-gold)}
.tpc-title{font-size:clamp(2.2rem,4.5vw,4.7rem);line-height:.98;margin:.25rem 0 1rem;color:var(--tpc-navy)}
.tpc-lead{font-size:clamp(1.05rem,1.6vw,1.3rem);max-width:760px;color:#4d4036}

.tpc-site-header{position:sticky;top:0;z-index:100;background:rgba(7,20,39,.96);backdrop-filter:blur(12px);border-bottom:1px solid rgba(213,179,107,.28)}
.tpc-nav{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:26px}
.tpc-brand{display:flex;align-items:baseline;gap:8px;color:var(--tpc-white)}
.tpc-brand strong{font-size:1.38rem;font-weight:500}.tpc-brand em{font-size:1.1rem;color:var(--tpc-gold-light)}
.tpc-menu{display:flex;gap:20px;align-items:center;list-style:none;margin:0;padding:0;font-size:.92rem;color:#f5ead9}
.tpc-menu a:hover{color:var(--tpc-gold-light)}
.tpc-actions{display:flex;gap:10px}
.tpc-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--tpc-gold);border-radius:999px;padding:11px 18px;font-weight:700;cursor:pointer;transition:.2s ease;background:transparent;color:var(--tpc-gold-light)}
.tpc-btn:hover{transform:translateY(-1px);box-shadow:0 8px 26px rgba(184,135,45,.2)}
.tpc-btn--solid{background:var(--tpc-gold);color:#120d08}
.tpc-btn--cream{background:var(--tpc-cream);color:var(--tpc-navy);border-color:var(--tpc-cream)}

.tpc-hero{min-height:740px;position:relative;display:grid;align-items:center;background:linear-gradient(90deg,rgba(7,20,39,.68),rgba(7,20,39,.34) 34%,rgba(7,20,39,.08) 58%,rgba(7,20,39,.02)),url('assets/images/prophetic-corner-hero.jpeg') center/cover no-repeat;color:white}
.tpc-hero:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(7,20,39,.46),rgba(7,20,39,.04) 36%,rgba(7,20,39,0) 62%);pointer-events:none}
.tpc-hero__content{position:relative;z-index:2;padding:38px 40px 42px;max-width:620px;background:linear-gradient(180deg,rgba(7,20,39,.72),rgba(7,20,39,.56));border:1px solid rgba(213,179,107,.28);border-radius:28px;backdrop-filter:blur(8px);box-shadow:0 22px 60px rgba(0,0,0,.26);margin:72px 0}
.tpc-hero h1{font-size:clamp(2.95rem,5.8vw,5.5rem);line-height:.92;margin:.15rem 0 1rem;color:var(--tpc-white);font-weight:500;letter-spacing:-.03em;text-wrap:balance}
.tpc-hero h1 span{display:block;color:var(--tpc-gold-light);font-style:italic;font-weight:400}
.tpc-hero p{font-size:clamp(1.03rem,1.6vw,1.3rem);max-width:34ch;color:#f5eadb;margin:0}
.tpc-hero__buttons{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}

.tpc-section{padding:88px 0}.tpc-section--dark{background:var(--tpc-navy);color:var(--tpc-cream)}.tpc-section--walnut{background:var(--tpc-walnut);color:var(--tpc-cream)}
.tpc-section--dark .tpc-title,.tpc-section--walnut .tpc-title{color:var(--tpc-white)}
.tpc-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:38px}
.tpc-card{background:rgba(255,253,248,.78);border:1px solid rgba(184,135,45,.35);border-radius:var(--tpc-radius);padding:26px;box-shadow:0 10px 34px rgba(30,18,10,.08)}
.tpc-card h3{font-size:1.5rem;margin:8px 0}.tpc-card p{color:#5b4b3f}.tpc-card__icon{font-size:1.55rem;color:var(--tpc-gold)}
.tpc-section--dark .tpc-card{background:rgba(255,255,255,.05);border-color:rgba(213,179,107,.25)}
.tpc-section--dark .tpc-card p{color:#d9cbb7}

.tpc-feature{display:grid;grid-template-columns:1.05fr .95fr;gap:48px;align-items:center}.tpc-feature__visual{min-height:460px;border-radius:28px;box-shadow:var(--tpc-shadow);background-position:center;background-size:cover;overflow:hidden;border:1px solid rgba(184,135,45,.35)}
.tpc-reading-visual{background:radial-gradient(circle at 50% 26%,rgba(108,75,125,.5),transparent 27%),linear-gradient(145deg,#071427,#2a1710)}
.tpc-reading-deck{height:100%;display:grid;place-items:center;position:relative}.tpc-reading-deck:before{content:'THE PROPHETS DECK';width:170px;height:265px;border:2px solid var(--tpc-gold-light);border-radius:14px;display:grid;place-items:center;text-align:center;padding:22px;color:var(--tpc-gold-light);letter-spacing:.12em;box-shadow:0 20px 70px rgba(0,0,0,.5);transform:rotate(-4deg);background:linear-gradient(160deg,#0b1d35,#12101d)}

.tpc-prayer-preview{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:30px}.tpc-prayer-card{background:#f7ecd9;color:#21170f;border:1px solid #c9a65c;border-radius:16px;padding:22px;position:relative}.tpc-prayer-card:before{content:'✦';position:absolute;right:18px;top:14px;color:var(--tpc-gold)}.tpc-prayer-card small{display:block;text-transform:uppercase;letter-spacing:.12em;color:#8b6425}.tpc-prayer-card h3{margin:.3rem 0 .55rem}.tpc-prayer-meta{display:flex;justify-content:space-between;gap:12px;margin-top:18px;font-size:.9rem;color:#75604b}

.tpc-band{background:linear-gradient(135deg,#8e681f,#c59b45);padding:26px 0;color:#17100a}.tpc-band__inner{display:flex;align-items:center;justify-content:space-between;gap:24px}.tpc-band h2{margin:0;font-size:clamp(1.55rem,3vw,2.4rem);font-weight:500}

.tpc-site-footer{background:#050d18;color:#d9cbb7;padding:58px 0 30px;border-top:1px solid rgba(184,135,45,.3)}
.tpc-footer-grid{display:grid;grid-template-columns:1.5fr repeat(3,1fr);gap:34px}.tpc-site-footer h4{color:var(--tpc-gold-light);margin-top:0}.tpc-site-footer ul{list-style:none;padding:0;margin:0}.tpc-site-footer li{margin:8px 0}.tpc-copy{border-top:1px solid rgba(255,255,255,.1);margin-top:38px;padding-top:22px;font-size:.85rem;color:#9c9183}

.tpc-page-hero{padding:90px 0 54px;background:linear-gradient(135deg,var(--tpc-navy),var(--tpc-navy-2));color:white}.tpc-page-hero .tpc-title{color:white}.tpc-content{padding:60px 0}

@media (max-width:980px){.tpc-menu{display:none}.tpc-grid{grid-template-columns:repeat(2,1fr)}.tpc-feature{grid-template-columns:1fr}.tpc-footer-grid{grid-template-columns:1fr 1fr}}
@media (max-width:640px){.tpc-actions .tpc-btn:first-child{display:none}.tpc-grid,.tpc-prayer-preview,.tpc-footer-grid{grid-template-columns:1fr}.tpc-hero{min-height:650px;background-position:58% center}.tpc-hero__content{padding:28px 24px 30px;margin:36px 0;max-width:none}.tpc-band__inner{align-items:flex-start;flex-direction:column}.tpc-section{padding:68px 0}}


/* =========================================================
   The Prophetic Corner v1.3 — fixed background + Shop
   ========================================================= */
body.tpc-inner-fixed-background{
  background:#f4ead7 url('assets/images/tpc-site-background.png') center center/cover fixed no-repeat;
}
body.tpc-inner-fixed-background .tpc-content{
  background:rgba(247,237,220,.84);
  backdrop-filter:blur(2px);
}
body.tpc-inner-fixed-background .tpc-page-hero{
  background:linear-gradient(135deg,rgba(7,20,39,.97),rgba(13,32,54,.93));
}
.tpc-site-header{box-shadow:0 8px 26px rgba(0,0,0,.14)}
.tpc-menu{white-space:nowrap}
.tpc-menu li:last-child a{color:var(--tpc-gold-light)}
.tpc-shop-page{background:#f8efdf;color:#1c160f}
.tpc-shop-hero{
  min-height:610px;
  position:relative;
  display:flex;
  align-items:flex-end;
  background:url('assets/images/tpc-shop-hero.png') center center/cover no-repeat;
  border-bottom:1px solid rgba(184,135,45,.55);
}
.tpc-shop-hero-shade{
  position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(7,20,39,.04) 30%,rgba(7,20,39,.14) 72%,rgba(7,20,39,.52));
}
.tpc-shop-hero-content{position:relative;z-index:2;padding-bottom:36px}
.tpc-shop-hero-panel{
  width:min(480px,100%);
  margin-left:auto;
  padding:24px 28px;
  border:1px solid rgba(213,179,107,.62);
  border-radius:22px;
  background:rgba(7,20,39,.84);
  color:#f8efdf;
  box-shadow:0 20px 55px rgba(0,0,0,.22);
  backdrop-filter:blur(7px);
}
.tpc-shop-hero-panel h1{
  margin:.1rem 0 .35rem;
  font-size:clamp(3.4rem,7vw,6.4rem);
  line-height:.9;
  color:#fffdf8;
  font-weight:500;
}
.tpc-shop-hero-panel p{font-size:1.1rem;color:#e6d7be}
.tpc-shop-pathways{
  position:relative;
  background:linear-gradient(180deg,#fff9ee,#f4e5cb);
  border-bottom:1px solid #d5b36b;
}
.tpc-shop-pathway-grid{display:grid;grid-template-columns:repeat(5,1fr)}
.tpc-shop-pathway-grid>a{
  min-height:118px;display:flex;align-items:center;gap:14px;padding:20px 18px;
  border-right:1px solid rgba(184,135,45,.28);
}
.tpc-shop-pathway-grid>a:last-child{border-right:0}
.tpc-shop-pathway-grid>a>span{
  flex:0 0 46px;height:46px;border:1px solid #b8872d;border-radius:50%;
  display:grid;place-items:center;color:#b8872d;font-size:1.2rem;
}
.tpc-shop-pathway-grid strong{display:block;color:#7a541b;text-transform:uppercase;letter-spacing:.05em;font-size:.82rem}
.tpc-shop-pathway-grid small{display:block;color:#514437;line-height:1.35;margin-top:4px}
.tpc-shop-featured,.tpc-shop-all{padding:52px 0;background:rgba(255,250,242,.94)}
.tpc-shop-all{padding-top:20px}
.tpc-shop-heading{display:grid;grid-template-columns:1fr auto 1fr;gap:18px;align-items:center;margin-bottom:28px}
.tpc-shop-heading span{height:1px;background:linear-gradient(90deg,transparent,#b8872d)}
.tpc-shop-heading span:last-child{background:linear-gradient(90deg,#b8872d,transparent)}
.tpc-shop-heading h2{margin:0;color:#071427;font-size:clamp(2rem,4vw,3.15rem);font-weight:500}
.tpc-shop-feature-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:14px}
.tpc-shop-all-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.tpc-shop-product-card{
  min-width:0;background:#fffaf2;border:1px solid #d8bd88;border-radius:16px;overflow:hidden;
  box-shadow:0 11px 28px rgba(55,37,20,.07);transition:.2s ease;
}
.tpc-shop-product-card:hover{transform:translateY(-3px);box-shadow:0 16px 38px rgba(55,37,20,.12)}
.tpc-shop-product-image{display:block;aspect-ratio:1.48/1;background:#e8d7ba;overflow:hidden}
.tpc-shop-product-image img{width:100%;height:100%;object-fit:cover;display:block;transition:.25s ease}
.tpc-shop-product-card:hover .tpc-shop-product-image img{transform:scale(1.025)}
.tpc-shop-product-body{padding:15px 15px 17px;text-align:center}
.tpc-shop-product-body h3{font-size:1.18rem;line-height:1.15;margin:0 0 6px;color:#071427}
.tpc-shop-product-body p{font-size:.88rem;line-height:1.4;color:#5e4c3b;margin:.4rem 0}
.tpc-shop-price{font-size:1.05rem;font-weight:700;color:#8b6220;margin:7px 0}
.tpc-shop-link{font-size:.78rem;text-transform:uppercase;letter-spacing:.06em;color:#6d4b17;font-weight:700}
.tpc-shop-values{background:#071427;color:#f4ead7;border-top:1px solid #b8872d;padding:27px 0}
.tpc-shop-value-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0}
.tpc-shop-value-grid>div{display:grid;grid-template-columns:38px 1fr;column-gap:10px;padding:4px 24px;border-right:1px solid rgba(213,179,107,.25)}
.tpc-shop-value-grid>div:last-child{border-right:0}
.tpc-shop-value-grid>div>span{grid-row:1/3;color:#d5b36b;font-size:1.6rem}
.tpc-shop-value-grid strong{color:#d5b36b}
.tpc-shop-value-grid small{color:#d8c9b4}
.tpc-shop-empty{padding:30px;border:1px dashed #caa766;border-radius:16px;background:#fffaf2}
.woocommerce-shop .tpc-site-footer{margin-top:0}

@media(max-width:1180px){
  .tpc-shop-feature-grid{grid-template-columns:repeat(3,1fr)}
  .tpc-shop-all-grid{grid-template-columns:repeat(3,1fr)}
  .tpc-shop-pathway-grid{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:760px){
  body.tpc-inner-fixed-background{background-attachment:scroll}
  .tpc-shop-hero{min-height:520px;background-position:43% center}
  .tpc-shop-hero-panel{margin:0;width:100%}
  .tpc-shop-pathway-grid,.tpc-shop-feature-grid,.tpc-shop-all-grid,.tpc-shop-value-grid{grid-template-columns:1fr}
  .tpc-shop-pathway-grid>a,.tpc-shop-value-grid>div{border-right:0;border-bottom:1px solid rgba(184,135,45,.22)}
  .tpc-shop-heading{grid-template-columns:45px auto 45px}
  .tpc-shop-featured,.tpc-shop-all{padding:38px 0}
}


/* =========================================================
   The Prophetic Corner v1.4 — Visionary decorative polish
   Keeps the existing site structure/index intact.
   ========================================================= */

/* Header: floating, elegant, no hard underline */
.tpc-site-header{
  border-bottom:0!important;
  background:
    linear-gradient(180deg,rgba(5,13,24,.985),rgba(7,20,39,.955))!important;
  box-shadow:
    0 10px 34px rgba(0,0,0,.18),
    inset 0 -1px 0 rgba(213,179,107,.08)!important;
}
.tpc-site-header:after{
  content:"";
  position:absolute;
  left:50%;
  bottom:-1px;
  width:min(520px,58vw);
  height:1px;
  transform:translateX(-50%);
  background:linear-gradient(90deg,transparent,rgba(213,179,107,.42),transparent);
  opacity:.7;
  pointer-events:none;
}
.tpc-brand{position:relative}
.tpc-brand:before{
  content:"✦";
  position:absolute;
  left:-20px;
  top:-8px;
  color:var(--tpc-gold-light);
  font-size:.64rem;
  opacity:.9;
}
.tpc-brand:after{
  content:"";
  position:absolute;
  left:-13px;
  bottom:-7px;
  width:78px;
  height:1px;
  background:linear-gradient(90deg,var(--tpc-gold),transparent);
  opacity:.62;
}

/* Site-wide fixed decorative atmosphere */
body.tpc-inner-fixed-background{
  position:relative;
  isolation:isolate;
  background:
    linear-gradient(rgba(244,234,215,.79),rgba(244,234,215,.82)),
    url('assets/images/tpc-site-background.png') center center/cover fixed no-repeat!important;
}
body.tpc-inner-fixed-background:before{
  content:"";
  position:fixed;
  inset:78px 0 0;
  z-index:-2;
  pointer-events:none;
  background:
    radial-gradient(circle at 18% 12%,rgba(213,179,107,.22),transparent 24%),
    radial-gradient(circle at 85% 22%,rgba(108,75,125,.10),transparent 28%),
    radial-gradient(circle at 72% 75%,rgba(255,255,255,.42),transparent 34%);
}
body.tpc-inner-fixed-background:after{
  content:"";
  position:fixed;
  inset:78px 0 0;
  z-index:-1;
  pointer-events:none;
  opacity:.55;
  background-image:
    radial-gradient(circle,rgba(184,135,45,.60) 0 1px,transparent 1.6px),
    radial-gradient(circle,rgba(255,255,255,.70) 0 1px,transparent 1.5px);
  background-size:190px 190px,260px 260px;
  background-position:28px 44px,118px 86px;
  mask-image:linear-gradient(to bottom,rgba(0,0,0,.9),rgba(0,0,0,.2) 72%,transparent);
}

/* Replace plain navy page banners with celestial, dimensional page heroes */
.tpc-page-hero{
  position:relative;
  overflow:hidden;
  background:
    linear-gradient(90deg,rgba(5,13,24,.92),rgba(7,20,39,.72) 48%,rgba(7,20,39,.44)),
    url('assets/images/tpc-site-background.png') center 43%/cover no-repeat!important;
  border-bottom:0!important;
  box-shadow:inset 0 -30px 60px rgba(7,20,39,.22);
}
.tpc-page-hero:before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    radial-gradient(circle at 70% 28%,rgba(255,239,194,.30),transparent 18%),
    radial-gradient(circle at 48% 58%,rgba(213,179,107,.13),transparent 30%),
    linear-gradient(180deg,transparent 68%,rgba(7,20,39,.16));
}
.tpc-page-hero:after{
  content:"✦";
  position:absolute;
  right:11%;
  top:28%;
  color:var(--tpc-gold-light);
  font-size:1.25rem;
  text-shadow:
    0 0 16px rgba(213,179,107,.8),
    74px 44px 0 rgba(213,179,107,.22),
    -90px 70px 0 rgba(255,255,255,.22);
}
.tpc-page-hero .tpc-container{position:relative;z-index:2}
.tpc-page-hero .tpc-kicker{
  color:#e2bd70;
  text-shadow:0 1px 18px rgba(0,0,0,.18);
}
.tpc-page-hero .tpc-title{
  position:relative;
  text-shadow:0 8px 28px rgba(0,0,0,.24);
}
.tpc-page-hero .tpc-title:after{
  content:"";
  display:block;
  width:110px;
  height:1px;
  margin-top:18px;
  background:linear-gradient(90deg,#d5b36b,transparent);
}

/* Inner content: allow the chair background to breathe through */
body.tpc-inner-fixed-background .tpc-content{
  background:transparent!important;
  backdrop-filter:none!important;
}
body.tpc-inner-fixed-background .tpc-content > .tpc-container,
body.tpc-inner-fixed-background .tpc-app{
  position:relative;
}

/* Elegant parchment/glass treatment without changing page structure */
body.tpc-inner-fixed-background .tpc-app{
  background:rgba(255,249,238,.82);
  border:1px solid rgba(184,135,45,.22);
  border-radius:28px;
  box-shadow:
    0 24px 64px rgba(71,46,24,.08),
    inset 0 1px 0 rgba(255,255,255,.8);
  backdrop-filter:blur(8px);
  margin-top:34px;
  margin-bottom:34px;
}
body.tpc-inner-fixed-background .tpc-app:before{
  content:"";
  position:absolute;
  inset:10px;
  border:1px solid rgba(184,135,45,.10);
  border-radius:22px;
  pointer-events:none;
}

/* Prayer Wall specifically — soften and ornament the wall */
.tpc-prayer-app{
  overflow:hidden;
}
.tpc-prayer-app:after{
  content:"";
  position:absolute;
  right:-120px;
  top:90px;
  width:340px;
  height:340px;
  border:1px solid rgba(184,135,45,.20);
  border-radius:50%;
  box-shadow:
    0 0 0 28px rgba(184,135,45,.025),
    0 0 0 56px rgba(184,135,45,.016);
  pointer-events:none;
}
.tpc-prayer-app .tpc-app-head{
  position:relative;
  padding:24px 26px 18px;
  margin:-8px -8px 24px;
  border-radius:22px;
  background:
    linear-gradient(135deg,rgba(255,250,241,.96),rgba(244,231,206,.86));
  border:1px solid rgba(184,135,45,.18);
}
.tpc-prayer-app .tpc-app-head:before{
  content:"✦";
  color:#b8872d;
  position:absolute;
  left:24px;
  top:17px;
  font-size:.8rem;
}
.tpc-prayer-item{
  position:relative;
  overflow:hidden;
  background:
    linear-gradient(180deg,rgba(255,250,241,.96),rgba(246,231,204,.92))!important;
  box-shadow:0 16px 40px rgba(79,52,29,.08)!important;
}
.tpc-prayer-item:after{
  content:"";
  position:absolute;
  right:-48px;
  bottom:-48px;
  width:120px;
  height:120px;
  border:1px solid rgba(184,135,45,.12);
  border-radius:50%;
}
.tpc-prayer-item h3{color:#071427}
.tpc-prayer-category{color:#9a6c21!important}

/* Coach, booking, reading, portal panels: more premium depth */
.tpc-booking-form,
.tpc-coach-panel,
.tpc-portal-card,
.tpc-reading-stage,
.tpc-live-room-aside,
.tpc-live-room-main,
.tpc-premium-offer,
.tpc-premium-card,
.tpc-integrated-reading{
  box-shadow:
    0 18px 48px rgba(56,37,20,.09),
    inset 0 1px 0 rgba(255,255,255,.58)!important;
}
.tpc-portal-card:hover,
.tpc-coach-card:hover,
.tpc-premium-offer:hover{
  transform:translateY(-3px);
  transition:.22s ease;
}

/* Golden halo section headings */
.tpc-app-head h2,
.tpc-reading-intro h2,
.tpc-shop-heading h2{
  position:relative;
}
.tpc-app-head h2:after,
.tpc-reading-intro h2:after{
  content:"";
  display:block;
  width:92px;
  height:1px;
  margin-top:12px;
  background:linear-gradient(90deg,#b8872d,transparent);
}

/* Buttons — richer jewel effect */
.tpc-btn,
.tpc-app-button{
  box-shadow:
    0 7px 18px rgba(184,135,45,.16),
    inset 0 1px 0 rgba(255,255,255,.2);
}
.tpc-btn--solid,
.tpc-app-button:not(.tpc-app-button--outline){
  background:
    linear-gradient(180deg,#c99939,#ad7b21)!important;
  border-color:#d5b36b!important;
}
.tpc-btn--solid:hover,
.tpc-app-button:not(.tpc-app-button--outline):hover{
  box-shadow:
    0 11px 28px rgba(184,135,45,.24),
    0 0 0 3px rgba(213,179,107,.08);
}

/* Shop: keep existing approved layout, just make it more cinematic */
.tpc-shop-hero{
  border-bottom:0!important;
  box-shadow:inset 0 -40px 70px rgba(7,20,39,.20);
}
.tpc-shop-hero:after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    radial-gradient(circle at 50% 26%,rgba(255,240,204,.18),transparent 24%),
    linear-gradient(180deg,transparent 72%,rgba(7,20,39,.16));
}
.tpc-shop-hero-content{z-index:3!important}
.tpc-shop-pathways{
  border-top:0!important;
  border-bottom:0!important;
  box-shadow:
    0 12px 32px rgba(62,40,20,.06),
    inset 0 1px 0 rgba(255,255,255,.82);
}
.tpc-shop-pathways:before,
.tpc-shop-featured:before{
  content:"";
  display:block;
  width:min(760px,72vw);
  height:1px;
  margin:0 auto;
  background:linear-gradient(90deg,transparent,#d5b36b,transparent);
}
.tpc-shop-product-card{
  border-color:rgba(184,135,45,.30)!important;
  box-shadow:0 14px 36px rgba(63,41,22,.08)!important;
}

/* Footer — richer but still clean */
.tpc-site-footer{
  position:relative;
  border-top:0!important;
  background:
    radial-gradient(circle at 50% 0,rgba(184,135,45,.10),transparent 26%),
    linear-gradient(180deg,#06101d,#030914)!important;
}
.tpc-site-footer:before{
  content:"";
  position:absolute;
  left:50%;
  top:0;
  transform:translateX(-50%);
  width:min(760px,74vw);
  height:1px;
  background:linear-gradient(90deg,transparent,#b8872d,transparent);
}
.tpc-site-footer:after{
  content:"✦";
  position:absolute;
  left:50%;
  top:-8px;
  transform:translateX(-50%);
  color:#d5b36b;
  font-size:.72rem;
  background:#06101d;
  padding:0 10px;
}

/* Mobile keeps the atmosphere without forcing fixed backgrounds */
@media(max-width:760px){
  body.tpc-inner-fixed-background{
    background-attachment:scroll!important;
    background-position:28% center!important;
  }
  body.tpc-inner-fixed-background:before,
  body.tpc-inner-fixed-background:after{position:absolute}
  .tpc-page-hero{background-position:30% center!important}
  body.tpc-inner-fixed-background .tpc-app{
    border-radius:20px;
    margin-top:18px;
    margin-bottom:18px;
    backdrop-filter:blur(4px);
  }
  .tpc-prayer-app .tpc-app-head{padding:22px 18px}
}

/* Accessibility: respect users who reduce visual motion/effects */
@media(prefers-reduced-motion:reduce){
  .tpc-portal-card:hover,.tpc-coach-card:hover,.tpc-premium-offer:hover{transform:none}
}


/* =========================================================
   v1.5.0 — crop-safe global hero implementation
   Approved heavenly/apothecary hero is used site-wide.
   ========================================================= */

/* Main homepage hero: keep the central Prophetic Corner branding visible. */
.tpc-hero{
  min-height:clamp(620px,43vw,790px)!important;
  background-image:
    linear-gradient(90deg,rgba(5,13,24,.30),rgba(5,13,24,.07) 38%,rgba(5,13,24,.02) 68%,rgba(5,13,24,.08)),
    url('assets/images/tpc-global-hero.png')!important;
  background-size:cover!important;
  background-position:center 58%!important;
  background-repeat:no-repeat!important;
}
.tpc-hero:after{
  background:linear-gradient(0deg,rgba(7,20,39,.34),transparent 34%)!important;
}
.tpc-hero__content{
  max-width:560px!important;
  margin:100px 0 54px!important;
  align-self:end!important;
  background:linear-gradient(180deg,rgba(7,20,39,.78),rgba(7,20,39,.60))!important;
}

/* Inner-page hero:
   - use the same approved artwork
   - make the banner tall enough to preserve the image's composition
   - anchor the page title away from the center brand mark
*/
.tpc-page-hero{
  min-height:clamp(470px,34vw,610px)!important;
  display:flex!important;
  align-items:flex-end!important;
  padding:0!important;
  overflow:hidden!important;
  background-image:
    linear-gradient(90deg,rgba(5,13,24,.38),rgba(5,13,24,.08) 35%,rgba(5,13,24,.02) 72%,rgba(5,13,24,.10)),
    url('assets/images/tpc-global-hero.png')!important;
  background-size:cover!important;
  background-position:center 58%!important;
  background-repeat:no-repeat!important;
  border:0!important;
}
.tpc-page-hero:before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  background:
    linear-gradient(0deg,rgba(7,20,39,.42),transparent 32%),
    radial-gradient(circle at 50% 58%,rgba(255,239,194,.14),transparent 24%)!important;
  pointer-events:none!important;
}
.tpc-page-hero:after{
  content:none!important;
}
.tpc-page-hero .tpc-container{
  position:relative!important;
  z-index:2!important;
  width:100%!important;
  padding-bottom:28px!important;
}
.tpc-page-hero .tpc-kicker,
.tpc-page-hero .tpc-title{
  display:inline-block!important;
  background:rgba(5,13,24,.76)!important;
  backdrop-filter:blur(7px)!important;
  box-shadow:0 16px 36px rgba(0,0,0,.18)!important;
}
.tpc-page-hero .tpc-kicker{
  margin:0!important;
  padding:13px 18px 0!important;
  border-radius:16px 16px 0 0!important;
  color:#e6c578!important;
}
.tpc-page-hero .tpc-title{
  margin:0!important;
  padding:6px 18px 14px!important;
  border-radius:0 0 16px 16px!important;
  color:#fffdf8!important;
  max-width:min(680px,84vw)!important;
  font-size:clamp(2.8rem,5.2vw,5.4rem)!important;
  line-height:.95!important;
  text-shadow:0 5px 20px rgba(0,0,0,.28)!important;
}
.tpc-page-hero .tpc-title:after{
  content:none!important;
}

/* Prevent previous critical-inline rules from re-cropping the hero. */
body .tpc-page-hero{
  background-position:center 58%!important;
  background-size:cover!important;
}

/* Shop hero now uses the same approved visual world while retaining shop content. */
.tpc-shop-hero{
  min-height:clamp(560px,39vw,720px)!important;
  background-image:
    linear-gradient(180deg,rgba(7,20,39,.04),rgba(7,20,39,.14) 72%,rgba(7,20,39,.44)),
    url('assets/images/tpc-global-hero.png')!important;
  background-position:center 58%!important;
  background-size:cover!important;
}
.tpc-shop-hero-panel{
  margin-left:0!important;
  max-width:430px!important;
  background:rgba(5,13,24,.78)!important;
}

/* Tablet/mobile: do not crop the center branding off-screen. */
@media(max-width:900px){
  .tpc-hero,
  .tpc-page-hero,
  .tpc-shop-hero{
    background-position:center 57%!important;
  }
  .tpc-page-hero{
    min-height:430px!important;
  }
}
@media(max-width:640px){
  .tpc-hero{
    min-height:620px!important;
    background-position:center 54%!important;
  }
  .tpc-page-hero{
    min-height:390px!important;
    background-position:center 54%!important;
  }
  .tpc-page-hero .tpc-container{
    padding:0 18px 18px!important;
  }
  .tpc-page-hero .tpc-title{
    font-size:clamp(2.3rem,11vw,3.8rem)!important;
    max-width:92vw!important;
  }
  .tpc-shop-hero{
    min-height:540px!important;
    background-position:center 54%!important;
  }
}


/* =========================================================
   v1.5.1 — Header brand lockup fix
   Keep “The Prophetic Corner” visually connected on desktop + mobile.
   ========================================================= */

.tpc-brand{
  display:inline-flex!important;
  align-items:baseline!important;
  justify-content:flex-start!important;
  gap:.28em!important;
  white-space:nowrap!important;
  flex-wrap:nowrap!important;
  width:auto!important;
  max-width:none!important;
  line-height:1!important;
  letter-spacing:0!important;
}

.tpc-brand strong,
.tpc-brand em{
  display:inline-block!important;
  width:auto!important;
  margin:0!important;
  padding:0!important;
  white-space:nowrap!important;
  flex:0 0 auto!important;
}

.tpc-brand strong{
  font-style:normal!important;
  font-weight:600!important;
  line-height:1!important;
}

.tpc-brand em{
  margin-left:.08em!important;
  font-style:italic!important;
  line-height:1!important;
  color:var(--tpc-gold-light)!important;
  transform:none!important;
  position:static!important;
}

.tpc-brand:before,
.tpc-brand:after{
  pointer-events:none!important;
}

/* Prevent nav flex spacing from pulling the two brand words apart. */
.tpc-nav{
  grid-template-columns:auto 1fr auto!important;
}
.tpc-nav > .tpc-brand{
  justify-self:start!important;
}

/* Tablet/mobile: retain one compact brand unit instead of stacking words. */
@media(max-width:900px){
  .tpc-brand{
    font-size:clamp(1.05rem,3vw,1.35rem)!important;
    gap:.22em!important;
  }
}

@media(max-width:640px){
  .tpc-brand{
    display:inline-flex!important;
    flex-direction:row!important;
    align-items:baseline!important;
    gap:.18em!important;
    max-width:210px!important;
    white-space:nowrap!important;
    font-size:1rem!important;
    line-height:1!important;
  }

  .tpc-brand strong,
  .tpc-brand em{
    display:inline!important;
    white-space:nowrap!important;
    margin:0!important;
  }

  .tpc-actions{
    gap:7px!important;
  }

  .tpc-actions .tpc-btn{
    padding:10px 13px!important;
    font-size:.82rem!important;
  }

  .tpc-actions .tpc-btn--solid{
    padding:11px 15px!important;
  }
}

.tpc-brand-main,
.tpc-brand-corner{
  display:inline-block!important;
  white-space:nowrap!important;
  margin:0!important;
  padding:0!important;
  width:auto!important;
  flex:0 0 auto!important;
  line-height:1!important;
}
.tpc-brand-main{
  font-weight:600!important;
  color:#fffdf8!important;
}
.tpc-brand-corner{
  margin-left:.08em!important;
  color:var(--tpc-gold-light)!important;
  font-style:italic!important;
}


/* =========================================================
   v1.6 — Image preservation architecture
   Page labels/actions live in a dedicated navy rail BELOW header.
   Hero art is never covered by page titles or CTA panels.
   ========================================================= */

.tpc-page-rail,
.tpc-home-rail{
  position:relative;
  z-index:5;
  background:
    radial-gradient(circle at 50% 0,rgba(184,135,45,.10),transparent 38%),
    linear-gradient(180deg,#071427,#0a182a);
  color:#f4ead7;
  border:0!important;
  box-shadow:0 10px 28px rgba(0,0,0,.14);
}
.tpc-page-rail:after,
.tpc-home-rail:after{
  content:"";
  position:absolute;
  bottom:0;
  left:50%;
  transform:translateX(-50%);
  width:min(760px,72vw);
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(213,179,107,.55),transparent);
}

.tpc-page-rail__inner{
  min-height:118px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:30px;
  padding-top:18px;
  padding-bottom:18px;
}
.tpc-page-rail__kicker{
  color:#d7aa50;
  text-transform:uppercase;
  letter-spacing:.16em;
  font-weight:700;
  font-size:.72rem;
  margin-bottom:5px;
}
.tpc-page-rail h1{
  color:#fffdf8;
  font-size:clamp(2.25rem,4vw,4.2rem);
  line-height:.95;
  margin:0;
  font-weight:500;
}
.tpc-page-rail__action{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  text-decoration:none;
  white-space:nowrap;
  padding:12px 18px;
  border:1px solid rgba(213,179,107,.72);
  border-radius:999px;
  color:#e7c578;
  background:rgba(255,255,255,.025);
  font-weight:700;
  box-shadow:0 8px 20px rgba(0,0,0,.12);
}
.tpc-page-rail__action:hover{
  background:#bd8a2a;
  color:#071427;
}

/* Homepage rail */
.tpc-home-rail__inner{
  min-height:108px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:28px;
  padding-top:16px;
  padding-bottom:16px;
}
.tpc-home-rail__message span,
.tpc-home-rail__message strong{
  display:block;
}
.tpc-home-rail__message span{
  color:#d8ac55;
  text-transform:uppercase;
  letter-spacing:.16em;
  font-size:.7rem;
  font-weight:700;
  margin-bottom:6px;
}
.tpc-home-rail__message strong{
  color:#f4ead7;
  font-size:1rem;
  font-weight:500;
}
.tpc-home-rail__actions{
  display:flex;
  align-items:center;
  gap:12px;
}
.tpc-home-rail__actions a{
  display:inline-flex;
  justify-content:center;
  align-items:center;
  padding:11px 17px;
  border-radius:999px;
  text-decoration:none;
  font-weight:700;
  border:1px solid #c5963e;
  color:#f3dfb5;
  white-space:nowrap;
}
.tpc-home-rail__actions a:first-child{
  background:linear-gradient(180deg,#c99939,#ad7b21);
  color:#080f1b;
}
.tpc-home-rail__actions a:last-child{
  background:#f4ead7;
  color:#071427;
}

/* HERO ART: absolutely no overlays */
.tpc-hero--art-only,
.tpc-page-hero--image-only,
.tpc-shop-hero--art-only{
  position:relative!important;
  overflow:hidden!important;
  background-image:url('assets/images/tpc-global-hero.png')!important;
  background-repeat:no-repeat!important;
  background-size:cover!important;
  background-position:center 58%!important;
  border:0!important;
}
.tpc-hero--art-only{
  min-height:clamp(620px,43vw,790px)!important;
}
.tpc-page-hero--image-only{
  min-height:clamp(510px,35vw,650px)!important;
}
.tpc-shop-hero--art-only{
  min-height:clamp(560px,39vw,720px)!important;
}

/* Explicitly remove every old overlay that could interrupt the artwork */
.tpc-hero--art-only:before,
.tpc-hero--art-only:after,
.tpc-page-hero--image-only:before,
.tpc-page-hero--image-only:after,
.tpc-shop-hero--art-only:before,
.tpc-shop-hero--art-only:after{
  content:none!important;
  display:none!important;
}
.tpc-hero--art-only .tpc-hero__content,
.tpc-page-hero--image-only .tpc-container,
.tpc-shop-hero--art-only .tpc-shop-hero-content,
.tpc-shop-hero--art-only .tpc-shop-hero-shade,
.tpc-shop-hero--art-only .tpc-shop-hero-panel{
  display:none!important;
}

/* There must be no page-title badge floating over the center logo. */
.tpc-page-hero--image-only .tpc-kicker,
.tpc-page-hero--image-only .tpc-title{
  display:none!important;
}

/* Let the approved central artwork breathe. */
.tpc-page-hero--image-only{
  box-shadow:
    inset 0 20px 34px rgba(7,20,39,.10),
    inset 0 -28px 44px rgba(7,20,39,.08)!important;
}

/* Remove obsolete decorative line immediately below main site header. */
.tpc-site-header:after{
  content:none!important;
  display:none!important;
}

/* Shop pathway strip remains below clean hero. */
.tpc-shop-pathways{
  margin-top:0!important;
}

/* Mobile: titles remain in rail and hero remains art only */
@media(max-width:900px){
  .tpc-page-rail__inner,
  .tpc-home-rail__inner{
    padding-left:20px;
    padding-right:20px;
  }
  .tpc-hero--art-only,
  .tpc-page-hero--image-only,
  .tpc-shop-hero--art-only{
    background-position:center 56%!important;
  }
}

@media(max-width:700px){
  .tpc-page-rail__inner,
  .tpc-home-rail__inner{
    min-height:auto;
    flex-direction:column;
    align-items:flex-start;
    gap:14px;
    padding-top:17px;
    padding-bottom:17px;
  }
  .tpc-page-rail h1{
    font-size:2.25rem;
  }
  .tpc-page-rail__action{
    padding:9px 14px;
    font-size:.86rem;
  }
  .tpc-home-rail__actions{
    width:100%;
    flex-wrap:wrap;
  }
  .tpc-home-rail__actions a{
    flex:1 1 180px;
    font-size:.84rem;
  }
  .tpc-hero--art-only{
    min-height:520px!important;
    background-position:center 55%!important;
  }
  .tpc-page-hero--image-only{
    min-height:400px!important;
    background-position:center 55%!important;
  }
  .tpc-shop-hero--art-only{
    min-height:440px!important;
    background-position:center 55%!important;
  }
}


/* =========================================================
   v1.6.1 — hero vertical crop refinement
   Moves artwork upward slightly so the full tagline and lower flourish remain visible.
   ========================================================= */
.tpc-hero--art-only,
.tpc-page-hero--image-only,
.tpc-shop-hero--art-only{
  background-position:center 63%!important;
}

@media(max-width:900px){
  .tpc-hero--art-only,
  .tpc-page-hero--image-only,
  .tpc-shop-hero--art-only{
    background-position:center 62%!important;
  }
}

@media(max-width:700px){
  .tpc-hero--art-only,
  .tpc-page-hero--image-only,
  .tpc-shop-hero--art-only{
    background-position:center 61%!important;
  }
}

/* v1.7 WooCommerce product polish */
.single-product .tpc-content{background:transparent!important}
.single-product .product{max-width:1180px;margin:42px auto!important;padding:30px;border:1px solid #d5b36b;border-radius:28px;background:linear-gradient(145deg,rgba(255,250,240,.96),rgba(244,229,204,.94));box-shadow:0 26px 65px rgba(62,40,20,.10)}
.single-product div.product div.images img{border-radius:20px;box-shadow:0 16px 38px rgba(33,21,12,.12)}
.single-product div.product .summary{padding:12px 8px 8px}
.single-product div.product .product_title{font-size:clamp(2.5rem,5vw,4.6rem);line-height:.95;color:#071427}
.single-product .price{font-size:1.6rem!important;color:#a27424!important;font-weight:700}
.single-product .woocommerce-product-details__short-description{font-size:1.05rem;line-height:1.65;color:#574738}
.single-product form.cart .button{background:linear-gradient(180deg,#c99939,#ad7b21)!important;color:#071427!important;border-radius:999px!important;padding:14px 24px!important}
.single-product .product_meta{margin-top:20px;padding-top:18px;border-top:1px solid rgba(184,135,45,.28);font-size:.88rem}
.single-product .woocommerce-tabs{margin-top:34px}
.single-product .woocommerce-tabs ul.tabs{display:none!important}
.single-product .woocommerce-Tabs-panel{display:block!important;margin:0!important;padding:22px!important;border:1px solid #dcc18e!important;border-radius:18px;background:#fffaf0}
.single-product .related.products{margin-top:42px}
.single-product .related.products>h2{font-size:2.2rem;color:#071427}
.woocommerce ul.products li.product{border:1px solid rgba(184,135,45,.28);border-radius:18px;padding:0 0 16px!important;overflow:hidden;background:#fffaf2;box-shadow:0 12px 30px rgba(54,35,19,.07)}
.woocommerce ul.products li.product img{margin:0 0 12px!important}
.woocommerce ul.products li.product .woocommerce-loop-product__title{padding:0 14px!important;color:#071427;font-size:1.08rem!important}
.woocommerce ul.products li.product .price{padding:0 14px;color:#9a6c21!important}
.woocommerce ul.products li.product .button{margin-left:14px!important;border-radius:999px}
.woocommerce-breadcrumb{max-width:1180px;margin:24px auto 0!important;color:#7c674e}
.woocommerce-message,.woocommerce-info,.woocommerce-error{border-radius:14px;background:#fff8e9;border-top-color:#b8872d}
.tpc-single-product-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.82fr);gap:34px;align-items:start}
.tpc-single-product-details{grid-column:1/-1}
@media(max-width:800px){.tpc-single-product-grid{grid-template-columns:1fr}.single-product .product{margin:20px 12px!important;padding:18px}}

/* v1.7.1 Featured product links */
.tpc-shop-product-card a{cursor:pointer}
.tpc-shop-product-card .tpc-shop-link{position:relative;z-index:2}
