/*
Theme Name:  Africa Readiness Partners
Theme URI:   https://africareadiness.com
Author:      Africa Readiness Partners
Author URI:  https://africareadiness.com
Description: Official WordPress theme for Africa Readiness Partners — Economic Transformation Intelligence Platform.
Version:     1.0.0
Text Domain: africa-readiness-partners
Tags:        custom-menu, full-width-template, custom-colors, custom-logo
*/

        * {
            margin: 0;
            padding: 0;
            box-sizing: border-box;
        }

        :root {
            --color-bg: #0a0e27;
            --color-bg-secondary: #0f1433;
            --color-text: #ffffff;
            --color-text-light: #b8c5d6;
            --color-border: #1e2a4a;
            --color-accent: #00d9ff;
            --color-accent-secondary: #00a8cc;
            --color-card-bg: rgba(15, 20, 51, 0.6);
            --color-gradient-1: #00d9ff;
            --color-gradient-2: #0099cc;
            --spacing-sm: 16px;
            --spacing-md: 24px;
            --spacing-lg: 40px;
            --spacing-xl: 60px;
            --spacing-2xl: 80px;
            --font-display: 'Playfair Display', serif;
            --font-body: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
        }

        html {
            scroll-behavior: smooth;
        }

        body {
            font-family: var(--font-body);
            background: var(--color-bg);
            color: var(--color-text);
            line-height: 1.6;
            overflow-x: hidden;
        }

        /* ===== PREMIUM GRADIENTS & EFFECTS ===== */
        .gradient-text-premium {
            background: linear-gradient(135deg, #00d9ff 0%, #ffffff 50%, #00a8cc 100%);
            background-clip: text;
            -webkit-background-clip: text;
            -webkit-text-fill-color: transparent;
            background-size: 200% auto;
        }

        .gradient-glow {
            position: relative;
        }

        .gradient-glow::before {
            content: '';
            position: absolute;
            top: -50%;
            left: 50%;
            transform: translateX(-50%);
            width: 500px;
            height: 500px;
            background: radial-gradient(circle, rgba(0, 217, 255, 0.15) 0%, transparent 70%);
            border-radius: 50%;
            pointer-events: none;
            filter: blur(40px);
        }

a{
	text-decoration: none;
}

        /* ===== NAVIGATION ===== */
        nav {
            position: fixed;
            top: 0;
            left: 0;
            right: 0;
            background: rgba(10, 14, 39, 0.9);
            border-bottom: 1px solid var(--color-border);
            padding: 16px var(--spacing-md);
            display: flex;
            justify-content: space-between;
            align-items: center;
            z-index: 1000;
            backdrop-filter: blur(20px);
            box-shadow: 0 8px 32px rgba(0, 217, 255, 0.05);
        }

        .nav-logo {
            font-size: 20px;
            font-weight: 800;
            letter-spacing: 2px;
            color: var(--color-accent);
            text-shadow: 0 0 15px rgba(0, 217, 255, 0.4);
            cursor: pointer;
            font-family: var(--font-display);
        }

        .nav-links {
            display: flex;
            gap: 40px;
            list-style: none;
        }

        .nav-links a {
            text-decoration: none;
            color: var(--color-text-light);
            font-size: 14px;
            font-weight: 500;
            cursor: pointer;
            transition: all 0.3s ease;
            position: relative;
        }

        .nav-links a::after {
            content: '';
            position: absolute;
            bottom: -4px;
            left: 0;
            width: 0;
            height: 2px;
            background: var(--color-accent);
            transition: width 0.3s ease;
        }

        .nav-links a:hover {
            color: var(--color-accent);
        }

        .nav-links a:hover::after {
            width: 100%;
        }

        /* ===== HERO SECTION ===== */
        .hero {
            margin-top: 70px;
/*             padding: 80px var(--spacing-md) 60px; */
            min-height: 85vh;
            display: grid;
            grid-template-columns: 1.1fr 0.9fr;
            gap: 80px;
            align-items: center;
            max-width: 1400px;
            margin-left: auto;
            margin-right: auto;
        }

        .hero-content {
            display: flex;
            flex-direction: column;
            justify-content: center;
            z-index: 2;
        }

        .hero-badge {
            display: inline-block;
            background: rgba(0, 217, 255, 0.08);
            border: 1px solid rgba(0, 217, 255, 0.3);
            border-radius: 30px;
            padding: 10px 20px;
            font-size: 12px;
            font-weight: 600;
            color: var(--color-accent);
            margin-bottom: var(--spacing-lg);
            width: fit-content;
            backdrop-filter: blur(10px);
            text-transform: uppercase;
            letter-spacing: 1px;
        }

        .hero h1 {
            font-family: var(--font-display);
            font-size: clamp(48px, 8vw, 72px);
            line-height: 1.15;
            font-weight: 800;
            margin-bottom: var(--spacing-lg);
            color: var(--color-text);
            letter-spacing: -1px;
        }

        .hero h1 .gradient-text-premium {
            display: inline;
            margin-bottom: 0;
        }

        .hero-subheading {
            font-size: 18px;
            line-height: 1.8;
            max-width: 600px;
            margin-bottom: var(--spacing-xl);
            color: var(--color-text-light);
            font-weight: 400;
        }

        .hero-visual {
            display: flex;
            align-items: center;
            justify-content: center;
            position: relative;
        }

        .hero-image-container {
            width: 100%;
            max-width: 100%;
            aspect-ratio: 1;
            border-radius: 16px;
            border: 1px solid var(--color-border);
            background: rgba(0, 217, 255, 0.03);
            display: flex;
            align-items: center;
            justify-content: center;
            overflow: hidden;
            box-shadow: 0 0 60px rgba(0, 217, 255, 0.1);
            position: relative;
        }

        .hero-image-container img {
            width: 100%;
            height: 100%;
            object-fit: cover;
        }

        .hero-image-container::before {
            content: '';
            position: absolute;
            inset: 0;
            background: linear-gradient(135deg, transparent 0%, rgba(0, 217, 255, 0.1) 100%);
            pointer-events: none;
        }

        /* ===== CTA BUTTONS ===== */
        .cta-group {
            display: flex;
            gap: var(--spacing-md);
            margin-top: var(--spacing-lg);
            flex-wrap: wrap;
        }

        .btn {
            padding: 16px 40px;
            border: 2px solid var(--color-accent);
            background: transparent;
            color: var(--color-accent);
            font-size: 13px;
            font-weight: 700;
            text-transform: uppercase;
            cursor: pointer;
            transition: all 0.4s cubic-bezier(0.34, 1.56, 0.64, 1);
            border-radius: 6px;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            min-height: 48px;
            box-shadow: 0 0 20px rgba(0, 217, 255, 0.25);
            position: relative;
            overflow: hidden;
            letter-spacing: 1px;
        }

        .btn::before {
            content: '';
            position: absolute;
            top: 0;
            left: -100%;
            width: 100%;
            height: 100%;
            background: var(--color-accent);
            transition: left 0.4s cubic-bezier(0.34, 1.56, 0.64, 1);
            z-index: -1;
        }

        .btn:hover {
            color: var(--color-bg);
            box-shadow: 0 0 40px rgba(0, 217, 255, 0.5);
            transform: translateY(-3px);
        }

        .btn:hover::before {
            left: 0;
        }

        .btn-secondary {
            background: var(--color-accent);
            color: var(--color-bg);
            border-color: var(--color-accent);
        }

        .btn-secondary:hover {
            transform: scale(1.08);
            box-shadow: 0 0 40px rgba(0, 217, 255, 0.6);
        }

        /* ===== SECTIONS ===== */
/*         section {
            padding: var(--spacing-xl) var(--spacing-md);
            max-width: 1400px;
            margin: 0 auto;
        } */

        section h2 {
            font-family: var(--font-display);
            font-size: clamp(48px, 7vw, 68px);
            line-height: 1.2;
            margin-bottom: var(--spacing-lg);
            font-weight: 800;
            color: var(--color-text);
            letter-spacing: -1px;
        }

        section h2 .gradient-text-premium {
            display: block;
        }

        section h3 {
            font-size: clamp(28px, 5vw, 40px);
            line-height: 1.3;
            margin-bottom: var(--spacing-lg);
            font-weight: 700;
            color: var(--color-text);
        }

        section h3 .color-accent {
            color: var(--color-accent);
        }

        /* ===== GRID LAYOUTS ===== */
        .grid {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
            gap: var(--spacing-lg);
            margin-top: var(--spacing-xl);
        }

        .card {
            border: 1px solid var(--color-border);
            padding: 32px;
            background: var(--color-card-bg);
            transition: all 0.4s ease;
            backdrop-filter: blur(10px);
            border-radius: 12px;
            display: flex;
            flex-direction: column;
            cursor: pointer;
            position: relative;
            overflow: hidden;
        }

        .card::before {
            content: '';
            position: absolute;
            top: 0;
            left: -100%;
            width: 100%;
            height: 100%;
            background: linear-gradient(90deg, transparent, rgba(0, 217, 255, 0.05), transparent);
            transition: left 0.6s ease;
        }

        .card:hover {
            background: rgba(0, 217, 255, 0.08);
            border-color: var(--color-accent);
            box-shadow: 0 20px 50px rgba(0, 217, 255, 0.15);
            transform: translateY(-12px);
        }

        .card:hover::before {
            left: 100%;
        }

        .card h4 {
            font-size: 20px;
            font-weight: 700;
            margin-bottom: 12px;
            color: var(--color-text);
            position: relative;
            z-index: 1;
        }

        .card p {
            font-size: 14px;
            line-height: 1.8;
            color: var(--color-text-light);
            margin-bottom: auto;
            position: relative;
            z-index: 1;
        }

        .card-tag {
            display: inline-block;
            font-size: 10px;
            font-weight: 700;
            text-transform: uppercase;
            margin-bottom: 16px;
            padding: 6px 12px;
            border: 1px solid var(--color-accent);
            color: var(--color-accent);
            background: rgba(0, 217, 255, 0.08);
            border-radius: 4px;
            width: fit-content;
            letter-spacing: 1px;
            position: relative;
            z-index: 1;
        }

        .card-price {
            font-size: 14px;
            font-weight: 700;
            margin-top: var(--spacing-lg);
            color: var(--color-accent);
            padding-top: var(--spacing-lg);
            border-top: 1px solid var(--color-border);
            position: relative;
            z-index: 1;
        }

        /* ===== PAGE SECTIONS ===== */
        .page-section {
            display: none;
        }

        .page-section.active {
            display: block;
        }

        /* ===== FOOTER ===== */
        footer {
            border-top: 1px solid var(--color-border);
            padding: var(--spacing-xl) var(--spacing-md);
            background: rgba(10, 14, 39, 0.8);
            margin-top: var(--spacing-xl);
            backdrop-filter: blur(10px);
        }

        .footer-content {
            max-width: 1400px;
            margin: 0 auto;
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
            gap: var(--spacing-lg);
        }

        .footer-section h4 {
            font-size: 12px;
            font-weight: 700;
            text-transform: uppercase;
            margin-bottom: var(--spacing-md);
            color: var(--color-accent);
            letter-spacing: 1px;
        }

        .footer-section ul {
            list-style: none;
        }

        .footer-section a {
            font-size: 13px;
            color: var(--color-text-light);
            text-decoration: none;
            line-height: 2;
            cursor: pointer;
            transition: all 0.3s;
        }

        .footer-section a:hover {
            color: var(--color-accent);
            transform: translateX(4px);
        }

        .footer-bottom {
            border-top: 1px solid var(--color-border);
            padding-top: var(--spacing-lg);
            margin-top: var(--spacing-lg);
            display: flex;
            justify-content: space-between;
            font-size: 12px;
            color: var(--color-text-light);
        }

        /* ===== RESPONSIVE ===== */
        @media (max-width: 768px) {
            .nav-links {
                display: none;
            }

            .hero {
                grid-template-columns: 1fr;
                margin-top: 90px;
                gap: 40px;
            }

            .grid {
                grid-template-columns: 1fr;
            }

            .cta-group {
                flex-direction: column;
            }

            .btn {
                width: 100%;
            }

            .footer-bottom {
                flex-direction: column;
                gap: var(--spacing-md);
            }
        }

        .app-download-note {
            font-size: 13px;
            font-style: italic;
            color: var(--color-text-light);
            margin-top: 8px;
            line-height: 1.5;
        }
    .nav-logo { min-width: 100px; flex-shrink: 0; }


.report-hero{background:linear-gradient(135deg,rgba(0,217,255,0.08) 0%,rgba(0,168,204,0.04) 100%);border:1px solid var(--color-border);border-radius:16px;padding:60px 40px;text-align:center;margin-bottom:60px;}
.report-filter-bar{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:40px;justify-content:center;}
.filter-btn{padding:8px 22px;border:1px solid var(--color-border);background:transparent;color:var(--color-text-light);font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:1px;border-radius:30px;cursor:pointer;transition:all 0.3s ease;}
.filter-btn:hover,.filter-btn.active{border-color:var(--color-accent);color:var(--color-accent);background:rgba(0,217,255,0.08);}
.report-card{border:1px solid var(--color-border);border-radius:12px;overflow:hidden;background:var(--color-card-bg);transition:all 0.4s ease;cursor:pointer;display:flex;flex-direction:column;}
.report-card:hover{border-color:var(--color-accent);transform:translateY(-8px);box-shadow:0 24px 60px rgba(0,217,255,0.15);}
.report-cover{width:100%;height:200px;display:flex;align-items:center;justify-content:center;}
.report-cover-inner{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:8px;}
.report-meta{padding:24px;flex:1;display:flex;flex-direction:column;}
.report-type-badge{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:1px;padding:4px 10px;border-radius:4px;background:rgba(0,217,255,0.1);color:var(--color-accent);border:1px solid rgba(0,217,255,0.3);width:fit-content;margin-bottom:12px;}
.report-meta h4{font-size:18px;font-weight:700;margin-bottom:8px;color:var(--color-text);line-height:1.3;}
.report-meta p{font-size:13px;color:var(--color-text-light);line-height:1.7;flex:1;}
.report-footer{padding:16px 24px;border-top:1px solid var(--color-border);display:flex;justify-content:space-between;align-items:center;}
.report-footer span{font-size:11px;color:var(--color-text-light);}
.report-footer .report-price{font-size:14px;font-weight:700;color:var(--color-accent);}
.stats-ribbon{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:2px;background:var(--color-border);border-radius:12px;overflow:hidden;margin-bottom:60px;}
.stat-cell{background:var(--color-bg-secondary);padding:30px 20px;text-align:center;transition:background 0.3s;}
.stat-cell:hover{background:rgba(0,217,255,0.06);}
.stat-cell .stat-num{font-family:var(--font-display);font-size:38px;font-weight:800;color:var(--color-accent);line-height:1;margin-bottom:6px;}
.stat-cell .stat-label{font-size:11px;color:var(--color-text-light);text-transform:uppercase;letter-spacing:1px;}
.portfolio-card{border:1px solid var(--color-border);border-radius:12px;overflow:hidden;background:var(--color-card-bg);transition:all 0.4s ease;cursor:pointer;}
.portfolio-card:hover{border-color:var(--color-accent);transform:translateY(-8px);box-shadow:0 24px 60px rgba(0,217,255,0.15);}
.portfolio-card-top{height:160px;display:flex;align-items:center;justify-content:center;}
.portfolio-card-body{padding:24px;}
.portfolio-card-body h4{font-size:17px;font-weight:700;margin-bottom:8px;color:var(--color-text);}
.portfolio-card-body p{font-size:13px;color:var(--color-text-light);line-height:1.7;margin-bottom:16px;}
.portfolio-tags{display:flex;flex-wrap:wrap;gap:6px;}
.ptag{font-size:10px;padding:3px 10px;border:1px solid var(--color-border);color:var(--color-text-light);border-radius:20px;text-transform:uppercase;letter-spacing:0.5px;}
.impact-bar{margin-top:16px;}
.impact-label{display:flex;justify-content:space-between;font-size:11px;color:var(--color-text-light);margin-bottom:4px;}
.impact-track{height:4px;background:var(--color-border);border-radius:2px;overflow:hidden;}
.impact-fill{height:100%;background:linear-gradient(90deg,var(--color-accent),#00a8cc);border-radius:2px;}
.portfolio-hero{position:relative;text-align:center;padding:60px 40px;background:linear-gradient(135deg,rgba(0,217,255,0.06) 0%,rgba(0,100,150,0.04) 100%);border-radius:16px;border:1px solid var(--color-border);margin-bottom:60px;}
.timeline{position:relative;padding-left:32px;}
.timeline::before{content:'';position:absolute;left:8px;top:0;bottom:0;width:1px;background:linear-gradient(to bottom,var(--color-accent),transparent);}
.timeline-item{position:relative;margin-bottom:36px;}
.timeline-item::before{content:'';position:absolute;left:-28px;top:6px;width:10px;height:10px;border-radius:50%;background:var(--color-accent);box-shadow:0 0 10px rgba(0,217,255,0.6);}
.timeline-item h5{font-size:15px;font-weight:700;color:var(--color-accent);margin-bottom:4px;}
.timeline-item p{font-size:13px;color:var(--color-text-light);line-height:1.7;}
@media(max-width:768px){.responsive-2col{grid-template-columns:1fr !important;}}


/* ── REPORTS PAGE ── */
.rp-hero{position:relative;text-align:center;padding:80px 40px 70px;overflow:hidden;
  background:linear-gradient(160deg,rgba(0,217,255,0.07) 0%,rgba(157,78,221,0.07) 50%,rgba(0,168,204,0.04) 100%);
  border:1px solid rgba(0,217,255,0.15);border-radius:24px;margin-bottom:70px;}
.rp-hero-glow{position:absolute;border-radius:50%;pointer-events:none;}
.rp-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:1px;
  background:rgba(255,255,255,0.05);border-radius:14px;overflow:hidden;
  max-width:860px;margin:0 auto 44px;}
.rp-stat{background:rgba(8,12,28,0.9);padding:20px 10px;text-align:center;}
.rp-stat-num{font-family:'Playfair Display',serif;font-size:30px;font-weight:900;color:#00D9FF;line-height:1;}
.rp-stat-label{font-size:10px;color:rgba(255,255,255,0.4);text-transform:uppercase;letter-spacing:1px;margin-top:5px;}
/* Category labels */
.rp-cat-label{display:flex;align-items:center;gap:14px;margin:60px 0 32px;}
.rp-cat-label::after{content:'';flex:1;height:1px;background:linear-gradient(90deg,rgba(0,217,255,0.3),transparent);}
.rp-cat-badge{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:2px;padding:6px 18px;
  border-radius:30px;white-space:nowrap;}
/* Grid */
.rp-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-bottom:16px;}
@media(max-width:1024px){.rp-grid{grid-template-columns:repeat(2,1fr);}}
@media(max-width:640px){.rp-grid{grid-template-columns:1fr;}}
/* Report card */
.rp-card{border:1px solid rgba(255,255,255,0.07);border-radius:18px;overflow:hidden;
  background:rgba(10,14,36,0.85);display:flex;flex-direction:column;
  transition:all 0.4s cubic-bezier(0.34,1.56,0.64,1);cursor:pointer;position:relative;}
.rp-card:hover{transform:translateY(-10px);box-shadow:0 28px 70px rgba(0,217,255,0.18);}
.rp-card::before{content:'';position:absolute;inset:0;border-radius:18px;padding:1px;
  background:linear-gradient(135deg,rgba(0,217,255,0.0),rgba(0,217,255,0.0));
  -webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);
  -webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none;transition:all 0.4s;}
.rp-card:hover::before{background:linear-gradient(135deg,rgba(0,217,255,0.4),rgba(157,78,221,0.4));}
/* Cover art */
.rp-cover{width:100%;height:190px;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;}
.rp-cover-inner{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;z-index:2;position:relative;}
/* Body */
.rp-body{padding:26px 26px 0;}
.rp-type{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:1.5px;
  padding:4px 12px;border-radius:4px;width:fit-content;margin-bottom:14px;}
.rp-title{font-family:'Playfair Display',serif;font-size:18px;font-weight:700;line-height:1.35;
  color:#fff;margin-bottom:10px;}
.rp-desc{font-size:13px;color:rgba(184,197,214,0.85);line-height:1.75;flex:1;}
/* Deliverables list */
.rp-delivers{padding:16px 26px;margin-top:auto;}
.rp-delivers-label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:1px;
  color:rgba(0,217,255,0.5);margin-bottom:8px;}
.rp-delivers ul{list-style:none;padding:0;margin:0;}
.rp-delivers li{font-size:11.5px;color:rgba(184,197,214,0.75);padding:3px 0;display:flex;align-items:flex-start;gap:7px;line-height:1.4;}
.rp-delivers li::before{content:'✓';color:#00D9FF;font-weight:800;font-size:10px;margin-top:1px;flex-shrink:0;}
/* Footer */
.rp-foot{padding:16px 26px 22px;border-top:1px solid rgba(255,255,255,0.06);
  display:flex;justify-content:space-between;align-items:center;margin-top:4px;}
.rp-meta{font-size:11px;color:rgba(255,255,255,0.35);}
.rp-price{font-family:'Playfair Display',serif;font-size:16px;font-weight:800;}
/* Advisory cards (wider, horizontal feel) */
.rp-advisory-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-bottom:16px;}
@media(max-width:1024px){.rp-advisory-grid{grid-template-columns:repeat(2,1fr);}}
@media(max-width:640px){.rp-advisory-grid{grid-template-columns:1fr;}}
.rp-adv-card{border-radius:18px;border:1px solid rgba(255,255,255,0.07);
  background:rgba(10,14,36,0.85);padding:32px;display:flex;flex-direction:column;
  transition:all 0.4s cubic-bezier(0.34,1.56,0.64,1);cursor:pointer;position:relative;overflow:hidden;}
.rp-adv-card:hover{transform:translateY(-8px);}
.rp-adv-card::before{content:'';position:absolute;inset:0;border-radius:18px;padding:1px;
  background:linear-gradient(135deg,rgba(0,0,0,0),rgba(0,0,0,0));
  -webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);
  -webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none;transition:all 0.4s;}
.rp-adv-card:hover::before{background:linear-gradient(135deg,var(--ac1,rgba(0,217,255,0.5)),var(--ac2,rgba(157,78,221,0.5)));}
.rp-adv-icon{font-size:40px;margin-bottom:18px;}
.rp-adv-tag{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:1.5px;margin-bottom:8px;}
.rp-adv-title{font-family:'Playfair Display',serif;font-size:20px;font-weight:700;margin-bottom:12px;line-height:1.3;}
.rp-adv-desc{font-size:13px;color:rgba(184,197,214,0.85);line-height:1.75;margin-bottom:20px;flex:1;}
.rp-adv-includes{margin-bottom:20px;}
.rp-adv-inc-label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:1px;margin-bottom:8px;opacity:0.5;}
.rp-adv-inc-item{font-size:12px;color:rgba(184,197,214,0.75);padding:3px 0;display:flex;gap:8px;align-items:flex-start;}
.rp-adv-inc-item::before{content:'→';font-size:10px;margin-top:1px;flex-shrink:0;}
.rp-adv-foot{display:flex;justify-content:space-between;align-items:center;
  padding-top:16px;border-top:1px solid rgba(255,255,255,0.06);}
.rp-adv-price{font-family:'Playfair Display',serif;font-size:15px;font-weight:800;}
/* CTA bottom */
.rp-cta-band{background:linear-gradient(135deg,rgba(0,217,255,0.1),rgba(157,78,221,0.08));
  border:1.5px solid rgba(0,217,255,0.25);border-radius:20px;padding:60px 40px;
  text-align:center;margin-top:80px;}
/* Filter bar */
.rp-filter{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:50px;justify-content:center;}
.rp-filter-btn{padding:9px 24px;border:1px solid rgba(255,255,255,0.1);background:transparent;
  color:rgba(184,197,214,0.7);font-size:12px;font-weight:700;text-transform:uppercase;
  letter-spacing:1px;border-radius:30px;cursor:pointer;transition:all 0.3s ease;font-family:inherit;}
.rp-filter-btn:hover,.rp-filter-btn.rp-active{border-color:#00D9FF;color:#00D9FF;background:rgba(0,217,255,0.08);}


/* ── PARTNER WITH US PAGE ── */
.pw-hero{position:relative;text-align:center;padding:90px 40px 80px;overflow:hidden;
  background:linear-gradient(160deg,rgba(0,217,255,0.08) 0%,rgba(157,78,221,0.08) 50%,rgba(0,168,204,0.04) 100%);
  border:1px solid rgba(0,217,255,0.15);border-radius:24px;margin-bottom:80px;}
.pw-glow{position:absolute;border-radius:50%;pointer-events:none;}
.pw-trust-strip{display:flex;gap:32px;justify-content:center;flex-wrap:wrap;margin:40px 0;padding:28px;
  background:rgba(255,255,255,0.03);border:1px solid rgba(255,255,255,0.06);border-radius:14px;}
.pw-trust-item{text-align:center;}
.pw-trust-num{font-family:'Playfair Display',serif;font-size:32px;font-weight:900;color:#00D9FF;line-height:1;}
.pw-trust-label{font-size:10px;color:rgba(255,255,255,0.4);text-transform:uppercase;letter-spacing:1px;margin-top:4px;}
/* Who we work with */
.pw-who-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px;margin-bottom:80px;}
.pw-who-card{border:1px solid rgba(255,255,255,0.07);border-radius:16px;padding:28px 24px;
  background:rgba(10,14,36,0.8);transition:all 0.35s ease;cursor:default;}
.pw-who-card:hover{border-color:var(--c,#00D9FF);box-shadow:0 16px 50px rgba(0,217,255,0.1);transform:translateY(-6px);}
.pw-who-icon{font-size:36px;margin-bottom:14px;}
.pw-who-type{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:1.5px;margin-bottom:6px;}
.pw-who-title{font-size:16px;font-weight:700;margin-bottom:10px;line-height:1.3;}
.pw-who-desc{font-size:12.5px;color:rgba(184,197,214,0.75);line-height:1.7;}
/* Engagement models */
.pw-models-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-bottom:80px;}
@media(max-width:960px){.pw-models-grid{grid-template-columns:repeat(2,1fr);}}
@media(max-width:600px){.pw-models-grid{grid-template-columns:1fr;}}
.pw-model-card{border-radius:20px;padding:36px 30px;display:flex;flex-direction:column;
  position:relative;overflow:hidden;transition:all 0.4s cubic-bezier(0.34,1.56,0.64,1);}
.pw-model-card:hover{transform:translateY(-10px);}
.pw-model-card::before{content:'';position:absolute;inset:0;border-radius:20px;padding:1.5px;
  -webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);
  -webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none;}
.pw-model-badge{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:2px;
  padding:5px 14px;border-radius:20px;width:fit-content;margin-bottom:18px;}
.pw-model-icon{font-size:38px;margin-bottom:14px;}
.pw-model-title{font-family:'Playfair Display',serif;font-size:22px;font-weight:800;margin-bottom:12px;line-height:1.25;}
.pw-model-desc{font-size:13px;line-height:1.8;margin-bottom:20px;flex:1;color:rgba(184,197,214,0.85);}
.pw-model-includes{margin-bottom:24px;}
.pw-model-inc-label{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:1px;opacity:0.5;margin-bottom:10px;}
.pw-model-inc-item{font-size:12px;color:rgba(184,197,214,0.8);padding:4px 0;display:flex;gap:8px;align-items:flex-start;line-height:1.4;}
.pw-model-inc-item::before{content:'✓';font-weight:900;font-size:10px;margin-top:1px;flex-shrink:0;}
.pw-model-price{font-family:'Playfair Display',serif;font-size:17px;font-weight:900;margin-bottom:16px;}
/* Process steps */
.pw-process{margin-bottom:80px;}
.pw-step{display:grid;grid-template-columns:80px 1fr;gap:24px;margin-bottom:0;position:relative;}
.pw-step:not(:last-child)::after{content:'';position:absolute;left:39px;top:72px;bottom:-24px;
  width:2px;background:linear-gradient(to bottom,rgba(0,217,255,0.4),rgba(0,217,255,0.05));}
.pw-step-num{width:80px;height:80px;border-radius:50%;display:flex;align-items:center;justify-content:center;
  flex-shrink:0;border:2px solid rgba(0,217,255,0.3);background:rgba(0,217,255,0.06);}
.pw-step-num-inner{font-family:'Playfair Display',serif;font-size:26px;font-weight:900;color:#00D9FF;}
.pw-step-body{padding:12px 0 40px;}
.pw-step-label{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:2px;color:rgba(0,217,255,0.6);margin-bottom:6px;}
.pw-step-title{font-size:20px;font-weight:800;margin-bottom:8px;}
.pw-step-desc{font-size:13px;color:rgba(184,197,214,0.8);line-height:1.75;max-width:680px;}
.pw-step-timing{display:inline-block;font-size:11px;font-weight:600;padding:4px 12px;
  border:1px solid rgba(0,217,255,0.2);border-radius:20px;color:rgba(0,217,255,0.7);margin-top:10px;}
/* Why ARP */
.pw-why-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin-bottom:80px;}
.pw-why-item{padding:28px;border:1px solid rgba(255,255,255,0.06);border-radius:14px;
  background:rgba(10,14,36,0.6);transition:all 0.3s;}
.pw-why-item:hover{border-color:rgba(0,217,255,0.2);background:rgba(0,217,255,0.04);}
.pw-why-icon{font-size:30px;margin-bottom:12px;}
.pw-why-title{font-size:15px;font-weight:700;margin-bottom:8px;}
.pw-why-desc{font-size:12.5px;color:rgba(184,197,214,0.75);line-height:1.7;}
/* Contact form section */
.pw-form-section{display:grid;grid-template-columns:1fr 1fr;gap:48px;margin-bottom:80px;align-items:start;}
@media(max-width:800px){.pw-form-section{grid-template-columns:1fr;}}
.pw-form{background:rgba(10,14,36,0.9);border:1px solid rgba(0,217,255,0.15);
  border-radius:20px;padding:40px;}
.pw-form-title{font-family:'Playfair Display',serif;font-size:26px;font-weight:800;margin-bottom:8px;}
.pw-form-sub{font-size:13px;color:rgba(184,197,214,0.7);margin-bottom:28px;line-height:1.6;}
.pw-input{width:100%;background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.1);
  border-radius:10px;padding:14px 16px;color:#fff;font-size:13px;font-family:inherit;
  margin-bottom:14px;transition:all 0.3s;box-sizing:border-box;}
.pw-input:focus{outline:none;border-color:#00D9FF;background:rgba(0,217,255,0.05);box-shadow:0 0 0 3px rgba(0,217,255,0.1);}
.pw-input::placeholder{color:rgba(255,255,255,0.3);}
.pw-select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%2300D9FF' stroke-width='1.5' fill='none'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 14px center;padding-right:40px;}
.pw-form-note{font-size:11px;color:rgba(255,255,255,0.3);margin-top:12px;text-align:center;line-height:1.6;}
/* Sidebar info */
.pw-sidebar{}
.pw-sidebar-block{background:rgba(10,14,36,0.6);border:1px solid rgba(255,255,255,0.06);
  border-radius:16px;padding:28px;margin-bottom:20px;}
.pw-sidebar-title{font-size:13px;font-weight:700;color:#00D9FF;margin-bottom:14px;text-transform:uppercase;letter-spacing:1px;}
.pw-sidebar-item{font-size:13px;color:rgba(184,197,214,0.8);padding:8px 0;border-bottom:1px solid rgba(255,255,255,0.05);
  display:flex;gap:10px;align-items:flex-start;line-height:1.5;}
.pw-sidebar-item:last-child{border-bottom:none;}
.pw-sidebar-item .pw-si-icon{flex-shrink:0;font-size:14px;}
/* CTA band */
.pw-final-cta{background:linear-gradient(135deg,rgba(0,217,255,0.1),rgba(157,78,221,0.1));
  border:2px solid rgba(0,217,255,0.25);border-radius:24px;padding:70px 40px;text-align:center;}

/* ===== PAGE WRAP (WordPress template outer container) ===== */
.page-wrap {
    max-width: 1400px;
    margin: 0 auto;
    padding-top: 80px; /* offset fixed nav */
    padding-left: var(--spacing-md);
    padding-right: var(--spacing-md);
}

/* ===== CARD ICON & CARD LINK (service/feature cards) ===== */
.card-icon {
    font-size: 36px;
    margin-bottom: 16px;
    display: block;
    position: relative;
    z-index: 1;
}
.card h3 {
    font-size: clamp(18px, 2.5vw, 22px);
    font-weight: 700;
    margin-bottom: 12px;
    color: var(--color-text);
    line-height: 1.3;
    position: relative;
    z-index: 1;
}
.card-link {
    display: inline-block;
    font-size: 13px;
    font-weight: 700;
    color: var(--color-accent);
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-top: auto;
    padding-top: 20px;
    position: relative;
    z-index: 1;
    transition: gap 0.3s;
}
.card:hover .card-link {
    letter-spacing: 2px;
}

/* ===== ADVISORY PAGE COMPONENTS ===== */

/* Hero */
.adv-hero {
    position: relative;
    text-align: center;
    padding: 110px 32px 70px;
    overflow: hidden;
}
.adv-hero-glow {
    position: absolute;
    border-radius: 50%;
    pointer-events: none;
}
.adv-eyebrow {
    display: inline-block;
    font-size: 11px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 3px;
    color: var(--color-accent);
    background: rgba(0,217,255,0.08);
    border: 1px solid rgba(0,217,255,0.2);
    padding: 6px 20px;
    border-radius: 20px;
    margin-bottom: 28px;
}
.adv-hero h1 {
    font-family: 'Playfair Display', serif;
    font-size: clamp(44px, 7vw, 80px);
    font-weight: 900;
    line-height: 1.05;
    letter-spacing: -1px;
    margin-bottom: 24px;
    color: #fff;
}
.adv-hero-sub {
    font-size: 18px;
    color: rgba(255,255,255,0.6);
    max-width: 700px;
    margin: 0 auto 48px;
    line-height: 1.8;
}

/* Advisory stats strip */
.adv-stat-strip {
    display: flex;
    justify-content: center;
    gap: 0;
    flex-wrap: wrap;
    max-width: 900px;
    margin: 0 auto 56px;
    border: 1px solid rgba(255,255,255,0.06);
    border-radius: 16px;
    overflow: hidden;
    background: rgba(12,12,16,0.6);
    backdrop-filter: blur(20px);
}
.adv-stat-item {
    flex: 1;
    min-width: 140px;
    padding: 24px 20px;
    border-right: 1px solid rgba(255,255,255,0.05);
    text-align: center;
}
.adv-stat-item:last-child { border-right: none; }
.adv-stat-num {
    font-size: 32px;
    font-weight: 900;
    font-family: 'Playfair Display', serif;
    background: linear-gradient(135deg, #00d9ff, #00ff88);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    margin-bottom: 4px;
}
.adv-stat-label {
    font-size: 10px;
    color: rgba(184,197,214,0.5);
    text-transform: uppercase;
    letter-spacing: 1px;
    font-weight: 700;
}

/* Mandate divider */
.adv-mandate {
    max-width: 900px;
    margin: 0 auto 80px;
    background: linear-gradient(135deg, rgba(0,217,255,0.06), rgba(157,78,221,0.04));
    border: 1px solid rgba(0,217,255,0.12);
    border-radius: 20px;
    padding: 48px 52px;
    text-align: center;
}
.adv-mandate-title {
    font-size: clamp(22px, 3vw, 32px);
    font-weight: 900;
    color: #fff;
    margin-bottom: 16px;
    line-height: 1.3;
}
.adv-mandate-body {
    font-size: 16px;
    color: rgba(184,197,214,0.75);
    line-height: 1.9;
    max-width: 700px;
    margin: 0 auto;
}

/* Section labels */
.adv-section-label {
    font-size: 10px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 3px;
    margin-bottom: 12px;
    color: var(--color-accent);
}
.adv-section-title {
    font-size: clamp(28px, 4vw, 46px);
    font-weight: 900;
    line-height: 1.15;
    color: #fff;
    margin-bottom: 16px;
    font-family: 'Playfair Display', serif;
}
.adv-section-sub {
    font-size: 15px;
    color: rgba(184,197,214,0.65);
    max-width: 680px;
    line-height: 1.8;
    margin-bottom: 52px;
}

/* Service cards */
.adv-services-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
    gap: 20px;
    margin-bottom: 20px;
}
.adv-service-card {
    position: relative;
    background: linear-gradient(145deg, rgba(12,12,16,0.95), rgba(20,20,28,0.9));
    border: 1px solid rgba(255,255,255,0.06);
    border-radius: 20px;
    padding: 36px 32px;
    cursor: pointer;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    overflow: hidden;
}
.adv-service-card:hover {
    border-color: var(--c, #00d9ff);
    transform: translateY(-6px);
    box-shadow: 0 24px 60px rgba(0,0,0,0.5), 0 0 40px rgba(0,217,255,0.08);
}
.adv-service-card::before {
    content: '';
    position: absolute;
    top: 0; left: 0; right: 0;
    height: 3px;
    background: linear-gradient(90deg, var(--c, #00d9ff), transparent);
    opacity: 0;
    transition: opacity 0.3s;
}
.adv-service-card:hover::before { opacity: 1; }
.adv-service-icon {
    font-size: 32px;
    margin-bottom: 16px;
    display: block;
}
.adv-service-name {
    font-size: 20px;
    font-weight: 800;
    color: #fff;
    margin-bottom: 10px;
    line-height: 1.25;
}
.adv-service-tag {
    display: inline-block;
    font-size: 9px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    padding: 3px 10px;
    border-radius: 20px;
    background: rgba(0,217,255,0.1);
    color: var(--c, #00d9ff);
    border: 1px solid rgba(0,217,255,0.2);
    margin-bottom: 14px;
}
.adv-service-desc {
    font-size: 13px;
    color: rgba(184,197,214,0.7);
    line-height: 1.75;
    margin-bottom: 20px;
}
.adv-service-delivers {
    border-top: 1px solid rgba(255,255,255,0.05);
    padding-top: 16px;
}
.adv-service-delivers-label {
    font-size: 9px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    color: var(--c, #00d9ff);
    opacity: 0.6;
    margin-bottom: 8px;
}
.adv-service-delivers ul {
    list-style: none;
    padding: 0;
    margin: 0;
}
.adv-service-delivers ul li {
    font-size: 12px;
    color: rgba(184,197,214,0.65);
    padding: 3px 0 3px 14px;
    position: relative;
    line-height: 1.5;
}
.adv-service-delivers ul li::before {
    content: '→';
    position: absolute;
    left: 0;
    color: var(--c, #00d9ff);
    font-size: 10px;
}
.adv-service-card.featured {
    grid-column: span 2;
    background: linear-gradient(145deg, rgba(0,217,255,0.07), rgba(157,78,221,0.05));
    border-color: rgba(0,217,255,0.18);
}
.adv-service-card.featured .adv-service-name { font-size: 26px; }
@media (max-width: 768px) {
    .adv-service-card.featured { grid-column: span 1; }
}

/* Advisory CTA band */
.adv-cta-band {
    background: linear-gradient(135deg, rgba(0,217,255,0.08), rgba(157,78,221,0.06));
    border: 1px solid rgba(0,217,255,0.15);
    border-radius: 20px;
    padding: 56px 48px;
    text-align: center;
    margin: 72px 0;
    position: relative;
    overflow: hidden;
}
.adv-cta-band h2 {
    font-size: clamp(28px, 4vw, 48px);
    font-weight: 900;
    color: #fff;
    margin-bottom: 16px;
    line-height: 1.2;
    font-family: 'Playfair Display', serif;
}
.adv-cta-band p {
    font-size: 16px;
    color: rgba(255,255,255,0.55);
    max-width: 600px;
    margin: 0 auto 36px;
    line-height: 1.8;
}

/* Advisory process steps */
.adv-process {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 2px;
    margin-bottom: 80px;
}
.adv-process-step {
    background: rgba(12,12,16,0.8);
    border: 1px solid rgba(255,255,255,0.04);
    padding: 32px 28px;
    position: relative;
    transition: all 0.3s;
}
.adv-process-step:first-child { border-radius: 16px 0 0 16px; }
.adv-process-step:last-child { border-radius: 0 16px 16px 0; }
.adv-process-step:hover { background: rgba(0,217,255,0.04); border-color: rgba(0,217,255,0.12); }
.adv-process-num {
    font-size: 48px;
    font-weight: 900;
    font-family: 'Playfair Display', serif;
    color: rgba(0,217,255,0.12);
    line-height: 1;
    margin-bottom: 12px;
}
.adv-process-title {
    font-size: 14px;
    font-weight: 800;
    color: #fff;
    margin-bottom: 8px;
}
.adv-process-desc {
    font-size: 12px;
    color: rgba(184,197,214,0.55);
    line-height: 1.6;
}

/* Advisory why grid */
.adv-why-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
    gap: 16px;
    margin-bottom: 80px;
}
.adv-why-item {
    padding: 28px 24px;
    background: rgba(12,12,16,0.7);
    border: 1px solid rgba(255,255,255,0.04);
    border-radius: 14px;
    transition: all 0.3s;
}
.adv-why-item:hover {
    border-color: rgba(0,217,255,0.12);
    transform: translateY(-3px);
}
.adv-why-icon { font-size: 28px; margin-bottom: 14px; }
.adv-why-title { font-size: 15px; font-weight: 800; color: #fff; margin-bottom: 8px; }
.adv-why-desc { font-size: 12px; color: rgba(184,197,214,0.6); line-height: 1.7; }

/* Advisory final CTA */
.adv-final-cta {
    text-align: center;
    padding: 100px 32px;
    position: relative;
    overflow: hidden;
}
.adv-final-cta h2 {
    font-family: 'Playfair Display', serif;
    font-size: clamp(36px, 6vw, 68px);
    font-weight: 900;
    line-height: 1.1;
    color: #fff;
    margin-bottom: 20px;
}
.adv-final-cta p {
    font-size: 17px;
    color: rgba(255,255,255,0.5);
    max-width: 600px;
    margin: 0 auto 48px;
    line-height: 1.8;
}

@media (max-width: 768px) {
    .adv-hero { padding: 80px 20px 48px; }
    .adv-mandate { padding: 36px 28px; }
    .adv-process { grid-template-columns: 1fr; }
    .adv-process-step { border-radius: 12px !important; }
    .adv-cta-band { padding: 40px 24px; }
    .page-wrap { padding-top: 70px; }
}

