/*
Theme Name: Astra Child - Mental Madrid
Theme URI: https://mentalmadrid.com
Description: Tema hijo de Astra con diseño moderno para Mental Madrid - colores cálidos (teal, azul, verde), tipografía limpia, optimizado para velocidad y SEO
Author: MentalMadrid Dev
Author URI: https://mentalmadrid.com
Template: astra
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
Tags: health, psychology, modern, clean, fast, accessible
*/
:root{--mm-primary:hsl(174,42%,51%);--mm-primary-dark:hsl(174,42%,45%);--mm-teal-light:hsl(174,35%,96%);--mm-teal-dark:hsl(174,50%,30%);--mm-background:hsl(0,0%,98%);--mm-foreground:hsl(210,18%,20%);--mm-heading:hsl(210,25%,15%);--mm-section-alt:hsl(180,8%,96%);--mm-border:hsl(180,10%,90%);--mm-muted:hsl(180,6%,93%);--mm-font-sans:'DM Sans',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;--mm-font-serif:'Playfair Display',Georgia,serif;--mm-radius:0.5rem;--mm-transition:0.3s ease}#page .site-content{padding-top:40px}.ast-separate-container #primary,.ast-separate-container.ast-left-sidebar #primary,.ast-separate-container.ast-right-sidebar #primary{margin:0 !important;padding:0 !important}.ast-separate-container .ast-article-post,.ast-separate-container .ast-article-single,.ast-separate-container .ast-author-box,.ast-separate-container .ast-404-layout-1,.ast-separate-container .no-results{padding:0 !important}body{font-family:var(--mm-font-sans) !important;color:var(--mm-foreground);background-color:var(--mm-background);line-height:1.65;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6,.entry-title,.widget-title,.site-title{font-family:var(--mm-font-serif) !important;color:var(--mm-heading);font-weight:600;letter-spacing:-0.02em;line-height:1.3}h1{font-size:clamp(2rem,5vw,3.5rem)}h2{font-size:clamp(1.75rem,4vw,2.75rem)}h3{font-size:clamp(1.5rem,3vw,2.25rem)}a{color:var(--mm-primary);transition:color var(--mm-transition)}a:hover,a:focus{color:var(--mm-primary-dark)}.ast-button,.button,button,input[type="submit"],input[type="button"],.wp-block-button__link{background-color:var(--mm-primary) !important;color:#fff !important;border:none;border-radius:var(--mm-radius);padding:0.875rem 1.75rem;font-family:var(--mm-font-sans);font-weight:600;transition:all var(--mm-transition);box-shadow:0 2px 8px rgba(77,184,174,0.2)}.ast-button:hover,.button:hover,button:hover,input[type="submit"]:hover,.wp-block-button__link:hover{background-color:var(--mm-primary-dark) !important;box-shadow:0 4px 12px rgba(77,184,174,0.35);transform:translateY(-1px)}#page{overflow:visible !important}header.site-header{position:sticky !important;top:0 !important;z-index:100 !important}.site-header{background-color:#fff;box-shadow:0 1px 3px rgba(0,0,0,0.05)}.main-header-bar{border-bottom:none}.main-header-menu a{font-family:var(--mm-font-sans);font-weight:500;color:var(--mm-foreground)}.main-header-menu a:hover{color:var(--mm-primary)}.entry-content,.ast-container{font-size:1.0625rem}.wp-block-group,.wp-block-columns{border-radius:var(--mm-radius)}input[type="text"],input[type="email"],input[type="tel"],input[type="url"],textarea,select{border:1px solid var(--mm-border);border-radius:var(--mm-radius);padding:0.75rem 1rem;font-family:var(--mm-font-sans);transition:border-color var(--mm-transition)}input:focus,textarea:focus,select:focus{border-color:var(--mm-primary);outline:none;box-shadow:0 0 0 3px rgba(77,184,174,0.1)}.site-footer{background-color:var(--mm-heading);color:#fff}.site-footer a{color:rgba(255,255,255,0.8)}.site-footer a:hover{color:var(--mm-primary)}.mm-hero{background:linear-gradient(135deg,var(--mm-teal-light) 0%,#fff 100%);padding:5rem 2rem;text-align:center}.wp-block-quote{border-left:4px solid var(--mm-primary);background-color:var(--mm-teal-light);padding:1.5rem 2rem;border-radius:var(--mm-radius);font-style:italic}.mm-service-card{background:#fff;border-radius:var(--mm-radius);padding:2rem;box-shadow:0 2px 12px rgba(0,0,0,0.05);transition:all var(--mm-transition)}.mm-service-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px rgba(77,184,174,0.15)}@media (max-width:768px){h1{font-size:2rem}h2{font-size:1.75rem}h3{font-size:1.5rem}.entry-content,.ast-container{font-size:1rem}.mm-hero{padding:3rem 1.5rem}}@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:0.01ms !important;animation-iteration-count:1 !important;transition-duration:0.01ms !important}}*:focus-visible{outline:2px solid var(--mm-primary);outline-offset:2px}.alignfull{max-width:100vw !important;width:100vw !important;margin-left:calc(50% - 50vw) !important;margin-right:calc(50% - 50vw) !important}.alignfull .ast-container{max-width:1200px;padding-left:2rem;padding-right:2rem;margin-left:auto;margin-right:auto}.wp-block-cover .wp-block-cover__inner-container{width:100%;max-width:100%}.content-area.primary{max-width:100% !important;padding:0 !important}.entry-content > .alignfull .ast-container,.entry-content > .alignfull .wp-block-group__inner-container{max-width:1200px;margin-left:auto;margin-right:auto;padding-left:2rem;padding-right:2rem}.mm-blog-header{background-color:var(--mm-teal-light);padding:4rem 2rem;text-align:center;max-width:100vw !important;width:100vw !important;margin-left:calc(50% - 50vw) !important;margin-right:calc(50% - 50vw) !important;margin-bottom:0}.mm-blog-header h1{font-family:var(--mm-font-serif) !important;font-size:clamp(2rem,5vw,3.5rem) !important;color:var(--mm-heading) !important;margin-bottom:0.5rem !important}.mm-blog-header p{font-size:1.25rem;color:var(--mm-foreground);margin:0}body.blog .ast-archive-description{display:none !important}.mm-blog-filters{max-width:100vw !important;width:100vw !important;margin-left:calc(50% - 50vw) !important;margin-right:calc(50% - 50vw) !important;background:#fff;border-bottom:1px solid var(--mm-border);padding:1.25rem 2rem;position:sticky;top:0;z-index:90;box-shadow:0 2px 8px rgba(0,0,0,0.04)}.mm-blog-filters__inner{max-width:1200px;margin:0 auto;display:flex;flex-direction:row;align-items:center;gap:0.75rem}.mm-blog-search{flex:1;min-width:0}.mm-blog-search input{width:100%;height:2.75rem;padding:0 1rem 0 2.75rem !important;border:1px solid var(--mm-border) !important;border-radius:var(--mm-radius) !important;font-family:var(--mm-font-sans) !important;font-size:0.95rem !important;color:var(--mm-foreground) !important;background:var(--mm-background) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23999' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cline x1='21' y1='21' x2='16.65' y2='16.65'/%3E%3C/svg%3E") no-repeat 0.85rem center !important;transition:border-color var(--mm-transition),box-shadow var(--mm-transition)}.mm-blog-search input:focus{border-color:var(--mm-primary) !important;box-shadow:0 0 0 3px rgba(77,184,174,0.1) !important;outline:none !important}.mm-blog-search input::placeholder{color:#aaa}.mm-blog-dropdown{flex-shrink:0}.mm-blog-dropdown select{height:2.75rem;padding:0 2.25rem 0 1rem !important;border:1px solid var(--mm-border) !important;border-radius:var(--mm-radius) !important;font-family:var(--mm-font-sans) !important;font-size:0.95rem !important;font-weight:500 !important;color:var(--mm-foreground) !important;background-color:#fff !important;cursor:pointer;transition:border-color var(--mm-transition),box-shadow var(--mm-transition);appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23666' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 0.7rem center;min-width:160px}.mm-blog-dropdown select:focus{border-color:var(--mm-primary) !important;box-shadow:0 0 0 3px rgba(77,184,174,0.1) !important;outline:none !important}.mm-blog-dropdown select.has-selection{color:var(--mm-primary) !important;border-color:var(--mm-primary) !important}.mm-no-results{text-align:center;color:#999;font-size:1.1rem;padding:3rem 2rem}@media (max-width:640px){.mm-blog-filters{padding:1rem}.mm-blog-filters__inner{flex-direction:column;gap:0.5rem}.mm-blog-dropdown{width:100%}.mm-blog-dropdown select{width:100%}}body.blog .ast-row{display:grid !important;grid-template-columns:repeat(3,1fr) !important;gap:2rem !important;max-width:1200px;margin:0 auto;padding:3rem 2rem 5rem}body.blog .ast-article-post{display:flex !important;flex-direction:column !important;background:#fff;border:1px solid var(--mm-border);border-radius:var(--mm-radius);overflow:hidden;transition:box-shadow var(--mm-transition);padding:0 !important;margin:0 !important;width:100% !important;max-width:100% !important}body.blog .ast-article-post:hover{box-shadow:0 8px 24px rgba(0,0,0,0.1)}body.blog .ast-article-post .ast-article-inner{display:flex;flex-direction:column;height:100%}body.blog .ast-article-post .post-content{display:flex !important;flex-direction:column !important;height:100%;padding:0 !important;width:100% !important;max-width:100% !important}body.blog .ast-blog-featured-section{order:-2;margin:0 !important;padding:0 !important;overflow:hidden;height:200px;flex-shrink:0}body.blog .ast-blog-featured-section .post-thumb-img-content{height:100%;margin:0 !important}body.blog .ast-blog-featured-section a{display:block;height:100%}body.blog .ast-blog-featured-section img{width:100% !important;height:200px !important;object-fit:cover !important;display:block !important;transition:transform var(--mm-transition)}body.blog .ast-article-post:hover .ast-blog-featured-section img{transform:scale(1.05)}body.blog .entry-header{order:-1;padding:1rem 1.25rem 0 !important;margin:0 !important}body.blog .entry-meta{font-size:0 !important;line-height:1.8}body.blog .cat-links{font-size:0 !important}body.blog .cat-links a{display:inline-block;font-size:0.65rem !important;font-weight:500;color:var(--mm-primary) !important;background:rgba(77,184,174,0.1);padding:0.2rem 0.5rem;border-radius:9999px;text-decoration:none !important;margin:0 0.15rem 0.25rem 0;line-height:1.4}body.blog .cat-links a:hover{background:rgba(77,184,174,0.2)}body.blog .entry-meta .posted-by{display:none !important}body.blog .entry-meta .posted-on{display:inline-block !important;font-size:0.7rem !important;color:#999;margin-left:0.25rem}body.blog h2.entry-title{padding:0.5rem 1.25rem 0 !important;margin:0 !important;font-family:var(--mm-font-serif) !important;font-size:1.1rem !important;font-weight:600 !important;line-height:1.4 !important;color:var(--mm-heading);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}body.blog h2.entry-title a{color:inherit !important;text-decoration:none !important;transition:color var(--mm-transition)}body.blog h2.entry-title a:hover{color:var(--mm-primary) !important}body.blog .ast-excerpt-container{padding:0.5rem 1.25rem 0 !important;margin:0 !important;flex-grow:1}body.blog .ast-excerpt-container p{font-size:0.875rem !important;color:#666 !important;line-height:1.6 !important;margin:0 !important;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}body.blog .ast-read-more-container{padding:0.75rem 1.25rem 1.25rem !important;margin:0 !important}body.blog .ast-read-more-container a{color:var(--mm-primary) !important;font-weight:600 !important;font-size:0.8rem !important;text-transform:uppercase;letter-spacing:0.08em;text-decoration:none !important}body.blog .ast-read-more-container a:hover{color:var(--mm-primary-dark) !important}body.blog .ast-article-post .entry-content{display:none !important}@media (max-width:1024px){body.blog .ast-row{grid-template-columns:repeat(2,1fr) !important}}@media (max-width:640px){body.blog .ast-row{grid-template-columns:1fr !important}}.mm-team-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem}.mm-team-card{background:#fff;border:1px solid var(--mm-border);border-radius:var(--mm-radius);overflow:hidden;transition:box-shadow var(--mm-transition)}.mm-team-card:hover{box-shadow:0 8px 24px rgba(0,0,0,0.08)}.mm-team-card .mm-team-photo{width:100%;background:linear-gradient(135deg,rgba(77,184,174,0.1),rgba(77,184,174,0.05));display:flex;align-items:center;justify-content:center;overflow:hidden}.mm-team-card .mm-team-photo img{width:100%;height:100%;object-fit:cover}.mm-team-card .mm-team-initials{width:100px;height:100px;border-radius:50%;background:rgba(77,184,174,0.2);display:flex;align-items:center;justify-content:center;font-family:var(--mm-font-serif);font-size:2rem;font-weight:700;color:var(--mm-primary)}.mm-team-card .mm-team-info{padding:1.25rem}.mm-team-card .mm-team-info h3{font-size:1.125rem !important;margin-bottom:0.25rem !important}.mm-team-card .mm-team-info .mm-team-role{color:var(--mm-primary);font-size:0.875rem;font-weight:500;margin-bottom:0.25rem}.mm-team-card .mm-team-info .mm-team-specialty{color:#888;font-size:0.8rem;margin-bottom:0.25rem}.mm-team-card .mm-team-info .mm-team-colegiado{color:#999;font-size:0.75rem;margin-bottom:0.5rem}.mm-team-card .mm-team-info .mm-team-bio{color:#666;font-size:0.8rem;line-height:1.5}.mm-team-social{display:flex;gap:0.5rem;margin-top:0.75rem}.mm-team-social a{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:50%;background:rgba(77,184,174,0.1);color:var(--mm-primary) !important;text-decoration:none !important;transition:background var(--mm-transition),transform var(--mm-transition)}.mm-team-social a:hover{background:var(--mm-primary);color:#fff !important;transform:scale(1.1)}.mm-team-social a svg{width:15px !important;height:15px !important;max-width:15px !important;max-height:15px !important;fill:currentColor;display:block}.mm-team-card .mm-team-photo{position:relative;cursor:pointer}.mm-team-card .mm-team-overlay{position:absolute;inset:0;background:rgba(0,0,0,0.45);display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transition:opacity var(--mm-transition),visibility var(--mm-transition);pointer-events:none}.mm-team-card .mm-team-overlay span{color:#fff;font-size:0.95rem;font-weight:600;letter-spacing:0.05em;padding:0.5rem 1.25rem;border:2px solid #fff;border-radius:var(--mm-radius)}.mm-team-card:hover .mm-team-overlay{opacity:1;visibility:visible}.mm-modal-backdrop{position:fixed;inset:0;background:rgba(0,0,0,0.6);z-index:9999;display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transition:opacity 0.3s ease,visibility 0.3s ease;padding:2rem}.mm-modal-backdrop.is-open{opacity:1;visibility:visible}.mm-modal{background:#fff;border-radius:12px;max-width:860px;width:100%;max-height:85vh;overflow-y:auto;display:flex;box-shadow:0 24px 48px rgba(0,0,0,0.2);transform:translateY(20px);transition:transform 0.3s ease;position:relative}.mm-modal-backdrop.is-open .mm-modal{transform:translateY(0)}.mm-modal-close{position:absolute;top:1rem;right:1rem;width:36px;height:36px;border-radius:50%;border:none;background:rgba(0,0,0,0.06) !important;color:#666 !important;font-size:1.25rem;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:2;transition:background var(--mm-transition);padding:0 !important;box-shadow:none !important;transform:none !important}.mm-modal-close:hover{background:rgba(0,0,0,0.12) !important;color:#333 !important;box-shadow:none !important;transform:none !important}.mm-modal-image{flex:0 0 280px;min-height:350px;background-size:cover;background-position:center top;border-radius:12px 0 0 12px}.mm-modal-content{flex:1;padding:2.5rem 2rem 2rem;overflow-y:auto}.mm-modal-content h2{font-family:var(--mm-font-serif) !important;font-size:1.5rem !important;margin-bottom:0.25rem !important;color:var(--mm-heading)}.mm-modal-content .mm-modal-role{color:var(--mm-primary);font-size:0.9rem;font-weight:500;margin-bottom:0.15rem}.mm-modal-content .mm-modal-specialty{color:#888;font-size:0.85rem;margin-bottom:0.15rem}.mm-modal-content .mm-modal-colegiado{color:#999;font-size:0.8rem;margin-bottom:1.25rem}.mm-modal-content .mm-modal-bio{font-size:0.9rem;line-height:1.7;color:var(--mm-foreground)}.mm-modal-content .mm-modal-social{display:flex;gap:0.6rem;margin-top:1.5rem}.mm-modal-content .mm-modal-social a{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;background:rgba(77,184,174,0.1);color:var(--mm-primary) !important;text-decoration:none !important;transition:background var(--mm-transition),transform var(--mm-transition)}.mm-modal-content .mm-modal-social a:hover{background:var(--mm-primary);color:#fff !important;transform:scale(1.1)}.mm-modal-content .mm-modal-social a svg{width:16px !important;height:16px !important;max-width:16px !important;max-height:16px !important;fill:currentColor;display:block}@media (max-width:768px){.mm-modal{flex-direction:column;max-height:90vh}.mm-modal-image{flex:0 0 auto;min-height:220px;border-radius:12px 12px 0 0}.mm-modal-content{padding:1.5rem}.mm-modal-backdrop{padding:1rem}}.mm-icon-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;max-width:1100px;margin:0 auto}.mm-icon-cards--4{grid-template-columns:repeat(4,1fr)}.mm-icon-card{background:#fff;border-radius:8px;padding:2rem 1.5rem;text-align:center;box-shadow:0 1px 4px rgba(0,0,0,0.08);transition:box-shadow var(--mm-transition),transform var(--mm-transition)}.mm-icon-card:hover{box-shadow:0 6px 16px rgba(0,0,0,0.1);transform:translateY(-3px)}.mm-icon-card .mm-icon{width:56px;height:56px;border-radius:50%;background:var(--mm-teal-light);color:var(--mm-primary);display:flex;align-items:center;justify-content:center;margin:0 auto 1.25rem}.mm-icon-card .mm-icon svg{width:24px;height:24px}.mm-icon-card h3{font-family:var(--mm-font-serif);font-size:1.125rem;font-weight:600;margin:0 0 0.75rem;color:var(--mm-heading)}.mm-icon-card p{font-size:0.875rem;line-height:1.65;color:#666;margin:0}.mm-text-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;max-width:1100px;margin:0 auto}.mm-text-card{background:#fff;border-radius:8px;padding:2rem;box-shadow:0 1px 4px rgba(0,0,0,0.08);transition:box-shadow var(--mm-transition)}.mm-text-card:hover{box-shadow:0 4px 12px rgba(0,0,0,0.1)}.mm-text-card h3{font-family:var(--mm-font-serif);font-size:1.2rem;font-weight:600;color:var(--mm-primary);margin:0 0 0.75rem}.mm-text-card p{font-size:0.9375rem;line-height:1.7;color:#555;margin:0 0 1rem}.mm-text-card .mm-link{color:var(--mm-primary);font-weight:600;font-size:0.875rem;text-decoration:none}.mm-text-card .mm-link:hover{text-decoration:underline}.mm-cta-section{background:var(--mm-primary);padding:4rem 2rem;text-align:center}.mm-cta-section h2{color:#fff;font-family:var(--mm-font-serif);font-size:2rem;margin:0 0 0.75rem}.mm-cta-section p{color:rgba(255,255,255,0.9);font-size:1.0625rem;margin:0 0 2rem}.mm-cta-btn{display:inline-block;background:#fff;color:var(--mm-primary);padding:0.875rem 2.5rem;border-radius:var(--mm-radius);font-weight:700;font-size:0.875rem;letter-spacing:0.05em;text-decoration:none;transition:all var(--mm-transition)}.mm-cta-btn:hover{background:var(--mm-heading);color:#fff}.mm-text-card > a{color:var(--mm-primary);font-weight:600;font-size:0.875rem;text-decoration:none}.mm-text-card > a:hover{text-decoration:underline}@media (max-width:768px){.mm-icon-cards,.mm-icon-cards--4,.mm-text-cards{grid-template-columns:1fr !important}}@media (min-width:769px) and (max-width:1024px){.mm-icon-cards--4{grid-template-columns:repeat(2,1fr)}}