/*
Theme Name: ASB Theme
Version: 1.0
*/



@keyframes fadeUp {
  from { opacity:0; transform:translateY(20px); }
  to { opacity:1; transform:translateY(0); }
}

.animate-fade-in-up {
  animation: fadeUp 0.8s ease forwards;
}

.animate-fade-in {
  animation: fadeUp 0.6s ease forwards;
}

.animate-fade-in-delay {
  animation: fadeUp 0.9s ease forwards;
}

.animate-scale-in {
  animation: scaleIn 0.4s ease forwards;
}

@keyframes scaleIn {
  from { transform:scale(0.8); opacity:0; }
  to { transform:scale(1); opacity:1; }
}

@keyframes bounce-custom {
    0%, 20%, 50%, 80%, 100% { transform: translateY(0); }
    40% { transform: translateY(-12px); }
    60% { transform: translateY(-6px); }
}
.animate-bounce-slow {
    animation: bounce-custom 2s infinite;
}
.wwa-card:not(:last-child) {
    border-right: 1px solid #f0f0f0;
}
@media (max-width: 1024px) {
    .wwa-card:not(:last-child) {
        border-right: none;
        border-bottom: 1px solid #f0f0f0;
    }
}


@keyframes bounce-custom {
    0%, 20%, 50%, 80%, 100% { transform: translateY(0); }
    40% { transform: translateY(-12px); }
    60% { transform: translateY(-6px); }
}
.animate-bounce-slow {
    animation: bounce-custom 2s infinite;
}
.wwa-card:not(:last-child) {
    border-right: 1px solid #f0f0f0;
}
@media (max-width: 1024px) {
    .wwa-card:not(:last-child) {
        border-right: none;
        border-bottom: 1px solid #f0f0f0;
    }
}

.bg-black {
    --tw-bg-opacity: 1;
    background-color: rgb(43 18 9) !important;
}

.service-text-xl {
    font-size: 1.5rem;
    line-height: 1.95rem;
}

.max-w-xl {
    max-width: 40rem !important;
}
.whobox {
    padding: 1rem;
}

img.logo {
    max-height: 60px;
}

ul#menu-main a {
    color: #fff;
}

/*
Theme Name: ASB Theme
Version: 1.0
*/
.bg-black {
    --tw-bg-opacity: 1;
    background-color: rgb(51 51 51) !important;
}
/* Custom Background Textures */
.bg-texture-cubes {
    background-image: url('././assets/img/cubes.png');
}
.bg-texture-concrete {
    background-image: url('././assets/img/concrete-wall.png');
}

/* Animations */
@keyframes fadeUp {
  from { opacity: 0; transform: translateY(20px); }
  to { opacity: 1; transform: translateY(0); }
}

@keyframes bounce-custom {
    0%, 20%, 50%, 80%, 100% { transform: translateY(0); }
    40% { transform: translateY(-12px); }
    60% { transform: translateY(-6px); }
}

.animate-fade-in { animation: fadeUp 0.6s ease forwards; }
.animate-fade-in-up { animation: fadeUp 0.8s ease forwards; }
.animate-fade-in-delay { animation: fadeUp 1.2s ease forwards; }
.animate-bounce-slow { animation: bounce-custom 2s infinite; }

/* Custom Component Logic */
.wwa-card:not(:last-child) {
    border-right: 1px solid #f0f0f0;
}

@media (max-width: 1024px) {
    .wwa-card:not(:last-child) {
        border-right: none;
        border-bottom: 1px solid #f0f0f0;
    }
}

.text-secondary-green { 
    color: rgb(181 133 45 / 87%) !important;
}

.py-16 {
    padding-top: 4rem;
    padding-bottom: 5px !important;
}

.space-y-20 > :not([hidden]) ~ :not([hidden]) {
    --tw-space-y-reverse: 0;
    margin-top: calc(2rem * calc(1 - var(--tw-space-y-reverse))) !important;
    margin-bottom: calc(5rem * var(--tw-space-y-reverse));
}

.asb-contact-form input[type="text"],
.asb-contact-form input[type="email"],
.asb-contact-form select,
.asb-contact-form textarea {
    @apply w-full border border-gray-300 bg-white px-4 py-3 mb-4 rounded-sm focus:border-[#ca9a66] outline-none transition;
}

.asb-contact-form input[type="submit"] {
    @apply w-full bg-[#1e2d45] hover:bg-[#ca9a66] text-white font-bold uppercase py-4 cursor-pointer transition shadow-lg;
}

.asb-contact-form label {
    @apply text-sm font-bold text-gray-700 uppercase mb-1 block;
}