/* ═══════════════════════════════════════════
   HOMEPAGE STYLES
═══════════════════════════════════════════ */

/* Hero */
.pp-hero{min-height:calc(100vh - 74px);display:grid;grid-template-columns:1fr 1fr;align-items:center;position:relative;overflow:hidden;background:var(--white)}
.pp-hero::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 70% 60% at 70% 50%,rgba(207,227,212,.35) 0%,transparent 70%),radial-gradient(ellipse 40% 40% at 10% 80%,rgba(217,130,91,.07) 0%,transparent 60%);pointer-events:none}
.hero-text{padding:80px 48px 80px 80px;position:relative;z-index:1}
.hero-eyebrow{display:inline-flex;align-items:center;gap:10px;font-size:.78rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--clay);margin-bottom:24px;padding:8px 16px;background:var(--clay-pale);border-radius:var(--r-pill);border:1px solid rgba(217,130,91,.2)}
.hero-eyebrow::before{content:'✉';font-size:.9rem}
.hero-text h1{font-size:clamp(2.4rem,4vw,3.8rem);margin-bottom:12px}
.hero-tagline{font-family:'Crimson Pro',serif;font-size:1.25rem;font-style:italic;color:var(--sand-light);margin-bottom:28px;font-weight:300}
.hero-body{font-size:1.05rem;color:var(--sand);max-width:480px;margin-bottom:44px;line-height:1.75}
.hero-visual{position:relative;z-index:1;display:flex;justify-content:center;align-items:center;padding:60px 60px 60px 20px}

/* Letter stack visual */
.letter-stack{position:relative;width:360px;height:420px}
.letter-card{position:absolute;width:300px;background:#fff;border-radius:16px;padding:32px;box-shadow:0 8px 40px rgba(79,74,69,.12);border:1px solid rgba(209,171,130,.2)}
.letter-card:nth-child(1){top:40px;left:60px;transform:rotate(5deg);background:var(--sage);z-index:1}
.letter-card:nth-child(2){top:20px;left:30px;transform:rotate(-3deg);background:var(--clay-pale);z-index:2}
.letter-card:nth-child(3){top:0;left:10px;transform:rotate(0deg);background:#fff;z-index:3;animation:gentleFloat 4s ease-in-out infinite}
.letter-lines{display:flex;flex-direction:column;gap:10px;margin-top:20px}
.letter-line{height:2px;border-radius:2px;background:rgba(79,74,69,.12)}
.letter-header{display:flex;align-items:center;gap:12px;margin-bottom:16px}
.letter-avatar{width:44px;height:44px;border-radius:50%;background:linear-gradient(135deg,var(--teal) 0%,var(--teal-light) 100%);display:flex;align-items:center;justify-content:center;font-size:1.1rem;color:#fff;flex-shrink:0}
.letter-meta{flex:1}
.letter-name{font-family:'Lora',serif;font-size:.9rem;font-weight:600;color:var(--teal)}
.letter-desc{font-size:.75rem;color:var(--sand-light)}
.letter-badge{padding:4px 10px;background:var(--sage);color:var(--teal);border-radius:var(--r-pill);font-size:.7rem;font-weight:500}
.float-badge{position:absolute;background:#fff;border-radius:14px;padding:10px 16px;box-shadow:0 4px 20px var(--shadow);display:flex;align-items:center;gap:10px;font-size:.8rem;font-weight:500;color:var(--sand);border:1px solid rgba(209,171,130,.15);animation:gentleFloat 5s ease-in-out infinite;z-index:10}
.float-badge:nth-child(4){bottom:20px;right:-10px;animation-delay:1s}
.float-badge:nth-child(5){top:10px;right:10px;animation-delay:2s}
.badge-icon{width:28px;height:28px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:.85rem}

/* How It Works */
.pp-how{background:var(--white);padding:100px 0;position:relative;overflow:hidden}
.pp-how::before{content:'"';position:absolute;top:-60px;right:60px;font-family:'Lora',serif;font-size:24rem;color:rgba(207,227,212,.25);line-height:1;pointer-events:none;user-select:none}
.how-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:start}
.pp-steps{display:flex;flex-direction:column;gap:36px;margin-top:40px}
.pp-step{display:flex;gap:24px;align-items:flex-start}
.step-num{width:48px;height:48px;border-radius:50%;background:var(--teal-pale);border:2px solid rgba(31,109,106,.15);display:flex;align-items:center;justify-content:center;font-family:'Lora',serif;font-size:1.1rem;font-weight:600;color:var(--teal);flex-shrink:0}
.step-content h3{font-size:1.1rem;color:var(--teal);margin-bottom:6px}
.step-content p{font-size:.95rem;color:var(--sand-light);line-height:1.7}

/* How Visual */
.how-visual{display:flex;flex-direction:column;gap:20px}
.quote-card{background:var(--cream);border-radius:20px;padding:32px;border:1px solid rgba(209,171,130,.2);position:relative}
.quote-card::before{content:'"';position:absolute;top:20px;left:28px;font-family:'Lora',serif;font-size:3rem;color:var(--clay);opacity:.4;line-height:1}
.quote-card blockquote{font-size:1.2rem;margin-top:24px;padding:0;border:none;background:transparent}
.quote-attr{margin-top:16px;display:flex;align-items:center;gap:12px}
.quote-avatar{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,var(--clay) 0%,var(--clay-light) 100%);display:flex;align-items:center;justify-content:center;font-size:.9rem;color:#fff}
.quote-name{font-size:.85rem;font-weight:500;color:var(--teal)}
.quote-role{font-size:.78rem;color:var(--sand-light)}
.stat-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}

/* Two Paths */
.pp-paths{background:var(--cream-dark);padding:100px 60px;text-align:center}
.paths-header{margin-bottom:60px}
.paths-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px;max-width:900px;margin:0 auto}
.path-card{border-radius:28px;padding:56px 44px;text-align:left;position:relative;overflow:hidden;transition:transform .3s,box-shadow .3s}
.path-card:hover{transform:translateY(-6px)}
.path-card::before{content:'';position:absolute;top:-60px;right:-60px;width:200px;height:200px;border-radius:50%;opacity:.08}
.path-give{background:var(--teal);box-shadow:0 12px 48px rgba(31,109,106,.3)}
.path-give::before{background:#fff}
.path-give h3{color:#fff}
.path-give p{color:rgba(255,255,255,.82)}
.path-need{background:#fff;border:1.5px solid rgba(217,130,91,.3);box-shadow:0 12px 48px rgba(217,130,91,.12)}
.path-need::before{background:var(--clay)}
.path-need h3{color:var(--clay)}
.path-need p{color:var(--sand)}
.path-icon{font-size:2.4rem;margin-bottom:20px;display:block}
.path-card h3{font-size:1.6rem;margin-bottom:12px}
.path-card p{font-size:.95rem;line-height:1.75;margin-bottom:32px}

/* What Help Looks Like */
.pp-what-help{background:var(--white);padding:100px 0}
.what-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:80px;align-items:center}
.help-types{display:flex;flex-direction:column;gap:12px;margin-top:28px}
.help-chip{display:flex;align-items:center;gap:12px;padding:14px 20px;background:var(--cream);border-radius:14px;border:1px solid rgba(209,171,130,.2);font-size:.95rem;color:var(--sand);transition:all .2s;cursor:default}
.help-chip:hover{background:var(--teal-pale);border-color:rgba(31,109,106,.2);color:var(--teal);transform:translateX(6px)}
.help-chip-icon{width:36px;height:36px;border-radius:10px;background:#fff;display:flex;align-items:center;justify-content:center;font-size:1rem;box-shadow:0 2px 8px var(--shadow);flex-shrink:0}

/* Letter Visual */
.letter-visual-card{background:var(--cream);border-radius:24px;padding:40px;border:1px solid rgba(209,171,130,.2);box-shadow:0 8px 40px var(--shadow);position:relative}
.corner-badge{position:absolute;top:-20px;right:-20px;width:80px;height:80px;border-radius:50%;background:var(--clay);display:flex;align-items:center;justify-content:center;font-size:1.8rem;box-shadow:0 8px 24px rgba(217,130,91,.35);animation:gentleFloat 3s ease-in-out infinite}
.letter-greeting{font-family:'Lora',serif;font-size:1rem;font-style:italic;color:var(--sand-light);margin-bottom:20px}
.letter-message{font-family:'Crimson Pro',serif;font-size:1.1rem;color:var(--sand);line-height:1.8;margin-bottom:24px}
.letter-sig{font-family:'Lora',serif;font-style:italic;color:var(--clay);font-size:1.1rem}
.letter-attached{margin-top:24px;padding:20px;background:#fff;border-radius:14px;display:flex;align-items:center;gap:16px;border:1px solid rgba(207,227,212,.5)}
.attached-icon{width:44px;height:44px;border-radius:12px;background:var(--sage);display:flex;align-items:center;justify-content:center;font-size:1.2rem;flex-shrink:0}
.attached-text{font-size:.88rem}
.attached-text strong{color:var(--teal);display:block}
.attached-text span{color:var(--sand-light)}

/* Principles */
.pp-principles{background:var(--teal);padding:100px 0;position:relative;overflow:hidden}
.pp-principles::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 50% 60% at 80% 20%,rgba(207,227,212,.08) 0%,transparent 60%),repeating-linear-gradient(135deg,transparent,transparent 40px,rgba(255,255,255,.015) 40px,rgba(255,255,255,.015) 41px);pointer-events:none}
.pp-principles h2{color:#fff}
.principles-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:56px}
.principle-item{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.1);border-radius:20px;padding:36px 28px;transition:background .3s}
.principle-item:hover{background:rgba(255,255,255,.12)}
.principle-icon{font-size:2rem;margin-bottom:20px;display:block}
.principle-item h3{color:#fff;font-size:1.1rem;margin-bottom:10px}
.principle-item p{font-size:.9rem;color:rgba(255,255,255,.7);line-height:1.7}

/* Stories */
.pp-stories{background:var(--cream);padding:100px 0}
.stories-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:16px}
.story-card{background:#fff;border-radius:20px;padding:36px;border:1px solid rgba(209,171,130,.15);position:relative;transition:box-shadow .3s,transform .3s}
.story-card:hover{box-shadow:0 12px 40px var(--shadow);transform:translateY(-4px)}
.story-quote-mark{font-family:'Lora',serif;font-size:4rem;color:var(--sage-dark);opacity:.5;line-height:.8;margin-bottom:16px}
.story-text{font-family:'Crimson Pro',serif;font-size:1.08rem;font-style:italic;color:var(--sand);line-height:1.75;margin-bottom:24px}
.story-person{display:flex;align-items:center;gap:12px}
.story-avatar{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.95rem;font-weight:600;color:#fff;flex-shrink:0;font-family:'Lora',serif}
.story-name{font-size:.875rem;font-weight:500;color:var(--teal)}
.story-role{font-size:.78rem;color:var(--sand-light)}

/* ═══════════════════════════════════════════
   MESSAGES PAGE
═══════════════════════════════════════════ */
.pp-submit-strip{background:var(--teal-pale);padding:40px 60px;display:flex;align-items:center;justify-content:space-between;gap:40px;border-top:1px solid rgba(31,109,106,.12);border-bottom:1px solid rgba(31,109,106,.12)}
.pp-submit-strip h3{font-size:1.25rem;color:var(--teal);margin-bottom:6px}
.pp-submit-strip p{font-size:.93rem;color:var(--sand-light);max-width:460px}
.submit-form-inline{display:flex;gap:12px;flex-shrink:0;align-items:center}
.form-input{padding:13px 20px;border-radius:var(--r-pill);border:1.5px solid rgba(31,109,106,.2);background:#fff;font-family:'DM Sans',sans-serif;font-size:.9rem;color:var(--sand);outline:none;transition:border-color .2s;width:240px}
.form-input:focus{border-color:var(--teal)}

/* Masonry wall */
.pp-messages-wall{padding:28px 60px 80px;columns:3 300px;gap:24px;background:var(--cream)}
.msg-card{break-inside:avoid;background:#fff;border-radius:20px;padding:32px;border:1px solid rgba(209,171,130,.15);margin-bottom:24px;position:relative;transition:transform .3s,box-shadow .3s}
.msg-card:hover{transform:translateY(-4px);box-shadow:0 12px 40px var(--shadow)}
.msg-card.card-teal{border-left:4px solid var(--teal)}
.msg-card.card-clay{border-left:4px solid var(--clay)}
.msg-card.card-sage{border-left:4px solid var(--sage-dark)}
.msg-card.msg-featured{background:var(--teal);border:none;border-left:none}
.msg-card.msg-featured .msg-body{color:rgba(255,255,255,.9);font-size:1.2rem}
.msg-card.msg-featured .msg-name{color:rgba(255,255,255,.9)}
.msg-card.msg-featured .msg-role{color:rgba(255,255,255,.6)}
.msg-card.msg-featured .msg-date{color:rgba(255,255,255,.5)}
.quote-bg{font-family:'Lora',serif;font-size:8rem;color:rgba(255,255,255,.06);position:absolute;top:0;right:16px;line-height:1;pointer-events:none}
.msg-top{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:16px}
.msg-avatar{width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:'Lora',serif;font-size:1.1rem;font-weight:600;color:#fff;flex-shrink:0}
.msg-meta{flex:1;padding-left:12px}
.msg-name{font-size:.9rem;font-weight:500;color:var(--teal)}
.msg-role,.msg-date{font-size:.75rem;color:var(--sand-light)}
.msg-card.msg-featured .msg-role,.msg-card.msg-featured .msg-date{color:rgba(255,255,255,.55)}
.msg-body{font-family:'Crimson Pro',serif;font-size:1.1rem;font-style:italic;color:var(--sand);line-height:1.75;margin-bottom:18px}
.msg-footer{display:flex;align-items:center;justify-content:space-between}
.msg-heart{display:flex;align-items:center;gap:6px;font-size:.8rem;color:var(--sand-light);cursor:pointer;background:none;border:none;font-family:'DM Sans',sans-serif;padding:0;transition:color .2s}
.msg-heart:hover,.msg-heart.liked{color:var(--clay)}
.msg-card.msg-featured .msg-heart{color:rgba(255,255,255,.5)}
.msg-location{font-size:.75rem;color:var(--sand-light)}
.msg-card.msg-featured .msg-location{color:rgba(255,255,255,.5)}
.msg-write-cta{background:var(--cream-dark);border:2px dashed rgba(217,130,91,.3);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;cursor:pointer;min-height:200px;border-left:none}
.msg-write-cta:hover{border-color:var(--clay);background:var(--clay-pale)}
.write-icon{font-size:2rem;margin-bottom:12px}
.msg-write-cta h4{font-family:'Lora',serif;color:var(--clay);font-size:1rem;margin-bottom:6px}
.msg-write-cta p{font-size:.85rem;color:var(--sand-light)}
.pp-pagination{padding:40px 60px}
.pp-pagination .page-numbers{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;border:1.5px solid rgba(209,171,130,.3);color:var(--sand);text-decoration:none;font-size:.875rem;transition:all .2s}
.pp-pagination .page-numbers.current,.pp-pagination .page-numbers:hover{background:var(--teal);color:#fff;border-color:var(--teal)}
.pp-pagination .prev,.pp-pagination .next{width:auto;padding:0 16px;border-radius:var(--r-pill)}

/* ═══════════════════════════════════════════
   ANGEL SIGNS PAGE
═══════════════════════════════════════════ */
.pp-angel-hero{min-height:calc(100vh - 74px);background:linear-gradient(170deg,#1a2a2a 0%,#0f1f1e 40%,#1a3028 100%);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:120px 60px 80px;position:relative;overflow:hidden}
.stars-bg{position:absolute;inset:0;pointer-events:none}
.star-dot{position:absolute;border-radius:50%;background:#fff;opacity:0;animation:twinkle var(--dur,3s) ease-in-out infinite;animation-delay:var(--delay,0s)}
.hero-rays{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:800px;height:800px;background:radial-gradient(ellipse,rgba(201,168,76,.08) 0%,transparent 65%);pointer-events:none;animation:gentleFloat 6s ease-in-out infinite}
.angel-icon{font-size:4rem;margin-bottom:28px;position:relative;z-index:1}
.hero-eyebrow--gold{display:inline-flex;align-items:center;gap:8px;font-size:.75rem;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);padding:7px 16px;background:rgba(201,168,76,.12);border-radius:var(--r-pill);border:1px solid rgba(201,168,76,.25);margin-bottom:28px;position:relative;z-index:1}
.pp-angel-hero h1{font-size:clamp(2.6rem,5vw,4.5rem);color:#fff;position:relative;z-index:1;margin-bottom:24px}
.pp-angel-hero h1 em{color:var(--gold)}
.hero-sub{font-family:'Crimson Pro',serif;font-size:1.3rem;font-style:italic;color:rgba(255,255,255,.6);max-width:560px;margin:0 auto 44px;line-height:1.7;position:relative;z-index:1}
.scroll-hint{position:relative;z-index:1;font-size:.8rem;color:rgba(255,255,255,.4);display:flex;flex-direction:column;align-items:center;gap:10px}
.scroll-line{width:1px;height:50px;background:linear-gradient(to bottom,rgba(201,168,76,.6),transparent);animation:fadeUp 2s ease-in-out infinite}
.pp-intro-band{background:var(--gold-pale);padding:64px 60px;display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center;border-bottom:1px solid rgba(201,168,76,.2)}
.pp-intro-band h2{font-size:1.9rem;margin-bottom:16px}
.pp-intro-band h2 em{color:var(--gold)}
.pp-intro-band p{font-size:1.02rem;color:var(--sand);line-height:1.8}
.pp-intro-band blockquote{font-size:1.3rem;border-left:3px solid var(--gold);border-radius:0 16px 16px 0;position:relative}
.pp-intro-band blockquote::before{content:'"';position:absolute;top:8px;left:20px;font-size:5rem;color:rgba(31,109,106,.08);font-family:'Lora',serif;line-height:1}
.angel-stories{display:flex;flex-direction:column;gap:40px}
.angel-story{display:grid;grid-template-columns:1fr 1fr;border-radius:24px;overflow:hidden;box-shadow:0 8px 40px var(--shadow);transition:transform .3s;background:#fff}
.angel-story:hover{transform:translateY(-4px)}
.angel-story.story-reverse{direction:rtl}
.angel-story.story-reverse>*{direction:ltr}
.story-visual{min-height:320px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px;text-align:center;position:relative;overflow:hidden}
.visual-bg{position:absolute;inset:0}
.visual-bg::after{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at center,rgba(255,255,255,.06) 0%,transparent 70%)}
.sv-gold .visual-bg{background:linear-gradient(135deg,#8B6914 0%,#C9A84C 100%)}
.sv-sage .visual-bg{background:linear-gradient(135deg,var(--sage-dark) 0%,var(--teal) 100%)}
.sv-clay .visual-bg{background:linear-gradient(135deg,var(--clay) 0%,#8B3A1A 100%)}
.sv-night .visual-bg{background:linear-gradient(135deg,#1a2a2a 0%,#2A3A38 100%)}
.sv-teal .visual-bg{background:linear-gradient(135deg,var(--teal) 0%,#0A3D3B 100%)}
.big-icon{font-size:5rem;position:relative;z-index:1;margin-bottom:16px}
.visual-label{font-family:'Lora',serif;font-size:1rem;font-style:italic;color:rgba(255,255,255,.75);position:relative;z-index:1}
.story-content{padding:48px;display:flex;flex-direction:column;justify-content:center}
.story-eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:.72rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--gold);margin-bottom:16px;padding:5px 12px;background:var(--gold-pale);border-radius:var(--r-pill);border:1px solid rgba(201,168,76,.25);width:fit-content}
.story-content h3{font-size:1.5rem;margin-bottom:16px}
.story-content blockquote{font-size:1.05rem;padding:0 0 0 16px;border-left:2px solid rgba(201,168,76,.4);background:transparent;border-radius:0;margin:0 0 24px}
.story-attr{display:flex;align-items:center;gap:12px}
.story-av{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:600;color:#fff;font-size:.95rem;flex-shrink:0}
.story-name-text{font-size:.875rem;font-weight:500;color:var(--teal)}
.story-loc{font-size:.75rem;color:var(--sand-light)}
.pp-submit-dark{background:linear-gradient(170deg,#0f1f1e 0%,#1a3028 100%);padding:100px 60px;text-align:center;position:relative;overflow:hidden}
.pp-submit-dark::before{content:'✦  ✦  ✦';position:absolute;top:32px;left:0;right:0;text-align:center;font-size:1rem;letter-spacing:2rem;color:rgba(201,168,76,.3)}
.pp-submit-dark h2{color:#fff;margin-bottom:16px}
.pp-submit-dark h2 em{color:var(--gold)}
.pp-submit-dark>p{font-family:'Crimson Pro',serif;font-size:1.2rem;font-style:italic;color:rgba(255,255,255,.6);max-width:500px;margin:0 auto 48px;line-height:1.7}
.submit-card-dark{background:rgba(255,255,255,.04);border:1px solid rgba(201,168,76,.2);border-radius:24px;padding:48px;max-width:600px;margin:0 auto;text-align:left}
.submit-card-dark .form-group label{color:rgba(255,255,255,.7)}
.input-dark{background:rgba(255,255,255,.05)!important;border:1px solid rgba(201,168,76,.2)!important;color:#fff!important;border-radius:12px!important}
.input-dark:focus{border-color:var(--gold)!important}
.input-dark::placeholder{color:rgba(255,255,255,.3)!important}

/* ═══════════════════════════════════════════
   TIME IS NOW PAGE
═══════════════════════════════════════════ */
.pp-tin-hero{min-height:calc(100vh - 74px);background:var(--teal);display:grid;grid-template-columns:1fr 1fr;position:relative;overflow:hidden}
.pp-tin-hero::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 60% 80% at 80% 30%,rgba(207,227,212,.08) 0%,transparent 60%),repeating-linear-gradient(-45deg,transparent,transparent 60px,rgba(255,255,255,.015) 60px,rgba(255,255,255,.015) 61px);pointer-events:none}
.hero-eyebrow--sage{display:inline-flex;align-items:center;gap:8px;font-size:.75rem;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--sage);padding:7px 16px;background:rgba(207,227,212,.1);border-radius:var(--r-pill);border:1px solid rgba(207,227,212,.2);margin-bottom:32px;width:fit-content}
.pp-tin-hero-left{padding:80px 48px 80px 80px;display:flex;flex-direction:column;justify-content:center;position:relative;z-index:1}
.pp-tin-hero-left h1{color:#fff}
.pp-tin-hero-left h1 em{color:var(--clay-light)}
.pp-tin-hero-left .hero-body{font-family:'Crimson Pro',serif;font-size:1.2rem;font-style:italic;color:rgba(255,255,255,.7);line-height:1.75;margin-bottom:44px;max-width:440px}
.pp-tin-hero-right{background:rgba(0,0,0,.15);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 60px;border-left:1px solid rgba(255,255,255,.08);position:relative;z-index:1}
.live-badge{display:flex;align-items:center;gap:8px;font-size:.75rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--clay-light);margin-bottom:28px}
.live-dot{width:8px;height:8px;border-radius:50%;background:var(--clay-light);animation:livePulse 2s ease-in-out infinite}
.need-counter{text-align:center;margin-bottom:36px}
.counter-num{font-family:'Lora',serif;font-size:6rem;font-weight:600;color:#fff;line-height:1;letter-spacing:-.04em;margin-bottom:8px}
.counter-label{font-size:.9rem;color:rgba(255,255,255,.6);letter-spacing:.04em}
.need-divider{border:none;border-top:1px solid rgba(255,255,255,.1);margin:24px 0 28px;position:relative}
.need-cards{display:flex;flex-direction:column;gap:12px;width:100%}
.need-card{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:16px 20px;display:flex;align-items:center;gap:16px;transition:background .2s}
.need-card:hover{background:rgba(255,255,255,.1)}
.need-icon{font-size:1.3rem;flex-shrink:0}
.need-text{flex:1}
.need-name{font-size:.875rem;font-weight:500;color:#fff}
.need-detail{font-size:.78rem;color:rgba(255,255,255,.5)}
.need-urgency{font-size:.7rem;font-weight:500;padding:4px 10px;border-radius:var(--r-pill);white-space:nowrap}
.need-urgent{background:rgba(217,130,91,.25);color:var(--clay-light)}
.need-waiting{background:rgba(207,227,212,.15);color:var(--sage)}
.pp-why-now{background:#fff}
.why-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:start}
.reason-list{display:flex;flex-direction:column;gap:16px;margin-top:24px}
.reason{display:flex;gap:16px;align-items:flex-start;padding:20px;border-radius:16px;background:var(--cream);border:1px solid rgba(209,171,130,.15);transition:transform .2s}
.reason:hover{transform:translateX(6px)}
.reason-icon{font-size:1.5rem;flex-shrink:0;margin-top:2px}
.reason h3{font-size:1rem;color:var(--teal);margin-bottom:4px}
.reason p{font-size:.9rem;color:var(--sand-light);line-height:1.65}
.urgency-card{background:var(--teal);border-radius:24px;padding:40px;color:#fff;position:relative;overflow:hidden;margin-bottom:20px}
.urgency-card::before{content:'';position:absolute;top:-40px;right:-40px;width:160px;height:160px;border-radius:50%;background:rgba(255,255,255,.05)}
.urgency-card h3{font-size:1.3rem;color:#fff;margin-bottom:10px;position:relative;z-index:1}
.urgency-card>p{font-size:.92rem;color:rgba(255,255,255,.75);line-height:1.7;margin-bottom:20px;position:relative;z-index:1}
.wait-bar{background:rgba(255,255,255,.1);border-radius:8px;height:10px;overflow:hidden;margin-bottom:6px}
.wait-fill{height:100%;border-radius:8px;background:var(--clay-light)}
.wait-label{font-size:.78rem;color:rgba(255,255,255,.6);display:flex;justify-content:space-between}
.quick-stats{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.commit-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.commit-card{border-radius:20px;padding:36px 28px;border:2px solid rgba(209,171,130,.2);background:var(--cream);text-align:center;transition:all .3s;cursor:pointer}
.commit-card:hover,.commit-card.selected{border-color:var(--teal);background:var(--teal-pale);transform:translateY(-4px)}
.commit-icon{font-size:2rem;margin-bottom:14px;display:block}
.commit-card h3{font-size:1.1rem;color:var(--teal);margin-bottom:8px}
.commit-card p{font-size:.88rem;color:var(--sand-light);line-height:1.65;margin-bottom:20px}
.commit-cta-text{font-size:.82rem;font-weight:500;color:var(--teal)}
.pp-clay-cta{background:linear-gradient(135deg,var(--clay) 0%,var(--clay-light) 100%);padding:100px 60px;text-align:center}
.pp-clay-cta h2{color:#fff;margin-bottom:16px}
.pp-clay-cta p{font-family:'Crimson Pro',serif;font-size:1.3rem;font-style:italic;color:rgba(255,255,255,.8);max-width:480px;margin:0 auto 40px;line-height:1.7}

/* ═══════════════════════════════════════════
   PAY IT FORWARD PAGE
═══════════════════════════════════════════ */
.pp-pif-hero{min-height:calc(100vh - 74px);background:var(--white);display:grid;grid-template-columns:1fr 1fr;align-items:center;position:relative;overflow:hidden}
.pp-pif-hero-text{padding:80px 48px 80px 80px;position:relative;z-index:1}
.ripple-bg{position:absolute;right:-100px;top:50%;transform:translateY(-50%);pointer-events:none;z-index:0}
.ripple-ring{position:absolute;border-radius:50%;border:1px solid rgba(207,227,212,.4);top:50%;left:50%;transform:translate(-50%,-50%);animation:rippleExpand 6s ease-out infinite}
.ripple-ring:nth-child(1){width:160px;height:160px}
.ripple-ring:nth-child(2){width:320px;height:320px;animation-delay:.8s;border-color:rgba(207,227,212,.3)}
.ripple-ring:nth-child(3){width:480px;height:480px;animation-delay:1.6s;border-color:rgba(207,227,212,.2)}
.ripple-ring:nth-child(4){width:640px;height:640px;animation-delay:2.4s;border-color:rgba(207,227,212,.1)}
.pp-pif-hero h1{font-size:clamp(2.4rem,4vw,3.8rem)}
.pp-pif-hero .hero-body{font-size:1.05rem;color:var(--sand);max-width:480px;margin-bottom:40px;line-height:1.8}
.what-means-inner{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}
.wm-quote{font-family:'Crimson Pro',serif;font-size:1.35rem;font-style:italic;font-weight:300;color:var(--sand);line-height:1.75;padding:36px;background:#fff;border-radius:0 20px 20px 0;box-shadow:0 8px 32px rgba(31,109,106,.1);border-left:3px solid var(--clay);position:relative}
.wm-quote::before{content:'"';font-size:6rem;color:rgba(31,109,106,.06);font-family:'Lora',serif;position:absolute;top:8px;left:20px;line-height:1}
.wm-quote cite{display:block;margin-top:20px;font-size:.85rem;font-style:normal;color:var(--sand-light)}
.pif-ways-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px;max-width:960px;margin:0 auto}
.pif-way{border-radius:24px;padding:40px;background:var(--cream);border:1px solid rgba(209,171,130,.2);transition:transform .3s,box-shadow .3s}
.pif-way:hover{transform:translateY(-4px);box-shadow:0 12px 40px var(--shadow)}
.pif-featured{background:var(--teal);border:none;grid-column:span 2;display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
.pif-way .pif-icon{font-size:2.5rem;margin-bottom:18px;display:block}
.pif-way h3{font-size:1.3rem;color:var(--teal);margin-bottom:10px}
.pif-featured h3{color:#fff}
.pif-way p{font-size:.93rem;color:var(--sand-light);line-height:1.75;margin-bottom:20px}
.pif-featured p{color:rgba(255,255,255,.75)}
.pif-link{font-size:.85rem;font-weight:500;color:var(--teal);text-decoration:none;display:inline-flex;align-items:center;gap:6px;transition:gap .2s}
.pif-link:hover{gap:10px;color:var(--teal-light)}
.pif-featured .pif-link{color:var(--sage)}
.pif-featured-side{text-align:center}
.pif-big-num{font-family:'Lora',serif;font-size:6rem;font-weight:600;color:rgba(255,255,255,.15);line-height:1}
.pif-big-label{font-size:.9rem;color:rgba(255,255,255,.6)}
.pledge-header{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:48px;flex-wrap:wrap;gap:24px}
.pledge-header h2{margin-bottom:4px}
.pledge-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.pledge-card{background:#fff;border-radius:16px;padding:24px;border:1px solid rgba(209,171,130,.15);transition:transform .2s}
.pledge-card:hover{transform:translateY(-3px)}
.pledge-av{width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:'Lora',serif;font-size:1rem;font-weight:600;color:#fff;margin-bottom:14px}
.pledge-tag{display:inline-block;padding:3px 10px;border-radius:var(--r-pill);font-size:.68rem;font-weight:500;background:var(--sage);color:var(--teal);margin-bottom:10px}
.pledge-text{font-family:'Crimson Pro',serif;font-style:italic;font-size:.95rem;color:var(--sand);line-height:1.6;margin-bottom:12px}
.pledge-name{font-size:.9rem;font-weight:500;color:var(--teal)}
.pledge-date{font-size:.72rem;color:var(--sand-light)}
.pledge-cta-card{background:var(--teal-pale);border:2px dashed rgba(31,109,106,.25);border-radius:16px;padding:24px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;cursor:pointer;transition:all .2s;min-height:180px}
.pledge-cta-card:hover{border-color:var(--teal);background:#fff}
.pledge-cta-card .p-icon{font-size:1.5rem;margin-bottom:8px}
.pledge-cta-card p{font-size:.85rem;color:var(--teal);font-weight:500}
.rc-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}
.chain-visual{display:flex;flex-direction:column}
.chain-person{display:flex;align-items:center;gap:20px;padding:20px 24px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08);border-radius:16px}
.chain-person--ghost{background:rgba(255,255,255,.02);border-style:dashed}
.chain-connector{width:2px;height:24px;background:rgba(255,255,255,.1);margin-left:35px;position:relative}
.chain-connector::after{content:'↓';position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:.75rem;color:rgba(255,255,255,.3)}
.chain-av{width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:600;color:#fff;font-size:1rem;flex-shrink:0}
.chain-av--ghost{background:rgba(255,255,255,.1)}
.chain-info{flex:1}
.chain-name{font-size:.9rem;font-weight:500;color:#fff}
.chain-action{font-size:.8rem;color:rgba(255,255,255,.6)}

/* ═══════════════════════════════════════════
   RESPONSIVE — PAGE SPECIFIC
═══════════════════════════════════════════ */
@media(max-width:1100px){
  .pp-hero,.pp-tin-hero,.pp-pif-hero{grid-template-columns:1fr}
  .hero-text,.pp-tin-hero-left,.pp-pif-hero-text{padding:40px 32px}
  .hero-visual{display:none}
  .pp-tin-hero-right{border-left:none;border-top:1px solid rgba(255,255,255,.08)}
  .how-grid,.what-grid,.why-grid,.what-means-inner,.rc-grid{grid-template-columns:1fr;gap:48px}
  .paths-grid{grid-template-columns:1fr;max-width:480px}
  .stories-grid,.principles-grid{grid-template-columns:1fr}
  .pif-ways-grid{grid-template-columns:1fr}
  .pif-featured{grid-column:span 1;grid-template-columns:1fr}
  .pledge-grid{grid-template-columns:1fr 1fr}
  .commit-grid{grid-template-columns:1fr;max-width:420px;margin:0 auto}
  .pp-intro-band{grid-template-columns:1fr;padding:48px 32px;gap:32px}
  .pp-angel-hero,.pp-submit-dark,.pp-clay-cta{padding:80px 32px}
  .pp-submit-strip{padding:32px;flex-direction:column;align-items:flex-start}
  .pp-messages-wall{padding:20px 32px 60px;columns:2 260px}
  .pp-paths{padding:72px 32px}
}
@media(max-width:680px){
  .pp-tin-hero-left{padding:40px 20px}
  .pp-tin-hero-right{padding:40px 20px}
  .counter-num{font-size:4rem}
  .pledge-grid{grid-template-columns:1fr}
  .pp-messages-wall{columns:1;padding:16px 20px 48px}
  .what-means-inner{grid-template-columns:1fr}
  .submit-form-inline{flex-direction:column;width:100%}
  .form-input{width:100%}
  .angel-story{grid-template-columns:1fr;direction:ltr!important}
  .story-visual{min-height:220px}
  .pif-ways-grid{grid-template-columns:1fr}
}

/* Additional fixes v1.0.1 */
.pp-angel-hero { padding-top: 80px; }
.pp-tin-hero-left, .pp-tin-hero-right { padding-top: 60px; padding-bottom: 60px; }
