/*
Theme Name: StarFarma
Author: STARFARMA
Author URI: https://starfarma.es/
Template: Divi
Version: 1.3
Requires PHP: 7.4
Tested up to Divi 5
Description: Theme with love, by StarFarma
*/

/* === Fuentes alojadas en local (RGPD): sin peticiones a Google === */
@font-face{font-family:'Open Sans';font-style:normal;font-weight:300 800;font-stretch:75% 100%;font-display:swap;src:url('fonts/open-sans-normal-300-800-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'Open Sans';font-style:normal;font-weight:300 800;font-stretch:75% 100%;font-display:swap;src:url('fonts/open-sans-normal-300-800-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'Montserrat';font-style:normal;font-weight:100 900;font-display:swap;src:url('fonts/montserrat-normal-100-900-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'Montserrat';font-style:normal;font-weight:100 900;font-display:swap;src:url('fonts/montserrat-normal-100-900-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'Josefin Sans';font-style:normal;font-weight:100 700;font-display:swap;src:url('fonts/josefin-sans-normal-100-700-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'Josefin Sans';font-style:normal;font-weight:100 700;font-display:swap;src:url('fonts/josefin-sans-normal-100-700-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'Libre Caslon Text';font-style:italic;font-weight:400;font-display:swap;src:url('fonts/libre-caslon-text-italic-400-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'Libre Caslon Text';font-style:italic;font-weight:400;font-display:swap;src:url('fonts/libre-caslon-text-italic-400-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'Libre Caslon Text';font-style:normal;font-weight:400;font-display:swap;src:url('fonts/libre-caslon-text-normal-400-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'Libre Caslon Text';font-style:normal;font-weight:400;font-display:swap;src:url('fonts/libre-caslon-text-normal-400-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'Libre Caslon Text';font-style:normal;font-weight:700;font-display:swap;src:url('fonts/libre-caslon-text-normal-700-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'Libre Caslon Text';font-style:normal;font-weight:700;font-display:swap;src:url('fonts/libre-caslon-text-normal-700-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'Hanken Grotesk';font-style:normal;font-weight:400;font-display:swap;src:url('fonts/hanken-grotesk-normal-400-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'Hanken Grotesk';font-style:normal;font-weight:400;font-display:swap;src:url('fonts/hanken-grotesk-normal-400-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'Hanken Grotesk';font-style:normal;font-weight:500;font-display:swap;src:url('fonts/hanken-grotesk-normal-500-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'Hanken Grotesk';font-style:normal;font-weight:500;font-display:swap;src:url('fonts/hanken-grotesk-normal-500-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'Hanken Grotesk';font-style:normal;font-weight:600;font-display:swap;src:url('fonts/hanken-grotesk-normal-600-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'Hanken Grotesk';font-style:normal;font-weight:600;font-display:swap;src:url('fonts/hanken-grotesk-normal-600-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'Hanken Grotesk';font-style:normal;font-weight:700;font-display:swap;src:url('fonts/hanken-grotesk-normal-700-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'Hanken Grotesk';font-style:normal;font-weight:700;font-display:swap;src:url('fonts/hanken-grotesk-normal-700-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
/* === fin fuentes locales === */


/* ==========================================================================
   Farmacia del Pilar — Sistema tipográfico (H1–H6)
   ========================================================================== */

/* @import de Google Fonts sustituido por fuentes locales */

:root {
  --fdp-heading-color: #004e34;
  --fdp-on-primary: #ffffff;

  --fdp-font-serif: 'Libre Caslon Text', serif;
  --fdp-font-sans: 'Hanken Grotesk', sans-serif;
}

h1, h2, h3, h4, h5, h6 {
  font-family: var(--fdp-font-serif) !important;
  color: var(--fdp-heading-color) !important;
  margin: 0 0 0.5em;
}

/* H1 — Titulares de página */
h1 {
  font-weight: 700 !important;
  font-size: 48px !important;
  line-height: 56px !important;
  letter-spacing: -0.01em;
  text-wrap: balance;
  text-shadow: 0 1px 0 rgba(195, 125, 92, 0.08);
}

/* H2 — Titulares de sección */
h2 {
  font-weight: 600 !important;
  font-size: 36px;
  line-height: 44px;
}

/* H3 — Subtítulos destacados */
h3 {
  font-weight: 600 !important;
  font-size: 28px;
  line-height: 36px ;
}

/* H4 — Títulos de tarjeta / bloque */
h4 {
  font-weight: 600 !important;
  font-size: 22px;
  line-height: 30px ;
}

/* H5 — Subtítulos menores */
h5 {
  font-weight: 600 !important;
  font-size: 18px;
  line-height: 26px ;
}

/* H6 — Etiquetas / kickers */
h6 {
  font-weight: 600 !important;
  font-size: 16px;
  line-height: 22px ;
}

/* Móvil: H1/H2 reducen tamaño */
@media (max-width: 767px) {
  h1 {
    font-size: 32px !important;
    line-height: 40px !important;
  }
  h2 {
    font-size: 28px !important;
    line-height: 36px !important;
  }
}

/* Encabezados sobre fondo oscuro (footer, tarjetas de acento) */
.has-dark-background h1,
.has-dark-background h2,
.has-dark-background h3,
.has-dark-background h4,
.has-dark-background h5,
.has-dark-background h6 {
  color: var(--fdp-on-primary) !important;
}

/* ==========================================================================
   Farmacia del Pilar — Detalles editoriales de marca
   ========================================================================== */

/* Kicker / eyebrow — rótulo pequeño antes de un H2 */
.fdp-kicker {
  display: flex;
  align-items: center;
  gap: 8px;
  font-family: var(--fdp-font-sans);
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #8b4f31; /* clay */
  margin-bottom: 8px;
}
.fdp-kicker::before {
  content: '✦';
  font-size: 14px;
}

/* Subrayado orgánico bajo cada H2, centrado */
h2::after {
  content: '';
  display: block;
  width: 56px;
  height: 3px;
  margin: 14px auto 0;
  background: #8b4f31; /* clay */
  border-radius: 999px;
}

/* Acento editorial — frase suelta dentro de un H1/H2 */
.fdp-serif-accent {
  font-family: var(--fdp-font-serif) !important;
  font-style: italic;
  color: #004e34 !important;
}

/* ==========================================================================
   Menú (Divi) — Logo izquierda, menú derecha
   ========================================================================== */
@media only screen and (min-width: 981px) {
  .et_menu_container {
    display: flex !important;
    align-items: center;
    width: 100%;
  }

  .logo_container {
    flex: 0 0 auto;
    float: none !important;
  }

  #et-top-navigation {
    flex: 0 0 auto;
    margin-left: auto !important; /* esto es lo que empuja el menú al extremo derecho */
    float: none !important;
    padding-left: 0 !important;
  }

  .et-menu-nav, #et_top_search {
    float: none !important;
    display: inline-block !important;
  }

  #et_top_search {
    vertical-align: top !important;
    margin-top: 3px;
  }

  .et-menu-nav li li a {
    padding: 1px 30px;
    font-size: 14px;
  }

  .et-menu-nav li.mega-menu > ul > li > a:first-child {
    border-bottom: 1px solid rgba(0,0,0,0.1);
    background-color: var(--fdp-heading-color);
    color: white !important;
  }

  .et-menu-nav li.mega-menu > ul > li > a:first-child:hover {
    border-bottom: 1px solid rgba(0,0,0,0.5);
    color: black;
  }
}

#top-menu li.current-menu-item>a {
	color:#004e34;}

/* Menú móvil */
.et_pb_menu .et_mobile_menu .menu-item-has-children > a {
  background-color: transparent;
  position: relative;
}
.et_pb_menu .et_mobile_menu .menu-item-has-children > a:after {
  font-family: 'ETmodules';
  text-align: center;
  font-weight: 400;
  font-size: 18px;
  content: '\4c';
  position: absolute;
  top: 11px;
  right: 13px;
}
.et_pb_menu .et_mobile_menu .menu-item-has-children.visible > a:after {
  content: '\4d';
}
.et_pb_menu .et_mobile_menu ul.sub-menu {
  display: none !important;
  visibility: hidden !important;
  transition: all 1.5s ease-in-out;
}
.et_pb_menu .et_mobile_menu li.visible > ul.sub-menu {
  display: block !important;
  visibility: visible !important;
}

/* === Revisión web 2026-09-24: cabecera y pie táctiles === */
#top-header #et-info a,
#top-header #et-info-phone{display:inline-flex;align-items:center;min-height:44px;font-size:14px;color:inherit}
#top-header #et-info a #et-info-phone,
#top-header #et-info a #et-info-email{font-size:inherit}
@media (max-width:980px){
  #top-header{line-height:1.2}
  #top-header .container{margin-inline:16px;width:auto;padding-block:0}
  #top-header #et-info{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:0 12px;float:none;width:100%;padding:0}
  #top-header #et-info-phone{margin:0}
  #top-header #et-secondary-menu{display:none}
  #top-header #et-info a,
  #top-header #et-info-phone,
  #top-header #et-info-email{font-size:15px}
}
@media (max-width:767px){
  .et-l--footer .et_pb_text a[href^="tel:"],
  .et-l--footer .et_pb_text a[href^="mailto:"],
  .et-l--footer .et_pb_text a[href*="google.com/maps"],
  .et_pb_blurb_description a[href^="tel:"],
  .et_pb_blurb_description a[href^="mailto:"],
  .et_pb_blurb_description a[href*="wa.me"]{display:inline-block;padding-block:11px;min-height:44px;box-sizing:border-box}
  .et-l--footer .et_pb_social_media_follow li a.icon{width:44px;height:44px;line-height:44px}
}
@media (max-width:400px){
  #top-header #et-info{gap:0 10px}
  #top-header #et-info a,
  #top-header #et-info-phone,
  #top-header #et-info-email{font-size:14px}
}
/* === Menú Legal del pie === */
.et-l--footer .et_pb_menu{background:transparent !important}
.et-l--footer .et_pb_menu .et_pb_menu_inner_container,
.et-l--footer .et_pb_menu .et_pb_menu__wrap{justify-content:center}
.et-l--footer .et_pb_menu .et_pb_menu__menu{display:flex !important;justify-content:center;width:100%}
.et-l--footer .et_pb_menu .et_mobile_nav_menu{display:none !important}
.et-l--footer .et_pb_menu ul.et-menu{display:flex;flex-wrap:wrap;justify-content:center;gap:0 22px}
.et-l--footer .et_pb_menu ul.et-menu li{margin:0;padding:0}
.et-l--footer .et_pb_menu ul.et-menu li a{color:#fff !important;font-size:14px;padding:12px 0 !important;min-height:44px;display:inline-flex;align-items:center;opacity:.92}
.et-l--footer .et_pb_menu ul.et-menu li a:hover,
.et-l--footer .et_pb_menu ul.et-menu li a:focus-visible{opacity:1;text-decoration:underline}
/* === Formulario de contacto y mapa === */
.et_pb_contact_form_container .et_pb_contact_field input.input,
.et_pb_contact_form_container .et_pb_contact_field textarea.input{background:#fff;border:1px solid #b9c7be;border-radius:10px;padding:14px 16px;min-height:48px;color:#333;font-size:16px;width:100%}
.et_pb_contact_form_container .et_pb_contact_field textarea.input{min-height:140px}
.et_pb_contact_form_container .et_pb_contact_field input.input:focus,
.et_pb_contact_form_container .et_pb_contact_field textarea.input:focus{border-color:#004e34;outline:2px solid rgba(0,78,52,.28);outline-offset:1px}
.et_pb_contact_form_container .et_pb_contact_field_checkbox label{font-size:14px;line-height:1.4}
.et_pb_contact_form_container .et_pb_contact_field_checkbox label a{color:#004e34;text-decoration:underline;font-weight:600}
.et_pb_contact_form_container .et_pb_contact_submit.et_pb_button{background:#004e34;color:#fff;border:0;border-radius:50px;padding:10px 30px;min-height:47px;font-weight:600}
.et_pb_contact_form_container .et_pb_contact_submit.et_pb_button:hover{background:#003b28}
.fdp-map-links{margin:10px 0 0;font-size:14px}
.fdp-map-links a{display:inline-block;padding:10px 0;min-height:44px;color:#004e34;font-weight:600;text-decoration:underline}
.et_pb_contact_form_container .et_pb_contact_submit.et_pb_button{font-size:16px;line-height:1.4;white-space:nowrap}
.et_pb_contact_form_container .et_contact_bottom_container{flex-wrap:wrap;gap:12px;align-items:center}
