/*
Theme Name: Mónica Eurídice
Theme URI: https://monicaeuridice.com
Author: Mónica Eurídice
Description: Tema profesional para Mónica Eurídice — Facilitadora de procesos humanos. Gestión de talleres/eventos con WooCommerce.
Version: 3.0.0
Requires at least: 6.0
Tested up to: 6.5
Requires PHP: 7.4
License: GNU General Public License v2 or later
Text Domain: monica-euridice
*/

*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
:root{
--cream:#E5DECE;--cream-light:#F3F2E3;--gold:#DDB17A;--gold-soft:rgba(221,177,122,.12);
--sage:#798A88;--light:#EEEEEE;--dark:#303030;
--radius-sm:12px;--radius-md:20px;--radius-lg:32px;--radius-xl:48px;
--font-display:'Playfair Display',Georgia,serif;
--font-body:'Libre Franklin',system-ui,sans-serif;
--ease-out:cubic-bezier(.22,1,.36,1);--ease-spring:cubic-bezier(.34,1.56,.64,1);
}
html{scroll-behavior:smooth;font-size:16px;-webkit-font-smoothing:antialiased}
body{font-family:var(--font-body);color:var(--dark);background:var(--cream-light);overflow-x:hidden;line-height:1.6}
img{max-width:100%;height:auto}a{text-decoration:none}ul,ol{list-style:none}
.container{max-width:1200px;margin:0 auto;padding:0 2rem}
.section-label{font-family:var(--font-body);font-weight:500;font-size:.7rem;letter-spacing:.22em;text-transform:uppercase;color:var(--sage);margin-bottom:.75rem;display:inline-block;background:rgba(121,138,136,.08);padding:.4rem 1rem;border-radius:100px}
.section-title{font-family:var(--font-display);font-weight:300;font-size:clamp(2rem,4vw,3rem);line-height:1.18;color:var(--dark)}
.section-title span.gold{color:var(--gold)}
.gold-line{width:48px;height:2px;background:var(--gold);border-radius:2px;margin:1.5rem 0}
.about-text p strong,.service-card p strong,.hero-description strong,.podcast-desc strong,.event-excerpt strong{font-weight:500;color:var(--dark)}
.hero-description strong{color:rgba(255,255,255,.92)}

.reveal{opacity:0;transform:translateY(28px);transition:opacity .7s var(--ease-out),transform .7s var(--ease-out)}
.reveal.visible{opacity:1;transform:translateY(0)}
.reveal-d1{transition-delay:.08s}.reveal-d2{transition-delay:.16s}.reveal-d3{transition-delay:.24s}.reveal-d4{transition-delay:.32s}

/* ── NAVBAR ── */
.navbar{position:fixed;top:0;left:0;right:0;z-index:100;padding:1rem 0;transition:all .5s var(--ease-out)}
.navbar.scrolled{padding:.6rem 0}
.navbar-inner{display:flex;justify-content:space-between;align-items:center;background:rgba(243,242,227,.65);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border:1px solid rgba(255,255,255,.45);border-radius:100px;padding:.6rem .75rem .6rem 1.5rem;transition:all .5s var(--ease-out);box-shadow:0 2px 20px rgba(48,48,48,.04)}
.navbar.scrolled .navbar-inner{box-shadow:0 4px 30px rgba(48,48,48,.07)}
.navbar-logo svg{height:22px;width:auto;fill:var(--dark);display:block}
.nav-links{display:flex;gap:2rem;align-items:center}
.nav-links a{font-family:var(--font-body);font-weight:400;font-size:.78rem;letter-spacing:.06em;color:var(--dark);padding:.4rem .1rem;position:relative;transition:color .3s var(--ease-out)}
.nav-links a::after{content:'';position:absolute;bottom:0;left:50%;width:0;height:1.5px;background:var(--gold);border-radius:2px;transition:all .35s var(--ease-out);transform:translateX(-50%)}
.nav-links a:hover{color:var(--gold)}.nav-links a:hover::after{width:100%}
.nav-links a.nav-cta{font-weight:500;font-size:.75rem;letter-spacing:.05em;color:#fff !important;background:var(--dark);padding:.6rem 1.5rem;border-radius:100px;transition:all .35s var(--ease-out);border:none;outline:none;box-shadow:none}
.nav-links a.nav-cta::after{display:none !important}
.nav-links a.nav-cta:hover{background:var(--gold);color:#fff !important;transform:scale(1.03)}
.mobile-toggle{display:none;cursor:pointer;background:none;border:none;width:40px;height:40px;border-radius:50%;align-items:center;justify-content:center}
.mobile-toggle span{display:block;width:20px;height:1.5px;background:var(--dark);position:relative;transition:all .3s}
.mobile-toggle span::before,.mobile-toggle span::after{content:'';position:absolute;width:20px;height:1.5px;background:var(--dark);left:0;transition:all .3s}
.mobile-toggle span::before{top:-6px}.mobile-toggle span::after{top:6px}
.mobile-toggle.active span{background:transparent}
.mobile-toggle.active span::before{top:0;transform:rotate(45deg)}
.mobile-toggle.active span::after{top:0;transform:rotate(-45deg)}

/* ── HERO FULLSCREEN ── */
.hero{min-height:100vh;display:flex;align-items:flex-end;position:relative;overflow:hidden}
.hero-bg{position:absolute;inset:0;z-index:0}
.hero-bg img{width:100%;height:100%;object-fit:cover;object-position:center 20%}
.hero-bg::after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(30,28,24,.78) 0%,rgba(30,28,24,.4) 35%,rgba(30,28,24,.12) 65%,transparent 100%)}
.hero .container{width:100%;text-align:left}
.hero-content{position:relative;z-index:2;padding:0 0 5rem;max-width:620px;text-align:left}
.hero-greeting{display:inline-block;font-family:var(--font-body);font-weight:500;font-size:.7rem;letter-spacing:.2em;text-transform:uppercase;color:rgba(255,255,255,.6);background:rgba(255,255,255,.1);backdrop-filter:blur(8px);padding:.45rem 1.1rem;border-radius:100px;margin-bottom:1.5rem;opacity:0;animation:heroFade .8s var(--ease-out) .2s forwards}
.hero-title{font-family:var(--font-display);font-weight:400;font-size:clamp(2.8rem,5.5vw,4.2rem);line-height:1.1;color:#fff;margin-bottom:1.25rem;opacity:0;animation:heroFade .8s var(--ease-out) .35s forwards}
.hero-title .gold{color:#fff}
.hero-description{font-family:var(--font-body);font-weight:300;font-size:1.05rem;line-height:1.8;color:rgba(255,255,255,.7);max-width:480px;margin-bottom:2.5rem;opacity:0;animation:heroFade .8s var(--ease-out) .5s forwards}
.hero-buttons{display:flex;gap:1rem;align-items:center;flex-wrap:wrap;opacity:0;animation:heroFade .8s var(--ease-out) .65s forwards}
.btn-primary{display:inline-flex;align-items:center;gap:.6rem;font-family:var(--font-body);font-weight:500;font-size:.8rem;letter-spacing:.04em;color:#fff;background:var(--gold);padding:.9rem 2rem;border-radius:var(--radius-lg);transition:all .4s var(--ease-out);box-shadow:0 4px 20px rgba(221,177,122,.25);border:none;cursor:pointer}
.btn-primary:hover{background:#c9a06a;transform:translateY(-2px);box-shadow:0 8px 30px rgba(221,177,122,.35);color:#fff}
.btn-primary svg{width:16px;height:16px;transition:transform .3s}.btn-primary:hover svg{transform:translateX(3px)}
.btn-ghost{display:inline-flex;align-items:center;gap:.5rem;font-family:var(--font-body);font-weight:400;font-size:.8rem;letter-spacing:.04em;color:#fff;padding:.9rem 1.5rem;border-radius:var(--radius-lg);border:1.5px solid rgba(255,255,255,.25);transition:all .4s var(--ease-out)}
.btn-ghost:hover{border-color:var(--gold);color:var(--gold);background:rgba(221,177,122,.08)}
.btn-secondary{display:inline-flex;align-items:center;gap:.5rem;font-family:var(--font-body);font-weight:400;font-size:.8rem;letter-spacing:.04em;color:var(--dark);padding:.9rem 1.5rem;border-radius:var(--radius-lg);border:1.5px solid rgba(48,48,48,.12);transition:all .4s var(--ease-out)}
.btn-secondary:hover{border-color:var(--gold);color:var(--gold)}

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

/* ── TRUST BAR ── */
.trust-bar{padding:3rem 0;background:var(--cream-light)}
.trust-bar-inner{display:flex;justify-content:center;gap:3rem;flex-wrap:wrap;opacity:.5}
.trust-item{display:flex;align-items:center;gap:.5rem;font-family:var(--font-body);font-weight:400;font-size:.78rem;color:var(--sage);letter-spacing:.02em}
.trust-item svg{width:16px;height:16px;stroke:var(--sage);fill:none;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}

/* ── ABOUT ── */
.about{padding:6rem 0;background:var(--cream-light)}
.about .container{display:grid;grid-template-columns:1fr 1.2fr;gap:5rem;align-items:center}
.about-card{background:var(--cream);border-radius:var(--radius-lg);padding:2.5rem;position:relative;overflow:hidden}
.about-card::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--gold),var(--sage),var(--gold));border-radius:var(--radius-sm) var(--radius-sm) 0 0;opacity:.5}
.about-quote-mark{font-family:var(--font-display);font-size:5rem;color:var(--gold);opacity:.2;line-height:1;margin-bottom:-1.5rem}
.about-quote{font-family:var(--font-display);font-weight:300;font-size:1.3rem;line-height:1.6;color:var(--dark)}
.about-quote-author{font-family:var(--font-body);font-size:.75rem;letter-spacing:.15em;text-transform:uppercase;color:var(--sage);margin-top:1.25rem}
.pillars{display:grid;grid-template-columns:repeat(4,1fr);gap:.75rem;margin-top:2rem}
.pillar{background:rgba(255,255,255,.5);border-radius:var(--radius-md);padding:1.1rem;text-align:center;border:1px solid rgba(255,255,255,.6);transition:all .4s var(--ease-out)}
.pillar:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(48,48,48,.04)}
.pillar-icon{margin-bottom:.5rem;display:flex;justify-content:center}
.pillar-icon svg{width:24px;height:24px;stroke:var(--gold);fill:none;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.pillar-text{font-family:var(--font-body);font-size:.72rem;letter-spacing:.04em;color:var(--sage);line-height:1.4}
.about-text p{font-family:var(--font-body);font-weight:300;font-size:1rem;line-height:1.85;color:rgba(48,48,48,.7);margin-bottom:1.25rem}
.about-services{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;margin-top:2rem}
.about-service-tag{display:flex;align-items:center;gap:.5rem;font-family:var(--font-body);font-weight:400;font-size:.82rem;color:var(--dark);background:var(--cream);padding:.55rem 1rem;border-radius:var(--radius-sm);transition:all .3s var(--ease-out)}
.about-service-tag::before{content:'';width:5px;height:5px;border-radius:50%;background:var(--gold);flex-shrink:0}
.about-service-tag:hover{background:var(--gold-soft);transform:translateX(4px)}

/* ── SERVICES ── */
.services{padding:6rem 0;background:var(--cream)}
.services-header{text-align:center;max-width:560px;margin:0 auto 3.5rem}
.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}
.service-card{background:var(--cream-light);padding:2.25rem 2rem;border-radius:var(--radius-lg);position:relative;border:1px solid rgba(255,255,255,.5);transition:all .5s var(--ease-out);overflow:hidden}
.service-card::after{content:'';position:absolute;inset:0;border-radius:var(--radius-lg);background:linear-gradient(135deg,rgba(221,177,122,.06) 0%,transparent 60%);opacity:0;transition:opacity .5s}
.service-card:hover::after{opacity:1}
.service-card:hover{transform:translateY(-4px);box-shadow:0 16px 40px rgba(48,48,48,.06);border-color:rgba(221,177,122,.2)}
.service-icon{width:52px;height:52px;border-radius:var(--radius-md);background:var(--gold-soft);display:flex;align-items:center;justify-content:center;margin-bottom:1.5rem;transition:all .4s var(--ease-out)}
.service-card:hover .service-icon{background:var(--gold)}
.service-icon svg{width:24px;height:24px;stroke:var(--gold);fill:none;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;transition:stroke .4s}
.service-card:hover .service-icon svg{stroke:#fff}
.service-card h3{font-family:var(--font-display);font-weight:300;font-size:1.3rem;color:var(--dark);margin-bottom:.65rem;position:relative;z-index:1}
.service-card p{font-family:var(--font-body);font-weight:300;font-size:.88rem;line-height:1.7;color:rgba(48,48,48,.6);position:relative;z-index:1}

/* ── EVENTS ── */
.events{padding:6rem 0;background:var(--cream)}
.events-header{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:3rem;flex-wrap:wrap;gap:1rem}
.events-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem;max-width:820px}
.event-card{background:#fff;border-radius:var(--radius-lg);overflow:hidden;border:1px solid rgba(48,48,48,.04);transition:all .5s var(--ease-out)}
.event-card:hover{transform:translateY(-6px);box-shadow:0 20px 50px rgba(48,48,48,.08)}
.event-image{position:relative;overflow:hidden;aspect-ratio:1/1}
.event-image img{width:100%;height:100%;object-fit:cover;transition:transform .7s var(--ease-out)}
.event-card:hover .event-image img{transform:scale(1.04)}
.event-badge{position:absolute;top:14px;left:14px;background:var(--gold);color:#fff;font-family:var(--font-body);font-size:.62rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;padding:.35rem .85rem;border-radius:100px}
.event-spots{position:absolute;bottom:14px;right:14px;background:rgba(48,48,48,.8);color:#fff;font-family:var(--font-body);font-size:.68rem;padding:.4rem .85rem;border-radius:100px;backdrop-filter:blur(8px);display:flex;align-items:center;gap:.4rem}
.event-spots .dot{width:6px;height:6px;border-radius:50%;background:#7cc47c;animation:dotPulse 2s ease-in-out infinite}
@keyframes dotPulse{0%,100%{opacity:1}50%{opacity:.4}}
.event-info{padding:1.4rem 1.5rem 1.5rem}
.event-date{font-family:var(--font-body);font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;color:var(--sage);margin-bottom:.4rem}
.event-name{font-family:var(--font-display);font-weight:300;font-size:1.15rem;color:var(--dark);margin-bottom:.35rem;line-height:1.3}
.event-excerpt{font-family:var(--font-body);font-weight:300;font-size:.82rem;color:rgba(48,48,48,.5);line-height:1.55;margin-bottom:.75rem}
.event-location{font-family:var(--font-body);font-weight:300;font-size:.82rem;color:rgba(48,48,48,.45);margin-bottom:1.2rem;display:flex;align-items:center;gap:.35rem}
.event-location svg{width:13px;height:13px;stroke:var(--sage);fill:none;stroke-width:1.5}
.event-btn{font-family:var(--font-body);font-weight:500;font-size:.7rem;letter-spacing:.06em;text-transform:uppercase;color:#fff;background:var(--dark);padding:.6rem 1.4rem;border-radius:100px;transition:all .35s var(--ease-out);border:none;cursor:pointer;display:inline-block}
.event-btn:hover{background:var(--gold);transform:scale(1.04)}

/* ── PODCAST ── */
.podcast{padding:5rem 0;background:var(--cream-light)}
.podcast-card{display:grid;grid-template-columns:280px 1fr;gap:2.5rem;align-items:center;background:var(--dark);border-radius:var(--radius-xl);padding:2.5rem;position:relative;overflow:hidden}
.podcast-card::before{content:'';position:absolute;top:-40%;right:-15%;width:400px;height:400px;border-radius:50%;background:radial-gradient(circle,rgba(221,177,122,.1) 0%,transparent 65%);pointer-events:none}
.podcast-cover{width:280px;border-radius:var(--radius-lg);overflow:hidden;box-shadow:0 12px 40px rgba(0,0,0,.3);flex-shrink:0}
.podcast-cover img{width:100%;height:auto;display:block}
.podcast-content{position:relative;z-index:1}
.podcast-label{font-family:var(--font-body);font-weight:500;font-size:.68rem;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);margin-bottom:.75rem;display:flex;align-items:center;gap:.5rem}
.podcast-label svg{width:16px;height:16px;stroke:var(--gold);fill:none;stroke-width:1.5}
.podcast-title{font-family:var(--font-display);font-size:clamp(1.6rem,3vw,2.2rem);color:#fff;line-height:1.2;margin-bottom:.75rem}
.podcast-title .gold{color:var(--gold)}
.podcast-desc{font-family:var(--font-body);font-weight:300;font-size:.92rem;line-height:1.7;color:rgba(255,255,255,.5);margin-bottom:1.5rem;max-width:440px}
.podcast-embed{border-radius:var(--radius-md);overflow:hidden}
.podcast-embed iframe{display:block;border-radius:var(--radius-md)}

/* ── TESTIMONIALS MARQUEE ── */
.testimonials{padding:6rem 0;background:var(--dark);border-radius:var(--radius-xl) var(--radius-xl) 0 0;position:relative;overflow:hidden}
.testimonials::before{content:'';position:absolute;top:-30%;right:-10%;width:600px;height:600px;border-radius:50%;background:radial-gradient(circle,rgba(221,177,122,.07) 0%,transparent 65%);pointer-events:none}
.testimonials .section-label{color:var(--gold);background:rgba(221,177,122,.1)}
.testimonials .section-title{color:#fff}
.testimonials-center{text-align:center;max-width:520px;margin:0 auto 3rem;position:relative;z-index:1}
.marquee-wrapper{overflow:hidden;width:100%;position:relative;z-index:1}
.marquee-wrapper::before,.marquee-wrapper::after{content:'';position:absolute;top:0;bottom:0;width:80px;z-index:2;pointer-events:none}
.marquee-wrapper::before{left:0;background:linear-gradient(90deg,var(--dark),transparent)}
.marquee-wrapper::after{right:0;background:linear-gradient(270deg,var(--dark),transparent)}
.marquee-track{display:flex;gap:1.5rem;animation:marqueeScroll 50s linear infinite;width:max-content}
.marquee-track:hover{animation-play-state:paused}
@keyframes marqueeScroll{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}
.testimonial-card{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.06);border-radius:var(--radius-lg);padding:2rem;width:380px;flex-shrink:0;transition:all .4s var(--ease-out)}
.testimonial-card:hover{background:rgba(255,255,255,.07);border-color:rgba(221,177,122,.15)}
.testimonial-stars{display:flex;gap:.2rem;margin-bottom:.75rem}
.testimonial-stars svg{width:12px;height:12px;fill:var(--gold)}
.testimonial-text{font-family:var(--font-body);font-weight:300;font-size:.88rem;line-height:1.75;color:rgba(255,255,255,.55);margin-bottom:1rem}
.testimonial-author-row{display:flex;align-items:center;gap:.65rem}
.testimonial-avatar{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,var(--gold),var(--sage));display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-size:.8rem;color:#fff}
.testimonial-author{font-family:var(--font-display);font-size:.95rem;color:var(--gold)}
.testimonial-role{font-family:var(--font-body);font-size:.65rem;color:rgba(255,255,255,.3)}

/* ── CONTACT ── */
.contact{padding:6rem 0;background:var(--cream)}
.contact .container{display:grid;grid-template-columns:1fr 1fr;gap:4rem}
.contact-form{display:flex;flex-direction:column;gap:1rem}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.form-group input,.form-group textarea{width:100%;padding:1rem 1.25rem;border:1.5px solid rgba(48,48,48,.08);border-radius:var(--radius-md);background:rgba(255,255,255,.5);font-family:var(--font-body);font-weight:300;font-size:.9rem;color:var(--dark);outline:none;transition:all .3s var(--ease-out)}
.form-group input::placeholder,.form-group textarea::placeholder{color:rgba(48,48,48,.3)}
.form-group input:focus,.form-group textarea:focus{border-color:var(--gold);background:rgba(255,255,255,.8);box-shadow:0 0 0 4px rgba(221,177,122,.08)}
.form-group textarea{resize:none;min-height:130px}
.form-submit{display:inline-flex;align-items:center;gap:.6rem;align-self:flex-start;font-family:var(--font-body);font-weight:500;font-size:.8rem;letter-spacing:.04em;color:#fff;background:var(--dark);padding:.9rem 2.25rem;border-radius:100px;border:none;cursor:pointer;transition:all .4s var(--ease-out);box-shadow:0 4px 16px rgba(48,48,48,.1)}
.form-submit:hover{background:var(--gold);transform:translateY(-2px);box-shadow:0 8px 24px rgba(221,177,122,.2)}
.form-submit svg{width:15px;height:15px}
.contact-info-card{background:var(--cream-light);border-radius:var(--radius-lg);padding:2rem;margin-bottom:1.5rem;border:1px solid rgba(255,255,255,.5)}
.contact-info-item{margin-bottom:1.5rem}.contact-info-item:last-child{margin-bottom:0}
.contact-info-label{font-family:var(--font-body);font-size:.65rem;letter-spacing:.18em;text-transform:uppercase;color:var(--sage);margin-bottom:.3rem}
.contact-info-value{font-family:var(--font-display);font-size:1.1rem;color:var(--dark)}
.contact-info-value a{color:var(--dark);transition:color .3s}.contact-info-value a:hover{color:var(--gold)}
.contact-cta-card{background:linear-gradient(135deg,rgba(221,177,122,.1) 0%,rgba(121,138,136,.06) 100%);border-radius:var(--radius-lg);padding:2rem;border:1px solid rgba(221,177,122,.12)}
.contact-cta-card p{font-family:var(--font-display);font-size:1.1rem;line-height:1.6;color:var(--dark)}
.contact-cta-card .author{font-family:var(--font-body);font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;color:var(--sage);margin-top:.75rem}

/* ── FOOTER ── */
.footer{padding:2.5rem 0;background:var(--dark)}
.footer .container{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem}
.footer-logo svg{height:18px;fill:var(--light);display:block}
.footer-text{font-family:var(--font-body);font-size:.72rem;color:rgba(238,238,238,.5);letter-spacing:.03em}
.footer-social{display:flex;gap:1rem}
.footer-social a{width:34px;height:34px;border-radius:50%;border:1px solid rgba(238,238,238,.12);display:flex;align-items:center;justify-content:center;transition:all .3s var(--ease-out)}
.footer-social a:hover{border-color:var(--gold);background:rgba(221,177,122,.1);transform:translateY(-2px)}
.footer-social a svg{width:13px;height:13px;fill:rgba(238,238,238,.5)}

/* ── WHATSAPP ── */
.whatsapp-fab{position:fixed;bottom:24px;right:24px;z-index:999;width:54px;height:54px;border-radius:50%;background:#25D366;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 20px rgba(37,211,102,.3);transition:all .35s var(--ease-spring)}
.whatsapp-fab:hover{transform:scale(1.1) translateY(-2px);box-shadow:0 8px 30px rgba(37,211,102,.4)}
.whatsapp-fab svg{width:26px;height:26px;fill:#fff}
.whatsapp-fab::before{content:'¿Necesitas información?';position:absolute;right:66px;top:50%;transform:translateY(-50%);background:#fff;color:var(--dark);font-family:var(--font-body);font-size:.75rem;padding:.5rem 1rem;border-radius:var(--radius-sm);box-shadow:0 4px 16px rgba(0,0,0,.1);white-space:nowrap;pointer-events:none;opacity:0;transition:opacity .3s}
.whatsapp-fab:hover::before{opacity:1}

/* ── RESPONSIVE ── */
@media(max-width:968px){
.hero-content{padding:0 0 4rem;max-width:100%}
.about .container{grid-template-columns:1fr}.pillars{grid-template-columns:repeat(2,1fr)}
.services-grid{grid-template-columns:1fr 1fr}.events-grid{grid-template-columns:1fr}
.contact .container{grid-template-columns:1fr}.nav-links{display:none}.mobile-toggle{display:flex}
.testimonials{border-radius:var(--radius-lg) var(--radius-lg) 0 0}
.podcast-card{grid-template-columns:1fr;text-align:center}
.podcast-cover{width:100%;max-width:320px;margin:0 auto}
.podcast-desc{margin:0 auto 1.5rem}
.exp-item{grid-template-columns:110px 1fr auto}
.nav-links{display:none;flex-direction:column;position:absolute;top:calc(100% + .75rem);left:1rem;right:1rem;background:rgba(243,242,227,.97);backdrop-filter:blur(24px);border:1px solid rgba(255,255,255,.5);border-radius:var(--radius-lg);padding:1.5rem;gap:0;box-shadow:0 16px 48px rgba(48,48,48,.1);opacity:0;transform:translateY(-10px);transition:opacity .35s var(--ease-out),transform .35s var(--ease-out);pointer-events:none}
.nav-links.nav-mobile-open{display:flex;opacity:1;transform:translateY(0);pointer-events:auto}
.nav-links a{padding:1rem 1.25rem;font-size:.9rem;border-radius:var(--radius-sm)}.nav-links a::after{display:none}
.nav-links a.nav-cta{margin-top:.5rem;text-align:center;display:block}
}
@media(max-width:600px){
.container{padding:0 1.25rem}.services-grid{grid-template-columns:1fr}.events-grid{grid-template-columns:1fr}
.pillars{grid-template-columns:1fr 1fr}.about-services{grid-template-columns:1fr}.form-row{grid-template-columns:1fr}
.trust-bar-inner{gap:1.5rem}.whatsapp-fab::before{display:none}
.podcast-cover{max-width:260px}
.exp-item{grid-template-columns:1fr;text-align:center}.exp-thumb{width:100%;height:140px;margin:0 auto}.exp-link{justify-content:center}
.testimonial-card{width:320px}
.hero-title{font-size:clamp(2.2rem,7vw,3rem)}
}
/* ═══ WOOCOMMERCE OVERRIDES ═══ */
.woocommerce .quantity .qty{border-radius:var(--radius-sm);border:1.5px solid rgba(48,48,48,.1);padding:.5rem;font-family:var(--font-body);width:60px;text-align:center}
.woocommerce #respond input#submit,.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,
.woocommerce #respond input#submit.alt,.woocommerce a.button.alt,.woocommerce button.button.alt,.woocommerce input.button.alt{
background:var(--dark) !important;color:#fff !important;border-radius:100px !important;font-family:var(--font-body) !important;
font-weight:500 !important;letter-spacing:.04em !important;padding:.8rem 2rem !important;transition:all .35s var(--ease-out) !important;border:none !important}
.woocommerce #respond input#submit:hover,.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce input.button:hover,
.woocommerce #respond input#submit.alt:hover,.woocommerce a.button.alt:hover,.woocommerce button.button.alt:hover,.woocommerce input.button.alt:hover{
background:var(--gold) !important}
.woocommerce-message,.woocommerce-info{border-top-color:var(--gold) !important;border-radius:var(--radius-md) !important}
.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce form .form-row select{
border:1.5px solid rgba(48,48,48,.08) !important;border-radius:var(--radius-md) !important;padding:.9rem 1.2rem !important;
font-family:var(--font-body) !important;background:rgba(255,255,255,.5) !important;transition:all .3s var(--ease-out) !important}
.woocommerce form .form-row input.input-text:focus,.woocommerce form .form-row textarea:focus{
border-color:var(--gold) !important;box-shadow:0 0 0 4px rgba(221,177,122,.08) !important}
.woocommerce table.shop_table{border-radius:var(--radius-md) !important;overflow:hidden;border:1px solid rgba(48,48,48,.06) !important}

/* ═══ SINGLE TALLER ═══ */
.single-taller-wrap{padding:8rem 0 4rem;background:var(--cream-light)}
.single-taller-wrap .container{display:grid;grid-template-columns:1fr 1.2fr;gap:3rem;align-items:start}
.taller-gallery{border-radius:var(--radius-lg);overflow:hidden;box-shadow:0 12px 40px rgba(48,48,48,.08)}
.taller-gallery img{width:100%;height:auto;display:block}
.taller-meta{display:flex;gap:1rem;flex-wrap:wrap;margin-bottom:1.5rem}
.taller-meta-item{display:flex;align-items:center;gap:.4rem;font-family:var(--font-body);font-size:.8rem;color:var(--sage);background:rgba(121,138,136,.08);padding:.4rem .9rem;border-radius:100px}
.taller-meta-item svg{width:14px;height:14px;stroke:var(--sage);fill:none;stroke-width:1.5}
@media(max-width:968px){.single-taller-wrap .container{grid-template-columns:1fr}}

/* ═══ MOBILE MENU ═══ */
.mobile-toggle.active span{background:transparent}
.mobile-toggle.active span::before{top:0;transform:rotate(45deg)}
.mobile-toggle.active span::after{top:0;transform:rotate(-45deg)}
@media(max-width:968px){
.nav-links{display:none;flex-direction:column;position:absolute;top:calc(100% + .75rem);left:1rem;right:1rem;
background:rgba(243,242,227,.97);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);
border:1px solid rgba(255,255,255,.5);border-radius:var(--radius-lg);padding:1.5rem;gap:0;
box-shadow:0 16px 48px rgba(48,48,48,.1);opacity:0;transform:translateY(-10px);
transition:opacity .35s var(--ease-out),transform .35s var(--ease-out);pointer-events:none}
.nav-links.nav-mobile-open{display:flex;opacity:1;transform:translateY(0);pointer-events:auto}
.nav-links a{padding:1rem 1.25rem;font-size:.9rem;border-radius:var(--radius-sm)}.nav-links a::after{display:none}
.nav-links a.nav-cta{margin-top:.5rem;text-align:center;display:block}
}

/* ═══ CHECKOUT ═══ */
.woocommerce-checkout h3{font-family:var(--font-display);font-weight:400;font-size:1.4rem;color:var(--dark);margin-bottom:1.5rem}
.woocommerce-checkout .col2-set{display:grid;grid-template-columns:1fr 1fr;gap:2.5rem}
.woocommerce-checkout .col2-set .col-1,.woocommerce-checkout .col2-set .col-2{
background:var(--cream-light);border-radius:var(--radius-lg);padding:2rem;border:1px solid rgba(255,255,255,.5)}
.woocommerce-checkout #order_review{background:var(--cream-light);border-radius:var(--radius-lg);padding:2rem;border:1px solid rgba(255,255,255,.5)}
.woocommerce-checkout .order-total th,.woocommerce-checkout .order-total td{font-family:var(--font-display) !important;font-size:1.2rem !important;color:var(--gold) !important}
.woocommerce-checkout .woocommerce-checkout-payment{background:var(--cream) !important;border-radius:var(--radius-lg) !important;padding:1.5rem !important;border:none !important}
.woocommerce-checkout .wc_payment_method{border-radius:var(--radius-md) !important;margin-bottom:.75rem;border:1.5px solid rgba(48,48,48,.06) !important;padding:1rem !important;background:rgba(255,255,255,.5) !important}
.woocommerce-checkout #place_order{width:100%;padding:1rem 2rem !important;border-radius:100px !important;background:var(--dark) !important;box-shadow:0 4px 20px rgba(48,48,48,.12) !important}
.woocommerce-checkout #place_order:hover{background:var(--gold) !important;transform:translateY(-2px) !important}
@media(max-width:768px){.woocommerce-checkout .col2-set{grid-template-columns:1fr}}

/* ═══ CONTACT FORM STATES ═══ */
.contact-form .form-success{background:rgba(124,196,124,.08);border:1px solid rgba(124,196,124,.2);border-radius:var(--radius-md);padding:1.5rem;text-align:center;display:none}
.contact-form .form-success.show{display:block}
.contact-form .form-success p{font-family:var(--font-body);font-size:.95rem;color:var(--dark);margin-bottom:.25rem}
.contact-form .form-success small{font-family:var(--font-body);font-size:.8rem;color:var(--sage)}
.contact-form .form-error{background:rgba(231,76,60,.06);border:1px solid rgba(231,76,60,.15);border-radius:var(--radius-md);padding:1rem;text-align:center;display:none;font-family:var(--font-body);font-size:.85rem;color:#c0392b;margin-bottom:1rem}
.contact-form .form-error.show{display:block}
.form-submit.loading{opacity:.6;pointer-events:none}
.form-submit.loading::after{content:'';display:inline-block;width:14px;height:14px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:btnSpin .6s linear infinite;margin-left:.5rem}
@keyframes btnSpin{to{transform:rotate(360deg)}}

/* ═══ THANK YOU PAGE ═══ */
.woocommerce-order-received .woocommerce-order{max-width:660px;margin:0 auto}
.woocommerce-order-received .woocommerce-order-overview{list-style:none !important;padding:0 !important;display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:1rem;background:var(--cream-light);border-radius:var(--radius-lg);padding:1.5rem !important;margin:1.5rem 0 !important;border:1px solid rgba(255,255,255,.5)}
.woocommerce-order-received .woocommerce-order-overview li{text-align:center;font-family:var(--font-body);font-size:.8rem;color:var(--sage)}
.woocommerce-order-received .woocommerce-order-overview li strong{display:block;font-family:var(--font-display);font-size:1.1rem;color:var(--dark);font-weight:400;margin-top:.25rem}
.woocommerce-order-received .woocommerce-order-details,.woocommerce-order-received .woocommerce-customer-details{background:var(--cream-light);border-radius:var(--radius-lg);padding:2rem;margin-top:1.5rem;border:1px solid rgba(255,255,255,.5)}
