.hero-block {
        position: absolute;
        top: 50%;
        left: 6%;
        transform: translateY(-50%);
        max-width: 550px;
        text-align: left;
        z-index: 5;
    }
    .hero-title {
        font-size: clamp(1.6rem, 3vw, 3rem); 
        font-weight: 700;
        color: #0A1A44; 
        line-height: 1.3;
        margin-bottom: 18px;
    }
    
   
  
  .hero-subtitle {
      font-size: clamp(1rem, 1.4vw, 1.2rem);
      color: #3c3c3c; 
      margin-bottom: 25px;
      line-height: 1.55;
      font-weight: 500; 
  }
    .hero-btn {
        padding: 12px 28px;
        font-size: 1.05rem;
        border-radius: 6px;
    }
    
    .hero-slideshow {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        z-index: 0;
        overflow: hidden;
    }
    .hero-slideshow img {
        position: absolute;
        width: 100%;
        height: 100%;
        object-fit: cover;
        filter: blur(4px) brightness(0.7); 
        opacity: 0;
        animation: fadeSlide 25s infinite;
    }
    .hero-slideshow::after {
      content: "";
      position: absolute;
      inset: 0;
      background: rgba(255, 255, 255, 0.5);  
      z-index: 1;
  }
    .hero-slideshow img:nth-child(1) { animation-delay: 0s; }
    .hero-slideshow img:nth-child(2) { animation-delay: 5s; }
    .hero-slideshow img:nth-child(3) { animation-delay: 10s; }
    .hero-slideshow img:nth-child(4) { animation-delay: 15s; }
    .hero-slideshow img:nth-child(5) { animation-delay: 20s; }
    @keyframes fadeSlide {
        0% { opacity: 0; }
        10% { opacity: 1; }
        30% { opacity: 1; }
        40% { opacity: 0; }
        100% { opacity: 0; }
    }
    .hero-slideshow img {
      position: absolute;
      width: 100%;
      height: 100%;
      object-fit: cover;
      filter: blur(2px) brightness(0.7); 
      opacity: 0;
      animation: fadeSlide 25s infinite;
      transition: opacity 1s ease-in-out;
  }
  
  .hero-slideshow::after {
      content: "";
      position: absolute;
      inset: 0;
      background: rgba(255, 255, 255, 0.4); 
      z-index: 1;
      transition: opacity 1s ease-in-out; 
  }
  @keyframes fadeSlide {
      0% { opacity: 0; }
      10% { opacity: 1; }
      30% { opacity: 1; }
      40% { opacity: 0; }
      100% { opacity: 0; }
  }
    
    .carousel-caption,
    .hero-title,
    .hero-subtitle,
    .hero-btn {
        position: relative;
        z-index: 5 !important;
    }
    
    .carousel-item {
        height: 100vh;
        position: relative;
    }
    .carousel-item .carousel-caption {
        top: 50%;
        transform: translateY(-50%);
    }
    .carousel-caption {
        z-index: 10 !important;
        position: relative;
    }
    @media (max-width: 768px) {
        .hero-block {
            left: 5%;
            top: 55%;
            max-width: 90%;
        }
    
        .hero-title {
            font-size: 1.6rem;
        }
    
        .hero-subtitle {
            font-size: 0.95rem;
        }
    
        .hero-btn {
            font-size: 1rem;
            padding: 10px 22px;
        }
    }
  
  .hero-btn-primary {
      background: #1A4FFF;   
      color: #fff;
      border-radius: 8px;
      padding: 12px 26px;
      font-weight: 600;
      border: none;
      transition: 0.3s ease;
  }
  
  .hero-btn-primary:hover {
      background: #0039d6;
      transform: translateY(-2px);
  }
  .hero-btn-secondary {
      background: rgba(255,255,255,0.10);
      color: #fff;
      border: 2px solid #ffffff;
      border-radius: 8px;
      padding: 12px 26px;
      font-weight: 500;
      transition: 0.3s ease;
  }
  
  .hero-btn-secondary:hover {
      background: #ffffff;
      color: #0A1A44;    
      transform: translateY(-2px);
  }
  
  .hero-side-box{
    background:#fff;
    color:#0A1A44;
    border-radius:12px;
    box-shadow:0 8px 22px rgba(0,0,0,0.15);
    padding: 1rem;              
    z-index:20;
    font-size: 0.95rem;         
    line-height: 1.45;
  }
  
  @media (min-width: 992px){
    .hero-side-box{
      position: absolute;      
      right: 3%;
      bottom: 6%;
      max-width: 430px;
      z-index: 999;            
    }
  }
  .hero-side-box .btn{
    padding: .35rem .75rem;
    font-size: .85rem;
  }
  @media (max-width: 991.98px){
    .carousel-caption{
      padding-bottom: 40px !important;
    }
  }
  @media (max-width: 991.98px){
    .hero-side-box{
      position: static;
      max-width: 100%;
      margin-top: 1.25rem;
    }
  
    .carousel-item .carousel-caption{
      top: 0 !important;
      transform: none !important;
      padding-bottom: 20px;
    }
  }
  @media (max-width: 991.98px){
    .carousel-item{
      height: auto !important;     
      min-height: 100vh;           
      padding-bottom: 24px;        
    }
  }
  
  @media (max-width: 991.98px){
    .hero-wrap{
      margin-bottom: 12px !important; 
    }
    .mobile-about{
      margin-top: 12px !important;    
    }
  }
  @media (max-width: 991.98px){
    #about-details-desktop{ display:none !important; }
  }
  .section-divider{
    display: block;
    width: 140px;                 
    height: 4px;                  
    border-radius: 999px;         
    background: rgba(10,26,68,.18);
  }
  .why-box{
    background: rgba(255,255,255,0.75);
    border: 1px solid rgba(10,26,68,.12);
    border-radius: 12px;
    padding: 16px 18px;
  }
  
  .why-box-title{
    font-weight: 700;
    color: #0A1A44;
    margin-bottom: 10px;
  }
  
  .why-list{
    margin: 0 0 12px 18px;
  }
  
  .why-list-strong{
    list-style: none;
    padding-left: 0;
  }
  
  .why-list-strong li{
    padding: 8px 0;
  }
  .simple-frame{
    border: 2px solid rgba(10,26,68,.15);
    border-radius: 18px;
    padding: 26px;
    background: #fff;
  }
  
  @media (max-width: 991.98px){
    .simple-frame{
      padding: 18px;
      border-radius: 14px;
    }
  }
  .card-img-top{
    height: 230px;
    object-fit: cover;
  }
  
  .card{
    border-radius: 12px;
    overflow: hidden;
  }
  
  .card-body{
    min-height: 220px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
  }
  .section-sep{
    display: flex;
    justify-content: center;
    margin: 48px 0;              
  }
  
  .section-sep span{
    width: 140px;                
    height: 4px;                 
    border-radius: 999px;        
    background: rgba(10,26,68,.16);
  }
  
  @media (max-width: 991.98px){
    .section-sep{
      margin: 28px 0;            
    }
    .section-sep span{
      width: 110px;
      height: 4px;
    }
  }

  

@media (max-width: 991.98px){
  .container-fluid.fixed-top{
    background: #fff !important;
    box-shadow: 0 6px 18px rgba(0,0,0,.08);
    z-index: 2000;
  }
  .navbar{
    background: #fff !important;
    z-index: 10000;
  }

.navbar-brand{ margin-right: 8px; }
}

@media (max-width: 991.98px){
  .container-fluid.fixed-top{ box-shadow: none; }
  .container-fluid.fixed-top.is-scrolled{
    background:#fff !important;
    box-shadow: 0 6px 18px rgba(0,0,0,.10);
  }
}

.page-header.page-header-contrat::before{
  content:"";
  position:absolute;
  inset:0;
  background: rgba(220,220,220,0.45);
  backdrop-filter: blur(3px);
  -webkit-backdrop-filter: blur(3px);
}
.page-header.page-header-contrat h1{
  position: relative;
  z-index: 2;
  margin: 0;

  max-width: 1100px;
  width: 100%;

  color:#0A1A44;
  font-weight: 800;
  line-height: 1.15;
  text-align: center;
}
@media (max-width: 768px){
  .page-header.page-header-contrat{ height: 220px; }
  .page-header.page-header-contrat h1{
    font-size: 2rem;
    max-width: 92%;
  }
}
.page-header.page-header-contrat{
  position: relative;
  height: 320px;
  background: url("../../img/contrat.jpg") center center / cover no-repeat;
  background-image: image-set(url("../../img/contrat.webp") type("image/webp"), url("../../img/contrat.jpg") type("image/jpeg"));
  overflow: hidden;

  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;

  padding: 120px 16px 0;  
}
.page-header.page-header-contrat::before{
  content:"";
  position:absolute;
  inset:0;
  background: rgba(220,220,220,0.45);
  backdrop-filter: blur(3px);
  -webkit-backdrop-filter: blur(3px);
}
.page-header.page-header-contrat h1{
  position: relative;
  z-index: 2;
  margin: 0;

  max-width: 1100px;
  width: 100%;

  color:#0A1A44;
  font-weight: 800;
  line-height: 1.15;
  text-align: center;
}
@media (max-width: 768px){
  .page-header.page-header-contrat{
    height: 220px;
  }

  .page-header.page-header-contrat h1{
    font-size: 2rem;
    max-width: 92%;
  }
}
.dropdown-menu .dropdown-item{
  color: #000 !important;
  transition: color 0.2s ease, background 0.2s ease;
}

.dropdown-menu .dropdown-item:hover{
  color: var(--bs-primary) !important;
  background: rgba(13,110,253,0.08); 
}
.page-header{
  position: relative;
  height: 320px;
  width: 100%;
  background: url("../../img/Sign Mockup.png") center center / cover no-repeat;
  background-image: image-set(url("../../img/Sign Mockup.webp") type("image/webp"), url("../../img/Sign Mockup.png") type("image/png"));
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  margin-top: var(--header-offset); 
}

.page-header::before{
  content:"";
  position:absolute;
  inset:0;
  background: rgba(220,220,220,0.55);
  backdrop-filter: blur(3px);
  -webkit-backdrop-filter: blur(3px);
}

.page-header .container,
.page-header h1{
  position: relative;
  z-index: 2;
}

@media (max-width: 991.98px){
  .page-header{
    margin-top: var(--header-offset);
    height: 220px;
  }
  .page-header h1{
    font-size: 2rem;
  }
}

:root{
  --atteca-navy:#0A1A44;
  --atteca-muted:#5b6475;
  --atteca-border:rgba(10,26,68,.12);
}

.dossier-h2{
  color: var(--atteca-navy);
  font-weight: 900;
  letter-spacing: -.02em;
}

.dossier-lead{
  color: var(--atteca-muted);
  font-size: 1.05rem;
  line-height: 1.7;
}

.dossier-title-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom: .75rem;
}

.dossier-h3{
  color: var(--atteca-navy);
  font-weight: 900;
  margin: 0;
}

.dossier-h5{
  color: var(--atteca-navy);
  font-weight: 900;
  margin-bottom: .6rem;
}

.dossier-card{
  background:#fff;
  border:1px solid var(--atteca-border);
  border-radius:14px;
  padding:18px;
  box-shadow:0 10px 26px rgba(10,26,68,.06);
}

.dossier-divider{
  height: 1px;
  background: var(--atteca-border);
  margin: 22px 0;
}

.dossier-list{
  margin: 0;
  padding-left: 18px;
  color: #2a2f3a;
  line-height: 1.7;
}

.dossier-chip{
  display:inline-flex;
  align-items:center;
  height:28px;
  padding:0 10px;
  border-radius:999px;
  background:rgba(13,110,253,.10);
  color:#0d6efd;
  font-weight:800;
  font-size:12px;
  white-space:nowrap;
}

.dossier-badge{
  background:rgba(10,26,68,.10);
  color: var(--atteca-navy);
  border:1px solid var(--atteca-border);
  font-weight:900;
}

.dossier-toc{
  display:flex;
  flex-direction:column;
  gap:8px;
  margin-top:12px;
}

.dossier-toc a{
  text-decoration:none;
  color: var(--atteca-navy);
  font-weight:700;
  padding:10px 12px;
  border-radius:10px;
  background:rgba(10,26,68,.04);
  border:1px solid rgba(10,26,68,.08);
  transition: transform .15s ease, background .15s ease;
}

.dossier-toc a:hover{
  background:rgba(13,110,253,.08);
  transform: translateY(-1px);
}

.dossier-callout{
  background:rgba(13,110,253,.06);
  border:1px solid rgba(13,110,253,.16);
  border-radius:12px;
  padding:14px;
}

.dossier-callout i{ color:#0d6efd; }

.dossier-cta{
  border:1px solid rgba(13,110,253,.22);
  background: linear-gradient(180deg, rgba(13,110,253,.06), #fff);
}

@media (min-width: 992px){
  .dossier-sticky{
    position: sticky;
    top: 130px; 
  }
}
.page-header.page-header-contrat{
  position: relative;
  height: 320px;
  width: 100%;
  background: url("../../img/contrat.jpg") center center / cover no-repeat;
  background-image: image-set(url("../../img/contrat.webp") type("image/webp"), url("../../img/contrat.jpg") type("image/jpeg"));
  overflow: hidden;

  display: flex;
  align-items: center;      
  justify-content: center;  
  text-align: center;

  margin-top: var(--header-offset); 
  padding: 0 16px;   
}
.page-header.page-header-contrat::before{
  content:"";
  position:absolute;
  inset:0;
  background: rgba(220,220,220,0.45);
  backdrop-filter: blur(3px);
  z-index: 1;
}
.page-header.page-header-contrat h1{
  position: relative;
  z-index: 2;
  margin: 0;

  max-width: 1100px;
  width: 100%;

  color:#0A1A44;
  font-weight: 800;
  line-height: 1.15;
  text-align: center;
}
@media (max-width: 991.98px){
  .page-header.page-header-contrat{
    height: 220px;
    margin-top: var(--header-offset); 
  }

  .page-header.page-header-contrat h1{
    font-size: 2rem;
    max-width: 92%;
  }
}
