/* pp-components.css — AUTO-GENERATED base rules + hand-written tail.
   Regenerate base rules with: php tools/build-catalog.php
   Extracts repeated inline styles from content/*.php into cacheable classes.
   Each base rule carries the byte-identical declaration of the inline string
   it replaces, so computed styles are unchanged; the tail re-homes the mobile
   fixes that used to key off inline styles in inc/layout.php. */

/* ==== generated base rules ==== */
.pp-c-line{color:#4d4f6b;}
.pp-eyebrow{font-family:'JetBrains Mono',monospace; font-size:13px; letter-spacing:0.18em; color:#8047dd; text-transform:uppercase;}
.pp-c-accent{color:#8047dd;}
.pp-row10{display:flex; gap:10px;}
.pp-faq{border-radius:18px; border:1px solid rgba(255,255,255,0.08); background:rgba(255,255,255,0.025); padding:22px 26px;}
.pp-faq-sum{cursor:pointer; font-weight:600; font-size:17px; color:#ecedf7; list-style:none;}
.pp-p15a{margin:14px 0 0; font-size:15px; line-height:1.62; color:#a9abc6;}
.pp-stat-sub{margin-top:10px; font-size:14px; color:#a7a9c4;}
.pp-h2{font-family:'Unbounded',sans-serif; font-weight:600; font-size:clamp(30px,4vw,52px); line-height:1.08; letter-spacing:-0.02em; margin:18px 0 0; max-width:16ch;}
.pp-num26{font-family:'Unbounded',sans-serif; font-weight:600; font-size:26px; color:#8047dd;}
.pp-cap125{font-size:12.5px; color:#8688a6; margin-top:4px;}
.pp-mono11{font-family:'JetBrains Mono',monospace; font-size:11px; letter-spacing:0.1em; color:#8047dd;}
.pp-t18m0{font-family:'Unbounded',sans-serif; font-weight:500; font-size:18px; margin:0; letter-spacing:-0.01em;}
.pp-card{position:relative; padding:34px; border-radius:24px; border:1px solid rgba(255,255,255,0.08); background:linear-gradient(180deg,rgba(255,255,255,0.045),rgba(255,255,255,0.012)); overflow:hidden;}
.pp-num20r{position:relative; font-family:'Unbounded',sans-serif; font-weight:600; font-size:20px; color:#8047dd;}
.pp-p15b{margin:14px 0 0; font-size:15px; line-height:1.6; color:#aaace1;}
.pp-section{position:relative; max-width:1600px; margin:0 auto; padding:130px 32px; overflow:hidden;}
.pp-stat-cell{padding:30px 26px; background:rgba(9,10,20,0.72); backdrop-filter:blur(8px);}
.pp-grad46{font-family:'Unbounded',sans-serif; font-weight:600; font-size:46px; line-height:1; background:linear-gradient(120deg,#8047dd,#4d8dff); -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent;}
.pp-t21{font-family:'Unbounded',sans-serif; font-weight:500; font-size:21px; margin:20px 0 0; letter-spacing:-0.01em;}
.pp-p15c{margin:12px 0 0; font-size:15px; line-height:1.6; color:#a4a6c2;}
.pp-wrap92{max-width:1600px; margin:0 auto; padding:92px 32px 0;}
.pp-chip{display:inline-flex; align-items:center; gap:8px; padding:9px 15px; border-radius:999px; border:1px solid rgba(255,255,255,0.12); background:rgba(255,255,255,0.03); font-size:13px; color:#c2c4dc;}
.pp-dot6{width:6px; height:6px; border-radius:50%; background:#8047dd; box-shadow:0 0 10px #8047dd;}
.pp-pain{position:relative; padding:32px; border-radius:24px; border:1px solid rgba(255,138,150,0.16); background:linear-gradient(180deg,rgba(255,138,150,0.05),rgba(255,255,255,0.012)); overflow:hidden;}
.pp-pain-x{width:34px; height:34px; border-radius:10px; border:1px solid rgba(255,138,150,0.32); display:flex; align-items:center; justify-content:center; color:#ff8a96; font-weight:700; font-size:18px;}
.pp-t18{font-family:'Unbounded',sans-serif; font-weight:500; font-size:18px; letter-spacing:-0.01em; margin:18px 0 0;}
.pp-p145a{margin:12px 0 0; font-size:14.5px; line-height:1.6; color:#a9abc6;}
.pp-card-flat32{padding:32px; border-radius:22px; border:1px solid rgba(255,255,255,0.08); background:rgba(255,255,255,0.025);}
.pp-p145b{margin:12px 0 0; font-size:14.5px; line-height:1.6; color:#a4a6c2;}
.pp-grid4{display:grid; grid-template-columns:repeat(4,1fr); gap:20px; margin-top:54px;}
.pp-section-bleed{position:relative; padding:130px 0; background:linear-gradient(180deg,#06070e,#090a16,#06070e); overflow:hidden;}
.pp-grad38{font-family:'Unbounded',sans-serif; font-weight:600; font-size:38px; line-height:1; background:linear-gradient(120deg,#8047dd,#4d8dff); -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent;}
.pp-container{max-width:1600px; margin:0 auto; padding:0 32px;}
.pp-t20{font-family:'Unbounded',sans-serif; font-weight:500; font-size:20px; letter-spacing:-0.01em;}
.pp-t20r{position:relative; font-family:'Unbounded',sans-serif; font-weight:500; font-size:20px; letter-spacing:-0.01em; margin:14px 0 0;}
.pp-irow10{display:flex; align-items:center; gap:10px;}
.pp-related{position:absolute; right:-120px; top:12%; width:440px; height:440px; border-radius:50%; background:radial-gradient(circle, rgba(160,123,255,0.1), transparent 70%); filter:blur(10px); pointer-events:none; will-change:transform;}
.pp-t15{display:block; padding:20px 22px; border-radius:16px; border:1px solid rgba(255,255,255,0.08); background:rgba(255,255,255,0.025);}
.pp-blob-a{font-family:'Unbounded',sans-serif; font-weight:500; font-size:15px; line-height:1.3; margin-top:8px; letter-spacing:-0.01em;}
.pp-mono{font-family:'JetBrains Mono',monospace;}
.pp-pad28{padding:28px;}
.pp-p145c{margin:14px 0 0; font-size:14.5px; line-height:1.6; color:#a4a6c2;}
.pp-dot7b{width:7px; height:7px; border-radius:50%; background:#8047dd; box-shadow:0 0 10px #8047dd;}
.pp-h3clamp{font-family:'Unbounded',sans-serif; font-weight:600; font-size:clamp(24px,3vw,36px); line-height:1.1; letter-spacing:-0.02em; margin:22px 0 0;}
.pp-card-media{border-radius:24px; border:1px solid rgba(255,255,255,0.08); background:linear-gradient(180deg,rgba(255,255,255,0.045),rgba(255,255,255,0.01)); overflow:hidden;}
.pp-media-label{position:absolute; left:24px; bottom:18px; font-family:'JetBrains Mono',monospace; font-size:12.5px; letter-spacing:0.1em; color:#c8c9e6;}
.pp-statrow{display:flex; gap:28px; margin-top:22px; padding-top:20px; border-top:1px solid rgba(255,255,255,0.08);}
.pp-card-flat34{padding:34px; border-radius:22px; border:1px solid rgba(255,255,255,0.08); background:rgba(255,255,255,0.025);}
.pp-input{width:100%; box-sizing:border-box; padding:15px 16px; border-radius:12px; border:1px solid rgba(255,255,255,0.14); background:rgba(255,255,255,0.05); color:#ecedf7; font-family:'Manrope',sans-serif; font-size:15px; outline:none;}
.pp-mono13a{font-family:'JetBrains Mono',monospace; font-size:13px; color:#8047dd; letter-spacing:0.08em;}
.pp-p165{margin:18px 0 0; font-size:16.5px; line-height:1.62; color:#c9cbe0;}
.pp-t19m0{font-family:'Unbounded',sans-serif; font-weight:500; font-size:19px; margin:0; letter-spacing:-0.01em;}
.pp-card34{padding:34px; border-radius:24px; border:1px solid rgba(255,255,255,0.08); background:linear-gradient(180deg,rgba(255,255,255,0.045),rgba(255,255,255,0.012));}
.pp-num40{font-family:'Unbounded',sans-serif; font-size:40px; line-height:0.6; color:#8047dd;}
.pp-p16{margin:14px 0 0; font-size:16px; line-height:1.62; color:#dcdcf0;}
.pp-mt24note{margin-top:24px; font-size:14px; color:#9092ad;}
.pp-c-mute{color:#8688a6;}
.pp-headrow{display:flex; align-items:flex-end; justify-content:space-between; flex-wrap:wrap; gap:24px;}
.pp-subhead{font-size:15px; color:#9092ad; max-width:34ch; line-height:1.6;}
.pp-card-hi28{padding:28px 26px; border-radius:20px; border:1px solid rgba(255,255,255,0.08); background:linear-gradient(180deg,rgba(128,71,221,0.08),rgba(255,255,255,0.012));}
.pp-grad40a{font-family:'Unbounded',sans-serif; font-weight:600; font-size:40px; line-height:1; background:linear-gradient(120deg,#a07bff,#4d8dff); -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent;}
.pp-pricerow{margin-top:22px; display:flex; align-items:baseline; gap:8px;}
.pp-pill{padding:9px 16px; border-radius:999px; border:1px solid rgba(255,255,255,0.12); background:rgba(255,255,255,0.03); font-size:14px; color:#c2c4dc;}
.pp-blob-card-a{position:absolute; top:-40px; right:-40px; width:150px; height:150px; border-radius:50%; background:radial-gradient(circle,rgba(125,123,255,0.18),transparent 70%);}
.pp-li{position:relative; padding-left:26px; font-size:16px; line-height:1.6; color:#c7c9de;}
.pp-li-dot{position:absolute; left:0; top:9px; width:8px; height:8px; border-radius:50%; background:#8047dd; box-shadow:0 0 10px #8047dd;}
.pp-grad{background:linear-gradient(120deg,#8047dd,#4d8dff); -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent;}
.pp-blob-card-b{position:absolute; top:-40px; right:-40px; width:150px; height:150px; border-radius:50%; background:radial-gradient(circle,rgba(77,141,255,0.18),transparent 70%);}
.pp-t14mute{font-size:14px; color:#8688a6;}
.pp-cap12{font-size:12px; color:#8688a6; margin-top:4px;}
.pp-mqrow{display:flex; gap:56px; align-items:center;}
.pp-t15b{font-size:15px; color:#dcdcf0;}
.pp-num22{font-family:'Unbounded',sans-serif; font-weight:600; font-size:22px; color:#a07bff;}
.pp-num34{font-family:'Unbounded',sans-serif; font-weight:600; font-size:34px; color:#ecedf7;}
.pp-c-c8{color:#c8c9e6;}
.pp-grid3{display:grid; grid-template-columns:repeat(3,1fr); gap:20px; margin-top:54px;}
.pp-t14right{font-size:14px; color:#ecedf7; font-weight:600; text-align:right;}
.pp-card38{position:relative; padding:38px; border-radius:24px; border:1px solid rgba(255,255,255,0.08); background:linear-gradient(180deg,rgba(255,255,255,0.04),rgba(255,255,255,0.012));}
.pp-p14mute{margin:10px 0 0; font-size:14px; color:#9092ad; line-height:1.5;}
.pp-hr{height:1px; background:rgba(255,255,255,0.08); margin:26px 0;}
.pp-featcol{display:flex; flex-direction:column; gap:12px; font-size:14.5px; color:#c2c4dc; line-height:1.5;}
.pp-ghost-c{display:flex; align-items:center; justify-content:center; gap:9px; margin-top:30px; padding:14px 24px; border-radius:12px; border:1px solid rgba(255,255,255,0.2); background:rgba(255,255,255,0.04); color:#ecedf7; font-weight:600; font-size:15px;}
.pp-splitrow{display:flex; justify-content:space-between; gap:16px; padding:13px 0; border-bottom:1px solid rgba(255,255,255,0.08);}
.pp-center-mute{text-align:center; font-size:16px; color:#8688a6;}
.pp-related-sm{display:block; padding:22px 24px; border-radius:18px; border:1px solid rgba(255,255,255,0.08); background:rgba(255,255,255,0.025);}
.pp-t16{font-family:'Unbounded',sans-serif; font-weight:500; font-size:16px; line-height:1.3; margin-top:10px; letter-spacing:-0.01em;}
.pp-p14b{margin:10px 0 0; font-size:14px; line-height:1.6; color:#a4a6c2;}
.pp-icard{padding:26px 28px; border-radius:20px; border:1px solid rgba(255,255,255,0.08); background:rgba(255,255,255,0.025); display:flex; gap:14px;}
.pp-num-accent{font-family:'Unbounded',sans-serif; font-weight:600; color:#8047dd;}
.pp-p15d{font-size:15px; line-height:1.6; color:#c7c9de;}
.pp-center-t17{text-align:center; font-family:'Unbounded',sans-serif; font-weight:600; font-size:17px; color:#ecedf7;}
.pp-barcol{flex:1; display:flex; flex-direction:column; align-items:center; justify-content:flex-end; height:100%;}
.pp-mono12b{font-family:'JetBrains Mono',monospace; font-size:12px; color:#8688a6; margin-top:12px;}
.pp-c-mute13{font-size:13px; color:#8688a6;}
.pp-chips{display:flex; flex-wrap:wrap; gap:14px; margin-top:34px;}
.pp-mono12c{font-family:'JetBrains Mono',monospace; font-size:12px; letter-spacing:0.1em; color:#8047dd;}
.pp-t18mt14{font-family:'Unbounded',sans-serif; font-weight:500; font-size:18px; margin:14px 0 0; letter-spacing:-0.01em;}
.pp-card-flat-sm{padding:28px 26px; border-radius:20px; border:1px solid rgba(255,255,255,0.08); background:rgba(255,255,255,0.025);}
.pp-quote{margin:0 0 16px; font-size:16px; line-height:1.72; color:#c2c4dc;}
.pp-h2-18{font-family:'Unbounded',sans-serif; font-weight:600; font-size:clamp(30px,4vw,52px); line-height:1.08; letter-spacing:-0.02em; margin:18px 0 0; max-width:18ch;}
.pp-p14c{margin:12px 0 0; font-size:14px; line-height:1.6; color:#a4a6c2;}
.pp-trow{display:grid; grid-template-columns:1.6fr 1fr 1fr; align-items:center; padding:18px 28px; border-bottom:1px solid rgba(255,255,255,0.06);}
.pp-cta{display:inline-flex; align-items:center; gap:9px; padding:14px 26px; border-radius:12px; background:linear-gradient(135deg,#8047dd,#4d8dff); color:#fff; font-weight:600; font-size:15px; box-shadow:0 12px 34px rgba(77,141,255,0.35); white-space:nowrap;}
.pp-blob-b{position:absolute; left:-140px; top:20%; width:460px; height:460px; border-radius:50%; background:radial-gradient(circle, rgba(77,141,255,0.09), transparent 70%); filter:blur(11px); pointer-events:none; will-change:transform;}
.pp-icard2{padding:28px 26px; border-radius:22px; border:1px solid rgba(255,255,255,0.08); background:rgba(255,255,255,0.025); display:flex; align-items:center; gap:16px;}
.pp-icon52{width:52px; height:52px; border-radius:14px; background:linear-gradient(135deg,#8047dd,#4d8dff); flex-shrink:0;}
.pp-t17{font-family:'Unbounded',sans-serif; font-weight:500; font-size:17px; letter-spacing:-0.01em;}
.pp-cap13{font-size:13px; color:#8688a6; margin-top:4px;}
.pp-h2-22{font-family:'Unbounded',sans-serif; font-weight:600; font-size:clamp(30px,4vw,52px); line-height:1.08; letter-spacing:-0.02em; margin:18px 0 0; max-width:22ch;}
.pp-blob-c{position:absolute; left:-150px; bottom:6%; width:500px; height:500px; border-radius:50%; background:radial-gradient(circle, rgba(77,141,255,0.1), transparent 70%); filter:blur(11px); pointer-events:none; will-change:transform;}
.pp-wrap-contact{max-width:1600px; margin:0 auto; padding:80px 32px 130px;}
.pp-cta-card{position:relative; border-radius:30px; overflow:hidden; border:1px solid rgba(255,255,255,0.1); background:linear-gradient(135deg,#11132c,#0a0b1c); padding:84px 56px;}
.pp-blob-cta-a{position:absolute; top:-120px; right:-80px; width:420px; height:420px; border-radius:50%; background:radial-gradient(circle,rgba(125,123,255,0.32),transparent 65%); animation:ppPulse 10s ease-in-out infinite;}
.pp-num34w{font-family:'Unbounded',sans-serif; font-weight:600; font-size:34px; color:#fff;}
.pp-splitrow26{display:flex; gap:26px; margin-top:20px; padding-top:18px; border-top:1px solid rgba(255,255,255,0.08);}
.pp-hero-orb-a{position:absolute; left:-12%; top:6%; width:560px; height:560px; border-radius:50%; background:radial-gradient(circle, rgba(125,123,255,0.26), rgba(125,123,255,0) 70%); filter:blur(8px); will-change:transform;}
.pp-hero-orb-b{position:absolute; right:-8%; top:-6%; width:440px; height:440px; border-radius:50%; background:radial-gradient(circle, rgba(77,141,255,0.22), rgba(77,141,255,0) 70%); filter:blur(6px); will-change:transform;}
.pp-hero-veil-r{position:absolute; inset:0; background:radial-gradient(120% 90% at 78% 18%, rgba(6,7,14,0) 0%, rgba(6,7,14,0) 55%, rgba(6,7,14,0.96) 100%);}
.pp-hero-veil-l{position:absolute; inset:0; background:linear-gradient(180deg, rgba(6,7,14,0) 0%, rgba(6,7,14,0) 22%, rgba(6,7,14,0) 55%, rgba(6,7,14,0.97) 100%);}
.pp-blob-cta-b{position:absolute; bottom:-160px; left:-60px; width:380px; height:380px; border-radius:50%; background:radial-gradient(circle,rgba(77,141,255,0.22),transparent 65%);}
.pp-hero{position:relative; min-height:100vh; display:flex; align-items:center; overflow:hidden;}
.pp-dot{width:7px; height:7px; border-radius:50%; background:#8047dd; box-shadow:0 0 12px #8047dd;}
.pp-hero-p{margin:26px 0 0; max-width:62ch; font-size:18px; line-height:1.6; color:#bcbed6;}
.pp-hero-note{margin:18px 0 0; font-family:'JetBrains Mono',monospace; font-size:13px; color:#8688a6; letter-spacing:0.02em;}
.pp-marquee{border-top:1px solid rgba(255,255,255,0.06); border-bottom:1px solid rgba(255,255,255,0.06); padding:26px 0; background:#080912; overflow:hidden; -webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent); mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);}
.pp-marquee-track{display:flex; width:max-content; gap:56px; animation:ppMarquee 38s linear infinite; font-family:'JetBrains Mono',monospace; font-size:17px; color:#7d7f9c; letter-spacing:0.02em; align-items:center;}
.pp-blob-d{position:absolute; left:-160px; top:8%; width:520px; height:520px; border-radius:50%; background:radial-gradient(circle, rgba(125,123,255,0.12), transparent 70%); filter:blur(10px); pointer-events:none; will-change:transform;}
.pp-media-glow-a{position:absolute; inset:0; background:radial-gradient(120% 120% at 80% 10%, rgba(125,123,255,0.5), transparent 55%);}
.pp-media-glow-b{position:absolute; inset:0; background:radial-gradient(120% 120% at 80% 10%, rgba(77,141,255,0.5), transparent 55%);}
.pp-media-glow-c{position:absolute; inset:0; background:radial-gradient(120% 120% at 80% 10%, rgba(160,123,255,0.5), transparent 55%);}
.pp-card34-hi{padding:34px; border-radius:22px; border:1px solid rgba(255,255,255,0.08); background:linear-gradient(180deg,rgba(125,123,255,0.1),rgba(255,255,255,0.02));}
.pp-grid-af{position:relative; display:grid; grid-template-columns:repeat(auto-fit,minmax(320px,1fr)); gap:44px; align-items:center;}
.pp-h2b{font-family:'Unbounded',sans-serif; font-weight:600; font-size:clamp(30px,4.2vw,52px); line-height:1.06; letter-spacing:-0.02em; margin:18px 0 0;}
.pp-hero-p2{margin:22px 0 0; font-size:17px; line-height:1.6; color:#bcbed6; max-width:52ch;}
.pp-featcol2{display:flex; flex-direction:column; gap:12px; margin-top:28px; font-size:15px; color:#c2c4dc;}
.pp-glass{padding:36px; border-radius:22px; border:1px solid rgba(255,255,255,0.12); background:rgba(9,10,20,0.6); backdrop-filter:blur(8px);}
.pp-col12mt28{display:flex; flex-direction:column; gap:12px; margin-top:22px;}
.pp-consent{display:flex; align-items:flex-start; gap:11px; margin-top:18px; font-size:12.5px; line-height:1.55; color:#8d8fab; cursor:pointer;}
.pp-checkbox{margin-top:1px; width:17px; height:17px; accent-color:#8047dd; flex-shrink:0; cursor:pointer;}
.pp-link-u{color:#a685ee; text-decoration:underline;}
.pp-form-submit{width:100%; margin-top:16px; border:none; cursor:pointer; padding:16px 24px; border-radius:12px; background:linear-gradient(135deg,#8047dd,#4d8dff); color:#fff; font-family:'Manrope',sans-serif; font-weight:600; font-size:16px; box-shadow:0 14px 40px rgba(77,141,255,0.4);}
.pp-hero-bg{position:absolute; top:-20%; left:0; right:0; height:140%; background-image:url('/assets/hero.png'); background-size:contain; background-position:center; background-repeat:no-repeat; background-color:#06070e; will-change:transform;}
.pp-hero-spot-a{position:absolute; left:14%; top:24%; width:14px; height:14px; border-radius:50%; background:#8047dd; box-shadow:0 0 18px #8047dd; opacity:0.8; will-change:transform;}
.pp-hero-spot-b{position:absolute; right:22%; top:38%; width:8px; height:8px; border-radius:50%; background:#4d8dff; box-shadow:0 0 14px #4d8dff; opacity:0.7; will-change:transform;}
.pp-breadcrumb{display:flex; align-items:center; gap:12px; font-family:'JetBrains Mono',monospace; font-size:13px; color:#8688a6; letter-spacing:0.02em;}
.pp-badge{display:inline-flex; align-items:center; gap:10px; margin-top:20px; padding:8px 16px; border-radius:999px; border:1px solid rgba(255,255,255,0.16); background:rgba(255,255,255,0.04); font-family:'JetBrains Mono',monospace; font-size:12.5px; letter-spacing:0.14em; color:#c8c9e6; text-transform:uppercase;}
.pp-chips2{display:flex; flex-wrap:wrap; gap:10px; margin-top:26px;}
.pp-cta-band{display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:24px; margin-top:28px; padding:30px 34px; border-radius:22px; border:1px solid rgba(125,123,255,0.28); background:linear-gradient(120deg,rgba(125,123,255,0.12),rgba(77,141,255,0.06));}
.pp-cta-band-p{margin:0; font-size:17px; line-height:1.55; color:#e6e7f5; max-width:64ch;}
.pp-grid3b{display:grid; grid-template-columns:repeat(3,1fr); gap:22px; margin-top:54px;}
.pp-card36-v{padding:36px; border-radius:22px; border:1px solid rgba(255,255,255,0.08); background:linear-gradient(180deg,rgba(125,123,255,0.07),rgba(255,255,255,0.015));}
.pp-card36{padding:36px; border-radius:22px; border:1px solid rgba(255,255,255,0.08); background:linear-gradient(180deg,rgba(255,255,255,0.04),rgba(255,255,255,0.012));}
.pp-card36-b{padding:36px; border-radius:22px; border:1px solid rgba(255,255,255,0.08); background:linear-gradient(180deg,rgba(77,141,255,0.07),rgba(255,255,255,0.012));}
.pp-section-narrow{position:relative; max-width:1080px; margin:0 auto; padding:130px 32px; overflow:hidden;}
.pp-grid1{display:grid; grid-template-columns:1fr; gap:14px; margin-top:48px;}
.pp-p125mute{margin:16px 0 0; font-size:12.5px; line-height:1.55; color:#7d7f9c;}
.pp-hero-inner{position:relative; z-index:2; width:100%; max-width:1600px; margin:0 auto; padding:140px 32px 64px; will-change:transform;}
.pp-h1{font-family:'Unbounded',sans-serif; font-weight:600; font-size:clamp(38px,5.2vw,70px); line-height:1.05; letter-spacing:-0.02em; margin:22px 0 0; max-width:20ch; text-wrap:balance;}
.pp-cta-lg{display:inline-flex; align-items:center; gap:9px; padding:16px 30px; border-radius:13px; background:linear-gradient(135deg,#8047dd,#4d8dff); color:#fff; font-weight:600; font-size:16px; box-shadow:0 14px 40px rgba(77,141,255,0.4);}
.pp-ghost{display:inline-flex; align-items:center; gap:9px; padding:16px 30px; border-radius:13px; border:1px solid rgba(255,255,255,0.2); background:rgba(255,255,255,0.04); color:#ecedf7; font-weight:600; font-size:16px; backdrop-filter:blur(6px);}
.pp-hero-stats{display:grid; grid-template-columns:repeat(4,1fr); gap:1px; margin-top:64px; border:1px solid rgba(255,255,255,0.09); border-radius:20px; overflow:hidden; background:rgba(255,255,255,0.06);}
.pp-mono135{margin-top:20px; font-family:'JetBrains Mono',monospace; font-size:13.5px; color:#8688a6; line-height:1.7;}
.pp-media-a{height:150px; background:linear-gradient(135deg,#1b1f44,#0b1030); position:relative; overflow:hidden;}
.pp-media-b{height:150px; background:linear-gradient(135deg,#10223f,#08122c); position:relative; overflow:hidden;}
.pp-media-c{height:150px; background:linear-gradient(135deg,#241a3f,#0d0a26); position:relative; overflow:hidden;}
.pp-t15mb{font-family:'Unbounded',sans-serif; font-weight:600; font-size:15px; color:#ecedf7; margin-bottom:10px;}
.pp-card-flat30{padding:30px 26px; border-radius:22px; border:1px solid rgba(255,255,255,0.08); background:rgba(255,255,255,0.025);}
.pp-grid3c{display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin-top:46px;}
.pp-t14r{text-align:right; font-size:14px; color:#a4a6c2;}
.pp-t21r{position:relative; font-family:'Unbounded',sans-serif; font-weight:500; font-size:21px; letter-spacing:-0.01em; margin:14px 0 0;}
.pp-mono135b{position:relative; display:inline-flex; align-items:center; gap:7px; margin-top:20px; font-family:'JetBrains Mono',monospace; font-size:13.5px; color:#8047dd;}
.pp-grid3d{display:grid; grid-template-columns:repeat(3,1fr); gap:20px; margin-top:54px; align-items:start;}
.pp-card-pop{position:relative; padding:38px; border-radius:24px; border:1px solid rgba(125,123,255,0.4); background:linear-gradient(180deg,rgba(125,123,255,0.14),rgba(77,141,255,0.05)); box-shadow:0 24px 60px rgba(77,99,255,0.18); overflow:hidden;}
.pp-blob-pop{position:absolute; top:-50px; right:-40px; width:180px; height:180px; border-radius:50%; background:radial-gradient(circle,rgba(125,123,255,0.28),transparent 70%);}
.pp-splitrow0{position:relative; display:flex; align-items:center; justify-content:space-between;}
.pp-tag{font-family:'JetBrains Mono',monospace; font-size:11px; letter-spacing:0.12em; text-transform:uppercase; padding:6px 12px; border-radius:999px; background:linear-gradient(135deg,#8047dd,#4d8dff); color:#fff;}
.pp-p14c0{margin:10px 0 0; font-size:14px; color:#c0c2e0; line-height:1.5;}
.pp-hr2{height:1px; background:rgba(255,255,255,0.12); margin:26px 0;}
.pp-featcol3{display:flex; flex-direction:column; gap:12px; font-size:14.5px; color:#dcdcf0; line-height:1.5;}
.pp-cta-c{display:flex; align-items:center; justify-content:center; gap:9px; margin-top:30px; padding:14px 24px; border-radius:12px; background:linear-gradient(135deg,#8047dd,#4d8dff); color:#fff; font-weight:600; font-size:15px; box-shadow:0 12px 34px rgba(77,141,255,0.4);}
.pp-note26{margin:26px 0 0; font-family:'JetBrains Mono',monospace; font-size:13px; color:#8688a6; line-height:1.6;}
.pp-pill2{padding:7px 13px; border-radius:999px; border:1px solid rgba(255,255,255,0.11); background:rgba(255,255,255,0.03); font-size:13px; color:#c2c4dc;}
.pp-num26mt{margin-top:12px; font-family:'Unbounded',sans-serif; font-weight:600; font-size:26px; color:#ecedf7;}
.pp-wrap56{max-width:1600px; margin:0 auto; padding:56px 32px 0;}
.pp-grid4b{display:grid; grid-template-columns:repeat(4,1fr); gap:16px; margin-top:28px;}
.pp-row9{display:flex; gap:9px;}
.pp-blob-e{position:absolute; right:-140px; top:0; width:480px; height:480px; border-radius:50%; background:radial-gradient(circle, rgba(125,123,255,0.1), transparent 70%); filter:blur(10px); pointer-events:none; will-change:transform;}
.pp-t20m0{font-family:'Unbounded',sans-serif; font-weight:500; font-size:20px; margin:0; letter-spacing:-0.01em;}
.pp-card-flat-28{padding:32px 28px; border-radius:22px; border:1px solid rgba(255,255,255,0.08); background:linear-gradient(180deg,rgba(255,255,255,0.04),rgba(255,255,255,0.012));}
.pp-cta-card2{position:relative; border-radius:24px; overflow:hidden; border:1px solid rgba(255,255,255,0.1); background:linear-gradient(135deg,#14112c,#0a0b1c); padding:44px 40px;}
.pp-blob-pop2{position:absolute; top:-100px; right:-70px; width:340px; height:340px; border-radius:50%; background:radial-gradient(circle,rgba(128,71,221,0.3),transparent 65%); animation:ppPulse 10s ease-in-out infinite;}
.pp-h3clamp2{font-family:'Unbounded',sans-serif; font-weight:600; font-size:clamp(22px,3vw,30px); line-height:1.15; letter-spacing:-0.02em; margin:0;}
.pp-cta-mt26{display:inline-flex; align-items:center; gap:9px; margin-top:26px; padding:15px 28px; border-radius:12px; background:linear-gradient(135deg,#8047dd,#4d8dff); color:#fff; font-weight:600; font-size:15px; box-shadow:0 14px 40px rgba(128,71,221,0.4);}
.pp-li17{position:relative; padding-left:26px; font-size:17px; line-height:1.65; color:#c7c9de;}
.pp-li-dot10{position:absolute; left:0; top:10px; width:8px; height:8px; border-radius:50%; background:#8047dd; box-shadow:0 0 10px #8047dd;}
.pp-rel{position:relative;}
.pp-grid2-40{display:grid; grid-template-columns:1fr 1fr; gap:40px;}
.pp-p17{margin:18px 0 0; font-size:17px; line-height:1.7; color:#c7c9de;}
.pp-list{margin:18px 0 0; padding:0; list-style:none; display:flex; flex-direction:column; gap:14px;}
.pp-chips20{display:flex; flex-wrap:wrap; gap:10px; margin-top:20px;}
.pp-grid3e{display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin-top:28px;}
.pp-grid4c{display:grid; grid-template-columns:repeat(4,1fr); gap:16px;}
.pp-grid4d{display:grid; grid-template-columns:repeat(4,1fr); gap:16px; margin-top:46px;}
.pp-grid2b{display:grid; grid-template-columns:repeat(2,1fr); gap:16px; margin-top:46px;}
.pp-li-dot-fs{width:8px; height:8px; border-radius:50%; background:#8047dd; box-shadow:0 0 10px #8047dd; flex-shrink:0;}
.pp-card-sm16{padding:22px 20px; border-radius:16px; border:1px solid rgba(255,255,255,0.08); background:rgba(255,255,255,0.025);}

/* ==== keyframes (ported from layout.php; content no longer needs them inline) ==== */
@keyframes ppMarquee { from { transform:translateX(0); } to { transform:translateX(-50%); } }
@keyframes ppPulse { 0%,100% { opacity:.55; transform:scale(1); } 50% { opacity:.9; transform:scale(1.06); } }

/* ==== card lift transition (was layout.php div[style*="border-radius:24px/22px"]) ==== */
.pp-card,.pp-card34,.pp-card34-hi,.pp-card38,.pp-card36,.pp-card36-v,.pp-card36-b,
.pp-card-flat32,.pp-card-flat34,.pp-card-flat30,.pp-card-flat-sm,.pp-card-flat-28,
.pp-pain,.pp-card-hi28,.pp-card-media,.pp-card-pop,.pp-icard,.pp-icard2,
.pp-related,.pp-related-sm,.pp-card-sm16,.pp-cta-band,.pp-glass {
  transition:transform .25s ease, border-color .25s ease, box-shadow .25s ease;
}

/* ==== marquee hover pause (was pp-ux.css div[style*="ppMarquee"]) ==== */
.pp-marquee-track:hover { animation-play-state:paused !important; }

/* Note: the mobile hero-background swap for .pp-hero-bg is owned by inc/layout.php
   (gated by $heroTower, shared with .pp-cosmos-bg) — kept there to stay DRY. */

/* ==== responsive grids (mirror layout.php PP-MOBILE-GRID-FIX v2) ==== */
/* Ungated min-width:0 mirrors layout.php's `div[style*="grid-template-columns"] > div`
   (not media-gated) — without it a grid child's wide min-content stretches a column. */
.pp-grid > * { min-width:0; }
@media (max-width:1024px){
  .pp-grid { grid-template-columns:repeat(2,1fr) !important; }
  .pp-hero-stats { grid-template-columns:repeat(2,1fr); }
}
@media (max-width:768px){
  .pp-grid { grid-template-columns:1fr !important; }
}

/* ==== responsive section padding (mirror layout.php space-format ramp) ==== */
@media (max-width:1024px){
  .pp-section,.pp-section-narrow { padding:96px 28px; }
  .pp-section-bleed { padding-top:96px; padding-bottom:96px; }
}
@media (max-width:768px){
  .pp-container { padding-left:24px; padding-right:24px; }
  .pp-section,.pp-section-narrow { padding:82px 24px; }
  .pp-section-bleed { padding-top:82px; padding-bottom:82px; }
  .pp-cta-card,.pp-cta-card2 { padding:56px 30px; }
}
@media (max-width:560px){
  .pp-container { padding-left:18px; padding-right:18px; }
  .pp-section,.pp-section-narrow { padding:66px 18px; }
  .pp-section-bleed { padding-top:66px; padding-bottom:66px; }
  .pp-cta-card,.pp-cta-card2 { padding:42px 22px; }
  .pp-card,.pp-card34,.pp-card34-hi,.pp-card36,.pp-card36-v,.pp-card36-b,.pp-card38 { padding:24px; }
}