/*
Theme Name: Antonio Torres Proyectados
Author: World-Class Senior Frontend Engineer
Description: Un clon 1:1 del sitio web de Antonio Torres Proyectados, convertido desde una aplicación React a un tema clásico de WordPress.
Version: 2.0
Requires at least: 5.0
Tested up to: 6.5
Requires PHP: 7.4
Text Domain: antoniotorres
*/

/* --- GLOBAL FIXES --- */
body {
    overflow-x: hidden; /* Evita el scroll horizontal causado por elementos anchos */
}

/* --- KEYFRAMES & GLOBAL ANIMATIONS --- */
@keyframes marquee {
    0% { transform: translateX(0); }
    100% { transform: translateX(-50%); }
}
.animate-marquee {
    animation: marquee 20s linear infinite;
}
.animate-marquee-reverse {
    animation: marquee 20s linear infinite reverse;
}

/* --- TYPOGRAPHY EFFECTS --- */
.text-stroke-white {
    -webkit-text-stroke: 1px rgba(255,255,255,0.8);
    color: transparent;
}
.text-stroke-black {
    -webkit-text-stroke: 1px rgba(0,0,0,0.2);
    color: transparent;
}
.vertical-text {
    writing-mode: vertical-rl;
    text-orientation: mixed;
    transform: rotate(180deg);
}

/* --- ACCORDION LOGIC (CSS-ONLY) --- */
.accordion-panel {
    flex: 1;
    transition: flex 0.7s cubic-bezier(0.25, 1, 0.5, 1), filter 0.5s ease;
    filter: grayscale(100%) brightness(0.6);
    position: relative;
    overflow: hidden;
    border-right: 1px solid rgba(255,255,255,0.1);
}
.accordion-panel:last-child {
    border-right: none;
}
.accordion-panel .panel-overlay { opacity: 0.8; transition: opacity 0.5s; }
.accordion-panel .collapsed-title { opacity: 1; transition: opacity 0.3s, transform 0.5s; white-space: nowrap; }
.accordion-panel .expanded-content { opacity: 0; transform: translateY(20px); transition: all 0.5s; transition-delay: 0s; }
.accordion-panel .badge-star { opacity: 0; transition: opacity 0.3s; }

.accordion-panel:first-child { flex: 4; filter: grayscale(0%); }
.accordion-panel:first-child .panel-overlay { opacity: 0.7; }
.accordion-panel:first-child .collapsed-title { opacity: 0; pointer-events: none; }
.accordion-panel:first-child .expanded-content { opacity: 1; transform: translateY(0); transition-delay: 0.2s; }
.accordion-panel:first-child .badge-star { opacity: 1; transition-delay: 0.3s; }

.accordion-container:hover .accordion-panel:first-child:not(:hover) {
    flex: 1;
    filter: grayscale(100%) brightness(0.6);
}
.accordion-container:hover .accordion-panel:first-child:not(:hover) .panel-overlay { opacity: 0.8; }
.accordion-container:hover .accordion-panel:first-child:not(:hover) .collapsed-title { opacity: 1; pointer-events: auto; }
.accordion-container:hover .accordion-panel:first-child:not(:hover) .expanded-content { opacity: 0; transform: translateY(20px); transition-delay: 0s; }
.accordion-container:hover .accordion-panel:first-child:not(:hover) .badge-star { opacity: 0; }

.accordion-container .accordion-panel:hover {
    flex: 4 !important;
    filter: grayscale(0%) !important;
}
.accordion-container .accordion-panel:hover .panel-overlay { opacity: 0.7 !important; }
.accordion-container .accordion-panel:hover .collapsed-title { opacity: 0 !important; transform: translateY(-20px); pointer-events: none; }
.accordion-container .accordion-panel:hover .expanded-content { opacity: 1 !important; transform: translateY(0) !important; transition-delay: 0.2s; }
.accordion-container .accordion-panel:hover .badge-star { opacity: 1 !important; }

@media (max-width: 768px) {
    .accordion-panel:first-child, .accordion-container .accordion-panel:hover { flex: 6 !important; }
    .vertical-text { writing-mode: horizontal-tb; transform: none; }
}

/* --- PROSE STYLES FOR CONTENT PAGES (page.php, single.php, index.php) --- */
.prose {
    color: #333;
    line-height: 1.6;
}
.prose h1, .prose h2, .prose h3, .prose h4, .prose h5, .prose h6 {
    font-family: 'Montserrat', sans-serif;
    font-weight: 900;
    margin-bottom: 1em;
    color: #0c0a09;
}
.prose p {
    margin-bottom: 1.2em;
}
.prose a {
    color: #C69C6D;
    text-decoration: underline;
    transition: color 0.3s;
}
.prose a:hover {
    color: #0c0a09;
}
.prose ul, .prose ol {
    margin-left: 1.5rem;
    margin-bottom: 1.2em;
}
.prose ul li {
    list-style-type: disc;
}
.prose ol li {
    list-style-type: decimal;
}