/* ============================================================

   Mason Verdi — shared site stylesheet

   Generated from the embedded <style> blocks and inline

   style="..." attributes that previously lived in each page.

   ============================================================ */



/* ---------- Shared base (used by every page) ---------- */

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

:root{

  --p:#6B2FA0;

  --pd:#5B21B6;

  --pl:#EDE9FE;

  --pl-2:#F5F3FF;

  --blk:#0A0A0A;

  --grn:#059669;

  --txt:#1a1a1a;

  --muted:#6B7280;

  --bg:#FFFFFF;

  --bg-2:#F8F8F8;

  --border:#E5E5E5;

  --font-display:'Fraunces',Georgia,serif;

  --font-body:'Inter',-apple-system,system-ui,sans-serif;

}

html,body{font-family:var(--font-body);color:var(--txt);background:#fff;-webkit-font-smoothing:antialiased;scroll-behavior:smooth}

a{color:inherit;text-decoration:none}

img{max-width:100%;display:block}



/* NAV */

.nav{background:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 2.5rem;height:108px;border-bottom:1px solid var(--border);position:sticky;top:0;z-index:50}

.nav-logo img{height:84px;width:auto;display:block}

.nav-links{display:flex;gap:2.25rem}

.nav-links a{color:#333;font-size:14px;font-weight:400;transition:color .2s}

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

.nav-cta{background:var(--p);color:#fff;font-size:13px;font-weight:500;padding:11px 20px;border-radius:8px;border:none;cursor:pointer;transition:background .2s}

.nav-cta:hover{background:var(--pd)}



/* STICKY CTA BAR (appears on scroll) */

.sticky-cta{position:fixed;bottom:0;left:0;right:0;background:var(--blk);color:#fff;padding:14px 2rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;z-index:40;transform:translateY(100%);transition:transform .35s cubic-bezier(0.16,1,0.3,1);box-shadow:0 -8px 30px rgba(0,0,0,0.15)}

.sticky-cta.show{transform:translateY(0)}

.sticky-cta-text{font-size:14px;color:rgba(255,255,255,0.85)}

.sticky-cta-text strong{color:#fff}

.sticky-cta-btn{background:var(--p);color:#fff;border:none;padding:10px 20px;border-radius:7px;font-size:13px;font-weight:500;cursor:pointer;font-family:var(--font-body);white-space:nowrap}

.sticky-cta-close{background:transparent;border:none;color:rgba(255,255,255,0.4);cursor:pointer;font-size:18px;padding:4px 8px;flex-shrink:0}



/* HERO */

.hero{background:var(--blk);padding:5rem 2.5rem 0;position:relative;overflow:hidden}

.hero::before{content:"";position:absolute;top:-20%;right:-10%;width:60%;height:80%;background:radial-gradient(circle,rgba(107,47,160,0.25) 0%,transparent 60%);pointer-events:none}

.hero-inner{position:relative;max-width:1400px;margin:0 auto}

.hero-pill{display:inline-flex;align-items:center;gap:8px;border:1px solid rgba(107,47,160,0.4);background:rgba(107,47,160,0.15);color:#C4B5FD;font-size:12px;font-weight:500;padding:5px 14px;border-radius:24px;margin-bottom:1.5rem;letter-spacing:0.3px}

.pill-dot{width:6px;height:6px;border-radius:50%;background:#A78BFA;animation:pulse 2s ease-in-out infinite}

@keyframes pulse{0%,100%{opacity:1}50%{opacity:0.5}}

.hero h1{font-family:var(--font-display);color:#fff;font-size:clamp(36px,6vw,64px);font-weight:500;line-height:1.05;letter-spacing:-2px;margin-bottom:1.5rem;max-width:900px}

.hero h1 em{color:#B794F4;font-style:italic;font-weight:400}

.hero-sub{color:rgba(255,255,255,0.6);font-size:17px;line-height:1.7;max-width:580px;margin-bottom:2rem;font-weight:300}

.hero-proof{display:inline-flex;align-items:center;gap:10px;background:rgba(5,150,105,0.12);border:1px solid rgba(5,150,105,0.3);color:#34D399;font-size:13px;padding:9px 16px;border-radius:8px;margin-bottom:2rem;font-weight:400}

.hero-btns{display:flex;gap:12px;margin-bottom:0;flex-wrap:wrap}

.btn-p{background:var(--p);color:#fff;padding:12px 30px;border-radius:9px;border:none;font-size:14px;font-weight:500;cursor:pointer;font-family:var(--font-body);transition:background .2s;display:inline-flex;align-items:center;gap:8px}

.btn-p:hover{background:#5B21B6}

.btn-g{background:transparent;color:rgba(255,255,255,0.75);padding:12px 30px;border-radius:9px;border:1px solid rgba(255,255,255,0.18);font-size:14px;cursor:pointer; display: inline-flex;  align-items: center;  gap: 8px;font-family:var(--font-body);transition:all .2s}

.btn-g:hover{border-color:rgba(255,255,255,0.4);color:#fff}

.hero-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:rgba(255,255,255,0.08);border-top:1px solid rgba(255,255,255,0.08);margin-top:4rem}

.h-stat{background:var(--blk);padding:1.75rem 1.25rem;text-align:center}

.h-stat-val{font-family:var(--font-display);color:#fff;font-size:32px;font-weight:500;letter-spacing:-0.5px;line-height:1}

.h-stat-label{color:rgba(255,255,255,0.45);font-size:12px;margin-top:6px;letter-spacing:0.3px}



/* SECTIONS */

section{padding:5rem 2.5rem}

.section-inner{max-width:1400px;margin:0 auto}

.sec-tag{color:var(--p);font-size:11px;font-weight:600;letter-spacing:1.8px;text-transform:uppercase;margin-bottom:0.75rem}

.sec-h{font-family:var(--font-display);font-size:clamp(28px,4vw,40px);font-weight:500;letter-spacing:-1px;line-height:1.15;margin-bottom:0.75rem;color:var(--txt)}

.sec-sub{font-size:16px;color:var(--muted);line-height:1.7;max-width:560px;margin-bottom:2.5rem;font-weight:300}



/* LEAD MAGNET BANNER */

.lm-banner{background:linear-gradient(135deg,var(--pl) 0%,#fff 100%);border:1px solid var(--pl);border-radius:18px;padding:2rem;display:grid;grid-template-columns:1fr 1fr;gap:2rem;align-items:center;margin-bottom:2rem}

.lm-banner-left h3{font-family:var(--font-display);font-size:22px;font-weight:500;letter-spacing:-0.5px;margin-bottom:0.5rem;color:var(--txt)}

.lm-banner-left p{font-size:14px;color:var(--muted);line-height:1.6}

.lm-banner-right{display:flex;flex-direction:column;gap:8px}

.lm-form {display:flex;gap:8px;margin-top:8px}

.lm-form .lm-control {flex: 1; min-width: 0;}

.lm-input{flex:1;width: 100%; padding:13px 16px;border:1px solid var(--border);border-radius:9px;font-size:14px;font-family:var(--font-body);background:#fff}

.lm-input:focus{outline:none;border-color:var(--p)}

.lm-submit{width: 100%;background:var(--p);color:#fff;border:none;padding:13px 22px;border-radius:9px;font-size:13px;font-weight:500;cursor:pointer;font-family:var(--font-body);white-space:nowrap}



/* PAIN */

.pain{background:#fff}

.pain-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:2.5rem}

.pain-card{border-radius:14px;padding:1.5rem;border:1px solid var(--border);background:#fff;transition:all .2s}

.pain-card:hover{border-color:#d0d0d0;transform:translateY(-2px)}

.pain-icon{width:36px;height:36px;border-radius:9px;display:flex;align-items:center;justify-content:center;margin-bottom:1rem}

.pain-card h4{font-family:var(--font-display);font-size:17px;font-weight:500;margin-bottom:0.5rem;color:var(--txt);letter-spacing:-0.3px}

.pain-card p{font-size:14px;color:var(--muted);line-height:1.65;font-weight:300}

.vs-table{background:var(--blk);border-radius:16px;padding:2rem;position:relative;overflow:hidden}

.vs-head{color:rgba(255,255,255,0.4);font-size:11px;text-transform:uppercase;letter-spacing:1.5px;margin-bottom:1.5rem;text-align:center;font-weight:500}

.vs-row{display:grid;grid-template-columns:1fr 110px 1fr;gap:12px;align-items:center;margin-bottom:10px}

.vs-bad{font-size:13px;color:#F87171;background:rgba(220,38,38,0.1);padding:8px 14px;border-radius:7px;text-align:right;font-weight:400}

.vs-mid{font-size:11px;color:rgba(255,255,255,0.35);text-align:center;letter-spacing:0.5px;text-transform:uppercase}

.vs-good{font-size:13px;color:#34D399;background:rgba(5,150,105,0.12);padding:8px 14px;border-radius:7px;font-weight:400}



/* CALCULATOR */

.calc-section{background:var(--pl-2);padding:5rem 2.5rem}

.calc-inner{max-width:720px;margin:0 auto}

.calc-card{background:#fff;border-radius:18px;border:1px solid var(--border);padding:2rem;margin-top:2rem;box-shadow:0 4px 20px rgba(107,47,160,0.06)}

.calc-row{margin-bottom:1.6rem}

.calc-lbl{font-size:13px;font-weight:500;color:var(--txt);margin-bottom:8px;display:flex;justify-content:space-between;align-items:center}

.calc-val{color:var(--p);font-weight:600;font-family:var(--font-display);font-size:15px}

input[type=range]{width:100%;accent-color:var(--p);height:6px}

.exit-btns{display:flex;gap:10px;margin-top:6px}

.exit-btn{flex:1;padding:10px;border-radius:8px;font-size:13px;cursor:pointer;border:1px solid var(--border);background:#fff;color:var(--muted);font-family:var(--font-body);transition:all .15s}

.exit-btn.active{border:1.5px solid var(--p);background:var(--pl);color:var(--pd);font-weight:500}

.calc-results{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:1.75rem;padding-top:1.75rem;border-top:1px solid var(--border)}

.calc-res{text-align:center;background:var(--pl-2);border-radius:12px;padding:1.1rem 0.75rem}

.calc-res-val{font-family:var(--font-display);font-size:24px;font-weight:500;color:var(--pd);letter-spacing:-0.5px}

.calc-res-label{font-size:11px;color:var(--muted);margin-top:5px;letter-spacing:0.3px}

.calc-email-capture{margin-top:1.75rem;padding-top:1.75rem;border-top:1px solid var(--border);background:var(--pl-2);margin-left:-2rem;margin-right:-2rem;margin-bottom:-2rem;padding:1.75rem 2rem;border-radius:0 0 17px 17px}

.calc-email-capture h4{font-family:var(--font-display);font-size:17px;font-weight:500;margin-bottom:4px}

.calc-email-capture p{font-size:13px;color:var(--muted);margin-bottom:12px}

.calc-cta-btn{width:100%;background:var(--p);color:#fff;border:none;border-radius:10px;padding:15px;font-size:14px;font-weight:500;cursor:pointer;font-family:var(--font-body);transition:background .2s}

.calc-cta-btn:hover{background:var(--pd)}

.calc-note{font-size:11px;color:#9ca3af;text-align:center;margin-top:8px;font-weight:300}



/* DEALS */

.deals{background:#fff}

.deals-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:2.5rem}

.deal{border-radius:16px;border:1px solid var(--border);overflow:hidden;background:#fff;transition:all .2s}

.deal:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(0,0,0,0.06)}

.deal-hd{background:var(--blk);padding:1.4rem;position:relative}

.deal-badge{position:absolute;top:12px;right:12px;background:var(--p);color:#fff;font-size:10px;font-weight:500;padding:4px 11px;border-radius:20px;letter-spacing:0.3px}

.deal-hd-label{color:rgba(255,255,255,0.45);font-size:11px;margin-bottom:4px;letter-spacing:0.3px}

.deal-hd-val{font-family:var(--font-display);color:#fff;font-size:28px;font-weight:500;letter-spacing:-0.7px;line-height:1}

.deal-hd-sub{color:rgba(255,255,255,0.5);font-size:12px;margin-top:6px}

.deal-body{padding:1.4rem;background:#fff}

.deal-row{display:flex;justify-content:space-between;align-items:center;padding:7px 0;border-bottom:1px solid #f0f0f0}

.deal-row:last-child{border-bottom:none}

.deal-rl{font-size:12px;color:var(--muted)}

.deal-rv{font-size:13px;font-weight:500;color:var(--txt)}

.green{color:var(--grn)!important}

.deal-cta{border:2px solid var(--p)}

.deal-cta .deal-hd{background:linear-gradient(135deg,#1a0533 0%,#2d1264 100%)}



/* PROCESS */

.process{background:var(--blk);padding:5rem 2.5rem}

.process .sec-tag{color:#A78BFA}

.process .sec-h{color:#fff}

.process .sec-sub{color:rgba(255,255,255,0.55)}

.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}

.step{background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.08);border-radius:14px;padding:1.75rem;transition:all .2s}

.step:hover{background:rgba(255,255,255,0.06);border-color:rgba(167,139,250,0.3)}

.step-n{width:32px;height:32px;border-radius:8px;background:var(--p);color:#fff;font-size:13px;font-weight:600;display:flex;align-items:center;justify-content:center;margin-bottom:1.1rem;font-family:var(--font-display)}

.step h4{font-family:var(--font-display);color:#fff;font-size:16px;font-weight:500;margin-bottom:8px;letter-spacing:-0.3px}

.step p{color:rgba(255,255,255,0.5);font-size:13.5px;line-height:1.65;font-weight:300}



/* TESTIMONIALS */

.testi{background:var(--bg-2);padding:5rem 2.5rem}

.testi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:2rem}

.testi-card{background:#fff;border:1px solid var(--border);border-radius:16px;padding:1.75rem}

.stars{color:var(--p);font-size:13px;letter-spacing:3px;margin-bottom:0.9rem}

.testi-text{font-family:var(--font-display);font-size:16px;line-height:1.6;color:var(--txt);margin-bottom:1.5rem;font-weight:400;font-style:italic}

.testi-author{display:flex;align-items:center;gap:12px}

.avatar{width:40px;height:40px;border-radius:50%;background:var(--pl);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;color:var(--pd);flex-shrink:0;font-family:var(--font-display)}

.testi-name{font-size:13px;font-weight:500;color:var(--txt)}

.testi-role{font-size:11px;color:var(--muted);margin-top:2px}



/* LEAD MAGNET LIBRARY */

.lm-library{background:#fff;padding:5rem 2.5rem}

.lm-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:2.5rem}

.lm-card{background:#fff;border:1px solid var(--border);border-radius:16px;padding:1.75rem;transition:all .2s;display:flex;flex-direction:column}

.lm-card:hover{border-color:var(--p);transform:translateY(-3px);box-shadow:0 12px 28px rgba(107,47,160,0.08)}

.lm-card-icon{width:48px;height:48px;border-radius:12px;background:var(--pl);display:flex;align-items:center;justify-content:center;margin-bottom:1.1rem}

.lm-card h4{font-family:var(--font-display);font-size:19px;font-weight:500;letter-spacing:-0.3px;margin-bottom:6px;color:var(--txt)}

.lm-card-desc{font-size:13.5px;color:var(--muted);line-height:1.65;margin-bottom:1rem;flex:1;font-weight:300}

.lm-card-tag{display:inline-block;font-size:11px;font-weight:500;padding:3px 10px;border-radius:20px;background:var(--pl);color:var(--pd);margin-bottom:0.75rem;letter-spacing:0.3px}

.lm-card-btn{background:var(--blk);color:#fff;border:none;padding:11px;border-radius:8px;font-size:13px;font-weight:500;cursor:pointer;font-family:var(--font-body);width:100%}

.lm-card-btn:hover{background:var(--p)}



/* FINAL CTA */

.final{background:var(--blk);padding:6rem 2.5rem;text-align:center;position:relative;overflow:hidden}

.final::before{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:80%;height:80%;background:radial-gradient(circle,rgba(107,47,160,0.18) 0%,transparent 60%);pointer-events:none}

.final-inner{position:relative;max-width:700px;margin:0 auto}

.final h2{font-family:var(--font-display);color:#fff;font-size:clamp(30px,4.5vw,44px);font-weight:500;letter-spacing:-1px;margin-bottom:1rem;line-height:1.15}

.final p{color:rgba(255,255,255,0.55);font-size:16px;max-width:480px;margin:0 auto 2rem;line-height:1.7;font-weight:300}

.urgency{display:inline-block;background:rgba(107,47,160,0.18);border:1px solid rgba(107,47,160,0.35);color:#C4B5FD;font-size:12px;padding:7px 16px;border-radius:22px;margin-bottom:1.5rem;font-weight:500;letter-spacing:0.3px}

.final-btn{background:var(--p);color:#fff;padding:18px 40px;border-radius:11px;border:none;font-size:15px;font-weight:500;cursor:pointer;display:inline-block;font-family:var(--font-body);transition:background .2s}

.final-btn:hover{background:#5B21B6}

.final-note{color:rgba(255,255,255,0.35);font-size:12px;margin-top:14px}

.contact-row{display:flex;justify-content:center;gap:14px;margin-top:2rem;flex-wrap:wrap}

.contact-chip{border:1px solid rgba(255,255,255,0.15);color:rgba(255,255,255,0.65);font-size:13px;padding:10px 18px;border-radius:9px;display:flex;align-items:center;gap:8px;cursor:pointer;transition:all .2s;background:transparent}

.contact-chip:hover{border-color:rgba(255,255,255,0.3);color:#fff}



/* FOOTER */

.footer{background:#000;color:rgba(255,255,255,0.4);padding:2.5rem;text-align:center;font-size:12px}

.footer a{color:rgba(255,255,255,0.6)}

.footer-links{margin-bottom:1rem;display:flex;justify-content:center;gap:1.5rem;flex-wrap:wrap}



/* EXIT-INTENT POPUP */

.popup-overlay{position:fixed;inset:0;background:rgba(0,0,0,0.7);z-index:100;display:none;align-items:center;justify-content:center;padding:1rem;backdrop-filter:blur(4px)}

.popup-overlay.show{display:flex}

.popup{background:#fff;border-radius:20px;max-width:540px;width:100%;padding:2.5rem;position:relative;animation:popIn .35s cubic-bezier(0.16,1,0.3,1)}

@keyframes popIn{from{opacity:0;transform:translateY(20px) scale(0.96)}to{opacity:1;transform:none}}

.popup-close{position:absolute;top:14px;right:14px;background:transparent;border:none;font-size:22px;color:var(--muted);cursor:pointer;width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center}

.popup-close:hover{background:#f5f5f5}

.popup-icon{width:54px;height:54px;border-radius:14px;background:var(--pl);display:flex;align-items:center;justify-content:center;margin-bottom:1.25rem}

.popup h3{font-family:var(--font-display);font-size:26px;font-weight:500;letter-spacing:-0.5px;margin-bottom:0.5rem}

.popup p{font-size:14.5px;color:var(--muted);line-height:1.65;margin-bottom:1.5rem;font-weight:300}

.popup-form{display:flex;flex-direction:column;gap:10px}

.popup-form input{width: 100%; padding:14px 16px;border:1px solid var(--border);border-radius:10px;font-size:14px;font-family:var(--font-body)}

.popup-form input:focus{outline:none;border-color:var(--p)}

.popup-form .button{background:var(--p);color:#fff;border:none;padding:15px;border-radius:10px;width: 100%; font-size:14px;font-weight:500;cursor:pointer;font-family:var(--font-body)}

.popup-disclaimer{font-size:11px;color:#9ca3af;text-align:center;margin-top:10px}

.wpcf7-spinner {
  position: absolute;
}
.popup-form p {
  margin: 0;
}
.wpcf7-select, .button {
  width: 100%;
}

/* DEAL ALERTS BANNER */

.alerts-banner{background:linear-gradient(135deg,#1a0533 0%,#2d1264 100%);color:#fff;padding:3rem 2.5rem;text-align:center}

.alerts-banner-inner{max-width:720px;margin:0 auto}

.alerts-banner h2{font-family:var(--font-display);font-size:30px;font-weight:500;letter-spacing:-0.5px;margin-bottom:0.6rem}

.alerts-banner p{color:rgba(255,255,255,0.6);font-size:15px;margin-bottom:1.5rem;font-weight:300}

.alerts-form{display:flex;gap:8px;margin:0 auto;flex-wrap:wrap}

.alerts-form input{flex:1; padding:14px 18px;border:1px solid rgba(255,255,255,0.15);background:rgba(255,255,255,0.05);color:#fff;border-radius:10px;font-size:14px;font-family:var(--font-body)}

.alerts-form input::placeholder{color:rgba(255,255,255,0.4)}

.alerts-form input:focus{outline:none;border-color:#A78BFA}

.alerts-form .button{background:var(--p);color:#fff;border:none;padding:14px 24px;border-radius:10px;font-size:13px;font-weight:500;cursor:pointer;font-family:var(--font-body);white-space:nowrap}
.alert-control {
  flex: 1;
}


/* CITY-PAGE SPECIFIC */

.city-redirect{background:linear-gradient(135deg,var(--pl) 0%,#fff 100%);border:2px solid var(--p);border-radius:20px;padding:2.5rem;text-align:center;margin:2rem auto;max-width:900px}

.city-redirect h3{font-family:var(--font-display);font-size:26px;font-weight:500;letter-spacing:-0.5px;margin-bottom:0.75rem}

.city-redirect p{font-size:15px;color:var(--muted);line-height:1.7;max-width:560px;margin:0 auto 1.5rem;font-weight:300}

.city-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:2rem 0}

.city-stat{background:#fff;border:1px solid var(--border);border-radius:12px;padding:1.25rem 1rem;text-align:center}

.city-stat-val{font-family:var(--font-display);font-size:24px;font-weight:500;color:var(--p);letter-spacing:-0.5px}

.city-stat-label{font-size:11px;color:var(--muted);margin-top:4px;letter-spacing:0.3px}



/* RESPONSIVE */

@media (max-width:900px){

  .nav-links{display:none}

  .hero-stats,.pain-grid,.deals-grid,.steps,.testi-grid,.lm-grid,.city-stats{grid-template-columns:1fr 1fr}

  .lm-banner{grid-template-columns:1fr}

  section{padding:3.5rem 1.5rem}

  .hero{padding:3rem 1.5rem 0}

  .nav{padding:0 1.5rem}

  .sticky-cta{flex-direction:column;text-align:center;padding:14px}

  .sticky-cta-text{font-size:13px}

}

@media (max-width:600px){

  .hero-stats,.pain-grid,.deals-grid,.steps,.testi-grid,.lm-grid,.city-stats,.calc-results{grid-template-columns:1fr}

  .vs-row{grid-template-columns:1fr;text-align:center}

  .vs-bad,.vs-good{text-align:center}

}



/* ---------- Projects-page specific ---------- */

/* Projects page */

.projects-hero{background:var(--blk);padding:4rem 2.5rem 3rem;color:#fff}

.projects-hero h1{font-family:var(--font-display);font-size:clamp(36px,5vw,52px);font-weight:500;letter-spacing:-1.5px;margin-bottom:1rem}

.projects-hero p{color:rgba(255,255,255,0.6);font-size:16px;max-width:600px;line-height:1.7;font-weight:300}



.filters-bar{background:var(--bg-2);padding:1.5rem 2.5rem;border-bottom:1px solid var(--border);position:sticky;top:108px;z-index:30}

.filters-inner{max-width:1400px;margin:0 auto;display:grid;grid-template-columns:repeat(5,1fr) auto;gap:14px;align-items:end}

.filter-group{display:flex;flex-direction:column;gap:6px}

.filter-label{font-size:11px;font-weight:600;color:var(--muted);letter-spacing:0.4px;text-transform:uppercase}

.filter-select,.filter-input{padding:10px 12px;border:1px solid var(--border);border-radius:8px;font-size:13px;font-family:var(--font-body);background:#fff;color:var(--txt)}

.filter-select:focus,.filter-input:focus{outline:none;border-color:var(--p)}

.filter-reset{background:#fff;border:1px solid var(--border);padding:10px 16px;border-radius:8px;font-size:13px;cursor:pointer;font-family:var(--font-body);color:var(--muted);height:fit-content}

.filter-reset:hover{border-color:var(--p);color:var(--p)}



.projects-grid-section{padding:3rem 2.5rem;background:#fff}

.projects-count{font-size:13px;color:var(--muted);margin-bottom:1.25rem;max-width:1400px;margin-left:auto;margin-right:auto}

.projects-count strong{color:var(--txt);font-weight:600}

.projects-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;max-width:1400px;margin:0 auto}



.project-card{border:1px solid var(--border);border-radius:16px;overflow:hidden;background:#fff;transition:all .2s;display:flex;flex-direction:column}

.project-card:hover{transform:translateY(-3px);box-shadow:0 12px 28px rgba(0,0,0,0.08);border-color:var(--p)}

.project-image{aspect-ratio:16/9;background:linear-gradient(135deg,#1a1a1a 0%,#2d1264 100%);position:relative;overflow:hidden}

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

.project-image-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,0.35);font-size:11px;letter-spacing:1px;text-transform:uppercase}

.project-status{position:absolute;top:12px;left:12px;font-size:10px;font-weight:600;padding:4px 11px;border-radius:20px;letter-spacing:0.4px;text-transform:uppercase}

.status-completed{background:#D1FAE5;color:#065F46}

.status-in_progress{background:#FEF3C7;color:#92400E}

.status-available_now{background:var(--pl);color:var(--pd)}

.confidential-badge{position:absolute;top:12px;right:12px;background:rgba(0,0,0,0.7);color:#fff;font-size:10px;font-weight:500;padding:4px 10px;border-radius:20px;letter-spacing:0.3px;backdrop-filter:blur(8px)}



.project-body{padding:1.25rem;flex:1;display:flex;flex-direction:column}

.project-title{font-family:var(--font-display);font-size:18px;font-weight:500;letter-spacing:-0.3px;margin-bottom:4px;color:var(--txt)}

.project-location{font-size:12px;color:var(--muted);margin-bottom:1rem}

.project-stats{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:1rem}

.project-stat{background:var(--bg-2);border-radius:8px;padding:8px 10px}

.project-stat-label{font-size:10px;color:var(--muted);letter-spacing:0.3px;text-transform:uppercase}

.project-stat-value{font-size:14px;font-weight:600;color:var(--txt);font-family:var(--font-display);letter-spacing:-0.3px}

.project-stat-value.highlight{color:var(--p)}

.project-stat-value.green{color:var(--grn)}

.project-footer{display:flex;justify-content:space-between;align-items:center;padding-top:0.75rem;border-top:1px solid #f0f0f0;margin-top:auto}

.exit-tag{font-size:11px;font-weight:500;padding:3px 10px;border-radius:14px;background:var(--pl);color:var(--pd)}

.view-link{font-size:12px;color:var(--p);font-weight:500}



.no-results{grid-column:1/-1;text-align:center;padding:4rem 2rem;color:var(--muted)}

.no-results h3{font-family:var(--font-display);font-size:22px;margin-bottom:0.5rem;color:var(--txt)}



@media(max-width:900px){

  .filters-inner{grid-template-columns:1fr 1fr}

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

  .filters-bar{position:static}

}

@media(max-width:600px){

  .filters-inner{grid-template-columns:1fr}

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

}



/* ---------- Utilities & component variants ----------

   These classes replace inline style="..." attributes.

   Each class is named after the role it plays on the page,

   not the CSS it contains, so changes can be made in one

   place rather than per-element.

   --------------------------------------------------- */

.pain-icon--red{background:#FEE2E2}

.pain-icon--amber{background:#FEF3C7}

.pain-icon--green{background:#D1FAE5}

.pain-icon--blue{background:#DBEAFE}

.deal-hd--dark-green{background:#0d1a0d}

.deal-badge--purple{background:rgba(167,139,250,0.25);color:#C4B5FD}

.deal-badge--green{background:#065F46;color:#6EE7B7}

.deal-hd-val--lg{font-size:20px;margin-top:4px}

.text-p{color:var(--p)}

.text-pd{color:var(--pd)}

.link-p{color:var(--p);font-weight:500}

.text-grey{color:#9ca3af}

.text-black{color:#000}

.note-center{text-align:center;margin-top:2rem;font-size:14px}

.note-muted{color:var(--muted)}

.text-center{text-align:center}

.sec-sub--w500{max-width:500px}

.sec-sub--w700{max-width:700px}

.sec-sub--w900{max-width:900px}

.mb-24{margin-bottom:1.5rem}

.calc-cta-btn--spaced{margin-top:1.25rem;padding:12px}

.form-dark{background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.1);border-radius:14px;padding:1.75rem;max-width:480px;margin:0 auto 1rem}

.form-dark--flush{margin:0 auto}

.input-dark{background:rgba(255,255,255,0.05);color:#fff;border:1px solid rgba(255,255,255,0.15)}

.input-dark--padded{padding:14px 16px;border-radius:10px;font-size:14px;font-family:var(--font-body); width: 100%}

.input-dark--resizable{resize:vertical}

.input-light{padding:11px 14px;border:1px solid var(--border);border-radius:8px;font-size:13px; width: 100%;}

.input-light--flex{flex:1}

.btn-primary-block{background:var(--p);color:#fff;border:none;padding:15px;border-radius:10px;font-size:14px;font-weight:500;cursor:pointer;font-family:var(--font-body)}

.lm-submit--auto{width:auto;padding:11px 22px}

.stack-8{display:flex;flex-direction:column;gap:8px}

.stack-10{display:flex;flex-direction:column;gap:10px}

.row-8{display:flex;gap:8px;max-width:480px}

.lm-col-span{grid-column:1/-1}

.lm-banner--2col{grid-template-columns:repeat(2,1fr)}

.section--pad-tight{padding:4rem 2.5rem 2rem}

.contact-section{background:#fff;padding:5rem 2.5rem;border-top:1px solid var(--border)}

.cta-dark{background:linear-gradient(135deg,#0A0A0A 0%,#1a0533 100%);color:#fff;border-radius:20px;padding:3rem;text-align:center}

.d-inline-block{display:inline-block}

.pill-purple{display:inline-block;background:rgba(167,139,250,0.18);border:1px solid rgba(167,139,250,0.35);color:#C4B5FD;font-size:12px;padding:6px 14px;border-radius:22px;margin-bottom:1.25rem;font-weight:500;letter-spacing:0.3px}

.cta-dark-h{font-family:var(--font-display);font-size:clamp(26px,3.5vw,36px);font-weight:500;letter-spacing:-1px;margin-bottom:1rem;line-height:1.2}

.cta-dark-sub{color:rgba(255,255,255,0.65);font-size:15px;line-height:1.7;max-width:560px;margin:0 auto 2rem;font-weight:300}

.form-dark-note{color:rgba(255,255,255,0.4);font-size:11px;text-align:center;margin-top:4px}

.notice-success{background:#D1FAE5;color:#065F46;padding:1.25rem;border-radius:10px;text-align:center;font-size:14px;font-weight:500}

.project-placeholder-label{color:rgba(255,255,255,0.5);font-size:11px;letter-spacing:1px}

.mx-auto-mb-8{margin:0 auto 8px;display:block}



.nav-links { flex: 1; display: flex; justify-content: center; }

/* FIX MENU */
.nav-links .menu { display: flex; align-items: center; gap: 30px; list-style: none; margin: 0; padding: 0; }
.nav-links .menu li { list-style: none; margin: 0; padding: 0; }
.nav-links .menu li a { text-decoration: none; color: #333; font-size: 14px; font-weight: 400; transition: color .2s; }
.nav-links .menu li a:hover { color: #6b2fa0; }

/* PROJECT */
.states-sect .hero-stats {border: 0; gap: 10px; background: transparent; margin: 0;}
.states-sect .h-stat {background: rgba(0, 0, 0, .03); text-align: left;}
.states-sect .h-stat-val {color: var(--blk);}
.states-sect .h-stat-label {color: var(--p);}
.gallery-sect {background: var(--blk); }
.pd-img { position: relative; padding-bottom: 50%; display: block; }
.pd-img img { position: absolute; top: 0; left: 0; right: 0; bottom: 0; object-fit: cover; width: 100%; height: 100%; }
.vd-sect {text-align: center;}
.swiper-button-next, .swiper-button-prev {color: #fff;}
.swiper-pagination {position: relative; bottom: 0px !important;  margin-top: 2rem;}
.swiper-pagination-bullet {background: #fff;}
.swiper-pagination-bullet-active {background: var(--p)}