/**
Theme Name: Astra Child
Author: Brainstorm Force
Author URI: http://wpastra.com/about/
Description: Astra is the fastest, fully customizable & beautiful theme suitable for blogs, personal portfolios and business websites. It is very lightweight (less than 50KB on frontend) and offers unparalleled speed. Built with SEO in mind, Astra comes with schema.org code integrated so search engines will love your site. Astra offers plenty of sidebar options and widget areas giving you a full control for customizations. Furthermore, we have included special features and templates so feel free to choose any of your favorite page builder plugin to create pages flexibly. Some of the other features: # WooCommerce Ready # Responsive # Compatible with major plugins # Translation Ready # Extendible with premium addons # Regularly updated # Designed, Developed, Maintained & Supported by Brainstorm Force. Looking for a perfect base theme? Look no further. Astra is fast, fully customizable and beautiful theme!
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: astra-child
Template: astra
*/

/* ============================================================
   ESTILOS GENERALES
   ============================================================ */

.mi-producto-wrapper {
    width: 100%;
    max-width: 1400px !important;
    margin: 20px auto;
    display: flex;
    flex-wrap: wrap;
    gap: 40px;
    align-items: flex-start;
}

.ast-container {
    max-width: 100% !important;
    padding: 0 20px;
}

@media (max-width: 768px) {
    .mi-producto-wrapper {
        flex-direction: column;
        gap: 20px;
        padding: 0 10px;
    }
}

/* ============================================================
   ARCHIVE GRID — Recetas y archivos genericos
   ============================================================ */

.archive-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    gap: 24px;
    margin-top: 20px;
}

@media (max-width: 768px) {
    .archive-grid {
        grid-template-columns: 1fr;
        gap: 16px;
    }
}

.archive-item {
    background: #fff;
    border-radius: 16px;
    box-shadow: 0 4px 16px rgba(51, 42, 14, 0.08);
    padding: 16px;
    transition: all 0.3s ease;
    border: 4px solid #E9DDB5;
}

.archive-item:hover {
    transform: translateY(-8px);
    box-shadow: 0 12px 32px rgba(51, 42, 14, 0.14);
}

.archive-thumbnail img {
    border-radius: 16px;
    margin-bottom: 12px;
    width: 100%;
    height: auto;
}

.archive-title {
    font-size: 1.25rem;
    margin: 0 0 0px;
    color: #222;
}

.archive-excerpt {
    color: #555;
    font-size: 0.95rem;
    margin-bottom: 12px;
}

.archive-readmore {
    text-align: right;
}

.leer-mas-btn {
    display: inline-block;
    background-color: #332A0E;
    color: #fff !important;
    padding: 6px 14px;
    border-radius: 6px;
    font-size: 0.9rem;
    text-decoration: none;
    transition: background-color 0.2s ease;
}

.leer-mas-btn:hover {
    background-color: #523F07;
}

.ast-archive-description {
    margin-bottom: 10px !important;
    padding: 0 !important;
    background: none !important;
}

#primary, 
#primary .site-main, 
.ast-archive-description {
    margin-top: 0 !important;
    padding-top: 0 !important;
}


/* ============================================================
   ESTILOS PARA PAGINA "CLAUDIA" — Shortcodes
   ============================================================ */

/* ----- Introduccion destacada ----- */
.claudia-intro {
    max-width: 900px;
    margin: 0 auto 60px;
    padding: 40px 30px;
    background: linear-gradient(135deg, #FDF8F0 0%, #F5F0E6 100%);
    border-radius: 16px;
    border-left: 5px solid #D4AF37;
    box-shadow: 0 4px 20px rgba(51, 42, 14, 0.08);
    font-size: 1.1rem;
    line-height: 1.8;
    color: #332A0E;
    text-align: center;
}

.claudia-intro p {
    margin-bottom: 0;
}

/* ----- Secciones alternadas (img + texto) ----- */
.claudia-section {
    display: flex;
    align-items: center;
    gap: 50px;
    max-width: 1200px;
    margin: 0 auto 60px;
    padding: 0 20px;
}

.claudia-section--right {
    flex-direction: row-reverse;
}

.claudia-section__media {
    flex: 0 0 45%;
    max-width: 500px;
}

.claudia-section__media img {
    width: 100%;
    height: auto;
    border-radius: 16px;
    box-shadow: 0 4px 16px rgba(51, 42, 14, 0.08);
    object-fit: cover;
    transition: transform 0.4s ease, box-shadow 0.4s ease;
    border: 4px solid #E9DDB5;
}

.claudia-section__media img:hover {
    transform: translateY(-8px) scale(1.02);
    box-shadow: 0 12px 32px rgba(51, 42, 14, 0.14);
}

.claudia-section__body {
    flex: 1 1 55%;
}

.claudia-section__title {
    font-size: 1.8rem;
    font-weight: 700;
    color: #FFCD57;
    margin-bottom: 20px;
    position: relative;
    padding-bottom: 12px;
}

.claudia-section__title::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 60px;
    height: 3px;
    background: linear-gradient(90deg, #D4AF37, #E5C158);
    border-radius: 2px;
}

.claudia-section__text {
    font-size: 1.05rem;
    line-height: 1.8;
    color: #E9DDB5;
}

.claudia-section__text p {
    margin-bottom: 16px;
}

.claudia-section__text p:last-child {
    margin-bottom: 0;
}

/* ----- Cita destacada (layout horizontal con imagen) ----- */
.claudia-quote-wrapper {
    display: block;
    max-width: 900px;
    margin: 60px auto;
    padding: 0 20px;
}

.claudia-quote {
    max-width: 100%;
    margin: 0;
    padding: 40px;
    background: #332A0E;
    border-radius: 16px;
    text-align: justify;
    position: relative;
    box-shadow: 0 8px 30px rgba(51, 42, 14, 0.2);
}

.claudia-quote__mark--open,
.claudia-quote__mark--close {
    font-family: Georgia, serif;
    font-size: 2rem;
    line-height: 1;
    color: #D4AF37;
    opacity: 0.8;
}

.claudia-quote__mark--open {
    margin-right: 8px;
}

.claudia-quote__mark--close {
    margin-left: 8px;
}

.claudia-quote p {
    font-size: 1.2rem;
    font-style: italic;
    color: #E9DDB5;
    line-height: 1.7;
    margin: 0;
    display: inline;
    text-align: justify;
}

/* ----- Grid de historias ----- */
.claudia-stories-wrapper {
    max-width: 1200px;
    margin: 60px auto;
    padding: 0 20px;
}

.claudia-stories__heading {
    text-align: center;
    font-size: 2rem;
    font-weight: 700;
    color: #FFCD57;
    margin-bottom: 40px;
}

.claudia-stories-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
    gap: 24px;
}

/* ----- Tarjeta de historia ----- */
.claudia-story-card {
    background: #fff;
    border-radius: 16px;
    padding: 28px;
    box-shadow: 0 4px 16px rgba(51, 42, 14, 0.08);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    border: 4px solid #E9DDB5;
    border-top: 4px solid #D4AF37;
}

.claudia-story-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 8px 28px rgba(51, 42, 14, 0.14);
}

.claudia-story-card__icon {
    font-size: 2.2rem;
    margin-bottom: 12px;
    line-height: 1;
}

.claudia-story-card__title {
    font-size: 1.15rem;
    font-weight: 700;
    color: #332A0E;
    margin-bottom: 12px;
}

.claudia-story-card__text {
    font-size: 0.95rem;
    line-height: 1.7;
    color: #555;
}

.claudia-story-card__text p {
    margin-bottom: 10px;
}

.claudia-story-card__text p:last-child {
    margin-bottom: 0;
}

/* ----- Responsive Claudia ----- */
@media (max-width: 900px) {
    .claudia-section,
    .claudia-section--right {
        flex-direction: column;
        gap: 30px;
        text-align: center;
    }

    .claudia-section__media {
        flex: 1 1 100%;
        max-width: 100%;
    }

    .claudia-section__body {
        flex: 1 1 100%;
    }

    .claudia-section__title::after {
        left: 50%;
        transform: translateX(-50%);
    }

    .claudia-quote-wrapper {
        flex-direction: column;
        gap: 30px;
    }

    .claudia-quote {
        flex: 1 1 100%;
        max-width: 100%;
        padding: 30px 25px;
    }

    .claudia-quote p {
        font-size: 1.1rem;
    }
}

@media (max-width: 768px) {
    .claudia-stories-wrapper {
        padding: 0 12px;
        margin: 40px auto;
    }

    .claudia-stories-grid {
        grid-template-columns: 1fr;
        gap: 16px;
    }

    .claudia-stories__heading {
        font-size: 1.6rem;
        margin-bottom: 28px;
    }

    .claudia-section {
        gap: 20px;
        padding: 0 12px;
        margin-bottom: 40px;
    }

    .claudia-intro {
        padding: 24px 16px;
        margin-bottom: 40px;
        font-size: 1rem;
    }

    .claudia-quote {
        padding: 24px 16px;
    }

    .claudia-quote__mark--open,
    .claudia-quote__mark--close {
        font-size: 1.6rem;
    }

    .claudia-quote p {
        font-size: 1.05rem;
    }
}

@media (max-width: 480px) {
    .claudia-section {
        gap: 16px;
        padding: 0 8px;
    }

    .claudia-section__title {
        font-size: 1.3rem;
    }

    .claudia-story-card {
        padding: 20px 16px;
    }

    .claudia-quote {
        padding: 20px 12px;
    }
}


/* ============================================================
   BLOG - DISENO REVISTA CULINARIA
   ============================================================ */

.blog-revista-wrapper {
    width: 100%;
    max-width: 1400px !important;
    margin: 20px auto;
    display: flex;
    flex-wrap: wrap;
    gap: 40px;
    align-items: flex-start;
    padding: 0 20px;
}

.blog-revista-main {
    flex: 1 1 70%;
    background: #fff;
    padding: 32px 24px;
    border-radius: 16px;
    box-shadow: 0 2px 12px rgba(0,0,0,0.06);
    min-width: 0;
}

.blog-revista-sidebar {
    flex: 0 0 320px;
    max-width: 320px;
    min-width: 260px;
    background-color: #24242469;
    padding: 24px;
    border-radius: 16px;
    box-shadow: 0 2px 12px rgba(0,0,0,0.06);
    margin-top: 0;
}

.blog-revista-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 28px;
}

.blog-revista-card {
    background: #fff;
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 4px 16px rgba(51, 42, 14, 0.08);
    transition: transform 0.35s ease, box-shadow 0.35s ease;
    border: 4px solid #E9DDB5;
}

.blog-revista-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 12px 32px rgba(51, 42, 14, 0.14);
}

.blog-revista-card__link {
    display: block;
    text-decoration: none;
    color: inherit;
}

.blog-revista-card__media {
    position: relative;
    overflow: hidden;
    aspect-ratio: 16 / 10;
}

.blog-revista-card__img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.5s ease;
}

.blog-revista-card:hover .blog-revista-card__img {
    transform: scale(1.06);
}

.blog-revista-card__badge {
    position: absolute;
    top: 14px;
    left: 14px;
    background: linear-gradient(135deg, #D4AF37, #E5C158);
    color: #332A0E;
    font-size: 0.75rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    padding: 5px 12px;
    border-radius: 20px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.15);
    z-index: 2;
}

.blog-revista-card__body {
    padding: 22px 24px 26px;
}

.blog-revista-card__meta {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 0.82rem;
    color: #888;
    margin-bottom: 12px;
    text-transform: uppercase;
    letter-spacing: 0.3px;
}

.blog-revista-card__sep {
    color: #D4AF37;
    font-weight: 700;
}

.blog-revista-card__title {
    font-size: 1.25rem;
    font-weight: 700;
    color: #332A0E;
    line-height: 1.35;
    margin-bottom: 12px;
    transition: color 0.2s ease;
}

.blog-revista-card:hover .blog-revista-card__title {
    color: #D4AF37;
}

.blog-revista-card__excerpt {
    font-size: 0.95rem;
    line-height: 1.65;
    color: #555;
    margin-bottom: 18px;
}

.blog-revista-card__cta {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 0.9rem;
    font-weight: 600;
    color: #332A0E;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    transition: color 0.2s ease, gap 0.2s ease;
}

.blog-revista-card__arrow {
    transition: transform 0.2s ease;
}

.blog-revista-card:hover .blog-revista-card__cta {
    color: #D4AF37;
    gap: 10px;
}

.blog-revista-card:hover .blog-revista-card__arrow {
    transform: translateX(4px);
}

.blog-revista-empty {
    text-align: center;
    padding: 60px 20px;
    color: #888;
    font-size: 1.1rem;
}

@media (max-width: 900px) {
    .blog-revista-wrapper {
        flex-direction: column;
        gap: 20px;
    }
    .blog-revista-main {
        flex: 1 1 100%;
        padding: 24px 16px;
    }
    .blog-revista-sidebar {
        flex: 1 1 100%;
        max-width: 100%;
    }
}

@media (max-width: 768px) {
    .blog-revista-wrapper {
        padding: 0 12px;
    }

    .blog-revista-grid {
        grid-template-columns: 1fr;
        gap: 16px;
    }

    .blog-revista-card__title {
        font-size: 1.1rem;
    }

    .blog-revista-card__body {
        padding: 18px 16px 20px;
    }
}

/* ============================================================
   SINGLE POST
   ============================================================ */

.blog-single-article {
    max-width: 800px;
    margin: 0 auto;
    padding: 0 20px;
}

.blog-single-hero {
    margin: 0 -20px 30px;
    border-radius: 0 0 16px 16px;
    overflow: hidden;
    box-shadow: 0 8px 30px rgba(51, 42, 14, 0.12);
}

.blog-single-hero__img {
    width: 100%;
    height: auto;
    display: block;
}

.blog-single-header {
    text-align: center;
    margin-bottom: 40px;
    padding-bottom: 30px;
    border-bottom: 1px solid rgba(51, 42, 14, 0.08);
}

.blog-single-categories {
    margin-bottom: 16px;
}

.blog-single-cat {
    display: inline-block;
    background: linear-gradient(135deg, #D4AF37, #E5C158);
    color: #332A0E;
    font-size: 0.75rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1px;
    padding: 5px 14px;
    border-radius: 20px;
    margin: 0 4px 6px;
    text-decoration: none;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.blog-single-cat:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(212, 175, 55, 0.3);
}

.blog-single-title {
    font-size: 2.2rem;
    font-weight: 700;
    color: #332A0E;
    line-height: 1.2;
    margin-bottom: 20px;
}

.blog-single-meta {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 8px 16px;
    font-size: 0.9rem;
    color: #777;
}

.blog-single-meta__sep {
    color: #D4AF37;
    font-weight: 700;
}

.blog-single-meta__author {
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

.blog-single-avatar {
    border-radius: 50%;
    width: 32px;
    height: 32px;
}

.blog-single-content {
    font-size: 1.05rem;
    line-height: 1.8;
    color: #333;
}

.blog-single-content p {
    margin-bottom: 1.5em;
}

.blog-single-content h2,
.blog-single-content h3 {
    color: #332A0E;
    margin-top: 2em;
    margin-bottom: 0.8em;
}

.blog-single-content h2 {
    font-size: 1.6rem;
    border-bottom: 2px solid #D4AF37;
    padding-bottom: 8px;
    display: inline-block;
}

.blog-single-content h3 {
    font-size: 1.3rem;
}

.blog-single-content blockquote {
    background: #FDF8F0;
    border-left: 4px solid #D4AF37;
    padding: 20px 24px;
    margin: 2em 0;
    border-radius: 0 8px 8px 0;
    font-style: italic;
    color: #555;
}

.blog-single-content img {
    border-radius: 16px;
    box-shadow: 0 4px 16px rgba(0,0,0,0.08);
    max-width: 100%;
    height: auto;
}

.blog-single-content a {
    color: #D4AF37;
    text-decoration: underline;
    text-underline-offset: 3px;
}

.blog-single-content a:hover {
    color: #332A0E;
}

.blog-single-footer {
    margin-top: 40px;
    padding-top: 24px;
    border-top: 1px solid rgba(51, 42, 14, 0.08);
}

.blog-single-tags__label {
    font-size: 0.85rem;
    font-weight: 700;
    color: #332A0E;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-right: 8px;
}

.blog-single-tag {
    display: inline-block;
    background: #F5F0E6;
    color: #332A0E;
    font-size: 0.82rem;
    padding: 4px 12px;
    border-radius: 16px;
    margin: 0 4px 6px 0;
    text-decoration: none;
    transition: background 0.2s ease, color 0.2s ease;
}

.blog-single-tag:hover {
    background: #332A0E;
    color: #E9DDB5;
}

.blog-single-nav {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
    max-width: 800px;
    margin: 50px auto 0;
    padding: 0 20px;
}

.blog-single-nav__prev,
.blog-single-nav__next {
    display: flex;
    flex-direction: column;
    padding: 20px 24px;
    background: #fff;
    border-radius: 16px;
    box-shadow: 0 2px 12px rgba(0,0,0,0.06);
    text-decoration: none;
    color: inherit;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
    border: 1px solid rgba(51, 42, 14, 0.06);
}

.blog-single-nav__prev:hover,
.blog-single-nav__next:hover {
    transform: translateY(-4px);
    box-shadow: 0 6px 20px rgba(51, 42, 14, 0.1);
}

.blog-single-nav__next {
    text-align: right;
    align-items: flex-end;
}

.blog-single-nav__label {
    font-size: 0.8rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1px;
    color: #D4AF37;
    margin-bottom: 8px;
}

.blog-single-nav__title {
    font-size: 1rem;
    font-weight: 600;
    color: #332A0E;
    line-height: 1.4;
}

@media (max-width: 600px) {
    .blog-single-title {
        font-size: 1.6rem;
    }
    .blog-single-meta {
        flex-direction: column;
        gap: 6px;
    }
    .blog-single-nav {
        grid-template-columns: 1fr;
    }
    .blog-single-nav__next {
        text-align: left;
        align-items: flex-start;
    }
}

/* ============================================================
   PAGINACION BLOG REVISTA
   ============================================================ */

.blog-revista-pagination {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 6px;
    margin-top: 40px;
    padding-top: 20px;
    border-top: 1px solid rgba(51, 42, 14, 0.08);
    flex-wrap: wrap;
}

.blog-revista-pagination a,
.blog-revista-pagination span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 40px;
    height: 40px;
    padding: 0 12px;
    border-radius: 8px;
    font-size: 0.9rem;
    font-weight: 600;
    text-decoration: none;
    transition: all 0.2s ease;
}

.blog-revista-pagination a {
    background: #fff;
    color: #332A0E;
    border: 1px solid rgba(51, 42, 14, 0.1);
    box-shadow: 0 1px 4px rgba(0,0,0,0.04);
}

.blog-revista-pagination a:hover {
    background: #332A0E;
    color: #E9DDB5;
    border-color: #332A0E;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(51, 42, 14, 0.12);
}

.blog-revista-pagination span.current {
    background: linear-gradient(135deg, #D4AF37, #E5C158);
    color: #332A0E;
    border: 1px solid #D4AF37;
    font-weight: 700;
}

.blog-revista-pagination span.dots {
    background: transparent;
    border: none;
    color: #888;
    min-width: auto;
    padding: 0 4px;
}

.blog-revista-grid--shortcode {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 28px;
}

@media (max-width: 768px) {
    .blog-revista-grid--shortcode {
        grid-template-columns: 1fr;
        gap: 16px;
    }
    .blog-revista-pagination a,
    .blog-revista-pagination span {
        min-width: 36px;
        height: 36px;
        padding: 0 10px;
        font-size: 0.85rem;
    }
}

/* ============================================================
   ANIMACION DE ENTRADA EN TARJETAS
   ============================================================ */
@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(30px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.archive-item,
.blog-revista-card,
.claudia-story-card {
    animation: fadeInUp 0.6s ease forwards;
}

.archive-item:nth-child(1) { animation-delay: 0s; }
.archive-item:nth-child(2) { animation-delay: 0.1s; }
.archive-item:nth-child(3) { animation-delay: 0.2s; }
.archive-item:nth-child(4) { animation-delay: 0.3s; }
.archive-item:nth-child(5) { animation-delay: 0.4s; }
.archive-item:nth-child(6) { animation-delay: 0.5s; }

.blog-revista-card:nth-child(1) { animation-delay: 0s; }
.blog-revista-card:nth-child(2) { animation-delay: 0.15s; }
.blog-revista-card:nth-child(3) { animation-delay: 0.3s; }
.blog-revista-card:nth-child(4) { animation-delay: 0.45s; }
.blog-revista-card:nth-child(5) { animation-delay: 0.6s; }
.blog-revista-card:nth-child(6) { animation-delay: 0.75s; }

.claudia-story-card:nth-child(1) { animation-delay: 0s; }
.claudia-story-card:nth-child(2) { animation-delay: 0.12s; }
.claudia-story-card:nth-child(3) { animation-delay: 0.24s; }
.claudia-story-card:nth-child(4) { animation-delay: 0.36s; }

/* ============================================================
   CONTACT FORM 7 — Formulario de contacto estilizado
   ============================================================ */

.wpcf7 {
    background: rgba(51, 42, 14, 0.75);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    border-radius: 16px;
    padding: 32px;
    border: 2px solid rgba(212, 175, 55, 0.3);
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.3);
}

.wpcf7 label {
    display: block;
    font-size: 0.9rem;
    font-weight: 600;
    color: #E9DDB5;
    margin-bottom: 6px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.wpcf7 input[type="text"],
.wpcf7 input[type="email"],
.wpcf7 input[type="tel"],
.wpcf7 textarea {
    width: 100%;
    padding: 10px 14px;
    font-size: 1rem;
    color: #332A0E;
    background: rgba(255, 255, 255, 0.95);
    border: 2px solid transparent;
    border-radius: 10px;
    outline: none;
    transition: all 0.25s ease;
    box-sizing: border-box;
    margin-bottom: 4px;
}

.wpcf7 input[type="text"]:focus,
.wpcf7 input[type="email"]:focus,
.wpcf7 input[type="tel"]:focus,
.wpcf7 textarea:focus {
    border-color: #D4AF37;
    box-shadow: 0 0 0 4px rgba(212, 175, 55, 0.2);
    background: #fff;
}

.wpcf7 input::placeholder,
.wpcf7 textarea::placeholder {
    color: #999;
    font-style: italic;
}

.wpcf7 textarea {
    min-height: 100px;
    resize: vertical;
}

.wpcf7 input[type="submit"] {
    display: inline-block;
    width: auto;
    padding: 10px 28px;
    font-size: 0.9rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: #E9DDB5;
    background: #332A0E;
    border: 2px solid #D4AF37;
    border-radius: 8px;
    cursor: pointer;
    transition: all 0.3s ease;
}

.wpcf7 input[type="submit"]:hover {
    background: #D4AF37;
    color: #332A0E;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(212, 175, 55, 0.3);
}

.wpcf7-form + p,
.wpcf7 + p,
.wpcf7 ~ p {
    margin-top: 12px;
    text-align: left;
    font-size: 0.85rem;
    color: #E9DDB5;
    font-style: italic;
}

.wpcf7 .wpcf7-response-output {
    margin: 16px 0 0;
    padding: 16px;
    border-radius: 10px;
    font-size: 0.95rem;
    text-align: center;
}

.wpcf7 form.sent .wpcf7-response-output {
    background: rgba(40, 167, 69, 0.15);
    border: 1px solid rgba(40, 167, 69, 0.4);
    color: #d4edda;
}

.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output {
    background: rgba(220, 53, 69, 0.15);
    border: 1px solid rgba(220, 53, 69, 0.4);
    color: #f8d7da;
}

.wpcf7 .ajax-loader {
    filter: brightness(0) invert(1);
}

@media (max-width: 768px) {
    .wpcf7 {
        padding: 20px;
        border-radius: 16px;
    }
    .wpcf7 input[type="submit"] {
        width: 100%;
        text-align: center;
    }
}

/* ============================================================
   FAQS — Acordeon
   ============================================================ */

.claudia-faq {
    max-width: 900px;
    margin: 40px auto;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.claudia-faq__item {
    background: #fff;
    border-radius: 16px;
    border: 4px solid #E9DDB5;
    box-shadow: 0 4px 16px rgba(51, 42, 14, 0.08);
    overflow: hidden;
    transition: box-shadow 0.2s ease;
}

.claudia-faq__item:hover {
    box-shadow: 0 6px 20px rgba(51, 42, 14, 0.12);
}

.claudia-faq__item[open] {
    box-shadow: 0 8px 24px rgba(51, 42, 14, 0.14);
}

.claudia-faq__question {
    padding: 20px 24px;
    font-size: 1.05rem;
    font-weight: 600;
    color: #332A0E;
    cursor: pointer;
    list-style: none;
    position: relative;
    padding-right: 48px;
    transition: color 0.2s ease;
}

.claudia-faq__question::-webkit-details-marker {
    display: none;
}

.claudia-faq__question::after {
    content: '+';
    position: absolute;
    right: 20px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 1.4rem;
    font-weight: 300;
    color: #D4AF37;
    transition: transform 0.3s ease;
}

.claudia-faq__item[open] .claudia-faq__question::after {
    content: '\2212';
}

.claudia-faq__question:hover {
    color: #D4AF37;
}

.claudia-faq__answer {
    padding: 0 24px 20px;
    font-size: 0.95rem;
    line-height: 1.7;
    color: #555;
    border-top: 1px solid rgba(51, 42, 14, 0.06);
    margin-top: 0;
    padding-top: 16px;
}

@media (max-width: 768px) {
    .claudia-faq {
        padding: 0 12px;
    }
    .claudia-faq__question {
        padding: 16px 20px;
        padding-right: 44px;
        font-size: 0.95rem;
    }
    .claudia-faq__answer {
        padding: 0 20px 16px;
        font-size: 0.9rem;
    }
}

/* ============================================================
   BARRA LATERAL DEL BLOG — tarjetas estilo Cocina con Clau
   ============================================================ */
.elementor-widget-sidebar aside.widget {
    background: #fff;
    border: 4px solid #E9DDB5;
    border-radius: 16px;
    padding: 20px;
    margin-bottom: 24px;
    box-shadow: 0 4px 16px rgba(51, 42, 14, 0.08);
}

.elementor-widget-sidebar .widget h2,
.elementor-widget-sidebar .widget-title {
    font-size: 1.1rem;
    color: #332A0E;
    margin: 0 0 12px;
    padding-bottom: 8px;
    border-bottom: 2px solid #D4AF37;
}

.elementor-widget-sidebar .widget a {
    color: #332A0E;
    text-decoration: none;
}

.elementor-widget-sidebar .widget a:hover {
    color: #B8912A;
}

.elementor-widget-sidebar .widget ul {
    padding-left: 0;
    margin: 0;
    list-style: none;
}

.elementor-widget-sidebar .widget ul li {
    padding: 6px 0;
    border-bottom: 1px solid #F0EAD8;
}

.elementor-widget-sidebar .widget ul li:last-child {
    border-bottom: none;
}

.elementor-widget-sidebar .widget img {
    border-radius: 16px;
}

/* Campo de búsqueda */
.elementor-widget-sidebar .widget_search input[type="search"],
.elementor-widget-sidebar .wp-block-search__input {
    width: 100%;
    padding: 10px 14px;
    border: 2px solid #E9DDB5;
    border-radius: 12px;
    background: #FDF8F0;
}

.elementor-widget-sidebar .widget_search input[type="submit"],
.elementor-widget-sidebar .wp-block-search__button {
    background: #332A0E;
    color: #E9DDB5;
    border: none;
    border-radius: 12px;
    padding: 10px 18px;
    margin-top: 8px;
    cursor: pointer;
}
