:root{
  --pci-bg:#f7f8fb;
  --pci-surface:rgba(255,255,255,.78);
  --pci-surface-2:rgba(255,255,255,.92);
  --pci-border:rgba(11,13,16,.12);
  --pci-text:#0b0d10;
  --pci-muted:rgba(11,13,16,.68);
  --pci-gold:#0b0d10;
  --pci-gold-2:#1f2937;
  --pci-blue:#2d7bff;
  --pci-cyan:#32d0ff;
  --pci-violet:#a970ff;
  --pci-shadow:0 22px 70px rgba(9,12,18,.18);
}

html,body{height:100%}
body{
  background:radial-gradient(1200px 620px at 12% 6%, rgba(11,13,16,.10), transparent 58%),
             radial-gradient(900px 520px at 78% 2%, rgba(45,123,255,.16), transparent 62%),
             radial-gradient(900px 520px at 90% 58%, rgba(169,112,255,.10), transparent 62%),
             var(--pci-bg);
  color:var(--pci-text);
}

.pci-topbar{
  background:rgba(6,8,12,.55);
  border-bottom:1px solid rgba(255,255,255,.08);
  backdrop-filter: blur(12px);
}
.pci-topbar-link{
  color:rgba(248,249,251,.76);
  text-decoration:none;
}
.pci-topbar-link:hover{
  color:#fff;
}
.pci-topbar-muted{
  color:rgba(248,249,251,.55);
}

.pci-header{
  position:sticky;
  top:0;
  z-index:1200;
}

.pci-nav{
  background:rgba(7,9,12,.78);
  backdrop-filter: blur(14px);
  border-bottom:1px solid rgba(255,255,255,.10);
}

.pci-logo{
  height:34px;
  width:auto;
}

.pci-nav .nav-link{
  color:rgba(248,249,251,.78);
}
.pci-nav .nav-link:hover{
  color:#fff;
}

.pci-brand{
  letter-spacing:.2px;
}

.btn-gold{
  background:linear-gradient(135deg, var(--pci-gold), var(--pci-gold-2));
  border:none;
  color:#fff;
  box-shadow:0 12px 34px rgba(9,12,18,.18);
}
.btn-gold:hover{filter:brightness(1.04)}

.btn-blue{
  background:linear-gradient(135deg, rgba(45,123,255,.95), rgba(50,208,255,.92));
  border:none;
  color:#061021;
  box-shadow:0 10px 30px rgba(45,123,255,.18);
}
.btn-blue:hover{filter:brightness(1.04)}

.btn, .form-control, .form-select{
  border-radius:14px;
}
.form-control, .form-select{
  background:rgba(255,255,255,.92);
  border:1px solid rgba(11,13,16,.14);
  color:var(--pci-text);
}
.form-control:focus, .form-select:focus{
  background:#fff;
  border-color:rgba(11,13,16,.28);
  box-shadow:0 0 0 .25rem rgba(45,123,255,.14);
  color:var(--pci-text);
}
.form-control::placeholder{
  color:rgba(11,13,16,.46);
}

.btn-outline-gold{
  border:1px solid rgba(11,13,16,.24);
  color:rgba(11,13,16,.86);
}
.btn-outline-gold:hover{
  background:rgba(11,13,16,.06);
  color:rgba(11,13,16,.90);
}

.pci-hero{
  padding:72px 0 18px;
}

.pci-page-hero{
  padding:54px 0 22px;
}

.pci-hero-visual{
  width:100%;
  height:280px;
  object-fit:cover;
  border-radius:18px;
  border:1px solid var(--pci-border);
}
@media (min-width: 768px){
  .pci-hero-visual{height:320px}
}
@media (min-width: 992px){
  .pci-hero-visual{height:360px}
}

.pci-gradient-border{
  position:relative;
}
.pci-gradient-border:before{
  content:"";
  position:absolute;
  inset:-1px;
  border-radius:18px;
  padding:1px;
  background:linear-gradient(135deg, rgba(11,13,16,.70), rgba(45,123,255,.45), rgba(169,112,255,.28));
  -webkit-mask:linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  -webkit-mask-composite:xor;
  mask-composite:exclude;
  pointer-events:none;
}

.pci-image-frame{
  padding:0 !important;
  overflow:hidden;
  background:transparent;
}

.pci-glass{
  background:linear-gradient(180deg, rgba(255,255,255,.92), rgba(255,255,255,.74));
  border:1px solid var(--pci-border);
  border-radius:18px;
  backdrop-filter: blur(14px);
}

.pci-glass.pci-accent{
  background:
    radial-gradient(600px 280px at 20% 10%, rgba(11,13,16,.08), transparent 62%),
    radial-gradient(520px 280px at 80% 0%, rgba(45,123,255,.14), transparent 62%),
    linear-gradient(180deg, rgba(255,255,255,.94), rgba(255,255,255,.76));
}

.pci-section{
  padding:56px 0;
}

.pci-kicker{
  color:rgba(11,13,16,.78);
  text-transform:uppercase;
  font-size:.82rem;
  letter-spacing:.16em;
}

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

.pci-icon{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:34px;
  height:34px;
  border-radius:12px;
  background:linear-gradient(135deg, rgba(11,13,16,.10), rgba(45,123,255,.10));
  border:1px solid rgba(11,13,16,.14);
  color:rgba(11,13,16,.78);
}

.pci-inline-icon{
  color:rgba(11,13,16,.68);
}

.pci-img-placeholder{
  width:100%;
  height:190px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  background:
    radial-gradient(360px 140px at 30% 20%, rgba(11,13,16,.10), transparent 60%),
    radial-gradient(320px 140px at 80% 0%, rgba(45,123,255,.16), transparent 62%),
    linear-gradient(135deg, rgba(255,255,255,.92), rgba(255,255,255,.78));
  border-bottom:1px solid var(--pci-border);
}
.pci-img-placeholder i{
  font-size:28px;
  color:rgba(11,13,16,.70);
}
.pci-img-placeholder span{
  color:rgba(11,13,16,.66);
  font-weight:600;
}

.pci-info-row{
  display:flex;
  align-items:flex-start;
  gap:12px;
}

.pci-pill{
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding:10px 14px;
  border-radius:999px;
  background:linear-gradient(135deg, rgba(45,123,255,.12), rgba(11,13,16,.08));
  border:1px solid var(--pci-border);
}

.pci-highlight{
  background:linear-gradient(135deg, rgba(11,13,16,.08), rgba(45,123,255,.08));
  border:1px solid var(--pci-border);
  border-radius:18px;
}

.pci-card{
  height:100%;
  overflow:hidden;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.pci-card:hover{
  transform:translateY(-3px);
  border-color:rgba(214,181,90,.38);
  box-shadow:var(--pci-shadow);
}

.pci-card-img{
  width:100%;
  height:190px;
  object-fit:cover;
  display:block;
  border-bottom:1px solid var(--pci-border);
}

.pci-badge{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:8px 12px;
  border-radius:999px;
  background:linear-gradient(135deg, rgba(11,13,16,.08), rgba(45,123,255,.08));
  border:1px solid var(--pci-border);
  color:rgba(11,13,16,.78);
}

.pci-footer{
  background:rgba(6,8,12,.82);
  border-top:1px solid rgba(255,255,255,.10);
}
.pci-footer .text-secondary{
  color:rgba(248,249,251,.72) !important;
}
.pci-footer .small{
  color:rgba(248,249,251,.72);
}
.pci-footer .pci-icon{
  background:linear-gradient(135deg, rgba(255,255,255,.14), rgba(45,123,255,.14));
  border:1px solid rgba(255,255,255,.18);
  color:rgba(248,249,251,.92);
}
.pci-footer .pci-footer-links a,
.pci-footer .pci-footer-links a i{
  color:rgba(248,249,251,.84);
}
.pci-footer .pci-footer-links a:hover,
.pci-footer .pci-footer-links a:hover i{
  color:#fff;
}
.pci-footer .h6{
  color:#fff;
}
.pci-footer-links a{
  color:rgba(248,249,251,.78);
  text-decoration:none;
}
.pci-footer-links a:hover{
  color:var(--pci-gold-2);
}
.pci-footer-bottom{
  border-top:1px solid rgba(255,255,255,.08);
}

.pci-sticky-inquiry{
  position:fixed;
  right:18px;
  bottom:18px;
  padding:12px 14px;
  border-radius:999px;
  background:linear-gradient(135deg, rgba(214,181,90,.95), rgba(240,216,138,.92));
  color:#15181e;
  font-weight:600;
  text-decoration:none;
  box-shadow:0 14px 40px rgba(0,0,0,.35);
  z-index:1000;
}
.pci-maps{
  position:fixed;
  right:18px;
  bottom:68px;
  padding:12px 14px;
  border-radius:999px;
  background:rgba(45,123,255,.18);
  border:1px solid rgba(45,123,255,.35);
  color:#eaf2ff;
  text-decoration:none;
  font-weight:600;
  z-index:1000;
}
.pci-whatsapp{
  position:fixed;
  right:18px;
  bottom:118px;
  padding:12px 14px;
  border-radius:999px;
  background:rgba(37,211,102,.18);
  border:1px solid rgba(37,211,102,.35);
  color:#eafff3;
  text-decoration:none;
  font-weight:600;
  z-index:1000;
}

.pci-gallery-grid{
  columns:1;
  column-gap:16px;
}
@media (min-width: 768px){
  .pci-gallery-grid{columns:2}
}
@media (min-width: 1200px){
  .pci-gallery-grid{columns:3}
}
.pci-gallery-item{
  break-inside:avoid;
  margin-bottom:16px;
  cursor:pointer;
}
.pci-gallery-item img{
  width:100%;
  border-radius:16px;
  border:1px solid var(--pci-border);
  display:block;
}

.pci-lightbox{
  position:fixed;
  inset:0;
  background:rgba(0,0,0,.82);
  display:none;
  align-items:center;
  justify-content:center;
  padding:18px;
  z-index:2000;
}
.pci-lightbox.open{display:flex}
.pci-lightbox img{
  max-width:min(1100px, 96vw);
  max-height:88vh;
  border-radius:18px;
  border:1px solid rgba(255,255,255,.15);
}
