/* ============================================================
   Regulament page — neon vibe like Concurs
   ============================================================ */
@font-face {
    font-family: 'Baloo 2';
    src: url("../fonts/Baloo2-VariableFont_wght.ttf") format('truetype');
    font-weight: 400 800;
    font-display: swap;
}
@font-face {
    font-family: 'Itim';
    src: url("../fonts/Itim-Regular.ttf") format('truetype');
    font-weight: 100;
    font-display: normal;
}
   .ap-regulament { color:#e6f1fb }
   .ap-regulament a{ color:#16f1d3; text-decoration:none }
   .ap-regulament a:hover{ text-decoration:underline }
   
   /* Headings */
   .ap-regulament h1{
     font-family: 'Baloo 2', sans-serif;
     font-weight:700; letter-spacing:1px; margin:0 0 1rem;
     font-size:3.5rem; margin:0 0 .75rem;
     color:#16f1d3; text-shadow:0 0 10px rgba(22,241,211,.55), 0 0 22px rgba(22,241,211,.2);
   }
   .ap-regulament h2{
     font-family: 'Baloo 2', sans-serif;
     font-weight:600; letter-spacing:.1px; text-transform:uppercase;
     font-size:1.8rem; margin:0 0 .75rem;
     color:#16f1d3 !important;
   }
   .ap-regulament li{
     font-family: 'Itim', sans-serif;
     font-weight:100; letter: spacing 0.01em;px;
     font-size:1.0rem; margin:0 0 .75rem;
     text-align: justify;
     text-align-last: left;
   }
   /* Neon cards */
   .ap-regulament .card{
     background:
       radial-gradient(140% 140% at 0% 0%, rgba(22,241,211,.10) 0%, rgba(22,241,211,0) 40%),
       linear-gradient(180deg,#0c1320 0%, #0a0f18 100%) !important;
     border:1px solid rgba(22,241,211,.45) !important;
     border-radius:18px !important;
     box-shadow:
       inset 0 0 0 1px rgba(22,241,211,.22),
       0 0 32px rgba(22,241,211,.25) !important;
   }
   .ap-regulament .card+.card{ margin-top:16px !important }
   .ap-regulament .card+.card{ margin-bottom;:8px !important }
   .ap-regulament .card-body{ padding:10px 1px }
   
   /* Ensure readable body copy inside cards */
   .ap-regulament .card,
   .ap-regulament .card p,
   .ap-regulament .card li,
   .ap-regulament .card ul,
   .ap-regulament .card small{
     color:#e6f1fb !important; opacity:1 !important;
   }
   .ap-regulament .card strong{ color:#16f1d3 !important }
   .ap-regulament .card em{ color:#cfe3f7 !important; opacity:1 !important }
   .ap-regulament .card-body > ul > li{ line-height:1.2 }
   .ap-regulament .card-body > ol > li{ line-height:1.2 }
   
   /* Soft badge like theme pills */
   .ap-regulament .badge-soft{
     display:inline-block; padding:.18rem .55rem; border-radius:9999px;
     background:rgba(0,255,255,.10);
     border:1px solid rgba(0,255,255,.25);
     color:#b8fbff; font-weight:700; font-size:.78rem; letter-spacing:.2px;
   }
   
   /* Lists */
   .ap-regulament ul{ margin:0; padding-left:1.15rem }
   .ap-regulament li{ margin:.28rem 0 }
   .ap-regulament em{ opacity:.8 }
   
   /* Hover accent */
   .ap-regulament .card:hover{
     box-shadow:
       inset 0 0 0 1px rgba(0,255,255,.18),
       0 0 38px rgba(0,255,255,.12);
     border-color:rgba(0,255,255,.28);
   }
   
   /* Back button — match neon vibe (override Bootstrap blue) */
   .ap-regulament .btn-primary{
    justify-content: center;
    padding: 10px 20px;
    font-weight: 700;
    font-size: 15px;
    text-transform: uppercase;
    color: #16f1d3;
    background: rgba(10, 25, 45, 0.85);
    border: 1px solid #16f1d3;
    border-radius: 12px;
    text-shadow: 0 0 8px rgba(22, 241, 211, 0.6);
    box-shadow: 0 0 12px rgba(22, 241, 211, 0.5), inset 0 0 10px rgba(22, 241, 211, 0.2);
    transition: all 0.25s ease;
}
   .ap-regulament .btn-primary:hover{ 
    transform: translateY(-1px); 
    box-shadow: 0 0 18px #16f1d3, 0 0 40px rgba(22, 241, 211, 0.6)); 
    color:#0b1426; 
    background: #16f1d3;
}
   /* Clear the navbar overlap on this page */
   .page-regulament .ap-regulament {
     margin-top: 72px !important;
     padding-top: 0 !important;
   }
   
  /* Center the big title (and its subtitle) */
  .page-regulament .ap-regulament h1{
    text-align:center !important;
    margin-left:auto; margin-right:auto;
  }
  .page-regulament .ap-regulament > p:first-of-type{
    text-align:center; max-width:820px; margin:.5rem auto 2rem;
    color: #b8e0f0 !important;
    opacity: 1 !important;
  }

  /* ============================================================
     MOBILE RESPONSIVENESS
     ============================================================ */

  /* Tablets and below */
  @media (max-width: 991px) {
    .ap-regulament h1 {
      font-size: 2.5rem !important;
      margin-bottom: 0.75rem !important;
    }
    
    .ap-regulament h2 {
      font-size: 1.6rem !important;
    }
    
    .ap-regulament .card-body {
      padding-right: 16px;
      padding-left: 0px;
    }
    
    .ap-regulament .btn-primary {
      padding: 0.45rem 0.85rem !important;
      font-size: 0.85rem !important;
    }
    
    /* Make header stack on mobile - CENTERED */
    .ap-regulament .d-flex.justify-content-between {
      flex-direction: column !important;
      align-items: center !important;
      gap: 12px;
    }
    
    .ap-regulament .d-flex.justify-content-between h1 {
      text-align: center !important;
    }
  }

  /* Mobile phones */
  @media (max-width: 768px) {
    .page-regulament .ap-regulament {
      margin-top: 56px !important;
    }
    
    .ap-regulament h1 {
      font-size: 2.5rem !important;
      line-height: 1.2 !important;
    }
    
    .ap-regulament h2 {
      font-size: 1.6rem !important;
      margin-bottom: 0.6rem !important;
    }
    
    .ap-regulament .card {
      border-radius: 14px !important;
    }
    
    .ap-regulament .card-body {
      padding-right: 16px;
      padding-left: 0px;
    }
        
    .ap-regulament .btn-primary {
      width: 100%;
      padding: 0.5rem 1rem !important;
      font-size: 0.9rem !important;
    }
    
    .ap-regulament ul {
      padding-left: 1.3rem !important;
      font-size: 0.9rem !important;
    }
    
    .ap-regulament li {
      line-height: 1.3 !important;
      margin: 0.3rem 0 !important;
    }
    
    .ap-regulament .badge-soft {
      font-size: 0.72rem !important;
      padding: 0.15rem 0.45rem !important;
    }
    
    .ap-regulament > p:first-of-type {
      font-size: 0.9rem !important;
      margin: 0.4rem auto 1.5rem !important;
    }
  }

  /* Small mobile phones */
  @media (max-width: 576px) {
    .ap-regulament h1 {
      font-size: 2.5rem !important;
    }
    
    .ap-regulament h2 {
      font-size: 1.6rem !important;
    }
    
    .ap-regulament .card-body {
      padding-right: 16px;
      padding-left: 0px;
    }
    
    .ap-regulament ul {
      font-size: 0.85rem !important;
    }
    
    .ap-regulament .btn-primary {
      font-size: 0.85rem !important;
      padding: 0.45rem 0.85rem !important;
    }
  }
  