.elementor-kit-306{--e-global-color-primary:#B23A2E;--e-global-color-secondary:#9A6110;--e-global-color-text:#1A1A1A;--e-global-color-accent:#EB9E2E;--e-global-color-brand:#B23A2E;--e-global-color-action:#9A6110;--e-global-color-accent_bg:#EB9E2E;--e-global-color-text_dark:#1A1A1A;--e-global-color-text_muted:#5C5C5C;--e-global-color-surface:#FBF6F1;--e-global-color-white:#FFFFFF;--e-global-color-3c2ad25:#FFFFFF;--e-global-color-8b564f1:#F5F5F5;--e-global-color-fa71d72:#1A1A1A;--e-global-color-brand_pure:#E40405;--e-global-color-action_on_dark:#FFD9A0;--e-global-color-field_border:#8A8177;--e-global-typography-primary-font-family:"Inter";--e-global-typography-primary-font-weight:600;--e-global-typography-primary-text-transform:none;--e-global-typography-primary-line-height:1.18em;--e-global-typography-primary-letter-spacing:-0.4px;--e-global-typography-secondary-font-family:"Inter";--e-global-typography-secondary-font-weight:400;--e-global-typography-secondary-text-transform:none;--e-global-typography-secondary-line-height:1.6em;--e-global-typography-text-font-family:"Inter";--e-global-typography-text-font-size:17px;--e-global-typography-text-font-weight:400;--e-global-typography-text-text-transform:none;--e-global-typography-text-line-height:1.65em;--e-global-typography-accent-font-family:"Inter";--e-global-typography-accent-font-size:13px;--e-global-typography-accent-font-weight:600;--e-global-typography-accent-text-transform:uppercase;--e-global-typography-accent-line-height:1.5em;--e-global-typography-accent-letter-spacing:1.2px;--e-global-typography-9740b67-font-family:"Inter";--e-global-typography-9740b67-font-size:14px;--e-global-typography-9740b67-font-weight:400;--e-global-typography-9740b67-text-transform:none;--e-global-typography-e492516-font-family:"Inter";--e-global-typography-e492516-font-size:13px;--e-global-typography-e492516-font-weight:600;--e-global-typography-e492516-text-transform:uppercase;--e-global-typography-e492516-line-height:1.5em;--e-global-typography-e492516-letter-spacing:1.4px;--e-global-typography-46bece7-font-family:"Inter";--e-global-typography-46bece7-font-size:72px;--e-global-typography-46bece7-font-weight:600;--e-global-typography-46bece7-text-transform:none;--e-global-typography-46bece7-line-height:1.08em;--e-global-typography-46bece7-letter-spacing:-1.6px;--e-global-typography-67ace4e-font-family:"Inter";--e-global-typography-67ace4e-font-size:56px;--e-global-typography-67ace4e-font-weight:600;--e-global-typography-67ace4e-text-transform:none;--e-global-typography-67ace4e-line-height:1.14em;--e-global-typography-67ace4e-letter-spacing:-1.2px;--e-global-typography-3f3e88c-font-family:"Inter";--e-global-typography-3f3e88c-font-size:42px;--e-global-typography-3f3e88c-font-weight:600;--e-global-typography-3f3e88c-text-transform:none;--e-global-typography-3f3e88c-line-height:1.18em;--e-global-typography-3f3e88c-letter-spacing:-0.9px;--e-global-typography-83a0a2f-font-family:"Inter";--e-global-typography-83a0a2f-font-size:32px;--e-global-typography-83a0a2f-font-weight:600;--e-global-typography-83a0a2f-text-transform:none;--e-global-typography-83a0a2f-line-height:1.22em;--e-global-typography-83a0a2f-letter-spacing:-0.6px;--e-global-typography-be86681-font-family:"Inter";--e-global-typography-be86681-font-size:24px;--e-global-typography-be86681-font-weight:600;--e-global-typography-be86681-text-transform:none;--e-global-typography-be86681-line-height:1.3em;--e-global-typography-be86681-letter-spacing:-0.3px;--e-global-typography-94485de-font-family:"Inter";--e-global-typography-94485de-font-size:20px;--e-global-typography-94485de-font-weight:600;--e-global-typography-94485de-text-transform:none;--e-global-typography-94485de-line-height:1.35em;--e-global-typography-94485de-letter-spacing:-0.2px;--e-global-typography-cbcd450-font-family:"Inter";--e-global-typography-cbcd450-font-size:17px;--e-global-typography-cbcd450-font-weight:600;--e-global-typography-cbcd450-text-transform:none;--e-global-typography-cbcd450-line-height:1.4em;--e-global-typography-cbcd450-letter-spacing:0px;--e-global-typography-cf1d9c8-font-family:"Inter";--e-global-typography-cf1d9c8-font-size:18px;--e-global-typography-cf1d9c8-font-weight:400;--e-global-typography-cf1d9c8-text-transform:none;--e-global-typography-cf1d9c8-font-style:italic;--e-global-typography-cf1d9c8-line-height:1.5em;--e-global-typography-b1af662-font-family:"Inter";--e-global-typography-b1af662-font-size:14px;--e-global-typography-b1af662-font-weight:500;--e-global-typography-b1af662-text-transform:uppercase;--e-global-typography-b1af662-line-height:1.22em;--e-global-typography-b1af662-letter-spacing:0.6px;--e-global-typography-3ad3076-font-family:"Inter";--e-global-typography-3ad3076-font-size:16px;--e-global-typography-3ad3076-font-weight:700;--e-global-typography-3ad3076-text-transform:none;--e-global-typography-3ad3076-line-height:1.3em;color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );text-transform:var( --e-global-typography-text-text-transform );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-306 e-page-transition{background-color:#FFBC7D;}body.e-wc-info-notice .woocommerce-info, body.e-wc-info-notice .wc-block-components-notice-banner.is-info{background-color:var( --e-global-color-8b564f1 );}body.e-wc-info-notice .woocommerce-info .button, body.e-wc-info-notice .wc-block-components-notice-banner.is-info .button{background-color:var( --e-global-color-accent );background-image:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );text-transform:var( --e-global-typography-accent-text-transform );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );}body.e-wc-info-notice .woocommerce-info .button:hover, body.e-wc-info-notice .wc-block-components-notice-banner.is-info .button:hover, body.e-wc-info-notice .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) .woocommerce .woocommerce-info .woocommerce-Button:hover, body.e-wc-info-notice .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) .woocommerce .wc-block-components-notice-banner.is-info .woocommerce-Button:hover{background-color:var( --e-global-color-secondary );background-image:var( --e-global-color-secondary );}.elementor-kit-306 a{color:var( --e-global-color-primary );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );text-transform:var( --e-global-typography-text-text-transform );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-306 h1{color:var( --e-global-color-primary );font-family:var( --e-global-typography-67ace4e-font-family ), Sans-serif;font-size:var( --e-global-typography-67ace4e-font-size );font-weight:var( --e-global-typography-67ace4e-font-weight );text-transform:var( --e-global-typography-67ace4e-text-transform );line-height:var( --e-global-typography-67ace4e-line-height );letter-spacing:var( --e-global-typography-67ace4e-letter-spacing );}.elementor-kit-306 h2{color:var( --e-global-color-primary );font-family:var( --e-global-typography-3f3e88c-font-family ), Sans-serif;font-size:var( --e-global-typography-3f3e88c-font-size );font-weight:var( --e-global-typography-3f3e88c-font-weight );text-transform:var( --e-global-typography-3f3e88c-text-transform );line-height:var( --e-global-typography-3f3e88c-line-height );letter-spacing:var( --e-global-typography-3f3e88c-letter-spacing );}.elementor-kit-306 h3{color:var( --e-global-color-primary );font-family:var( --e-global-typography-83a0a2f-font-family ), Sans-serif;font-size:var( --e-global-typography-83a0a2f-font-size );font-weight:var( --e-global-typography-83a0a2f-font-weight );text-transform:var( --e-global-typography-83a0a2f-text-transform );line-height:var( --e-global-typography-83a0a2f-line-height );letter-spacing:var( --e-global-typography-83a0a2f-letter-spacing );}.elementor-kit-306 h4{color:var( --e-global-color-primary );font-family:var( --e-global-typography-be86681-font-family ), Sans-serif;font-size:var( --e-global-typography-be86681-font-size );font-weight:var( --e-global-typography-be86681-font-weight );text-transform:var( --e-global-typography-be86681-text-transform );line-height:var( --e-global-typography-be86681-line-height );letter-spacing:var( --e-global-typography-be86681-letter-spacing );}.elementor-kit-306 h5{color:var( --e-global-color-primary );font-family:var( --e-global-typography-94485de-font-family ), Sans-serif;font-size:var( --e-global-typography-94485de-font-size );font-weight:var( --e-global-typography-94485de-font-weight );text-transform:var( --e-global-typography-94485de-text-transform );line-height:var( --e-global-typography-94485de-line-height );letter-spacing:var( --e-global-typography-94485de-letter-spacing );}.elementor-kit-306 h6{color:var( --e-global-color-primary );font-family:var( --e-global-typography-cbcd450-font-family ), Sans-serif;font-size:var( --e-global-typography-cbcd450-font-size );font-weight:var( --e-global-typography-cbcd450-font-weight );text-transform:var( --e-global-typography-cbcd450-text-transform );line-height:var( --e-global-typography-cbcd450-line-height );letter-spacing:var( --e-global-typography-cbcd450-letter-spacing );}.elementor-kit-306 button,.elementor-kit-306 input[type="button"],.elementor-kit-306 input[type="submit"],.elementor-kit-306 .elementor-button{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );text-transform:var( --e-global-typography-accent-text-transform );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );color:var( --e-global-color-secondary );border-style:solid;border-width:1px 1px 1px 1px;border-color:var( --e-global-color-accent );border-radius:0px 0px 0px 0px;padding:16px 30px 16px 30px;}.elementor-kit-306 button:hover,.elementor-kit-306 button:focus,.elementor-kit-306 input[type="button"]:hover,.elementor-kit-306 input[type="button"]:focus,.elementor-kit-306 input[type="submit"]:hover,.elementor-kit-306 input[type="submit"]:focus,.elementor-kit-306 .elementor-button:hover,.elementor-kit-306 .elementor-button:focus{color:var( --e-global-color-3c2ad25 );border-style:solid;border-width:1px 1px 1px 1px;border-color:var( --e-global-color-primary );border-radius:0px 0px 0px 0px;}.elementor-kit-306 label{color:var( --e-global-color-3c2ad25 );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );text-transform:var( --e-global-typography-text-text-transform );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-306 input:not([type="button"]):not([type="submit"]),.elementor-kit-306 textarea,.elementor-kit-306 .elementor-field-textual{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );text-transform:var( --e-global-typography-text-text-transform );line-height:var( --e-global-typography-text-line-height );color:var( --e-global-color-text );accent-color:var( --e-global-color-text );border-style:solid;border-width:01px 01px 01px 01px;border-color:var( --e-global-color-8b564f1 );border-radius:0px 0px 0px 0px;padding:16px 25px 16px 25px;}.elementor-kit-306 input:focus:not([type="button"]):not([type="submit"]),.elementor-kit-306 textarea:focus,.elementor-kit-306 .elementor-field-textual:focus{color:var( --e-global-color-text );accent-color:var( --e-global-color-text );border-radius:0px 0px 0px 0px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){margin-block-end:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.e-wc-info-notice .woocommerce-info, .e-wc-info-notice .wc-block-components-notice-banner.is-info{--info-message-text-color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );text-transform:var( --e-global-typography-text-text-transform );line-height:var( --e-global-typography-text-line-height );--info-message-icon-color:var( --e-global-color-secondary );--info-buttons-normal-text-color:var( --e-global-color-3c2ad25 );--info-buttons-hover-text-color:var( --e-global-color-3c2ad25 );--info-border-type:none;}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-kit-306{--e-global-typography-e492516-font-size:15px;--e-global-typography-46bece7-font-size:60px;--e-global-typography-67ace4e-font-size:54px;--e-global-typography-3f3e88c-font-size:42px;--e-global-typography-83a0a2f-font-size:36px;--e-global-typography-cbcd450-font-size:18px;--e-global-typography-cf1d9c8-font-size:18px;font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-306 a{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-306 h1{font-size:var( --e-global-typography-67ace4e-font-size );line-height:var( --e-global-typography-67ace4e-line-height );letter-spacing:var( --e-global-typography-67ace4e-letter-spacing );}.elementor-kit-306 h2{font-size:var( --e-global-typography-3f3e88c-font-size );line-height:var( --e-global-typography-3f3e88c-line-height );letter-spacing:var( --e-global-typography-3f3e88c-letter-spacing );}.elementor-kit-306 h3{font-size:var( --e-global-typography-83a0a2f-font-size );line-height:var( --e-global-typography-83a0a2f-line-height );letter-spacing:var( --e-global-typography-83a0a2f-letter-spacing );}.elementor-kit-306 h4{font-size:var( --e-global-typography-be86681-font-size );line-height:var( --e-global-typography-be86681-line-height );letter-spacing:var( --e-global-typography-be86681-letter-spacing );}.elementor-kit-306 h5{font-size:var( --e-global-typography-94485de-font-size );line-height:var( --e-global-typography-94485de-line-height );letter-spacing:var( --e-global-typography-94485de-letter-spacing );}.elementor-kit-306 h6{font-size:var( --e-global-typography-cbcd450-font-size );line-height:var( --e-global-typography-cbcd450-line-height );letter-spacing:var( --e-global-typography-cbcd450-letter-spacing );}.elementor-kit-306 button,.elementor-kit-306 input[type="button"],.elementor-kit-306 input[type="submit"],.elementor-kit-306 .elementor-button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-kit-306 label{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-306 input:not([type="button"]):not([type="submit"]),.elementor-kit-306 textarea,.elementor-kit-306 .elementor-field-textual{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}.e-wc-info-notice .woocommerce-info, .e-wc-info-notice .wc-block-components-notice-banner.is-info{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );--info-box-border-radius:0px 0px 0px 0px;--info-buttons-border-radius:0px 0px 0px 0px;}body.e-wc-info-notice .woocommerce-info .button, body.e-wc-info-notice .wc-block-components-notice-banner.is-info .button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );}}@media(max-width:767px){.elementor-kit-306{--e-global-typography-e492516-font-size:14px;--e-global-typography-46bece7-font-size:42px;--e-global-typography-67ace4e-font-size:42px;--e-global-typography-3f3e88c-font-size:32px;--e-global-typography-83a0a2f-font-size:28px;--e-global-typography-cbcd450-font-size:18px;--e-global-typography-cf1d9c8-font-size:16px;font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-306 a{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-306 h1{font-size:var( --e-global-typography-67ace4e-font-size );line-height:var( --e-global-typography-67ace4e-line-height );letter-spacing:var( --e-global-typography-67ace4e-letter-spacing );}.elementor-kit-306 h2{font-size:var( --e-global-typography-3f3e88c-font-size );line-height:var( --e-global-typography-3f3e88c-line-height );letter-spacing:var( --e-global-typography-3f3e88c-letter-spacing );}.elementor-kit-306 h3{font-size:var( --e-global-typography-83a0a2f-font-size );line-height:var( --e-global-typography-83a0a2f-line-height );letter-spacing:var( --e-global-typography-83a0a2f-letter-spacing );}.elementor-kit-306 h4{font-size:var( --e-global-typography-be86681-font-size );line-height:var( --e-global-typography-be86681-line-height );letter-spacing:var( --e-global-typography-be86681-letter-spacing );}.elementor-kit-306 h5{font-size:var( --e-global-typography-94485de-font-size );line-height:var( --e-global-typography-94485de-line-height );letter-spacing:var( --e-global-typography-94485de-letter-spacing );}.elementor-kit-306 h6{font-size:var( --e-global-typography-cbcd450-font-size );line-height:var( --e-global-typography-cbcd450-line-height );letter-spacing:var( --e-global-typography-cbcd450-letter-spacing );}.elementor-kit-306 button,.elementor-kit-306 input[type="button"],.elementor-kit-306 input[type="submit"],.elementor-kit-306 .elementor-button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-kit-306 label{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-306 input:not([type="button"]):not([type="submit"]),.elementor-kit-306 textarea,.elementor-kit-306 .elementor-field-textual{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}.e-wc-info-notice .woocommerce-info, .e-wc-info-notice .wc-block-components-notice-banner.is-info{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );--info-box-border-radius:0px 0px 0px 0px;--info-buttons-border-radius:0px 0px 0px 0px;--info-buttons-padding:15px 18px 15px 18px;}body.e-wc-info-notice .woocommerce-info .button, body.e-wc-info-notice .wc-block-components-notice-banner.is-info .button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );}}/* Start custom CSS *//* WilApp — correcciones de entrega */
.elementor-widget-heading .elementor-heading-title{text-transform:none}
.jkit-heading .jkit-title{text-transform:none}
.elementor-button{text-transform:uppercase}

/* Foco visible: ni Hello Elementor ni el kit lo traen (skill 5.2) */
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,
textarea:focus-visible,[tabindex]:focus-visible{
  outline:3px solid #B23A2E;outline-offset:2px;border-radius:2px}
footer a:focus-visible,.elementor-location-footer a:focus-visible,
[class*="brand"] a:focus-visible{outline-color:#FFD9A0}


/* Un enlace dentro de un texto no puede distinguirse solo por el color (WCAG 1.4.1) */
.elementor-widget-text-editor a:not(.elementor-button),
.elementor-widget-theme-post-content a:not(.elementor-button){text-decoration:underline}

/* Elementor no respeta prefers-reduced-motion por su cuenta */
@media (prefers-reduced-motion: reduce){
  body .elementor-invisible{visibility:visible;animation:none}
  body .animated{animation:none}
}

/* Enlaces del pie: el rojo de marca es invisible sobre la banda oscura */
.elementor-location-footer a{color:#FFD9A0}
.elementor-location-footer a:hover,.elementor-location-footer a:focus-visible{color:#FFFFFF}

/* El pie hereda «capitalize» del kit y parte los correos: Ph@Spainpropertyfinder.Net */
.elementor-location-footer .elementor-heading-title{text-transform:none}

/* El tema pinta los enlaces en #333366 al pasar el ratón: en un botón deja el texto
   a 2,38:1 sobre su propio fondo. Se sube la especificidad, no se usa !important. */
body .elementor-button:hover,
body .elementor-button:focus-visible,
body a.elementor-button:hover,
body a.elementor-button:focus-visible{color:#FFFFFF;background-color:#7A2E2A}

/* ---- Formulario de registro (checkout de WooCommerce) --------------------
   El tema pintaba las etiquetas en blanco sobre fondo blanco —invisibles—, el borde
   de los campos a #F5F5F5 (1,1:1, por debajo del 3:1 que pide una entrada de
   formulario) y el botón de pago en el morado por defecto de WooCommerce. */
body .woocommerce form .form-row label,
body .woocommerce-checkout label,
body .wc-block-components-form label{
  color:#1A1A1A;font-size:.9rem;font-weight:600;letter-spacing:.01em;margin-bottom:6px}
body .woocommerce form .form-row label .required{color:#B23A2E;text-decoration:none}

body .woocommerce form .form-row input.input-text,
body .woocommerce form .form-row textarea,
body .woocommerce-checkout .select2-container .select2-selection--single,
body .woocommerce-checkout select{
  width:100%;min-height:52px;padding:14px 16px;
  border:1px solid #8A8177;border-radius:6px;background:#FFFFFF;color:#1A1A1A;
  font-family:inherit;font-size:1rem;box-shadow:none;transition:border-color .15s ease}
body .woocommerce form .form-row textarea{min-height:120px;line-height:1.5}
body .woocommerce form .form-row input.input-text:focus,
body .woocommerce form .form-row textarea:focus,
body .woocommerce-checkout select:focus{
  border-color:#B23A2E;outline:3px solid rgba(193,0,0,.22);outline-offset:1px}

/* Casillas de tipo, presupuesto y zona: aire y área de pulsación decente */
body .woocommerce-checkout .form-row input[type=checkbox]+span,
body .woocommerce-checkout .form-row input[type=radio]+span{font-weight:400}
body .woocommerce-checkout .form-row.locatespain-choices label{
  display:inline-flex;align-items:center;gap:9px;margin:0 18px 10px 0;font-weight:400}

/* Titulares de bloque del formulario, en la línea del sitio y no en el gris del tema */
body .woocommerce-checkout h3,
body .woocommerce-checkout .woocommerce-billing-fields h3,
body #order_review_heading{
  font-size:1.35rem;font-weight:600;color:#1A1A1A;
  margin:34px 0 18px;padding-bottom:10px;border-bottom:1px solid #E7DED6}

/* Resumen del pedido y pago: tarjeta sobria en vez de la caja gris de WooCommerce */
body #order_review,body .woocommerce-checkout-review-order{
  background:#FBF6F1;border:1px solid #E7DED6;border-radius:10px;padding:24px}
body .woocommerce-checkout-review-order-table th,
body .woocommerce-checkout-review-order-table td{border-color:#E7DED6;padding:12px 0}
body .woocommerce-checkout-review-order-table .order-total .amount{font-size:1.5rem;color:#B23A2E}

/* El botón de pago venía en el morado por defecto de WooCommerce */
body #place_order,body .woocommerce #payment #place_order{
  width:100%;min-height:56px;padding:16px 28px;
  background:#B23A2E;color:#FFFFFF;border:0;border-radius:6px;
  font-size:1.05rem;font-weight:600;letter-spacing:.02em;text-transform:uppercase}
body #place_order:hover,body #place_order:focus-visible{background:#7A2E2A;color:#FFFFFF}

/* Aviso de método de pago y textos legales del formulario */
body .woocommerce-privacy-policy-text p,body .woocommerce-terms-and-conditions-wrapper p{
  font-size:.9rem;color:#5C5C5C;line-height:1.6}
body .woocommerce-info,body .woocommerce-error,body .woocommerce-message{
  border-top-color:#B23A2E;background:#FBF6F1;color:#1A1A1A}

/* ---- Ajuste tipográfico y de forma ---------------------------------------
   El kit viene en inglés con «capitalize» en los encabezados: en pantalla se lee
   como titulares gritados («You Tell Us What You Want»). Se neutraliza a nivel de
   elemento, que es donde el kit lo declara. */
body h1,body h2,body h3,body h4,body h5,body h6,
body .elementor-heading-title,body .jkit-heading .jkit-title,
body .elementor-widget-heading .elementor-heading-title{text-transform:none}
body .elementor-button,body .elementor-widget-jkit_icon_box .jkit-icon-box-title{text-transform:none}

/* Titulares algo menos pesados y más ceñidos: el 700 con capitalize era lo que
   daba el aire rústico */
body h1,body h2{font-weight:600;letter-spacing:-.4px}
body h3,body h4{font-weight:600;letter-spacing:-.2px}
body main#content p{max-width:72ch}

/* Rótulos de sección («OVERVIEW», «HOW IT WORKS»): pequeños y espaciados, no
   párrafos en mayúsculas de 18 px */
body .elementor-widget-heading .elementor-heading-title[style*="uppercase"],
body .elementor-widget-heading p.elementor-heading-title{letter-spacing:.08em}

/* Esquinas: el kit lo dejaba todo a 0 px, que en tarjetas se ve tosco */
body main#content .e-con[class*="elementor-element"] &gt; .e-con-inner img,
body main#content .elementor-widget-image img{border-radius:10px}
body .woocommerce-checkout select{border-radius:6px;border-color:#8A8177}

/* ---- Últimos contrastes de la revisión ------------------------------------
   El rótulo de la cabecera de página («Areas We Cover», «About», «FAQ») usaba el
   dorado de acción sobre la banda oscura de la foto: 2,14:1. Sobre oscuro va la
   variante clara del token. */
body .elementor-location-single .elementor-widget-heading:first-of-type .elementor-heading-title,
body main#content &gt; .e-con:first-child .elementor-widget-heading .elementor-heading-title[class],
body main#content &gt; .e-con:first-child p.elementor-heading-title{color:#FFD9A0}

/* Preguntas del acordeón: se quedaban en 4,47:1 sobre el beige de la superficie */
body .elementor-accordion .elementor-tab-title,
body .elementor-accordion .elementor-tab-title a,
body .elementor-toggle .elementor-toggle-title{color:#1A1A1A}

/* Botón de enviar del formulario de contacto: heredaba el estilo del tema */
body .elementor-field-type-submit button[type=submit],
body .elementor-button[type=submit]{
  background:#B23A2E;color:#FFFFFF;border:0;border-radius:6px;
  min-height:52px;padding:14px 28px;font-weight:600}
body .elementor-field-type-submit button[type=submit]:hover,
body .elementor-field-type-submit button[type=submit]:focus-visible{background:#7A2E2A;color:#FFFFFF}

/* Campos del formulario de contacto, a juego con los del registro */
/* Solo los campos de texto: la clase .elementor-field la lleva TAMBIÉN la casilla
   de aceptación, y este min-height la estiraba a 13x52 px, un rectángulo vertical
   que no parecía una casilla. Se acota a .elementor-field-textual, que es la que
   Elementor pone únicamente en input de texto, email, tel, select y textarea. */
body .elementor-field-group .elementor-field.elementor-field-textual{
  min-height:52px;padding:14px 16px;border:1px solid #8A8177;border-radius:6px;background:#FFF;color:#1A1A1A}
body .elementor-field-group textarea.elementor-field{min-height:130px}
body .elementor-field-group .elementor-field:focus-visible,
body .elementor-field-group .elementor-field.elementor-field-textual:focus{
  border-color:#B23A2E;outline:3px solid rgba(193,0,0,.22);outline-offset:1px}

/* La entrada del menú de la página actual iba en el dorado de acción sobre la banda
   oscura de la cabecera: 2,14:1. Sobre oscuro va la variante clara del token. */
body .elementor-location-header .elementor-nav-menu .elementor-item.elementor-item-active,
body .elementor-location-header .elementor-nav-menu .elementor-item:hover,
body .elementor-location-header .elementor-nav-menu .elementor-item:focus-visible,
body .elementor-location-header .elementor-nav-menu .current-menu-item &gt; .elementor-item{color:#FFD9A0}

/* Botón «Send message»: venía en dorado con texto blanco (2,22:1) */
body .elementor-field-group button.elementor-button,
body .elementor-widget-form button.elementor-button{
  border:0;border-radius:6px;min-height:52px;padding:14px 28px;font-weight:600}

/* ---- Formulario sobre la banda de marca ------------------------------------
   Clase de utilidad (skill 4.3) para el contenedor de un formulario montado sobre
   el rojo de marca. Elementor no expone ningún control para el color del anillo de
   foco, y el del kit es un rojo al 22 % que sobre ese fondo no se distingue: se
   navegaba con el tabulador sin ver dónde estabas. Se aplica desde
   Avanzado -&gt; Clases CSS del contenedor, así que el cliente la ve y la puede quitar. */
body .ls-form-on-brand .elementor-form .elementor-field.elementor-field-textual:focus,
body .ls-form-on-brand .elementor-form .elementor-field:focus-visible,
body .ls-form-on-brand .elementor-form .elementor-button:focus-visible{
  outline:3px solid #FFD9A0;outline-offset:2px;border-color:#FFFFFF}

/* ---- Casilla de aceptación del formulario ---------------------------------
   Elementor no expone ningún control de tamaño ni de alineación para la casilla:
   la pinta al tamaño del sistema y con el texto pegado. Lo que sigue le da un
   blanco de impacto suficiente (WCAG 2.5.8), la alinea con la primera línea de su
   texto y le pone foco visible, que el kit tampoco trae. */
body .elementor-field-type-acceptance .elementor-field-subgroup{display:block}
body .elementor-field-type-acceptance .elementor-field-option{
  display:flex;align-items:flex-start;gap:10px}
body .elementor-field-type-acceptance input[type=checkbox].elementor-field{
  flex:0 0 auto;width:20px;height:20px;min-height:0;margin:2px 0 0;padding:0;
  accent-color:#7A2E2A;border-radius:3px;cursor:pointer}
body .elementor-field-type-acceptance input[type=checkbox].elementor-field:focus-visible{
  outline:3px solid #FFD9A0;outline-offset:2px}
body .elementor-field-type-acceptance .elementor-field-option label{
  margin:0;font-weight:400;line-height:1.45;cursor:pointer}
/* Un enlace dentro de un texto no puede distinguirse solo por el color (WCAG 1.4.1) */
body .elementor-field-type-acceptance .elementor-field-option label a{
  color:inherit;text-decoration:underline;text-underline-offset:2px}
body .elementor-field-type-acceptance .elementor-field-option label a:hover,
body .elementor-field-type-acceptance .elementor-field-option label a:focus-visible{
  color:#FFD9A0}

/* El honeypot no debe ocupar hueco. Elementor Pro oculta su input con un
   display:none en línea, pero su contenedor sigue en el flujo y sumaba 222 px de
   blanco antes de la casilla de aceptación.
   El .elementor-kit-306 se apoya en una particularidad del propio handler del honeypot
   (modules/forms/classes/honeypot-handler.php): deja la clase del grupo en
   «elementor-field-type-text» a secas, así que es el único hijo del envoltorio que
   se queda SIN elementor-field-group. Ningún campo real cae aquí. */
body .elementor-form .elementor-field-type-text:not(.elementor-field-group){display:none}

/* Preguntas del acordeón sobre la superficie beige: se quedaban en 4,47:1 */
body .elementor-accordion .elementor-tab-title,
body .elementor-accordion .elementor-tab-title a,
body .elementor-accordion .elementor-accordion-title,
body .elementor-tab-title .elementor-accordion-title{color:#1A1A1A}

/* El tema pinta a:hover en #333366 y gana por orden de carga sobre la regla del
   widget: el texto del botón quedaba en 1,06:1 sobre su propio fondo de hover. */
body a.elementor-button:hover,body a.elementor-button:focus-visible,
body .elementor-button:hover,body .elementor-button:focus-visible,
body .elementor-button:hover .elementor-button-text,
body .elementor-button:focus-visible .elementor-button-text{color:#FFFFFF}

/* El envoltorio del titular rotativo va en el rojo de marca; queda tapado por las
   letras blancas, pero sobre la foto oscura mide 1,18:1. Se iguala al texto. */
body .elementor-headline-dynamic-wrapper,
body .elementor-headline--style-rotate .elementor-headline-dynamic-wrapper{color:#FFFFFF}



/* ---- Mosaico de zonas -----------------------------------------------------
   Rejilla irregular con el rótulo superpuesto sobre la foto. Elementor no expone
   ni CSS grid con celdas de distinto tamaño ni un velo en degradado sobre la
   imagen, de ahí estas clases (skill 4.3). Esquinas rectas a propósito. */
.ls-mosaic{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:200px;gap:14px}
.ls-mosaic &gt; .ls-tile{position:relative;overflow:hidden;border-radius:0;min-height:0}
.ls-tile--a{grid-column:span 2;grid-row:span 2}
.ls-tile--b{grid-column:span 2;grid-row:span 1}
.ls-tile--c,.ls-tile--d{grid-column:span 1;grid-row:span 1}
.ls-tile--e,.ls-tile--f{grid-column:span 2;grid-row:span 1}

.ls-tile .ls-tile__photo{position:absolute;inset:0;line-height:0;margin:0}
.ls-tile .ls-tile__photo .elementor-widget-container,
.ls-tile .ls-tile__photo figure,
.ls-tile .ls-tile__photo a{height:100%}
.ls-tile .ls-tile__photo img{
  width:100%;height:100%;object-fit:cover;display:block;border-radius:0;
  transition:transform .6s cubic-bezier(.2,.6,.2,1)}

.ls-tile::after{content:"";position:absolute;inset:0;pointer-events:none;
  background:rgba(28,12,10,.16);transition:background .35s ease}

/* El velo fuerte va en el rótulo, no en la celda: escala con el texto y funciona
   igual en la celda grande que en las pequeñas. */
.ls-tile .ls-tile__cap{
  position:absolute;left:0;right:0;bottom:0;z-index:2;justify-content:flex-end;
  pointer-events:none;padding:30px 24px 18px;
  background:linear-gradient(to top,
    rgba(24,10,8,.95) 0%, rgba(24,10,8,.88) 55%,
    rgba(24,10,8,.55) 84%, rgba(24,10,8,0) 100%)}
.ls-tile .ls-tile__line{font-size:14.5px;line-height:1.5}

/* En las celdas pequeñas manda el nombre: la descripción sobraría */
.ls-tile--c .ls-tile__cap,.ls-tile--d .ls-tile__cap{padding:30px 18px 16px}
.ls-tile--c .ls-tile__line,.ls-tile--d .ls-tile__line{display:none}

.ls-tile:hover .ls-tile__photo img{transform:scale(1.06)}
.ls-tile:hover::after{background:rgba(28,12,10,.04)}

@media (max-width:1024px){
  .ls-mosaic{grid-template-columns:repeat(2,1fr);grid-auto-rows:200px}
  .ls-tile--a{grid-column:span 2;grid-row:span 2}
  .ls-tile--b,.ls-tile--e,.ls-tile--f{grid-column:span 2}
  .ls-tile--c,.ls-tile--d{grid-column:span 1}
}
@media (max-width:600px){
  .ls-mosaic{grid-template-columns:1fr;grid-auto-rows:210px}
  .ls-mosaic &gt; .ls-tile{grid-column:span 1!important;grid-row:span 1!important}
  .ls-tile--c .ls-tile__line,.ls-tile--d .ls-tile__line{display:block}
}
@media (prefers-reduced-motion: reduce){
  .ls-tile .ls-tile__photo img,.ls-tile::after{transition:none}
  .ls-tile:hover .ls-tile__photo img{transform:none}
}

/* el menú del kit traía un borde de puntos entre entradas */
.elementor-nav-menu li.menu-item{border-style:none}

/* ---- Páginas legales ------------------------------------------------------
   Van con la plantilla «Elementor Full Width», que vuelca el contenido sin
   envoltorio ni título. El texto se mantiene en el editor de WordPress para que
   el cliente lo pueda actualizar sin abrir Elementor; el estilo lo pone el Kit. */
.page-id-410 main#content,.page-id-411 main#content,
.page-id-412 main#content,.page-id-413 main#content,
.page-id-431 main#content{display:block;background:#FFFFFF}

.ls-legal-head{
  background:linear-gradient(100deg,#7A2E2A 0%,#2E1412 100%);
  padding:76px 24px 64px;text-align:left}
.ls-legal-head h1{
  max-width:820px;margin:0 auto;color:#FFFFFF;
  font-size:44px;line-height:1.14;font-weight:600;letter-spacing:-.8px}
.ls-legal-head .ls-legal-sub{
  max-width:820px;margin:14px auto 0;color:#F0DDD8;font-size:18px;line-height:1.5}

.ls-legal-body{max-width:820px;margin:0 auto;padding:56px 24px 84px;color:#1A1A1A}
.ls-legal-body &gt; *:first-child{margin-top:0}
.ls-legal-body p{font-size:17px;line-height:1.7;margin:0 0 18px;color:#333030}
.ls-legal-body h2{
  font-size:24px;line-height:1.25;font-weight:600;letter-spacing:-.3px;
  margin:44px 0 16px;padding-bottom:10px;border-bottom:1px solid #E7DED6;color:#1A1A1A}
.ls-legal-body h3{font-size:19px;font-weight:600;margin:30px 0 12px;color:#1A1A1A}
.ls-legal-body ul{margin:0 0 20px;padding-left:22px}
.ls-legal-body li{font-size:17px;line-height:1.7;margin-bottom:8px;color:#333030}
.ls-legal-body a{color:#A8322F;text-decoration:underline}
.ls-legal-body a:hover,.ls-legal-body a:focus-visible{color:#7A2E2A}
.ls-legal-body strong{color:#1A1A1A;font-weight:600}


/* Las tablas se desplazan dentro de su caja, no ensanchan la página */
.ls-legal-body .ls-legal-table{
  width:100%;border-collapse:collapse;margin:0 0 24px;display:block;overflow-x:auto}
.ls-legal-table th,.ls-legal-table td{
  border:1px solid #E7DED6;padding:12px 14px;text-align:left;
  font-size:15.5px;line-height:1.55;vertical-align:top}
.ls-legal-table th{background:#FBF6F1;font-weight:600;color:#1A1A1A;white-space:nowrap}
.ls-legal-table td{color:#333030}

@media (max-width:767px){
  .ls-legal-head{padding:52px 18px 44px}
  .ls-legal-head h1{font-size:32px}
  .ls-legal-body{padding:40px 18px 60px}
}

/* ---- Aviso de cookies -----------------------------------------------------
   El plugin separa los botones con 8 px de margen: quedan pegados y por debajo
   del objetivo táctil recomendado. Se pasa a una separación real con gap. */
.cky-notice-btn-wrapper,
.cky-prefrence-btn-wrapper,
.cky-consent-bar .cky-notice-btn-wrapper{
  display:flex;flex-wrap:wrap;gap:14px;align-items:center}
.cky-notice-btn-wrapper .cky-btn,
.cky-prefrence-btn-wrapper .cky-btn{
  margin:0;min-height:46px;padding:12px 26px;border-radius:6px;flex:0 1 auto}

/* Foco visible: el plugin no lo trae y el aviso es lo primero que se tabula */
.cky-consent-container:focus-visible,
.cky-modal:focus-visible,
.cky-btn:focus-visible,
.cky-banner-element:focus-visible,
.cky-btn-revisit-wrapper:focus-visible,
.cky-switch input:focus-visible + span{
  outline:3px solid #B23A2E;outline-offset:2px;border-radius:4px}
.cky-consent-bar,.cky-modal{scroll-margin-top:20px}

/* En pantalla estrecha los botones se apilan a todo el ancho, no en tres tiras */
@media (max-width:600px){
  .cky-notice-btn-wrapper,.cky-prefrence-btn-wrapper{gap:10px}
  .cky-notice-btn-wrapper .cky-btn,
  .cky-prefrence-btn-wrapper .cky-btn{flex:1 1 100%;justify-content:center;text-align:center}
}

/* ---- Vistas de pedido y cuenta --------------------------------------------
   Confirmación de pedido, detalle, carrito y «Mi cuenta». Las pinta WooCommerce con
   la plantilla del tema, así que no pasan por Elementor: el estilo va aquí, en el
   CSS del Kit, para que siga siendo editable desde Ajustes del sitio. */
/* El :not(.elementor-page) es lo que deja fuera «Register &amp; Pay» (ID 382). Esa página
   ES el checkout —/checkout/ redirige a ella— pero está maquetada con Elementor, así
   que este ancho de lectura le encajonaba la portada a 1040 px y la dejaba con franjas
   blancas a los lados. El carrito y «Mi cuenta» sí los pinta el tema y lo siguen
   necesitando; el día que se monte alguno con Elementor, se descuelga solo. */
body:not(.elementor-page).woocommerce-order-received .site-main,
body:not(.elementor-page).woocommerce-checkout .site-main,
body:not(.elementor-page).woocommerce-cart .site-main,
body:not(.elementor-page).woocommerce-account .site-main{
  max-width:1040px;margin:0 auto;padding:56px 24px 84px}

/* Título de la página, con el mismo aire que el resto del sitio */
.woocommerce-order-received .entry-title,
.woocommerce-cart .entry-title,
.woocommerce-account .entry-title,
.woocommerce-checkout .entry-title{
  font-size:40px;line-height:1.15;font-weight:600;letter-spacing:-.6px;
  margin:0 0 28px;color:#1A1A1A}

/* «Thank you. Your order has been received.» */
.woocommerce-notice--success{
  background:#FBF6F1;border:1px solid #E7DED6;border-left:4px solid #B23A2E;
  border-radius:8px;padding:18px 22px;margin:0 0 26px;font-size:17px;color:#1A1A1A}

/* La fila de número de pedido / fecha / correo / total */
ul.woocommerce-order-overview{
  display:flex;flex-wrap:wrap;gap:0;list-style:none;margin:0 0 34px;padding:0;
  border:1px solid #E7DED6;border-radius:10px;overflow:hidden;background:#fff}
ul.woocommerce-order-overview li{
  flex:1 1 190px;margin:0;padding:18px 22px;border:0;border-right:1px solid #E7DED6;
  font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:#5C5C5C}
ul.woocommerce-order-overview li:last-child{border-right:0}
ul.woocommerce-order-overview li strong{
  display:block;margin-top:6px;font-size:17px;letter-spacing:0;text-transform:none;
  font-weight:600;color:#1A1A1A}

/* Encabezados de bloque */
.woocommerce-order-details__title,
.woocommerce-column__title,
.woocommerce-order h2,
.woocommerce-account h2{
  font-size:24px;font-weight:600;letter-spacing:-.3px;color:#1A1A1A;
  margin:40px 0 16px;padding-bottom:10px;border-bottom:1px solid #E7DED6}

/* Tablas de pedido */
.woocommerce table.shop_table{
  border:1px solid #E7DED6;border-radius:10px;border-collapse:separate;border-spacing:0;
  overflow:hidden;width:100%;margin:0 0 28px}
.woocommerce table.shop_table th,
.woocommerce table.shop_table td{
  border:0;border-bottom:1px solid #E7DED6;padding:14px 18px;font-size:16px;color:#333030}
.woocommerce table.shop_table thead th{
  background:#FBF6F1;font-weight:600;color:#1A1A1A;font-size:14px;
  letter-spacing:.04em;text-transform:uppercase}
.woocommerce table.shop_table tfoot th,
.woocommerce table.shop_table tfoot td{background:#FBF6F1;font-weight:600;color:#1A1A1A}
.woocommerce table.shop_table tr:last-child td,
.woocommerce table.shop_table tfoot tr:last-child td,
.woocommerce table.shop_table tfoot tr:last-child th{border-bottom:0}
/* Los enlaces de dentro de las tablas van en color de marca, pero un botón NO es
   un enlace de texto: se excluye, o el texto sale del mismo color que su fondo. */
.woocommerce table.shop_table a:not(.button){color:#B23A2E;text-decoration:underline}
.woocommerce table.shop_table a.button,
.woocommerce table.shop_table a.woocommerce-button{color:#FFFFFF;text-decoration:none}
.woocommerce table.shop_table a.button:hover,
.woocommerce table.shop_table a.button:focus-visible{color:#FFFFFF;background:#7A2E2A}
/* Los botones de acción caían uno encima de otro: la celda es un <td> con display
   block y los enlaces no traían separación. Se sube la especificidad al td y se deja
   margen, que funciona igual si el display no llega a aplicarse. */
.woocommerce table.shop_table td.woocommerce-orders-table__cell-order-actions{
  display:flex;flex-wrap:wrap;gap:8px;align-items:flex-start}
.woocommerce table.shop_table td.woocommerce-orders-table__cell-order-actions a.button{
  margin:0;white-space:nowrap}
/* La columna de acciones necesita sitio: si no, cada botón cae en su propia línea */
.woocommerce table.shop_table th.woocommerce-orders-table__header-order-actions,
.woocommerce table.shop_table td.woocommerce-orders-table__cell-order-actions{min-width:210px}

/* Bloque de criterios de búsqueda que añade el plugin del sitio */
.spf-order-meta,
.woocommerce-customer-details address{
  background:#FBF6F1;border:1px solid #E7DED6;border-radius:10px;
  padding:22px 24px;font-style:normal;line-height:1.7;color:#333030}

/* Botones (Invoice, Login, Pay, etc.) en la paleta del sitio */
.woocommerce .button,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button{
  background:#B23A2E;color:#FFFFFF;border:0;border-radius:6px;
  min-height:46px;padding:12px 24px;font-weight:600;line-height:1.4}
.woocommerce .button:hover,.woocommerce a.button:hover,
.woocommerce button.button:hover,.woocommerce input.button:hover,
.woocommerce .button:focus-visible,.woocommerce a.button:focus-visible{
  background:#7A2E2A;color:#FFFFFF}

/* Mi cuenta: menú lateral */
.woocommerce-account .woocommerce-MyAccount-navigation ul{
  list-style:none;margin:0 0 24px;padding:0;border:1px solid #E7DED6;border-radius:10px;overflow:hidden}
.woocommerce-account .woocommerce-MyAccount-navigation li{margin:0;border-bottom:1px solid #E7DED6}
.woocommerce-account .woocommerce-MyAccount-navigation li:last-child{border-bottom:0}
.woocommerce-account .woocommerce-MyAccount-navigation li a{
  display:block;padding:13px 18px;color:#333030;text-decoration:none}
.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a,
.woocommerce-account .woocommerce-MyAccount-navigation li a:hover{
  background:#FBF6F1;color:#B23A2E;font-weight:600}

@media (max-width:767px){
  body:not(.elementor-page).woocommerce-order-received .site-main,
  body:not(.elementor-page).woocommerce-checkout .site-main,
  body:not(.elementor-page).woocommerce-cart .site-main,
  body:not(.elementor-page).woocommerce-account .site-main{padding:36px 18px 60px}
  .woocommerce-order-received .entry-title,.woocommerce-cart .entry-title,
  .woocommerce-account .entry-title{font-size:30px}
  ul.woocommerce-order-overview li{flex:1 1 100%;border-right:0;border-bottom:1px solid #E7DED6}
  .woocommerce table.shop_table th,.woocommerce table.shop_table td{padding:12px 14px;font-size:15px}
}

/* ---- Enlaces solo para clientes con sesión --------------------------------
   «My account» no le dice nada a quien todavía no ha contratado, y encima ofrece
   una puerta a un sitio donde no puede entrar. Elementor no expone una condición
   «solo si ha iniciado sesión» por elemento de lista, así que se resuelve con la
   clase que WordPress ya pone en el . Al ser display:none, el enlace tampoco
   existe para un lector de pantalla. */
/* Especificidad: Elementor declara «.elementor-nav-menu li{display:flex}», que gana a
   una clase suelta. Por eso «My account» salía en el menú de escritorio incluso sin
   sesión iniciada. Se antepone body y se encadena la clase del elemento. */
body .elementor-element.ls-solo-logueado{display:none}
body.logged-in .elementor-element.ls-solo-logueado{display:block}

/* Y su pareja: «Log in» para quien todavía no ha entrado. Por defecto se ve —es un
   widget normal—, así que solo hace falta retirarlo cuando hay sesión. Entre los dos,
   la barra tiene siempre un enlace y su texto dice la verdad. */
body.logged-in .elementor-element.ls-solo-anonimo{display:none}

/* ---- Enlace «Ir al contenido» ---------------------------------------------
   Lo ocultan tres hojas a la vez (Elementor, WooCommerce y el tema) con
   clip:rect(1px,1px,1px,1px), 1×1 px y top:-10000em. La regla :focus del tema lo
   mueve a la vista pero NO le devuelve el tamaño ni quita el recorte, así que al
   tabular sigue siendo un punto de 1 px: eso es lo que Lighthouse marca como
   «no enfocable». Aquí se deshace todo, con la especificidad suficiente para ganar
   sin recurrir a !important. */
body a.skip-link:focus,
body a.skip-link:focus-visible,
body a.screen-reader-text:focus,
body a.screen-reader-text:focus-visible{
  position:fixed;
  top:12px;left:12px;right:auto;bottom:auto;
  width:auto;height:auto;min-width:0;min-height:44px;
  margin:0;padding:12px 20px;
  clip:auto;clip-path:none;overflow:visible;
  display:inline-flex;align-items:center;
  background:#FFFFFF;color:#7A2E2A;
  font-size:16px;font-weight:600;line-height:1.3;text-decoration:underline;
  border:2px solid #7A2E2A;border-radius:6px;
  box-shadow:0 6px 18px rgba(30,15,12,.22);
  z-index:100000;white-space:nowrap}

/* ---- Menú móvil -----------------------------------------------------------
   En móvil la barra superior se oculta, y con ella «My account». Se añade como
   entrada del menú (Apariencia → Menús), visible solo ahí y solo con sesión. */
/* Hay que ganar a «.elementor-nav-menu--layout-horizontal .elementor-nav-menu &gt; li
   {display:flex}» de Elementor, que es de dos clases: por eso se encadena también
   .elementor-nav-menu en vez de dejar la clase suelta. */
body .elementor-nav-menu li.ls-solo-movil{display:none}
@media (max-width:1024px){
  body.logged-in .elementor-nav-menu li.ls-solo-movil{display:flex}
  body .elementor-nav-menu li.ls-solo-movil a{font-weight:600}
}

/* El desplegable no tenía límite de alto: con la lista larga, las últimas entradas
   quedaban fuera de pantalla y sin forma de llegar a ellas. */
/* Elementor cierra el desplegable con una regla sobre el toggle SIN la clase
   «elementor-active». La de apertura debe apuntar al estado activo y con la misma
   forma de .elementor-kit-306, o pierde y el menú se queda a 0 de alto. */
body .elementor-nav-menu--toggle .elementor-menu-toggle.elementor-active + .elementor-nav-menu__container,
body .elementor-menu-toggle.elementor-active + .elementor-nav-menu__container,
body .elementor-nav-menu--dropdown.elementor-nav-menu__container{
  max-height:calc(100vh - 110px);
  overflow-y:auto;
  -webkit-overflow-scrolling:touch;
  overscroll-behavior:contain}
.elementor-nav-menu--dropdown::-webkit-scrollbar{width:6px}
.elementor-nav-menu--dropdown::-webkit-scrollbar-thumb{
  background:rgba(122,46,42,.35);border-radius:3px}/* End custom CSS */