 body {
        font-family: 'Poppins', -apple-system, BlinkMacSystemFont, sans-serif;
        -webkit-font-smoothing: antialiased;
        color: #1d1d1f;
    }
    a{
        color: #9e4896;
    }
    /* Custom Link Style */
    .custom-link {
        position: relative;
        color: #1d1d1f;
        text-decoration: none;
        font-size: 14px;
        font-weight: 400;
        padding-bottom: 4px;
        display: inline-block;
    }
    
    .custom-link.text-white::after {
        background-color: #fff;

    }
    .custom-link::after {
        content: '';
        position: absolute;
        bottom: 0;
        left: 0;
        width: 100%;
        height: 1px;
        background-color: #1d1d1f;
        transition: width 0.3s ease;
    }
    
    .custom-link:hover {
        color: #1d1d1f;
    }
    
    .custom-link:hover::after {
        width: 30%;
    }
    
    /* Art Item Container */
    .art-container {
        overflow: hidden;
        border-radius: 8px;
    }
    
    .art-image {
        transition: transform 0.6s ease;
    }
    
    .art-item:hover .art-image {
        transform: scale(1.08);
    }
    
    /* Marquee Styles */
    .marquee {
        overflow: hidden;
        white-space: nowrap;
    }
    
    .marquee-content {
        display: inline-block;
        animation: marquee 30s linear infinite;
        font-size: 14px;
        letter-spacing: 2px;
        font-weight: 500;
        color: #86868b;
    }
    
    .marquee-reverse .marquee-content {
        animation: marquee-reverse 30s linear infinite;
    }
    
    @keyframes marquee {
        0% {
            transform: translateX(0);
        }
        100% {
            transform: translateX(-50%);
        }
    }
    
    @keyframes marquee-reverse {
        0% {
            transform: translateX(-50%);
        }
        100% {
            transform: translateX(0);
        }
    }

    .overlay:before{
        content: '';
        position: absolute;
        background: rgba(0,0,0,0.2);
        left: 0;
        top: 0;
        width: 100%;
        height: 100%;
        }
        .overlay{
        position: relative;
        }
        video {
            background-color: #000;
            height: auto;
            left: 50%;
            min-height: 100%;
            min-width: 100%;
            position: absolute;
            top: 50%;
            transform: translate(-50%, -50%);
            width: auto;
            z-index: -1;
            background-size: cover;
        }
        .fz-12{
            font-size: 12px; 
            letter-spacing: 1px;
        }
        /* Margin Bottom Classes - 0 to 120 (steps of 10) */
.mb-0 {
    margin-bottom: 0 !important;
}

.mb-10 {
    margin-bottom: 10px !important;
}

.mb-20 {
    margin-bottom: 20px !important;
}

.mb-30 {
    margin-bottom: 30px !important;
}

.mb-40 {
    margin-bottom: 40px !important;
}

.mb-50 {
    margin-bottom: 50px !important;
}

.mb-60 {
    margin-bottom: 60px !important;
}

.mb-70 {
    margin-bottom: 70px !important;
}

.mb-80 {
    margin-bottom: 80px !important;
}

.mb-90 {
    margin-bottom: 90px !important;
}

.mb-100 {
    margin-bottom: 100px !important;
}

.mb-110 {
    margin-bottom: 110px !important;
}

.mb-120 {
    margin-bottom: 120px !important;
}

/* Margin Top Classes - 0 to 120 (steps of 10) - Bonus */
.mt-0 {
    margin-top: 0 !important;
}

.mt-10 {
    margin-top: 10px !important;
}

.mt-20 {
    margin-top: 20px !important;
}

.mt-30 {
    margin-top: 30px !important;
}

.mt-40 {
    margin-top: 40px !important;
}

.mt-50 {
    margin-top: 50px !important;
}

.mt-60 {
    margin-top: 60px !important;
}

.mt-70 {
    margin-top: 70px !important;
}

.mt-80 {
    margin-top: 80px !important;
}

.mt-90 {
    margin-top: 90px !important;
}

.mt-100 {
    margin-top: 100px !important;
}

.mt-110 {
    margin-top: 110px !important;
}

.mt-120 {
    margin-top: 120px !important;
}

/* Padding Bottom Classes - 0 to 120 (steps of 10) - Bonus */
.pb-0 {
    padding-bottom: 0 !important;
}

.pb-10 {
    padding-bottom: 10px !important;
}

.pb-20 {
    padding-bottom: 20px !important;
}

.pb-30 {
    padding-bottom: 30px !important;
}

.pb-40 {
    padding-bottom: 40px !important;
}

.pb-50 {
    padding-bottom: 50px !important;
}

.pb-60 {
    padding-bottom: 60px !important;
}

.pb-70 {
    padding-bottom: 70px !important;
}

.pb-80 {
    padding-bottom: 80px !important;
}

.pb-90 {
    padding-bottom: 90px !important;
}

.pb-100 {
    padding-bottom: 100px !important;
}

.pb-110 {
    padding-bottom: 110px !important;
}

.pb-120 {
    padding-bottom: 120px !important;
}

/* Padding Top Classes - 0 to 120 (steps of 10) - Bonus */
.pt-0 {
    padding-top: 0 !important;
}

.pt-10 {
    padding-top: 10px !important;
}

.pt-20 {
    padding-top: 20px !important;
}

.pt-30 {
    padding-top: 30px !important;
}

.pt-40 {
    padding-top: 40px !important;
}

.pt-50 {
    padding-top: 50px !important;
}

.pt-60 {
    padding-top: 60px !important;
}

.pt-70 {
    padding-top: 70px !important;
}

.pt-80 {
    padding-top: 80px !important;
}

.pt-90 {
    padding-top: 90px !important;
}

.pt-100 {
    padding-top: 100px !important;
}

.pt-110 {
    padding-top: 110px !important;
}

.pt-120 {
    padding-top: 120px !important;
}

/* Margin All Sides - 0 to 120 (steps of 10) - Bonus */
.m-0 {
    margin: 0 !important;
}

.m-10 {
    margin: 10px !important;
}

.m-20 {
    margin: 20px !important;
}

.m-30 {
    margin: 30px !important;
}

.m-40 {
    margin: 40px !important;
}

.m-50 {
    margin: 50px !important;
}

.m-60 {
    margin: 60px !important;
}

.m-70 {
    margin: 70px !important;
}

.m-80 {
    margin: 80px !important;
}

.m-90 {
    margin: 90px !important;
}

.m-100 {
    margin: 100px !important;
}

.m-110 {
    margin: 110px !important;
}

.m-120 {
    margin: 120px !important;
}

/* Padding All Sides - 0 to 120 (steps of 10) - Bonus */
.p-0 {
    padding: 0 !important;
}

.p-10 {
    padding: 10px !important;
}

.p-20 {
    padding: 20px !important;
}

.p-30 {
    padding: 30px !important;
}

.p-40 {
    padding: 40px !important;
}

.p-50 {
    padding: 50px !important;
}

.p-60 {
    padding: 60px !important;
}

.p-70 {
    padding: 70px !important;
}

.p-80 {
    padding: 80px !important;
}

.p-90 {
    padding: 90px !important;
}

.p-100 {
    padding: 100px !important;
}

.p-110 {
    padding: 110px !important;
}

.p-120 {
    padding: 120px !important;
}
p{line-height: 1.7}
.logo{
    height: 90px;
}
.height-90 {
    height: 90vh;
}
.height-80 {
    height: 80vh;
}


.floating-img1 {
    position: absolute;
    top: 50%;
    left: -4%;
    transform: translate(-50%, -50%);
    width: 40%;
    z-index: 0;
}

.floating-img2 {
    position: absolute;
    top: 50%;
    right: -4%;
    transform: translate(50%, -50%);
    width: 40%;
    z-index: 0;
}

img {
    width: 100%;
}

.category-nav-btn {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    border: 1px solid #d2d2d7;
    background: white;
    color: #1d1d1f;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.3s ease;
}

.category-nav-btn:hover {
    background: #1d1d1f;
    color: white;
    border-color: #1d1d1f;
}

.category-nav-btn:disabled {
    opacity: 0.3;
    cursor: not-allowed;
}

/* Category Card */
.category-card {
    cursor: pointer;
    transition: transform 0.3s ease;
}

.category-card:hover {
    transform: translateY(-8px);
}

.category-image {
    position: relative;
    overflow: hidden;
    border-radius: 12px;
    padding-bottom: 75%;
    /* Aspect ratio 4:3 */
    margin-bottom: 1rem;
}

.category-image img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.5s ease;
}

.category-card:hover .category-image img {
    transform: scale(1.05);
}

.category-title {
    font-size: 1.25rem;
    font-weight: 500;
    color: #1d1d1f;
    margin: 0;
}

/* Swiper Custom Styles */
.categorySwiper {
    overflow: visible;
    padding: 0 0 20px 0;
}

.categorySwiper .swiper-slide {
    width: auto;
    max-width: 340px;
}

/* ==========================================
   STORIES SECTION
   ========================================== */

/* Story Card */
.story-card {
    border-radius: 16px;
    overflow: hidden;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    padding: 2rem;
    text-decoration: none;
}

.story-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 12px 24px rgba(0, 0, 0, 0.1);
}

/* Story Image */
.story-image {
    position: relative;
    border-radius: 12px;
    overflow: hidden;
    padding-bottom: 60%;
}

.story-image img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.5s ease;
}

.story-card:hover .story-image img {
    transform: scale(1.05);
}

/* Story Badge */
.story-badge {
    position: absolute;
    top: 1rem;
    left: 1rem;
    background: rgba(0, 0, 0, 0.7);
    color: white;
    padding: 0.4rem 0.8rem;
    border-radius: 4px;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 1px;
    z-index: 2;
}

/* Story Content */
.story-content {
    padding: 2rem 2rem 2rem 3rem;
    position: relative;
}

.story-title {
    font-size: clamp(1.5rem, 3vw, 2.3rem);
    font-weight: 500;
    line-height: 1.3;
    color: #1d1d1f;
    margin-bottom: 2rem;
}

/* Story Link Button */
.story-link {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    border: 2px solid #1d1d1f;
    background: transparent;
    color: #1d1d1f;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    transition: all 0.3s ease;
    font-size: 1.2rem;
}

.story-link:hover {
    background: #1d1d1f;
    color: white;
    transform: translateX(4px);
}

/* ==========================================
   RESPONSIVE
   ========================================== */

@media (max-width: 991px) {
    .category-nav-btn {
        width: 40px;
        height: 40px;
        font-size: 14px;
    }

    .story-content {
        padding: 2rem 0;
        margin-top: 2rem;
    }

    .story-title {
        font-size: 1.5rem;
    }

    .story-card {
        padding: 1.5rem;
    }
}

@media (max-width: 576px) {
    .categorySwiper .swiper-slide {
        max-width: 280px;
    }

    .category-title {
        font-size: 1.1rem;
    }
}

   /* Artwork Cards - MINIMALISTA */
   .artwork-card {
       display: block;
       text-decoration: none;
       color: inherit;
       transition: transform 0.3s ease;
   }

   .artwork-card:hover {
       transform: translateY(-5px);
   }

   .artwork-card:hover .artwork-image img {
       transform: scale(1.05);
   }

   .artwork-image {
       position: relative;
       overflow: hidden;
       border-radius: 12px;
       padding-bottom: 90%;
       margin-bottom: 1rem;
   }

   .artwork-image img {
       position: absolute;
       top: 0;
       left: 0;
       width: 100%;
       height: 100%;
       object-fit: cover;
       transition: transform 0.5s ease;
   }

   .artwork-info-minimal {
       padding: 0.5rem 0;
   }

   .artwork-title-minimal {
       font-size: 1.1rem;
       font-weight: 400;
       color: #1d1d1f;
       margin-bottom: 0.5rem;
   }

   .artwork-price-minimal {
       font-size: 1rem;
       color: #666;
       margin: 0;
   }

   /* About Image Simple */
   .about-image-simple {
       position: relative;
   }

   .about-image-simple img {
       box-shadow: 0 10px 40px rgba(0, 0, 0, 0.08);
   }

   /* Features Minimal */
   .feature-minimal {
       padding: 0;
   }

   /* Testimonials Minimal */
   .testimonial-minimal {
       padding: 2rem 0;
       border-bottom: 1px solid #e5e5e5;
   }

   .testimonial-minimal:last-child {
       border-bottom: none;
   }

   /* Swiper para Featured */
   .featuredSwiper {
       overflow: visible;
       padding: 0 0 20px 0;
   }

   .featuredSwiper .swiper-slide {
       height: auto;
   }
.lineParent {
    overflow: hidden;
    position: relative
}
   /* ==========================================
   TESTIMONIALS SLIDER - MODERNO Y COLORIDO
   ========================================== */

   .testimonials-slider-wrapper { 
       margin: 0 auto;
       padding: 0 60px;
   }

   .testimonial-card-modern {
       border-radius: 20px;
       padding: 3rem;
       min-height: 420px;
       display: flex;
       flex-direction: column;
       justify-content: space-between;
       position: relative;
       overflow: hidden;
       border: 1px solid black;
       transition: transform 0.3s ease, box-shadow 0.3s ease;
   }

    

   /* Avatar Circle */
   .testimonial-avatar {
       width: 80px;
       height: 80px;
       border-radius: 50%;
       overflow: hidden;
       margin: 0 auto 1.5rem;
       border: 1px solid #000;
       box-shadow: 0 8px 24px rgba(0, 0, 0, 0.15);
   }

   .testimonial-avatar img {
       width: 100%;
       height: 100%;
       object-fit: cover;
   }

   /* Quote Icon */
   .testimonial-quote {
       text-align: center;
       margin-bottom: 1.5rem;
   }

   .testimonial-quote i {
       font-size: 2rem;
       opacity: 0.3;
       color: #1d1d1f;
   }

   /* Text */
   .testimonial-text-modern {
       font-size: 1.1rem;
       line-height: 1.8;
       color: #1d1d1f;
       text-align: center;
       margin-bottom: 2rem;
       font-style: italic;
   }

   /* Author Info */
   .testimonial-author-modern {
       text-align: center;
       border-top: 2px solid rgba(0, 0, 0, 0.1);
       padding-top: 1.5rem;
       margin-top: auto;
   }

   .testimonial-author-modern strong {
       display: block;
       font-size: 1.2rem;
       margin-bottom: 0.3rem;
       color: #1d1d1f;
   }

   .testimonial-author-modern span {
       display: block;
       font-size: 0.9rem;
       color: #666;
       margin-bottom: 0.2rem;
   }

   .testimonial-location {
       font-size: 0.85rem !important;
       opacity: 0.8;
   }

   /* Navigation Buttons */
   .testimonial-nav-btn {
       position: absolute;
       top: 50%;
       transform: translateY(-50%);
       width: 50px;
       height: 50px;
       border-radius: 50%;
       border: 2px solid #1d1d1f;
       background: white;
       color: #1d1d1f;
       display: flex;
       align-items: center;
       justify-content: center;
       cursor: pointer;
       transition: all 0.3s ease;
       z-index: 10;
   }

   .testimonial-nav-btn:hover {
       background: #1d1d1f;
       color: white;
       transform: translateY(-50%) scale(1.1);
   }

   .prev-testimonial {
       left: 0;
   }

   .next-testimonial {
       right: 0;
   }

   /* Swiper Customization */
   .testimonialsSwiper {
       padding-bottom: 50px;
   }

   .testimonialsSwiper .swiper-slide {
       height: auto;
       display: flex;
   }

   /* Pagination */
   .testimonial-pagination {
       bottom: 0 !important;
   }

   .testimonial-pagination .swiper-pagination-bullet {
       width: 12px;
       height: 12px;
       background: #d2d2d7;
       opacity: 1;
   }

   .testimonial-pagination .swiper-pagination-bullet-active {
       background: #1d1d1f;
       width: 32px;
       border-radius: 6px;
   }

   /* Responsive */
   @media (max-width: 768px) {
       .testimonials-slider-wrapper {
           padding: 0 20px;
       }

       .testimonial-card-modern {
           padding: 2rem;
           min-height: 380px;
       }

       .testimonial-nav-btn {
           width: 40px;
           height: 40px;
       }

       .testimonial-text-modern {
           font-size: 1rem;
       }

       .testimonial-avatar {
           width: 60px;
           height: 60px;
       }
   }

   @media (max-width: 576px) {
       .testimonial-nav-btn {
           display: none;
       }

       .testimonials-slider-wrapper {
           padding: 0;
       }
   }


   

   /* ==========================================
   CONTACT PAGE STYLES - CLEAN VERSION
   ========================================== */

   /* Hero Section */
   .contact-hero {
       position: relative;
   }

   /* Form Wrapper */
   .contact-form-wrapper {
       background: white;
   }

   /* Modern Form Styles */
   .contact-form-modern {
       background: white;
   }

   .form-group-modern {
       position: relative;
       margin-bottom: 2rem;
   }

   .form-control-modern {
       width: 100%;
       padding: 1.2rem 0;
       font-size: 1rem;
       border: none;
       border-bottom: 2px solid #d2d2d7;
       background: transparent;
       transition: border-color 0.3s ease;
       font-family: 'Poppins', sans-serif;
       color: #1d1d1f;
   }

   .form-control-modern:focus {
       outline: none;
       border-bottom-color: #1d1d1f;
   }

   .form-control-modern.is-invalid {
       border-bottom-color: #dc3545;
   }

   /* Floating Labels */
   .form-label-modern {
       position: absolute;
       left: 0;
       top: 1.2rem;
       font-size: 1rem;
       color: #86868b;
       pointer-events: none;
       transition: all 0.3s ease;
   }

   .form-label-modern.active,
   .form-control-modern:focus+.form-label-modern,
   .form-control-modern:not(:placeholder-shown)+.form-label-modern {
       top: -0.5rem;
       font-size: 0.75rem;
       color: #1d1d1f;
   }

   /* Select styling */
   select.form-control-modern {
       cursor: pointer;
       appearance: none;
       background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%231d1d1f' d='M6 9L1 4h10z'/%3E%3C/svg%3E");
       background-repeat: no-repeat;
       background-position: right 0 center;
   }

   select.form-control-modern:not(:focus):invalid+.form-label-modern {
       top: 1.2rem;
       font-size: 1rem;
       color: #86868b;
   }

   select.form-control-modern:valid+.form-label-modern,
   select.form-control-modern:focus+.form-label-modern {
       top: -0.5rem;
       font-size: 0.75rem;
       color: #1d1d1f;
   }

   /* Textarea */
   textarea.form-control-modern {
       resize: vertical;
       min-height: 120px;
       padding-top: 1.5rem;
   }

   /* Error Messages */
   .error-message {
       display: block;
       color: #dc3545;
       font-size: 0.85rem;
       margin-top: 0.5rem;
   }

   /* Submit Button */
   .btn-modern-submit {
       background: #1d1d1f;
       color: white;
       border: none;
       padding: 1rem 2.5rem;
       font-size: 1rem;
       font-weight: 500;
       border-radius: 50px;
       cursor: pointer;
       transition: all 0.3s ease;
       display: inline-flex;
       align-items: center;
       font-family: 'Poppins', sans-serif;
   }

   .btn-modern-submit:hover {
       background: #000;
       transform: translateY(-2px);
       box-shadow: 0 8px 20px rgba(0, 0, 0, 0.2);
   }

   .btn-modern-submit:disabled {
       opacity: 0.6;
       cursor: not-allowed;
       transform: none;
   }

   /* Success Alert */
   .alert-success-modern {
       background: #d4edda;
       border: 1px solid #c3e6cb;
       color: #155724;
       padding: 1rem 1.5rem;
       border-radius: 8px;
       display: flex;
       align-items: center;
   }

   /* Contact Info Card */
   .contact-info-card {
       padding: 3rem 2.5rem;
       background: #fbfbfd;
       border-radius: 16px;
       height: 100%;
       border: 1px solid #e5e5e5;
   }

   .contact-info-block {
       padding-bottom: 2.5rem;
       border-bottom: 1px solid #e5e5e5;
   }

   .contact-info-block:last-child {
       border-bottom: none;
       padding-bottom: 0;
   }

   .info-icon {
       width: 50px;
       height: 50px;
       border-radius: 50%;
       background: white;
       display: flex;
       align-items: center;
       justify-content: center;
       box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
   }

   .info-icon i {
       font-size: 1.3rem;
       color: #1d1d1f;
   }

   .info-title {
       font-size: 0.85rem;
       font-weight: 600;
       text-transform: uppercase;
       letter-spacing: 1px;
       color: #86868b;
       margin-bottom: 1rem;
   }

   .info-link {
       color: #1d1d1f;
       font-size: 1.4rem;
       font-weight: 500;
       text-decoration: none;
       transition: color 0.3s ease;
       display: block;
       margin-bottom: 0.5rem;
   }

   .info-link:hover {
       color: #666;
   }

   .info-link-secondary {
       color: #1d1d1f;
       font-size: 0.95rem;
       text-decoration: none;
       border-bottom: 1px solid #1d1d1f;
       transition: opacity 0.3s ease;
   }

   .info-link-secondary:hover {
       opacity: 0.6;
   }

   .info-text {
       color: #1d1d1f;
       font-size: 1rem;
       line-height: 1.8;
       margin: 0;
   }

   .info-note {
       color: #86868b;
       font-size: 0.85rem;
       margin-top: 0.5rem;
       line-height: 1.6;
   }

   /* Social Links Contact */
   .social-links-contact {
       display: flex;
       flex-direction: column;
       gap: 1rem;
   }

   .social-link-contact {
       display: flex;
       align-items: center;
       color: #1d1d1f;
       text-decoration: none;
       font-size: 1rem;
       transition: all 0.3s ease;
       padding: 0.5rem 0;
   }

   .social-link-contact i {
       width: 30px;
       margin-right: 1rem;
       font-size: 1.3rem;
       color: #1d1d1f;
   }

   .social-link-contact:hover {
       color: #666;
       transform: translateX(5px);
   }

   /* Quote Contact */
   .quote-contact {
       font-size: clamp(1.8rem, 3vw, 2.5rem);
       font-weight: 400;
       line-height: 1.4;
       color: #1d1d1f;
       margin: 0;
       font-style: italic;
   }

   .quote-author-contact {
       font-size: 1rem;
       color: #666;
       margin-top: 1.5rem;
       font-weight: 500;
   }

   /* Responsive */
   @media (max-width: 991px) {
       .contact-info-card {
           margin-top: 3rem;
           padding: 2rem 1.5rem;
       }
   }

   @media (max-width: 576px) {
       .btn-modern-submit {
           width: 100%;
           justify-content: center;
       }

       .form-control-modern {
           font-size: 16px;
           /* Prevent zoom on iOS */
       }

       .contact-hero {
           min-height: 40vh !important;
       }
   }



        /* ==========================================
       ABOUT PAGE STYLES
       ========================================== */
    
        /* Hero Section */
        .about-hero {
            position: relative;
        }
    
        .about-hero-bg {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            object-fit: cover;
            z-index: 0;
        }
    
        .height-70 {
            height: 70vh;
        }
    
        .about-hero-overlay {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            background: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.7));
            z-index: 1;
        }
    
        /* Quote Large */
        .quote-large {
            font-size: clamp(2rem, 4vw, 3.5rem);
            font-weight: 400;
            line-height: 1.4;
            color: #1d1d1f;
            margin: 0;
            font-style: italic;
        }
    
        .quote-author {
            font-size: 1.1rem;
            color: #666;
            margin-top: 2rem;
            font-weight: 500;
        }
    
        /* Timeline */
        .timeline-container {
            position: relative;
            max-width: 800px;
            margin: 0 auto;
            padding-left: 60px;
        }
    
        .timeline-container::before {
            content: '';
            position: absolute;
            left: 20px;
            top: 0;
            bottom: 0;
            width: 2px;
            background: #d2d2d7;
        }
    
        .timeline-item {
            position: relative;
            margin-bottom: 3rem;
            padding-left: 40px;
        }
    
        .timeline-item::before {
            content: '';
            position: absolute;
            left: -46px;
            top: 0;
            width: 14px;
            height: 14px;
            border-radius: 50%;
            background: #1d1d1f;
            border: 3px solid #fbfbfd;
            z-index: 2;
        }
    
        .timeline-year {
            position: absolute;
            left: -125px;
            top: -5px;
            font-size: 1.5rem;
            font-weight: 600;
            color: #1d1d1f;
        }
    
        .timeline-content h3 {
            font-size: 1.3rem;
            font-weight: 500;
            color: #1d1d1f;
            margin-bottom: 0.5rem;
        }
    
        .timeline-content p {
            color: #666;
            line-height: 1.8;
            margin: 0;
        }
    
        /* Value Cards */
        .value-card {
            padding: 2.5rem 2rem;
            background: #fbfbfd;
            border-radius: 12px;
            transition: transform 0.3s ease, box-shadow 0.3s ease;
            height: 100%;
        }
    
        .value-card:hover {
            transform: translateY(-5px);
            box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
        }
    
        .value-icon {
            width: 60px;
            height: 60px;
            border-radius: 50%;
            background: white;
            display: flex;
            align-items: center;
            justify-content: center;
            margin-bottom: 1.5rem;
            box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
        }
    
        .value-icon i {
            font-size: 1.5rem;
            color: #1d1d1f;
        }
    
        .value-title {
            font-size: 1.2rem;
            font-weight: 500;
            color: #1d1d1f;
            margin-bottom: 1rem;
        }
    
        .value-text {
            color: #666;
            line-height: 1.8;
            margin: 0;
            font-size: 0.95rem;
        }
    
        /* Process Steps */
        .process-step {
            text-align: center;
            padding: 2rem 1rem;
        }
    
        .process-number {
            font-size: 3rem;
            font-weight: 700;
            color: rgba(255, 255, 255, 0.2);
            margin-bottom: 1rem;
        }
    
        .process-title {
            font-size: 1.3rem;
            font-weight: 500;
            color: white;
            margin-bottom: 1rem;
        }
    
        .process-text {
            color: rgba(255, 255, 255, 0.8);
            line-height: 1.8;
            margin: 0;
            font-size: 0.95rem;
        }
    
        /* Press Cards */
        .press-card {
            display: block;
            text-decoration: none;
            color: inherit;
            background: #fbfbfd;
            border-radius: 12px;
            overflow: hidden;
            transition: transform 0.3s ease, box-shadow 0.3s ease;
            height: 100%;
        }
    
        .press-card:hover {
            transform: translateY(-5px);
            box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
        }
    
        .press-card-image {
            position: relative;
            padding-bottom: 60%;
            overflow: hidden;
            background: #e5e5e5;
        }
    
        .press-card-image img {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            object-fit: cover;
            transition: transform 0.5s ease;
        }
    
        .press-card:hover .press-card-image img {
            transform: scale(1.05);
        }
    
        .press-card-content {
            padding: 1.5rem;
        }
    
        .press-source {
            font-size: 0.85rem;
            text-transform: uppercase;
            letter-spacing: 1px;
            color: #86868b;
            margin-bottom: 0.5rem;
        }
    
        .press-headline {
            font-size: 1.1rem;
            font-weight: 500;
            color: #1d1d1f;
            line-height: 1.4;
            margin: 0;
        }
    
        /* Image Feature */
        .image-feature-about img {
            width: 100%;
            height: auto;
        }
    
        /* Responsive */
        @media (max-width: 991px) {
            .timeline-container {
                padding-left: 40px;
            }
    
            .timeline-year {
                position: relative;
                left: 0;
                margin-bottom: 0.5rem;
                font-size: 1.2rem;
            }
    
            .timeline-item {
                padding-left: 30px;
            }
    
            .timeline-item::before {
                left: -36px;
            }
        }
    
        @media (max-width: 576px) {
            .about-hero {
                min-height: 60vh !important;
            }
    
            .quote-large {
                font-size: 1.8rem;
            }
    
            .value-card {
                padding: 2rem 1.5rem;
            }
    
            .process-number {
                font-size: 2rem;
            }
        }
        .navbar-nav.ms-auto{
            gap: 25px;
        }
                @keyframes slideDown {
                    from {
                        transform: translateY(0);
                        opacity: 1;
                    }
        
                    to {
                        transform: translateY(100%);
                        opacity: 0;
                    }
                }/* Cookie Banner Styles */
                .cookie-banner {
                    position: fixed;
                    bottom: 0;
                    left: 0;
                    right: 0;
                    background: #ffffff;
                    box-shadow: 0 -4px 20px rgba(0, 0, 0, 0.15);
                    z-index: 9999;
                    animation: slideUp 0.4s ease-out;
                    border-top: 1px solid #e5e5e5;
                }
                
                @keyframes slideUp {
                    from {
                        transform: translateY(100%);
                        opacity: 0;
                    }
                
                    to {
                        transform: translateY(0);
                        opacity: 1;
                    }
                }
                
                .cookie-banner-content {
                    padding: 2rem 0;
                }
                
                .cookie-banner-title {
                    font-size: 1.2rem;
                    font-weight: 500;
                    color: #1d1d1f;
                    margin-bottom: 0.5rem;
                }
                
                .cookie-banner-text {
                    font-size: 0.95rem;
                    line-height: 1.6;
                    color: #666;
                    margin: 0;
                }
                
                .cookie-link {
                    color: #1d1d1f;
                    text-decoration: none;
                    border-bottom: 1px solid #1d1d1f;
                    transition: opacity 0.3s ease;
                    font-weight: 500;
                }
                
                .cookie-link:hover {
                    opacity: 0.6;
                }
                
                .cookie-banner-buttons {
                    display: flex;
                    gap: 1rem;
                    justify-content: flex-end;
                }
                
                .btn-cookie-accept,
                .btn-cookie-reject {
                    padding: 0.75rem 1.5rem;
                    font-size: 0.95rem;
                    font-weight: 500;
                    border-radius: 50px;
                    cursor: pointer;
                    transition: all 0.3s ease;
                    border: none;
                    font-family: 'Poppins', sans-serif;
                }
                
                .btn-cookie-accept {
                    background: #1d1d1f;
                    color: white;
                }
                
                .btn-cookie-accept:hover {
                    background: #000;
                    transform: translateY(-2px);
                    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
                }
                
                .btn-cookie-reject {
                    background: transparent;
                    color: #1d1d1f;
                    border: 1px solid #d2d2d7;
                }
                
                .btn-cookie-reject:hover {
                    background: #f5f5f7;
                }
                
                /* Responsive */
                @media (max-width: 991px) {
                    .cookie-banner-buttons {
                        justify-content: flex-start;
                        flex-direction: column;
                    }
                
                    .btn-cookie-accept,
                    .btn-cookie-reject {
                        width: 100%;
                    }
                }
                
                @media (max-width: 576px) {
                    .cookie-banner-content {
                        padding: 1.5rem 0;
                    }
                
                    .cookie-banner-title {
                        font-size: 1.1rem;
                    }
                
                    .cookie-banner-text {
                        font-size: 0.9rem;
                    }
                }

                                .legal-section-title {
                                    font-size: 1.5rem;
                                    font-weight: 500;
                                    color: #1d1d1f;
                                    margin-bottom: 1rem;
                                }
                
                                .legal-section-content {
                                    font-size: 1rem;
                                    line-height: 1.8;
                                    color: #666;
                                }
                 
                
                                .legal-list {
                                    list-style: none;
                                    padding-left: 0;
                                    margin: 1rem 0;
                                }
                
                                .legal-list li {
                                    padding: 0.5rem 0 0.5rem 2rem;
                                    position: relative;
                                    font-size: 1rem;
                                    line-height: 1.8;
                                    color: #666;
                                }
                
                                .legal-list li::before {
                                    content: "•";
                                    position: absolute;
                                    left: 0.5rem;
                                    color: #1d1d1f;
                                    font-weight: bold;
                                }
                
                                .legal-contact-list {
                                    list-style: none;
                                    padding: 0;
                                    margin: 0;
                                }
                
                                .legal-contact-list li {
                                    padding: 0.5rem 0;
                                    font-size: 1rem;
                                    color: #666;
                                }
                
                                
                
                                .legal-link:hover {
                                    opacity: 0.6;
                                }
                
                                 
                
                                .legal-contact-list a:hover {
                                    opacity: 0.6;
                                }

 /* ==========================================
   GALLERY PAGE STYLES
   ========================================== */

 /* Gallery Filters */
 .gallery-filters {
     padding: 1rem 0;
 }

 .filter-btn {
     padding: 0.7rem 1.5rem;
     background: white;
     border: 1px solid #d2d2d7;
     border-radius: 50px;
     font-size: 0.9rem;
     font-weight: 500;
     color: #1d1d1f;
     cursor: pointer;
     transition: all 0.3s ease;
     font-family: 'Poppins', sans-serif;
 }

 .filter-btn:hover {
     background: #fbfbfd;
     border-color: #1d1d1f;
 }

 .filter-btn.active {
     background: #1d1d1f;
     color: white;
     border-color: #1d1d1f;
 }

 /* Gallery Grid */
 .gallery-grid {
     display: grid;
     grid-template-columns: repeat(auto-fill, minmax(350px, 1fr));
     gap: 30px;
 }

 .gallery-item {
     opacity: 0;
     animation: fadeIn 0.5s ease forwards;
 }

 @keyframes fadeIn {
     to {
         opacity: 1;
     }
 }

 /* Gallery Card */
 .gallery-card {
     background: white;
     border-radius: 12px;
     overflow: hidden;
     transition: transform 0.3s ease, box-shadow 0.3s ease;
     border: 1px solid #e5e5e5;
 }

 .gallery-card:hover {
     transform: translateY(-5px);
     box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
 }

 /* Gallery Image */
 .gallery-image {
     position: relative;
     padding-bottom: 75%;
     overflow: hidden;
     background: #f5f5f5;
 }

 .gallery-image img {
     position: absolute;
     top: 0;
     left: 0;
     width: 100%;
     height: 100%;
     object-fit: cover;
     transition: transform 0.5s ease;
 }

 .gallery-card:hover .gallery-image img {
     transform: scale(1.08);
 }

 /* Gallery Overlay */
 .gallery-overlay {
     position: absolute;
     top: 0;
     left: 0;
     width: 100%;
     height: 100%;
     background: rgba(0, 0, 0, 0.7);
     display: flex;
     align-items: center;
     justify-content: center;
     opacity: 0;
     transition: opacity 0.3s ease;
 }

 .gallery-card:hover .gallery-overlay {
     opacity: 1;
 }

 .view-btn {
     width: 60px;
     height: 60px;
     border-radius: 50%;
     background: white;
     border: none;
     color: #1d1d1f;
     font-size: 1.3rem;
     cursor: pointer;
     transition: all 0.3s ease;
 }

 .view-btn:hover {
     transform: scale(1.1);
     background: #1d1d1f;
     color: white;
 }

 /* Gallery Info */
 .gallery-info {
     padding: 1.5rem;
 }

 .gallery-title {
     font-size: 1.2rem;
     font-weight: 500;
     color: #1d1d1f;
     margin-bottom: 0.5rem;
     line-height: 1.4;
 }

 .gallery-meta {
     font-size: 0.9rem;
     color: #86868b;
     margin-bottom: 1rem;
 }

 /* Gallery Tags */
 .gallery-tags {
     display: flex;
     flex-wrap: wrap;
     gap: 0.5rem;
 }

 .tag {
     padding: 0.4rem 0.8rem;
     background: #fbfbfd;
     border: 1px solid #e5e5e5;
     border-radius: 20px;
     font-size: 0.75rem;
     color: #666;
     font-weight: 500;
 }

 /* Modal Styles */
 .mural-modal {
     border-radius: 16px;
     overflow: hidden;
     border: none;
 }

 .btn-close-modal {
     position: absolute;
     top: 1rem;
     right: 1rem;
     width: 40px;
     height: 40px;
     border-radius: 50%;
     background: white;
     border: none;
     color: #1d1d1f;
     font-size: 1.2rem;
     cursor: pointer;
     z-index: 10;
     transition: all 0.3s ease;
     display: flex;
     align-items: center;
     justify-content: center;
 }

 .btn-close-modal:hover {
     background: #1d1d1f;
     color: white;
 }

 .modal-image {
     position: relative;
     padding-bottom: 100%;
     background: #f5f5f5;
 }

 .modal-image img {
     position: absolute;
     top: 0;
     left: 0;
     width: 100%;
     height: 100%;
     object-fit: cover;
 }

 .modal-info {
     padding: 2.5rem;
     height: 100%;
     overflow-y: auto;
 }

 .modal-title {
     font-size: 1.5rem;
     font-weight: 500;
     color: #1d1d1f;
     margin-bottom: 0.5rem;
 }

 .modal-meta {
     font-size: 0.95rem;
     color: #86868b;
     margin-bottom: 2rem;
 }

 .modal-section {
     margin-bottom: 2rem;
 }

 .modal-section h4 {
     font-size: 0.85rem;
     font-weight: 600;
     text-transform: uppercase;
     letter-spacing: 1px;
     color: #86868b;
     margin-bottom: 1rem;
 }

 .modal-section p {
     line-height: 1.8;
     color: #1d1d1f;
 }

 .modal-details {
     list-style: none;
     padding: 0;
     margin: 0;
 }

 .modal-details li {
     padding: 0.5rem 0;
     border-bottom: 1px solid #e5e5e5;
     color: #666;
 }

 .modal-details li:last-child {
     border-bottom: none;
 }

 .modal-details strong {
     color: #1d1d1f;
     font-weight: 500;
 }

 .modal-tags {
     display: flex;
     flex-wrap: wrap;
     gap: 0.5rem;
     margin-bottom: 2rem;
 }

 .btn-modal-cta {
     width: 100%;
     padding: 1rem 2rem;
     background: #1d1d1f;
     color: white;
     text-decoration: none;
     border-radius: 50px;
     text-align: center;
     font-weight: 500;
     display: inline-flex;
     align-items: center;
     justify-content: center;
     transition: all 0.3s ease;
 }

 .btn-modal-cta:hover {
     background: #000;
     color: white;
     transform: translateY(-2px);
     box-shadow: 0 8px 20px rgba(0, 0, 0, 0.2);
 }

 /* Responsive */
 @media (max-width: 991px) {
     .gallery-grid {
         grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
         gap: 20px;
     }

     .modal-image {
         padding-bottom: 60%;
     }

     .modal-info {
         padding: 2rem 1.5rem;
     }
 }

 @media (max-width: 576px) {
     .gallery-grid {
         grid-template-columns: 1fr;
         gap: 20px;
     }

     .filter-btn {
         padding: 0.6rem 1.2rem;
         font-size: 0.85rem;
     }

     .gallery-filters {
         gap: 0.5rem !important;
     }
 }

 /* Estilos adicionales para página de prensa */
 .social-links-press .btn {
     border-radius: 50px;
     transition: all 0.3s ease;
 }

 .social-links-press .btn:hover {
     transform: translateY(-3px);
     box-shadow: 0 8px 20px rgba(0, 0, 0, 0.15);
 }

 /* Variación de colores para más de 4 artículos */
 .story-card:nth-child(4n+1) {
     background: #E9909C !important;
 }

 .story-card:nth-child(4n+2) {
     background: #F2EE61 !important;
 }

 .story-card:nth-child(4n+3) {
     background: #EAC4C7 !important;
 }

 .story-card:nth-child(4n+4) {
     background: #B8E6D5 !important;
 }

 .legal-section-title {
     font-size: 1.5rem;
     font-weight: 500;
     color: #1d1d1f;
     margin-bottom: 1rem;
 }

 .legal-section-content {
     font-size: 1rem;
     line-height: 1.8;
     color: #666;
 }

 .legal-intro {
     padding: 2rem;
     background: #fbfbfd;
     border-radius: 5px;
     border-left: 4px solid #1d1d1f;
 }

 .legal-list {
     list-style: none;
     padding-left: 0;
     margin: 1rem 0;
 }

 .legal-list li {
     padding: 0.5rem 0 0.5rem 2rem;
     position: relative;
     font-size: 1rem;
     line-height: 1.8;
     color: #666;
 }

 .legal-list li::before {
     content: "•";
     position: absolute;
     left: 0.5rem;
     color: #1d1d1f;
     font-weight: bold;
 }

 .legal-contact-list {
     list-style: none;
     padding: 0;
     margin: 0;
 }

 .legal-contact-list li {
     padding: 0.5rem 0;
     font-size: 1rem;
     color: #666;
 }

 

 .legal-contact-list a:hover {
     opacity: 0.6;
 }

 .legal-section-title {
     font-size: 1.5rem;
     font-weight: 500;
     color: #1d1d1f;
     margin-bottom: 1rem;
 }

 .legal-section-content {
     font-size: 1rem;
     line-height: 1.8;
     color: #666;
 }

 
 .legal-list {
     list-style: none;
     padding-left: 0;
     margin: 1rem 0;
 }

 .legal-list li {
     padding: 0.5rem 0 0.5rem 2rem;
     position: relative;
     font-size: 1rem;
     line-height: 1.8;
     color: #666;
 }

 .legal-list li::before {
     content: "•";
     position: absolute;
     left: 0.5rem;
     color: #1d1d1f;
     font-weight: bold;
 }

 .legal-contact-list {
     list-style: none;
     padding: 0;
     margin: 0;
 }

 .legal-contact-list li {
     padding: 0.5rem 0;
     font-size: 1rem;
     color: #666;
 }

 .legal-link { 
     text-decoration: none;
     border-bottom: 1px solid ;
     transition: opacity 0.3s ease;
 }

 .legal-link:hover {
     opacity: 0.6;
 }

 .legal-contact-list a { 
     text-decoration: none;
     border-bottom: 1px solid ;
     transition: opacity 0.3s ease;
 }

 .legal-contact-list a:hover {
     opacity: 0.6;
 }