:root{
  --pv-green:#0b3d24;
  --pv-green-2:#126b3a;
  --pv-green-3:#e9f4ed;
  --pv-gold:#c9a227;
  --pv-gold-2:#f3df9a;
  --pv-dark:#1f2d2b;
  --pv-muted:#66736f;
  --pv-soft:#f5f7f4;
  --pv-white:#ffffff;
}

*{box-sizing:border-box}
body{font-family:Poppins,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--pv-dark);background:#fff;}

.pv-navbar{background:rgba(11,61,36,.96);box-shadow:0 12px 32px rgba(0,0,0,.16);padding:.7rem 0;}
.pv-navbar .navbar-toggler{border-color:rgba(255,255,255,.35);filter:invert(1);}
.pv-brand{display:flex;align-items:center;gap:.75rem;color:#fff;text-decoration:none;min-width:0;}
.pv-brand:hover{color:#fff;}
.pv-brand img{height:44px;width:auto;background:#fff;border-radius:12px;padding:4px;object-fit:contain;box-shadow:0 6px 15px rgba(0,0,0,.18);}
.pv-brand span{display:flex;flex-direction:column;line-height:1.1;}
.pv-brand strong{font-size:.95rem;letter-spacing:.01em;}
.pv-brand small{font-size:.72rem;color:rgba(255,255,255,.76);margin-top:.2rem;}
.pv-navbar .nav-link{color:rgba(255,255,255,.82);font-weight:600;margin-left:.8rem;}
.pv-navbar .nav-link:hover,.pv-navbar .nav-link.active{color:var(--pv-gold-2);}

.pv-hero{position:relative;min-height:100vh;background:linear-gradient(135deg,#0b3d24 0%,#126b3a 58%,#0b3d24 100%);overflow:hidden;color:#fff;}
.pv-hero::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 20% 30%,rgba(201,162,39,.28),transparent 32%),radial-gradient(circle at 80% 20%,rgba(255,255,255,.12),transparent 26%),linear-gradient(120deg,rgba(0,0,0,.15),rgba(0,0,0,.35));}
.pv-hero::after{content:"";position:absolute;right:-160px;bottom:-160px;width:520px;height:520px;border:70px solid rgba(255,255,255,.08);border-radius:50%;}
.pv-badge,.pv-section-tag{display:inline-flex;align-items:center;gap:.45rem;background:rgba(201,162,39,.16);color:var(--pv-gold-2);border:1px solid rgba(201,162,39,.45);padding:.45rem .9rem;border-radius:999px;font-weight:700;font-size:.82rem;text-transform:uppercase;letter-spacing:.06em;}
.pv-hero h1{font-size:clamp(2.4rem,5vw,5rem);font-weight:900;line-height:.98;margin:1.2rem 0;max-width:900px;}
.pv-hero .lead{font-size:1.18rem;max-width:760px;color:rgba(255,255,255,.88);}
.btn-pv-gold{background:var(--pv-gold);border-color:var(--pv-gold);color:#12251b;font-weight:800;}
.btn-pv-gold:hover{background:#d9b43f;border-color:#d9b43f;color:#12251b;transform:translateY(-2px);}
.btn-pv-green{background:var(--pv-green);border-color:var(--pv-green);color:#fff;font-weight:800;}
.btn-pv-green:hover{background:var(--pv-green-2);border-color:var(--pv-green-2);color:#fff;}
.pv-institution-card{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.22);backdrop-filter:blur(12px);border-radius:28px;padding:2rem;box-shadow:0 30px 90px rgba(0,0,0,.24);}
.pv-institution-card img{width:92px;height:auto;background:#fff;padding:.55rem;border-radius:18px;margin-bottom:1.2rem;}
.pv-institution-card h2{font-size:1.35rem;font-weight:800;}
.pv-institution-card p{color:rgba(255,255,255,.82);margin-bottom:0;}

.pv-soft{background:var(--pv-soft);}
section h2{font-weight:900;color:var(--pv-green);}
.pv-section-tag{background:#fff;color:var(--pv-green);border-color:#d7e7dc;margin-bottom:.8rem;}
.pv-stat{height:100%;background:#fff;border-radius:24px;padding:1.5rem;text-align:center;border:1px solid #e5eee8;box-shadow:0 18px 45px rgba(17,62,39,.08);transition:.25s ease;}
.pv-stat:hover{transform:translateY(-5px);box-shadow:0 26px 55px rgba(17,62,39,.13);}
.pv-stat i{display:inline-flex;align-items:center;justify-content:center;width:58px;height:58px;border-radius:18px;background:var(--pv-green-3);color:var(--pv-green);font-size:1.8rem;margin-bottom:.8rem;}
.pv-stat strong{display:block;font-size:2.15rem;font-weight:900;color:var(--pv-green);line-height:1;}
.pv-stat span{display:block;color:var(--pv-muted);font-weight:700;margin-top:.45rem;}

.pv-check-list{list-style:none;padding:0;margin:1.2rem 0 0;}
.pv-check-list li{display:flex;gap:.65rem;margin-bottom:.75rem;color:var(--pv-muted);font-weight:600;}
.pv-check-list i{color:var(--pv-green-2);}
.pv-map-preview{border-radius:32px;overflow:hidden;background:#0f3524;box-shadow:0 30px 80px rgba(11,61,36,.22);border:10px solid #fff;}
.pv-map-toolbar{height:50px;background:#fff;display:flex;align-items:center;gap:.45rem;padding:0 1rem;}
.pv-map-toolbar span{width:12px;height:12px;border-radius:50%;background:#d2ddd6;}
.pv-map-grid{height:340px;position:relative;background:linear-gradient(135deg,#dcebdd,#b5d3bd);overflow:hidden;}
.pv-map-grid::before{content:"";position:absolute;inset:-40px;background-image:linear-gradient(rgba(11,61,36,.12) 1px,transparent 1px),linear-gradient(90deg,rgba(11,61,36,.12) 1px,transparent 1px);background-size:42px 42px;transform:rotate(-8deg);}
.pv-map-layer{position:absolute;left:16%;top:22%;width:52%;height:45%;border:4px solid var(--pv-green);border-radius:42% 58% 55% 45%;background:rgba(18,107,58,.18);}
.pv-map-layer.second{left:46%;top:44%;width:34%;height:28%;border-color:var(--pv-gold);background:rgba(201,162,39,.2);border-radius:55% 45% 40% 60%;}
.pv-map-pin{position:absolute;left:51%;top:38%;font-size:3.2rem;color:#c0392b;filter:drop-shadow(0 8px 10px rgba(0,0,0,.25));}

.pv-service{height:100%;background:#fff;border-radius:24px;padding:1.6rem;border:1px solid #e5eee8;box-shadow:0 18px 45px rgba(17,62,39,.08);}
.pv-service i{font-size:2rem;color:var(--pv-gold);}
.pv-service h3{font-size:1.15rem;font-weight:800;color:var(--pv-green);margin:.9rem 0 .5rem;}
.pv-service p{color:var(--pv-muted);margin:0;}
.pv-info-panel{border-radius:28px;background:linear-gradient(135deg,#0b3d24,#126b3a);color:#fff;padding:2rem;min-height:260px;}
.pv-info-panel.gold{background:linear-gradient(135deg,#6b5515,#c9a227);}
.pv-info-panel .pv-section-tag{background:rgba(255,255,255,.15);color:#fff;border-color:rgba(255,255,255,.24);}
.pv-info-panel h2{color:#fff;}
.pv-info-panel p{color:rgba(255,255,255,.86);font-size:1.05rem;}
.pv-cta{background:linear-gradient(135deg,var(--pv-green),var(--pv-green-2));color:#fff;}
.pv-cta h2{color:#fff;}
.pv-cta p{color:rgba(255,255,255,.82);}
.pv-footer{background:#10251b;color:#d8e6dc;}
.pv-footer h3{font-size:1.2rem;color:#fff;font-weight:800;}
.pv-footer hr{border-color:rgba(255,255,255,.15);}

@media(max-width:991px){
  .pv-brand strong{font-size:.82rem;}
  .pv-brand small{display:none;}
  .pv-navbar .nav-link{margin-left:0;padding:.75rem 0;}
}
@media(max-width:576px){
  .pv-brand img{height:36px;border-radius:10px;}
  .pv-hero h1{font-size:2.25rem;}
  .pv-institution-card{padding:1.4rem;}
}

.item-distrito{
    width:100%;
    border:none;
    background:#f8faf9;
    padding:10px 14px;
    margin-bottom:6px;
    border-radius:10px;
    text-align:left;
    font-size:14px;
    font-weight:600;
    color:#1f2d2b;
    transition:.25s;
    cursor:pointer;
}

.item-distrito:hover{
    background:#198754;
    color:white;
    transform:translateX(4px);
}

.item-distrito:focus{
    outline:none;
    box-shadow:0 0 0 3px rgba(25,135,84,.2);
}

.pv-service{
    opacity:0;
    transform:translateY(40px);
    transition:all .8s ease;
}

.pv-service.show{
    opacity:1;
    transform:translateY(0);
}

.pv-service:hover{
    transform:translateY(-8px);
    box-shadow:0 15px 35px rgba(0,0,0,.12);
}

.pv-info-panel{
    opacity:0;
    transform:translateX(-50px);
    transition:all .9s ease;
}

.pv-info-panel.gold{
    transform:translateX(50px);
}

.pv-info-panel.show{
    opacity:1;
    transform:translateX(0) !important;
}

.developer-credit{
    color: rgba(255,255,255,.75);
    transition: .3s;
}

.developer-credit:hover{
    color: #C9A227;
}

.pv-service:nth-child(1){transition-delay:.1s;}
.pv-service:nth-child(2){transition-delay:.2s;}
.pv-service:nth-child(3){transition-delay:.3s;}
.pv-service:nth-child(4){transition-delay:.4s;}
.pv-service:nth-child(5){transition-delay:.5s;}
.pv-service:nth-child(6){transition-delay:.6s;}
