/* ============================================
   PPC Manager Page — Custom Styles
   ============================================ */

/* ── Hero Blobs ── */
.hero-blob{position:absolute;border-radius:50%;filter:blur(90px);opacity:.85;pointer-events:none;z-index:0}
.hero-blob-1{width:600px;height:600px;background:radial-gradient(circle,rgba(4,107,252,.45) 0%,transparent 70%);top:-180px;left:-120px}
.hero-blob-2{width:500px;height:500px;background:radial-gradient(circle,rgba(255,153,0,.35) 0%,transparent 70%);top:40px;right:-80px}
.hero-blob-3{width:400px;height:400px;background:radial-gradient(circle,rgba(4,107,252,.30) 0%,transparent 70%);bottom:-80px;left:30%}

.hero-grid{position:absolute;top:0;left:0;right:0;bottom:0;background-image:linear-gradient(rgba(4,107,252,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(4,107,252,.03) 1px,transparent 1px);background-size:60px 60px;pointer-events:none;z-index:1}

/* ── Rotating Hero Words ── */
.rotating-word{display:inline-block;position:absolute;left:0;right:0;opacity:0;transform:translateY(15px);transition:opacity .5s ease,transform .5s ease}
.rotating-word.active{opacity:1;transform:translateY(0);position:relative}
.rotating-word.out{opacity:0;transform:translateY(-15px);transition:opacity .4s ease,transform .4s ease}

/* ── Buttons ── */
.btn-pill{display:inline-flex;align-items:center;justify-content:center;border-radius:9999px;transition:all .2s ease;text-decoration:none;cursor:pointer;border:none}

/* ── Pulse Subtle (AI CTA in viewport) ── */
@keyframes pulse-subtle{0%,100%{box-shadow:0 0 0 0 rgba(16,185,129,.4)}50%{box-shadow:0 0 0 12px rgba(16,185,129,0)}}
.animate-pulse-subtle{animation:pulse-subtle 2.5s ease-in-out infinite}

/* ── Reveal Animations ── */
.reveal{opacity:0;transform:translateY(32px);transition:opacity .7s cubic-bezier(.16,1,.3,1),transform .7s cubic-bezier(.16,1,.3,1)}
.reveal-left{opacity:0;transform:translateX(-48px);transition:opacity .7s cubic-bezier(.16,1,.3,1),transform .7s cubic-bezier(.16,1,.3,1)}
.reveal-right{opacity:0;transform:translateX(48px);transition:opacity .7s cubic-bezier(.16,1,.3,1),transform .7s cubic-bezier(.16,1,.3,1)}
.reveal.visible,.reveal-left.visible,.reveal-right.visible{opacity:1;transform:translate(0,0)}
.reveal-delay-1{transition-delay:.1s}
.reveal-delay-2{transition-delay:.2s}
.reveal-delay-3{transition-delay:.3s}
.reveal-delay-4{transition-delay:.4s}
.reveal-delay-5{transition-delay:.5s}
.reveal-delay-6{transition-delay:.6s}

/* ── Submenu (Sticky Nav Bar + Progress) ── */
.submenu{position:fixed;top:72px;left:0;right:0;z-index:40;background:rgba(4,20,61,.95);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid rgba(255,255,255,.1);transform:translateY(calc(-100% - 80px));opacity:0;pointer-events:none;transition:transform .3s ease,opacity .3s ease}
.submenu.visible{transform:translateY(0);opacity:1;pointer-events:auto}
.submenu-link{color:rgba(255,255,255,.85);font-size:13px;font-weight:500;padding:14px 16px;min-height:44px;display:flex;align-items:center;transition:color .2s;white-space:nowrap;position:relative}
.submenu-link:hover,.submenu-link.active{color:white}
.submenu-link.active::after{content:'';position:absolute;bottom:0;left:16px;right:16px;height:2px;background:#f97316;border-radius:2px}
.progress-bar{position:absolute;bottom:0;left:0;height:2px;background:linear-gradient(90deg,#f97316,#fbbf24);width:0%;transition:width .1s linear}

/* ── FAQ (Tabs + Accordion) ── */
.faq-tab{display:inline-flex;align-items:center;gap:.375rem;padding:.5rem 1rem;border:1px solid #e2e8f0;border-radius:9999px;font-size:.8125rem;font-weight:600;color:#64748b;background:#fff;cursor:pointer;transition:all .25s ease}
.faq-tab:hover{border-color:#f97316;color:#f97316}
.faq-tab.active{background:#f97316;color:#fff;border-color:#f97316}
.faq-category{display:none}
.faq-category.active{display:block}

/* ── Macrobox Dark (Suite Section) ── */
.macrobox-dark{background:#04143d;position:relative;overflow:hidden}
.macrobox-dark::before{content:'';position:absolute;top:-30%;right:-15%;width:500px;height:500px;background:radial-gradient(circle,rgba(4,107,252,.4) 0%,transparent 60%);pointer-events:none}
.macrobox-dark::after{content:'';position:absolute;bottom:-25%;left:-10%;width:400px;height:400px;background:radial-gradient(circle,rgba(255,153,0,.25) 0%,transparent 60%);pointer-events:none}

.faq-answer{max-height:0;overflow:hidden;transition:max-height .4s cubic-bezier(.4,0,.2,1)}
.faq-answer.open{max-height:600px}
.faq-toggle[aria-expanded="true"] .faq-icon{background:#f97316;color:#fff;transform:rotate(45deg);border-radius:.5rem}

/* ── Sticky CTAs ── */
.sticky-cta-desktop{position:fixed;bottom:0;left:0;right:0;z-index:50;background:rgba(255,255,255,.95);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-top:1px solid rgba(226,232,240,.6);box-shadow:0 -4px 20px rgba(0,0,0,.06);transform:translateY(100%);transition:transform .4s cubic-bezier(.4,0,.2,1);display:none}
@media(min-width:768px){.sticky-cta-desktop{display:block}}
.sticky-cta-desktop.visible{transform:translateY(0)}
.sticky-cta-desktop.dismissed{transform:translateY(100%)!important;pointer-events:none}

.sticky-cta-mobile{transition:transform .4s cubic-bezier(.4,0,.2,1)}
.sticky-cta-mobile.visible{transform:translateY(0)!important}
.sticky-cta-mobile.dismissed{transform:translateY(100%)!important;pointer-events:none}

/* ── Exit-Intent Overlay ── */
.exit-intent-overlay{position:fixed;inset:0;z-index:9998;background:rgba(0,0,0,.4);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity .35s ease;padding:1rem}
.exit-intent-overlay.active{opacity:1;pointer-events:auto}

.exit-intent-card{position:relative;background:#fff;border-radius:20px;max-width:min(520px,calc(100vw - 2rem));width:100%;overflow:hidden;box-shadow:0 20px 60px rgba(0,0,0,.15);transform:scale(.9);transition:transform .35s ease;box-sizing:border-box}
.exit-intent-overlay.active .exit-intent-card{transform:scale(1)}

.exit-intent-close{position:absolute;top:12px;right:12px;z-index:10;width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.5);backdrop-filter:blur(4px);border:1px solid rgba(226,232,240,.6);border-radius:50%;cursor:pointer;transition:all .2s;color:#64748b}
.exit-intent-close:hover{background:#fff;color:#04143d}

.exit-intent-form{display:flex;flex-direction:column;gap:.625rem;margin-bottom:.75rem}
.exit-intent-email{width:100%;padding:0 .75rem 0 2.25rem;height:48px;border:1px solid #e2e8f0;border-radius:9999px;font-size:.9375rem;color:#04143d;outline:none;transition:all .2s;background:#fff;box-sizing:border-box}
.exit-intent-email:focus{border-color:#f97316;box-shadow:0 0 0 3px rgba(249,115,22,.12)}

/* ── Exit-Intent Mockup Mini Elements ── */
.m-stat-card{background:rgba(255,255,255,.85);border-radius:.5rem;padding:.5rem .375rem;text-align:center;border:1px solid rgba(226,232,240,.5)}
.m-row-card{background:rgba(255,255,255,.85);border-radius:.5rem;padding:.375rem .5rem;display:flex;align-items:center;justify-content:space-between;border:1px solid rgba(226,232,240,.5)}
.m-row-inner{display:flex;align-items:center;gap:.375rem}
.m-meta-slate{font-size:.5625rem;color:#94a3b8}
.m-meta-navy{font-size:.5625rem;font-weight:700;color:#04143d}
.m-benefit-row{display:flex;align-items:center;gap:.5rem;font-size:.8125rem;color:#334155;font-weight:500}
.m-icon-check-sm{width:1rem;height:1rem;color:#10b981;flex-shrink:0}

.form-error-msg{font-size:.75rem;color:#ef4444;margin:0 0 .75rem;min-height:1rem;visibility:hidden}
.form-error-msg.show{visibility:visible}

/* ── Back to Top ── */
.back-to-top{position:fixed;bottom:6rem;right:1.5rem;z-index:45;width:2.75rem;height:2.75rem;border-radius:50%;background:rgba(255,255,255,.95);border:1px solid #e2e8f0;color:#475569;display:flex;align-items:center;justify-content:center;cursor:pointer;opacity:0;transform:translateY(16px);transition:all .35s ease;box-shadow:0 4px 14px rgba(0,0,0,.08)}
.back-to-top.visible{opacity:1;transform:translateY(0)}
.back-to-top:hover{background:#f97316;color:#fff;border-color:#f97316}

/* ── Reduced Motion ── */
@media(prefers-reduced-motion:reduce){
    .reveal,.reveal-left,.reveal-right,.rotating-word,.submenu,.faq-answer,.sticky-cta-desktop,.sticky-cta-mobile,.exit-intent-overlay,.exit-intent-card,.back-to-top,.btn-pill{transition-duration:.01ms!important;animation-duration:.01ms!important}
}

/* ── Mobile Adjustments ── */
@media(max-width:600px){
    .hero-blob-1,.hero-blob-2,.hero-blob-3{opacity:.35}

    /* M1: Exit-intent popup mobile scaling */
    .exit-intent-card{max-width:calc(100vw - 1rem)}
    .exit-intent-card h2{font-size:1.05rem!important}
    .exit-intent-card p{font-size:.8125rem!important}
    .exit-intent-close{width:40px;height:40px}

    /* M2: Touch targets — minimum 44px */
    .submenu-link{min-height:44px;display:inline-flex;align-items:center}
    .faq-toggle{min-height:48px}
    .sticky-cta-close,.sticky-cta-desktop-close,.exit-intent-close{min-width:44px;min-height:44px}
    .back-to-top{width:44px;height:44px}

    /* M4: Font size floors */
    .text-xs{font-size:.8125rem}
    .m-meta-slate,.m-meta-navy{font-size:.6875rem}

    /* M5: Submenu mobile — tighter gaps + scroll shadow */
    .submenu .max-w-6xl{gap:.75rem;-webkit-overflow-scrolling:touch;scrollbar-width:none}
    .submenu .max-w-6xl::-webkit-scrollbar{display:none}
    .submenu::after{content:'';position:absolute;right:0;top:0;bottom:0;width:24px;background:linear-gradient(to left,rgba(15,23,42,.95),transparent);pointer-events:none;z-index:1}
}
