
    :root{
      --psa-orange:#1167d8;
      --psa-orange-dark:#0e8fb2;
      --psa-black:#07111f;
      --psa-charcoal:#0b1728;
      --psa-gray:#aab7c8;
      --psa-white:#ffffff;
      --ivs-cta:#1167d8;
    }

    *{box-sizing:border-box}
    body{
      font-family:'Montserrat',sans-serif;
      background:#07111f;
      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{
      font-weight:800;
      letter-spacing:.5px;
      color:#fff;
    }

    .ivs-brand{
      display:inline-flex;
      align-items:center;
      min-height:104px;
      position:relative;
      padding:.2rem;
    }

    .ivs-brand::after{
      content:"";
      position:absolute;
      top:50%;
      left:50%;
      width:120px;
      height:120px;
      transform:translate(-50%,-50%);
      border-radius:50%;
      border:2px solid rgba(255,255,255,.18);
      box-shadow:0 0 0 1px rgba(255,255,255,.08);
      animation:logo-ring-spin 6s linear infinite;
      pointer-events:none;
    }

    .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);
      position:relative;
      z-index:1;
    }

    .navbar-brand span{color:var(--psa-orange)}
    .navbar-brand .ivs-brand-text{color:#fff}
    .nav-link{
      color:#e9e9e9!important;
      font-weight:600;
      margin:0 .35rem;
    }
    .nav-link:hover{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{
      background:linear-gradient(135deg,#0d5ea8,#12b76a);
      color:#fff;
      font-weight:700;
      border:none;
      border-radius:999px;
      padding:.9rem 1.4rem;
      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;
      font-weight:700;
      border-radius:999px;
      padding:.9rem 1.4rem;
    }
    .btn-outline-psa:hover{
      background:#fff;
      color:#0b1728;
    }

    .hero{
      position:relative;
      min-height:100vh;
      display:flex;
      align-items:center;
      padding-top:120px;
      background:
        linear-gradient(90deg, rgba(7,17,31,.96) 0%, rgba(7,17,31,.82) 48%, rgba(7,17,31,.42) 100%),
        radial-gradient(circle at 20% 30%, rgba(17,103,216,.16), transparent 35%),
        url('https://images.unsplash.com/photo-1516321318423-f06f85e504b3?auto=format&fit=crop&w=1600&q=80') center/cover no-repeat;
    }

    .hero::after{
      content:"";
      position:absolute;
      inset:0;
      background:linear-gradient(to top, #07111f 0%, rgba(7,17,31,.1) 35%, rgba(7,17,31,.05) 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;
    }

    .hero h1{
      font-size:clamp(2.4rem, 6vw, 5rem);
      font-weight:800;
      line-height:1.03;
      margin-bottom:1.2rem;
      max-width:780px;
    }

    .text-accent{color:var(--psa-orange)}

    .hero p{
      font-size:1.08rem;
      color:#d5d5d5;
      max-width:700px;
      margin-bottom:1.75rem;
    }

    .hero-card{
      position:relative;
      z-index:2;
      background:linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.03));
      border:1px solid rgba(255,255,255,.10);
      border-radius:28px;
      padding:1.5rem;
      backdrop-filter: blur(10px);
      box-shadow:0 15px 60px rgba(0,0,0,.35);
    }

    .mini-stat{
      background:rgba(255,255,255,.04);
      border:1px solid rgba(255,255,255,.08);
      border-radius:20px;
      padding:1rem;
      height:100%;
    }

    .mini-stat h3{
      color:var(--psa-orange);
      font-size:1.7rem;
      font-weight:800;
      margin-bottom:.15rem;
    }

    section{padding:90px 0}

    .section-title{
      font-size:clamp(1.8rem, 4vw, 3rem);
      font-weight:800;
      margin-bottom:.75rem;
    }

    .section-subtitle{
      color:#cfcfcf;
      max-width:760px;
      margin-bottom:2.5rem;
    }

    .dark-section{background:#07111f}
    .soft-section{background:linear-gradient(180deg, #0b1728 0%, #0f2136 100%)}

    .service-card{
      background:linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,.02));
      border:1px solid rgba(255,255,255,.08);
      border-radius:28px;
      padding:1.7rem;
      height:100%;
      transition:.25s ease;
      box-shadow:0 8px 30px rgba(0,0,0,.18);
    }

    .service-card:hover{
      transform:translateY(-6px);
      border-color:rgba(17,103,216,.35);
      box-shadow:0 20px 50px rgba(0,0,0,.28);
    }

    .icon-badge{
      width:62px;
      height:62px;
      display:inline-flex;
      align-items:center;
      justify-content:center;
      border-radius:18px;
      background:rgba(17,103,216,.14);
      color:var(--psa-orange);
      font-size:1.45rem;
      margin-bottom:1rem;
      border:1px solid rgba(17,103,216,.24);
    }

    .service-card h4{
      font-size:1.2rem;
      font-weight:800;
      margin-bottom:.75rem;
     
    }

    #services .row h4{
      color: white;

    }

    .service-card p,
    .service-card li{color:#d3d3d3}

    .service-card ul{
      padding-left:1rem;
      margin-bottom:0;
    }

    .about-box,
    .sector-box,
    .feature-strip,
    .cta-box,
    .contact-card{
      background:linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,.02));
      border:1px solid rgba(255,255,255,.08);
      border-radius:28px;
    }

    .about-box{padding:2rem}

    .sector-box{
      position:relative;
      min-height:170px;
      padding:1.35rem;
      text-align:center;
      height:100%;
      overflow:hidden;
      transition:.25s ease;
      display:flex;
      flex-direction:column;
      justify-content:flex-end;
      align-items:center;
      isolation:isolate;
    }

    .sector-box::before{
      content:"";
      position:absolute;
      inset:0;
      background:
        linear-gradient(180deg, rgba(0,0,0,.12) 0%, rgba(0,0,0,.68) 62%, rgba(0,0,0,.96) 100%),
        radial-gradient(circle at 50% 20%, rgba(17,103,216,.20), transparent 38%);
      z-index:-1;
    }

    .sector-box img{
      position:absolute;
      inset:0;
      width:100%;
      height:100%;
      object-fit:cover;
      filter:brightness(.82) saturate(1.08);
      transform:scale(1.02);
      transition:.35s ease;
      z-index:-2;
    }

    .sector-box:hover{
      transform:translateY(-5px);
      border-color:rgba(17,103,216,.35);
    }

    .sector-box:hover img{
      transform:scale(1.08);
      filter:brightness(.92) saturate(1.12);
    }

    .sector-box i{
      font-size:1.5rem;
      color:var(--psa-orange);
      margin-bottom:.75rem;
      display:block;
      width:48px;
      height:48px;
      border-radius:15px;
      display:inline-flex;
      align-items:center;
      justify-content:center;
      background:rgba(0,0,0,.44);
      border:1px solid rgba(17,103,216,.38);
      backdrop-filter:blur(6px);
    }

    .sector-box h6{
      text-shadow:0 2px 14px rgba(0,0,0,.75);
    }

    .feature-strip{padding:1.25rem 1.5rem}

    .gallery-card{
      position:relative;
      border-radius:28px;
      overflow:hidden;
      min-height:340px;
      background:#0b1728;
      border:1px solid rgba(255,255,255,.08);
      cursor:pointer;
    }

    .gallery-card img{
      width:100%;
      height:100%;
      object-fit:cover;
      filter:brightness(.78);
      transition:.35s ease;
    }

    .gallery-card:hover img{transform:scale(1.05)}

    .gallery-card:focus-visible{
      outline:3px solid rgba(17,103,216,.75);
      outline-offset:4px;
    }

    .gallery-overlay{
      position:absolute;
      inset:auto 0 0 0;
      padding:1.5rem;
      background:linear-gradient(to top, rgba(0,0,0,.92), rgba(0,0,0,.15));
    }

    .gallery-overlay h5{
      font-weight:800;
      margin-bottom:.35rem;
    }

    .showcase-modal{
      position:fixed;
      inset:0;
      z-index:2000;
      display:none;
      align-items:center;
      justify-content:center;
      padding:1.25rem;
    }

    .showcase-modal.active{display:flex}

    .showcase-modal-open{overflow:hidden}

    .showcase-modal__backdrop{
      position:absolute;
      inset:0;
      background:rgba(0,0,0,.78);
      backdrop-filter:blur(10px);
    }

    .showcase-modal__dialog{
      position:relative;
      z-index:2;
      width:min(1160px, 98vw);
      max-height:92vh;
      display:grid;
      grid-template-columns:minmax(0, 1.28fr) minmax(330px, .82fr);
      overflow:hidden;
      border-radius:28px;
      background:linear-gradient(145deg, rgba(16,16,16,.98), rgba(5,5,5,.98));
      border:1px solid rgba(17,103,216,.28);
      box-shadow:0 30px 100px rgba(0,0,0,.62), 0 0 0 1px rgba(255,255,255,.05) inset;
      animation:showcaseRise .28s ease both;
    }

    .showcase-modal__image-wrap{
      min-height:520px;
      background:#070707;
      overflow:hidden;
    }

    .showcase-modal__image{
      width:100%;
      height:100%;
      min-height:520px;
      object-fit:cover;
      object-position:center;
      transform:scale(1.01);
      filter:brightness(.92) contrast(1.04);
    }

    .showcase-modal__content{
      display:flex;
      flex-direction:column;
      justify-content:center;
      padding:2.2rem;
      background:
        radial-gradient(circle at 0% 0%, rgba(17,103,216,.13), transparent 36%),
        linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,.01));
    }

    .showcase-modal__eyebrow{
      display:inline-flex;
      width:max-content;
      max-width:100%;
      margin-bottom:1rem;
      padding:.45rem .85rem;
      border:1px solid rgba(17,103,216,.38);
      border-radius:999px;
      background:rgba(17,103,216,.12);
      color:#ffd27a;
      font-size:.82rem;
      font-weight:800;
      letter-spacing:.08em;
      text-transform:uppercase;
    }

    .showcase-modal__content h3{
      margin:0 0 1rem;
      font-size:clamp(1.7rem, 3.5vw, 3rem);
      font-weight:800;
      line-height:1.05;
    }

    .showcase-modal__content p{
      color:#dedede;
      font-size:1rem;
      line-height:1.75;
      margin-bottom:1.6rem;
      text-align:left;
      font-style:normal;
      font-family:'Montserrat',sans-serif;
    }

    .showcase-modal__cta{
      width:max-content;
      max-width:100%;
    }

    .showcase-modal__close{
      position:absolute;
      top:1rem;
      right:1rem;
      z-index:3;
      width:46px;
      height:46px;
      border:1px solid rgba(255,255,255,.16);
      border-radius:50%;
      background:rgba(0,0,0,.58);
      color:#fff;
      display:flex;
      align-items:center;
      justify-content:center;
    }

    .showcase-modal__close:hover{
      background:linear-gradient(135deg,#0d5ea8,#12b76a);
      color:#fff;
    }

    @keyframes showcaseRise{
      from{opacity:0;transform:translateY(18px) scale(.98)}
      to{opacity:1;transform:translateY(0) scale(1)}
    }

    .contact-card{padding:2rem;height:100%}

    .product-grid{
      display:grid;
      grid-template-columns:repeat(4,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}

    .contact-item{
      display:flex;
      gap:1rem;
      margin-bottom:1.25rem;
      align-items:flex-start;
    }

    .contact-item i{
      width:48px;
      height:48px;
      border-radius:14px;
      display:flex;
      align-items:center;
      justify-content:center;
      background:rgba(17,103,216,.14);
      color:var(--psa-orange);
      font-size:1.1rem;
      flex-shrink:0;
    }

    .form-control,
    .form-select{
      background:#0b1728;
      border:1px solid rgba(255,255,255,.12);
      color:#fff;
      border-radius:16px;
      padding:.95rem 1rem;
    }

    .form-control:focus,
    .form-select:focus{
      background:#0b1728;
      color:#fff;
      border-color:rgba(17,103,216,.55);
      box-shadow:0 0 0 .25rem rgba(17,103,216,.12);
    }

    .footer{
      padding:26px 0;
      background:#07111f;
      border-top:1px solid rgba(255,255,255,.08);
    }

    .small-muted{color:#bfbfbf}

    .floating-whatsapp{
      position:fixed;
      right:18px;
      bottom:18px;
      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);
      z-index:999;
    }

    @keyframes logo-ring-spin{
      from{transform:translate(-50%,-50%) rotate(0deg)}
      to{transform:translate(-50%,-50%) rotate(360deg)}
    }

    @media (max-width: 991.98px){
      .navbar .container{
        min-height:88px;
      }

      .ivs-brand{
        min-height:88px;
      }

      .ivs-brand-logo{
        height:76px;
        max-width:132px;
      }

      .ivs-brand::after{
        width:100px;
        height:100px;
      }

      .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%;
      }

      .hero{
        padding:265px 0 70px;
        min-height:auto;
      }
      .hero-card{margin-top:2rem}
    }

    @media (max-width: 575.98px){
      section{
        padding:60px 0;
      }

      #about{
        padding-bottom:0px;
      }

      #services{
        padding-top:26px;
      }

      .about-box{
        padding:1.1rem;
      }

      .hero-card{
        padding:1.15rem;
      }

      .hero-expertise-grid .mini-stat{
        padding:1.25rem;
      }

      .hero-expertise-grid .mini-stat h6{
        font-size:1.05rem;
        line-height:1.25;
      }

      .hero-expertise-grid .mini-stat p{
        font-size:.95rem;
        line-height:1.55;
      }

      .showcase-modal{
        padding:.75rem;
      }

      .showcase-modal__dialog{
        grid-template-columns:1fr;
        max-height:94vh;
        overflow:auto;
        border-radius:22px;
      }

      .showcase-modal__image-wrap,
      .showcase-modal__image{
        min-height:310px;
      }

      .showcase-modal__content{
        padding:1.25rem;
      }

      .product-grid{
        grid-template-columns:1fr;
      }

      .product-card{
        min-height:340px;
      }
    }

    #secteursid a{

        color: white;
    }

    
    .dark-section h5, p{
 /* text-align: right;
  font-style: oblique;
  font-family: cursive;*/
    }

