/*
 * HISTÓRICO DE CAMBIOS
 * GPT0000000031 - Miniaturas cuadradas completas y títulos debajo en el blog Elementor.
 * GPT0000000030 - Corregir herencia editorial en el widget de reseñas Google Play.
 * GPT0000000010 - Integrar campos, consentimiento, botón y avisos de Contact Form 7.
 * GPT0000000006 - Menús nativos con submenús y estado de página actual.
 * GPT0000000005 - Contacto, redes, compartir y ajustes de cookies en el pie.
 */
/* GPT0000000006 - Conservar todos los niveles del menú guardado. */
.fone-menu{list-style:none;margin:0;padding:0}
.header .fone-menu{display:flex;gap:18px;align-items:center}
.fone-menu li{position:relative;list-style:none;margin:0}
.header .fone-menu>li{flex-shrink:0}
.header .fone-menu a{display:block;white-space:nowrap}
.header .fone-menu a[aria-current=page]{color:#89e8e8}
.header .fone-menu .sub-menu{list-style:none;margin:0;padding:12px 18px;min-width:210px;max-width:340px;background:#fff;color:var(--ink);border:1px solid var(--line);border-radius:6px;box-shadow:0 15px 35px #20274a20;position:absolute;top:100%;left:0;display:none;z-index:35}
.header .fone-menu .sub-menu a{padding:9px 0;white-space:normal;font-size:14px}
.header .fone-menu .sub-menu .sub-menu{left:100%;top:0}
.header .fone-menu:not(.fone-menu-enhanced) li:hover>.sub-menu,.header .fone-menu:not(.fone-menu-enhanced) li:focus-within>.sub-menu,.header .fone-menu li.fone-submenu-open>.sub-menu{display:block}
.header .fone-menu>li:nth-last-child(-n+2)>.sub-menu{left:auto;right:0}
.header .fone-menu>li:nth-last-child(-n+2) .sub-menu .sub-menu{left:auto;right:100%}
.fone-submenu-toggle{background:transparent;border:0;padding:6px;color:inherit;line-height:1;min-width:28px;min-height:32px;font-size:17px}
.header .fone-menu .menu-item-has-children>a{display:inline-block}
.footer .fone-menu .sub-menu{list-style:none;margin:0 0 12px;padding-left:12px}
.footer .fone-menu>li{margin:0}
/* GPT0000000005 - Accesos existentes recuperados con nombres explícitos. */
.footer-contact{margin-top:18px}
.footer-social{display:flex;flex-wrap:wrap;gap:5px 18px;margin-top:20px}
.footer-social a{display:inline-flex!important;margin:0!important}
.footer-share{margin-top:22px;display:flex;flex-wrap:wrap;gap:5px 16px;font-size:13px}
.footer-share span{width:100%;color:#bdc7e7}
.footer .cli_settings_button{background:transparent!important;color:inherit!important;padding:0!important;font:inherit;cursor:pointer}
@media(max-width:1280px) and (min-width:1101px){.header .fone-menu{gap:12px;font-size:14px}}
@media(max-width:1100px){
 .header .fone-menu{display:block}
 .header .fone-menu>li>a{font-size:16px;padding:14px;border-bottom:1px solid #6e7dba40;white-space:normal}
 .header .fone-menu .menu-item-has-children>a{display:inline-block;max-width:calc(100% - 42px)}
 .header .fone-menu .sub-menu{position:static;width:auto;max-width:none;min-width:0;background:#1b225e;color:#fff;border:0;box-shadow:none;margin-left:14px;padding:8px 14px;display:none}
 .header .fone-menu .sub-menu .sub-menu{position:static;margin-left:12px}
 .header .fone-menu li:hover>.sub-menu,.header .fone-menu li:focus-within>.sub-menu{display:none}
 .header .fone-menu li.fone-submenu-open>.sub-menu{display:block}
 .header .fone-menu:not(.fone-menu-enhanced) .sub-menu{display:block}
 .fone-submenu-toggle{min-width:40px;min-height:44px;vertical-align:middle}
}

/* GPT0000000010 - Presentación compartida para Contact Form 7, también en Elementor.
 * Selectores limitados al plugin: los controles conservan su HTML y comportamiento.
 */
.wpcf7{width:100%;max-width:100%;min-width:0}
.wpcf7 .wpcf7-form{color:var(--ink);text-align:start}
.wpcf7 .wpcf7-form p{margin:0 0 10px;padding:0;color:var(--ink);font-size:15px;line-height:1.65}
.wpcf7 .wpcf7-form label{color:inherit;font:inherit}
.wpcf7 .wpcf7-form-control-wrap{display:block;max-width:100%;margin:0 0 18px}
.wpcf7 .wpcf7-form :is(input[type=text],input[type=email],input[type=tel],input[type=url],input[type=number],input[type=date],input[type=password],textarea,select){display:block;box-sizing:border-box;width:100%;max-width:100%;min-width:0;min-height:50px;margin:0;padding:12px 15px;border:1px solid #c9d3e4;border-radius:8px;background:#fafbfe;color:var(--ink);font:inherit;font-size:16px;line-height:1.5;box-shadow:0 1px 2px #20274a06;transition:border-color .15s,background-color .15s,box-shadow .15s}
.wpcf7 .wpcf7-form textarea{height:180px;min-height:160px;resize:vertical}
/* GPT0000000010 - Neutralizar márgenes/altura heredados del widget de Elementor.
 * Se supera su especificidad sin depender del ID de la página o del widget.
 */
.elementor .elementor-widget .wpcf7 form.wpcf7-form{margin-top:0}
.elementor .elementor-widget .wpcf7 form.wpcf7-form>p:not(:last-child){margin-bottom:10px}
.elementor .elementor-widget .wpcf7 form.wpcf7-form .wpcf7-form-control{margin-top:0}
.elementor .elementor-widget .wpcf7 form.wpcf7-form textarea.wpcf7-textarea{height:180px;min-height:160px}
.wpcf7 .wpcf7-form :is(input,textarea)::placeholder{color:#66718a;opacity:1}
.wpcf7 .wpcf7-form :is(input[type=text],input[type=email],input[type=tel],input[type=url],input[type=number],input[type=date],input[type=password],textarea,select):focus{border-color:#1485a8;background:#fff;outline:3px solid #23b6e333;outline-offset:2px;box-shadow:0 0 0 1px #1485a8}
.wpcf7 .wpcf7-form :is(input,textarea,select,button):focus-visible{outline:3px solid #1485a8;outline-offset:3px}
.wpcf7 .wpcf7-form :is(input,textarea,select):is(.wpcf7-not-valid,[aria-invalid=true]){border-color:#b32d45}
.wpcf7 .wpcf7-form :is(input,textarea,select):disabled{opacity:.65;cursor:not-allowed}

/* GPT0000000010 - Consentimiento nativo y enlaces legales legibles. */
.wpcf7 .wpcf7-list-item{display:inline-block;max-width:100%;margin:0 16px 8px 0;vertical-align:top}
.wpcf7 .wpcf7-list-item label{display:inline-flex;align-items:flex-start;gap:10px;max-width:100%;font-size:14px;line-height:1.65;cursor:pointer}
.wpcf7 .wpcf7-form input:is([type=checkbox],[type=radio]){box-sizing:border-box;flex:0 0 auto;width:19px;height:19px;min-height:0;margin:2px 0 0;padding:0;accent-color:var(--navy);vertical-align:middle;cursor:pointer}
.wpcf7 .wpcf7-list-item-label{min-width:0;overflow-wrap:anywhere}
.wpcf7 .wpcf7-form p a{color:var(--blue);font-size:14px;text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}
.wpcf7 .wpcf7-form p a:hover{color:var(--navy)}

/* GPT0000000010 - Botón y espaciado del contenedor antiguo con margen en línea. */
.wpcf7 .wpcf7-form :is(input[type=submit],button[type=submit],.wpcf7-submit){box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;width:auto;max-width:100%;min-width:148px;min-height:51px;margin:0;padding:13px 25px;border:1px solid transparent;border-radius:6px;background:var(--gradient);color:#103344;font:inherit;font-size:16px;font-weight:700;line-height:1.5;text-align:center;text-decoration:none;cursor:pointer;transition:box-shadow .15s,opacity .15s}
.wpcf7 .wpcf7-form :is(input[type=submit],button[type=submit],.wpcf7-submit):hover{box-shadow:0 8px 24px #232c7318}
.wpcf7 .wpcf7-form :is(input[type=submit],button[type=submit],.wpcf7-submit):disabled{opacity:.55;box-shadow:none;cursor:not-allowed}
.wpcf7 .wpcf7-form.submitting .wpcf7-submit{cursor:progress}
.wpcf7 .wpcf7-form>div:has(.wpcf7-submit){margin-top:22px!important;margin-bottom:0!important}

/* GPT0000000010 - Estados del plugin incluso si no se carga su CSS de base. */
.wpcf7 .hidden-fields-container{display:none}
.wpcf7 .screen-reader-response{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);clip-path:inset(50%);white-space:nowrap;border:0}
.wpcf7 .wpcf7-not-valid-tip{display:block;margin:7px 0 0;color:#a2233c;font-size:13px;font-weight:400;line-height:1.5}
.wpcf7 .wpcf7-response-output{margin:20px 0 0;padding:14px 16px;border:1px solid #bdcbe2;border-left:4px solid var(--blue);border-radius:8px;background:#f5f7fd;color:var(--ink);font-size:14px;line-height:1.65;overflow-wrap:anywhere}
.wpcf7 .wpcf7-form:is(.init,.resetting,.submitting) .wpcf7-response-output,.wpcf7 .wpcf7-response-output[aria-hidden=true],.wpcf7 .wpcf7-response-output:empty{display:none}
.wpcf7 .wpcf7-form.sent .wpcf7-response-output{border-color:#91cbb8;border-left-color:#257357;background:#f0faf5;color:#24523e}
.wpcf7 .wpcf7-form:is(.invalid,.unaccepted,.payment-required) .wpcf7-response-output{border-color:#e6c97f;border-left-color:#966709;background:#fff9ed;color:#704b10}
.wpcf7 .wpcf7-form:is(.failed,.aborted,.spam) .wpcf7-response-output{border-color:#e6b0bc;border-left-color:#a2233c;background:#fff5f7;color:#872038}
.wpcf7 .wpcf7-spinner{display:inline-block;visibility:hidden;box-sizing:border-box;position:relative;width:22px;height:22px;margin:0 0 0 12px;border:3px solid #d8e1ed;border-top-color:var(--navy);border-radius:50%;background:none;opacity:1;vertical-align:middle}
.wpcf7 .wpcf7-spinner::before{display:none}
.wpcf7 .wpcf7-form.submitting .wpcf7-spinner{visibility:visible;animation:fone-cf7-spin .8s linear infinite}
@keyframes fone-cf7-spin{to{transform:rotate(360deg)}}
@media(max-width:650px){
 .wpcf7 .wpcf7-form :is(input[type=submit],button[type=submit],.wpcf7-submit){width:100%;min-width:0}
 .wpcf7 .wpcf7-spinner{margin:10px 0 0}
}
@media(prefers-reduced-motion:reduce){
 .wpcf7 .wpcf7-form :is(input,textarea,select,button){transition:none}
 .wpcf7 .wpcf7-form.submitting .wpcf7-spinner{animation:none}
}

/* GPT0000000030 - El widget conserva reseñas, puntuación, enlaces y su propio motor.
 * Neutralizar los márgenes de imágenes y la tipografía heredada del artículo.
 */
body.fone-opinions-page .wp-prose{max-width:1260px}
.wp-prose .sk-ww-google-play-reviews{font-family:inherit!important;font-size:15px;line-height:1.55;overflow-wrap:normal;word-break:normal}
.wp-prose .sk-ww-google-play-reviews .sk-google-play-reviews-container{padding:22px;border-color:var(--line);border-radius:12px}
.wp-prose .sk-ww-google-play-reviews .sk-google-play-root{padding:0 0 22px;margin-bottom:12px;border-bottom:1px solid var(--line)}
.wp-prose .sk-ww-google-play-reviews .sk-ww-google-play-profile-usename{font-size:18px!important;line-height:1.4}
.wp-prose .sk-ww-google-play-reviews .google-play-videos-user-container{font-family:inherit;font-size:14px;line-height:1.4;padding:12px 16px;border-radius:7px}
.wp-prose .sk-ww-google-play-reviews .sk_gp_page_reviews_grid-content{border:1px solid var(--line)}
.wp-prose .sk-ww-google-play-reviews .sk-ww-google-play-reviews-content.review-list{padding:20px!important}
.wp-prose .sk-ww-google-play-reviews .sk-ww-google-play-reviews-reviewer{display:flex;align-items:flex-start;gap:12px;font-size:14px!important;line-height:1.45;overflow:visible}
.wp-prose .sk-ww-google-play-reviews .sk-reviewer-pic{float:none;margin:0;flex:0 0 42px}
.wp-prose .sk-ww-google-play-reviews .sk-reviewer-pic img{display:block;width:42px;height:42px;max-width:42px;margin:0!important;border-radius:50%;object-fit:cover}
.wp-prose .sk-ww-google-play-reviews .sk-reviewer-name-action{flex:1;min-width:0;width:auto;padding:0;line-height:1.45;overflow-wrap:break-word}
.wp-prose .sk-ww-google-play-reviews .sk-reviewer-name-action a{font-size:12px;line-height:1.45;text-decoration:none}
.wp-prose .sk-ww-google-play-reviews .sk-reviewer-name-action>a:first-child{display:block;font-size:14px;font-weight:600}
.wp-prose .sk-ww-google-play-reviews .sk_gp_date{font-size:12px;line-height:1.5;padding:0;margin:6px 0 0}
.wp-prose .sk-ww-google-play-reviews .sk_gp_stars{font-size:15px;line-height:1.2;margin-top:14px}
.wp-prose .sk-ww-google-play-reviews .sk-ww-google-play-reviews-review-text{font-size:15px!important;line-height:1.65;padding:12px 0;overflow-wrap:break-word}
.wp-prose .sk-ww-google-play-reviews p{margin:0 0 10px}
.wp-prose .sk-ww-google-play-reviews .sk-google-play-review-footer-link{display:inline-flex;align-items:center;gap:7px;font-size:12px;line-height:1.5;text-decoration:none}
.wp-prose .sk-ww-google-play-reviews .sk-google-play-review-footer-icon svg{flex-shrink:0;vertical-align:middle}
@media(max-width:700px){
 .wp-prose .sk-ww-google-play-reviews .sk-google-play-reviews-container{padding:14px}
 .wp-prose .sk-ww-google-play-reviews .sk-ww-google-play-reviews-content.review-list{padding:16px!important}
}

/* GPT0000000031 - El widget Carmie usaba fondo cover y una altura fija de 374px.
 * Reservar un cuadrado y mostrar la imagen completa; el título queda debajo.
 */
body.fone-blog-page .wp-prose{max-width:1260px}
body.fone-blog-page .bdt-post-grid-skin-carmie .bdt-post-grid-item{height:auto!important;min-width:0;border:1px solid var(--line);border-radius:9px;background:#fff;overflow:hidden}
body.fone-blog-page .bdt-post-grid-skin-carmie .bdt-post-grid-img-wrap{position:relative;width:100%;height:0!important;padding-top:100%;background:#f5f7fd}
body.fone-blog-page .bdt-post-grid-skin-carmie .bdt-post-grid-img-wrap>a{position:absolute;inset:0;display:block;width:100%;height:100%!important;min-height:0;background-size:contain!important;background-position:center!important;background-repeat:no-repeat!important;transform:none!important}
body.fone-blog-page .bdt-post-grid-skin-carmie .bdt-post-grid-desc{position:static!important;inset:auto;width:100%;padding:17px;background:#fff!important;transform:none!important}
body.fone-blog-page .bdt-post-grid-skin-carmie .bdt-post-grid-desc>.bdt-position-medium{position:static!important;inset:auto;margin:0!important}
body.fone-blog-page .bdt-post-grid-skin-carmie .bdt-post-grid-title{margin:0!important;font-size:17px;line-height:1.45;letter-spacing:-.015em}
body.fone-blog-page .bdt-post-grid-skin-carmie .bdt-post-grid-title a{color:var(--ink)!important;text-decoration:none;overflow-wrap:break-word}
body.fone-blog-page .bdt-post-grid-skin-carmie .bdt-post-grid-title a:hover{color:var(--blue)!important;text-decoration:underline}
@media(max-width:650px){
 body.fone-blog-page .bdt-post-grid-skin-carmie .bdt-post-grid-desc{padding:16px}
 body.fone-blog-page .bdt-post-grid-skin-carmie .bdt-post-grid-title{font-size:18px}
}
