body{font-family:'Roboto',sans-serif}.custom-container{max-width:1280px;margin:0 auto;padding:0 1rem}#mobile-menu-button{min-width:44px;min-height:44px;display:none;align-items:center;justify-content:center;border:1px solid #d1d5db;border-radius:6px;transition:all 0.2s ease;background:#fff0;cursor:pointer;color:#374151}#mobile-menu-button:hover{border-color:#3b82f6;background-color:#f8fafc;color:#3b82f6}#mobile-menu-button i{font-size:1.125rem;line-height:1}#mobile-menu-button i.fa-bars::before{content:"☰";font-family:sans-serif;font-weight:700;font-size:1.2em}#mobile-menu-button i.fa-times::before{content:"×";font-family:sans-serif;font-weight:700;font-size:1.2em}.accordion-header{cursor:pointer;border:none;background:#fff0;width:100%;text-align:left;transition:all 0.3s ease}.accordion-header:hover{background-color:rgb(6 182 212 / .05)}.accordion-header.active{background-color:rgb(6 182 212 / .1)}.accordion-content{transition:all 0.3s ease;overflow:hidden}.accordion-content.active{transition:all 0.3s ease}.accordion-icon{transition:transform 0.3s ease}.accordion-header.active .accordion-icon{transform:rotate(180deg)}.accordion-item{display:flex;flex-direction:column;height:fit-content}.accordion-content{flex:1}.form-errors{animation:slideDown 0.3s ease-out}.form-success{animation:slideDown 0.3s ease-out}.field-error{animation:fadeIn 0.3s ease-out}@keyframes slideDown{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{from{opacity:0}to{opacity:1}}input:focus,textarea:focus{box-shadow:0 0 0 3px rgb(6 182 212 / .1)}button:disabled{opacity:.7;cursor:not-allowed}#mobile-menu-button i{display:inline-block;width:1.2em;height:1.2em;line-height:1;text-align:center}@media (max-width:767px){#mobile-menu-button{display:flex!important}#mobile-menu.show{display:block!important}#mobile-menu:not(.show){display:none!important}}@media (min-width:768px) and (max-width:991px){#mobile-menu-button{display:flex!important}#mobile-menu.show{display:block!important}#mobile-menu:not(.show){display:none!important}}@media (min-width:992px){#mobile-menu-button{display:none!important}#mobile-menu{display:none!important}}#hero-carousel{position:relative;width:100%}.carousel-container{position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center}.carousel-body{position:relative;width:100%;height:100%;display:flex;align-items:center;justify-content:center}.carousel-slide{position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;visibility:hidden;transition:all 0.5s ease-in-out;display:flex;align-items:center;justify-content:center}.carousel-slide.active{opacity:1;visibility:visible}.carousel-slide img{width:100%;height:100%;object-fit:contain;object-position:center}.carousel-prev,.carousel-next{transition:all 0.3s ease}.carousel-prev:hover,.carousel-next:hover{background-color:rgb(255 255 255 / .5)!important}.carousel-indicator{transition:all 0.3s ease}.carousel-indicator.active{background-color:white!important;opacity:1!important}.carousel-indicator:not(.active){background-color:rgb(255 255 255 / .5)!important}@media (max-width:768px){.carousel-container{height:300px!important}.carousel-prev,.carousel-next{padding:0.5rem!important}.carousel-prev svg,.carousel-next svg{width:1.25rem!important;height:1.25rem!important}.carousel-slide img{max-width:100%;max-height:100%;object-fit:contain;object-position:center}}@media (max-width:480px){.carousel-container{height:250px!important}.carousel-slide img{max-width:100%;max-height:100%;object-fit:contain;object-position:center}}
@keyframes modalSlideIn {
    from {
      opacity: 0;
      transform: scale(0.7) translateY(-50px);
    }
    to {
      opacity: 1;
      transform: scale(1) translateY(0);
    }
  }
  
  @keyframes modalSlideOut {
    from {
      opacity: 1;
      transform: scale(1) translateY(0);
    }
    to {
      opacity: 0;
      transform: scale(0.7) translateY(-50px);
    }
  }
  
  /* Modal overlay animation */
  .modal-overlay {
    animation: fadeIn 0.3s ease-out;
  }
  
  @keyframes fadeIn {
    from { opacity: 0; }
    to { opacity: 1; }
  }
  
  /* Success modal colors */
  .success-modal {
    border-left: 4px solid #10b981;
  }
  
  /* Error modal colors */
  .error-modal {
    border-left: 4px solid #ef4444;
  }