:root{
  --psa-orange:#1167d8;
  --psa-black:#07111f;
  --psa-panel:#0b1728;
  --psa-muted:#aab7c8;
  --ivs-cta:#1167d8;
}

*{box-sizing:border-box}

body{
  font-family:'Montserrat',sans-serif;
  background:var(--psa-black);
  color:#fff;
  overflow-x:hidden;
}

a{text-decoration:none}

.navbar{
  background:rgba(7,17,31,.9);
  backdrop-filter:blur(10px);
  border-bottom:1px solid rgba(255,255,255,.08);
}

.navbar-brand,
.nav-link{color:#fff!important}

.navbar-brand .ivs-brand-text{color:#fff!important}

.ivs-brand{
  display:inline-flex;
  align-items:center;
  min-height:104px;
}

.ivs-brand-logo{
  display:block;
  width:auto;
  height:92px;
  max-width:275px;
  object-fit:contain;
  border-radius:14px;
  border:5px solid transparent;
  background:linear-gradient(#fff,#fff) padding-box,linear-gradient(135deg,#0d5ea8,#12b76a) border-box;
  padding:.18rem;
  box-shadow:0 14px 34px rgba(23,30,59,.22);
}

.nav-link{
  font-weight:600;
  margin:0 .35rem;
}

.nav-link:hover,
.nav-link.active{color:var(--psa-orange)!important}

@media(max-width:575.98px){
  .ivs-brand{min-height:82px}
  .ivs-brand-logo{height:68px;max-width:205px}
}

.btn-psa,
.btn-outline-psa{
  border-radius:999px;
  font-weight:700;
  padding:.9rem 1.4rem;
}

.btn-psa{
  background:linear-gradient(135deg,#0d5ea8,#12b76a);
  color:#fff;
  border:0;
  box-shadow:0 12px 30px rgba(23,30,59,.22);
}

.btn-psa:hover{background:linear-gradient(135deg,#12b76a,#0d5ea8);color:#fff}

.btn-outline-psa{
  border:1px solid rgba(255,255,255,.25);
  color:#fff;
}

.btn-outline-psa:hover{background:#fff;color:#111}

.side-link-stack{
  position:fixed;
  right:0;
  top:50%;
  z-index:999;
  display:flex;
  flex-direction:column;
  gap:.55rem;
  transform:translateY(-50%);
}

.side-product-link{
  display:inline-flex;
  align-items:center;
  gap:.55rem;
  padding:.9rem .7rem;
  border-radius:14px 0 0 14px;
  background:linear-gradient(180deg,#0d5ea8,#12b76a);
  color:#fff;
  font-size:.82rem;
  font-weight:900;
  letter-spacing:.12em;
  text-transform:uppercase;
  text-decoration:none;
  writing-mode:vertical-rl;
  text-orientation:mixed;
  box-shadow:0 16px 38px rgba(7,17,31,.26);
  border:1px solid rgba(255,255,255,.18);
  border-right:0;
  transition:.2s ease;
}

.side-product-link i{
  font-size:1rem;
  writing-mode:horizontal-tb;
}

.side-product-link:hover{
  color:#fff;
  background:linear-gradient(180deg,#12b76a,#0d5ea8);
  transform:translateX(-3px);
}

.service-hero{
  position:relative;
  min-height:92vh;
  display:flex;
  align-items:center;
  padding-top:190px;
  background:
    linear-gradient(90deg, rgba(7,17,31,.96) 0%, rgba(7,17,31,.82) 48%, rgba(7,17,31,.48) 100%),
    var(--hero-image) center/cover no-repeat;
}

.service-hero::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(to top, #07111f 0%, rgba(7,17,31,.08) 48%, rgba(7,17,31,.02) 100%);
  pointer-events:none;
}

.hero-content{position:relative;z-index:2}

.eyebrow{
  display:inline-flex;
  align-items:center;
  gap:.5rem;
  padding:.45rem .85rem;
  border:1px solid rgba(17,103,216,.38);
  background:rgba(17,103,216,.12);
  color:#1167d8;
  border-radius:999px;
  font-size:.9rem;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.08em;
  margin-bottom:1rem;
}

.service-hero h1,
.section-title{
  font-weight:800;
  line-height:1.05;
}

.service-hero h1{
  font-size:clamp(2.35rem, 6vw, 4.8rem);
  max-width:900px;
  margin-bottom:1.2rem;
}

.text-accent{color:var(--psa-orange)}

.lead-copy,
.section-subtitle,
.small-muted,
.info-card p,
.info-card li,
.step-card p,
.contact-card p{color:var(--psa-muted)}

.lead-copy{
  font-size:1.08rem;
  max-width:780px;
  margin-bottom:1.75rem;
}

section{padding:86px 0}

.dark-section{background:#07111f}
.soft-section{background:linear-gradient(180deg,#0b1728 0%,#0f2136 100%)}

.section-title{
  font-size:clamp(1.8rem,4vw,3rem);
  margin-bottom:.75rem;
}

.section-subtitle{
  max-width:820px;
  margin-bottom:2.4rem;
}

.info-card,
.step-card,
.contact-card,
.cta-box{
  height:100%;
  background:linear-gradient(180deg, rgba(255,255,255,.045), rgba(255,255,255,.02));
  border:1px solid rgba(255,255,255,.08);
  border-radius:26px;
  padding:1.6rem;
  box-shadow:0 8px 30px rgba(0,0,0,.18);
}

.info-card,
.step-card{transition:.25s ease}

.info-card:hover,
.step-card:hover{
  transform:translateY(-6px);
  border-color:rgba(17,103,216,.35);
}

.icon-badge,
.process-number,
.contact-item i{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:rgba(17,103,216,.14);
  color:var(--psa-orange);
  border:1px solid rgba(17,103,216,.24);
}

.icon-badge{
  width:62px;
  height:62px;
  border-radius:18px;
  font-size:1.45rem;
  margin-bottom:1rem;
}

.process-number{
  width:48px;
  height:48px;
  border-radius:16px;
  font-weight:800;
  margin-bottom:1rem;
}

.info-card h4,
.step-card h4{font-size:1.15rem;font-weight:800}

.info-card ul{padding-left:1rem;margin-bottom:0}

.contact-item{
  display:flex;
  gap:1rem;
  align-items:flex-start;
  margin-bottom:1.25rem;
}

.contact-item i{
  width:48px;
  height:48px;
  border-radius:14px;
  flex-shrink:0;
}

.product-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:1rem;
}

.product-card{
  position:relative;
  min-height:330px;
  overflow:hidden;
  border-radius:24px;
  color:#fff;
  transition:.28s ease;
  cursor:pointer;
  border:1px solid rgba(255,255,255,.1);
  background:#0b1728;
}

.product-card:hover{
  transform:translateY(-7px);
  border-color:rgba(17,103,216,.48);
  box-shadow:0 24px 70px rgba(0,0,0,.52),0 0 0 1px rgba(17,103,216,.16) inset;
}

    .product-card img,
    .product-card video{
      position:absolute;
      inset:0;
      width:100%;
      height:100%;
      object-fit:cover;
      transition:.45s ease;
      filter:brightness(.72) contrast(1.05);
    }

    .product-card:hover img,
    .product-card:hover video{transform:scale(1.06);filter:brightness(.82) contrast(1.08)}
    .product-image-link{position:absolute;inset:0;z-index:1;display:block}

.product-card::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(to top,rgba(0,0,0,.96),rgba(0,0,0,.5) 52%,rgba(0,0,0,.08)),radial-gradient(circle at 20% 86%,rgba(17,103,216,.22),transparent 32%);
  pointer-events:none;
}

.product-content{position:absolute;z-index:2;inset:auto 0 0;padding:1rem;pointer-events:none}
.product-content .order-btn{pointer-events:auto}
    .product-icon{width:46px;height:46px;display:flex;align-items:center;justify-content:center;border-radius:15px;color:#1167d8;background:rgba(17,103,216,.14);border:1px solid rgba(17,103,216,.3);margin-bottom:.75rem;font-size:1.15rem}
    .product-category{display:block;color:#1167d8;font-weight:800;margin-bottom:.35rem;text-transform:uppercase;letter-spacing:.06em;font-size:.72rem}
    .product-content h3{margin:0 0 .45rem;font-size:1rem;line-height:1.18;font-weight:800}
    .product-title-link{color:inherit;text-decoration:none;pointer-events:auto}
    .product-content p{margin:0 0 .9rem;color:#d8d8d8;font-size:.82rem;line-height:1.45}
.order-btn{display:inline-flex;align-items:center;gap:.4rem;padding:.68rem 1rem;font-size:.82rem;border:0;border-radius:999px;background:linear-gradient(135deg,#0d5ea8,#12b76a);color:#fff;font-weight:800;box-shadow:0 12px 30px rgba(23,30,59,.22)}
.order-btn:hover{background:linear-gradient(135deg,#12b76a,#0d5ea8);color:#fff}

.form-control,
.form-select{
  background:#0b0b0b;
  border:1px solid rgba(255,255,255,.12);
  color:#fff;
  border-radius:16px;
  padding:.95rem 1rem;
}

.form-control:focus,
.form-select:focus{
  background:#0b0b0b;
  color:#fff;
  border-color:rgba(17,103,216,.55);
  box-shadow:0 0 0 .25rem rgba(17,103,216,.12);
}

.form-control::placeholder{color:#aaa}

.footer{
  padding:26px 0;
  background:#050505;
  border-top:1px solid rgba(255,255,255,.08);
}

.floating-whatsapp{
  position:fixed;
  right:18px;
  bottom:18px;
  z-index:999;
  width:60px;
  height:60px;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  background:#25d366;
  color:#fff;
  font-size:1.6rem;
  box-shadow:0 15px 30px rgba(37,211,102,.35);
}

@media (max-width:991.98px){
  .navbar .container{min-height:88px}
  .ivs-brand{min-height:88px}
  .ivs-brand-logo{height:76px;max-width:132px}
  .navbar-toggler{margin-left:auto}
  .navbar-collapse{margin-top:.45rem;padding:.75rem;border:1px solid rgba(255,255,255,.12);border-radius:16px;background:rgba(10,10,10,.96)}
  .navbar-nav{gap:.25rem}
  .navbar .nav-link{margin:0;padding:.72rem .85rem;border-radius:12px}
  .navbar .nav-link:hover,.navbar .nav-link.active{background:rgba(17,103,216,.14)}
  .navbar .btn-psa{width:100%}
  .service-hero{min-height:auto;padding:210px 0 70px}
  .product-grid{grid-template-columns:1fr}
  .product-card{min-height:340px}
}

@media(max-width:767.98px){
  .side-link-stack{
    right:0;
    top:50%;
    bottom:auto;
    flex-direction:column;
    transform:translateY(-50%);
  }

  .side-product-link{
    writing-mode:vertical-rl;
    border-radius:14px 0 0 14px;
    padding:.9rem .7rem;
    border-right:0;
  }

  .side-product-link:hover{transform:translateX(-3px)}
}

