/**
 * La Dalia — tema hijo de classic (Propuesta 4 "Azul hero full").
 * Valores de design_handoff_home_azul (README.md, css/tokens.css, css/home.css).
 * Se carga después de theme.css (classic) y recolor.css.
 */

/* ==========================================================================
   0. Tokens
   ========================================================================== */
:root{
  --ld-red:#E0192E;
  --ld-cta-hover:#141414;
  --ld-red-soft:#FF4D5E;
  --ld-ink:#141414;
  --ld-ink-2:#444444;
  --ld-body:#555555;
  --ld-muted:#6D6D6D;
  --ld-muted-2:#767676;
  --ld-grey:#9A9A9A;
  --ld-line:#ECECEC;
  --ld-line-dark:#2C2C2C;
  --ld-surface:#F5F5F6;
  --ld-white:#FFFFFF;
  --ld-footer-text:#C9C9C9;
  --ld-footer-legal:#8B8B8B;
  --ld-logo-ink:#111111;
  --ld-logo-tag:#6E6B66;

  --ld-font-sans:'Jost',system-ui,-apple-system,sans-serif;
  --ld-font-serif:'Cormorant Garamond',Georgia,serif;

  --ld-gutter:48px;
  --ld-gutter-wide:64px;
  --ld-grid-gap:26px;
  --ld-max:1280px;
}

/* ==========================================================================
   1. Base
   ========================================================================== */
body{font-family:var(--ld-font-sans);color:var(--ld-ink);background:var(--ld-white)}

/* El prototipo usa line-height normal salvo donde se indica */
#header,#footer,.ld-wrapper--full{line-height:normal}

a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible,[tabindex]:focus-visible{
  outline:2px solid var(--ld-red);outline-offset:2px}
button:focus:not(:focus-visible){outline:none}

.ld-btn{display:inline-block;background:var(--ld-red);color:var(--ld-white);padding:15px 34px;border:0;border-radius:0;
  font-family:var(--ld-font-sans);font-size:13px;line-height:normal;letter-spacing:.2em;text-transform:uppercase;font-weight:600;
  text-align:center;cursor:pointer;transition:background .2s ease}
.ld-btn:hover,.ld-btn:focus{background:var(--ld-cta-hover);color:var(--ld-white);text-decoration:none}
.ld-btn--wide{padding:15px 40px;letter-spacing:.22em}

.ld-link-underline{display:inline-block;padding-bottom:3px;border-bottom:1px solid var(--ld-ink);color:var(--ld-ink);
  font-size:12px;letter-spacing:.18em;text-transform:uppercase;font-weight:500;transition:color .2s ease,border-color .2s ease}
.ld-link-underline:hover,.ld-link-underline:focus{color:var(--ld-red);border-color:var(--ld-red);text-decoration:none}

.ld-icon{display:block;flex:none;width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.3;
  stroke-linecap:round;stroke-linejoin:round}

/* ==========================================================================
   2. Barra superior
   ========================================================================== */
/* .ld-topbar{background:var(--ld-red);color:var(--ld-white)} */
.ld-topbar{background:black;color:var(--ld-white)}
.ld-topbar__list{display:flex;justify-content:center;flex-wrap:wrap;gap:0 40px;max-width:var(--ld-max);margin:0 auto;
  padding:9px var(--ld-gutter);list-style:none;font-size:12.5px;letter-spacing:.16em;text-transform:uppercase;font-weight:500}
.ld-topbar__item{margin:0}

/* Con tres mensajes: los de los extremos alineados con el contenido y el del centro centrado */
@media (min-width:768px){
  .ld-topbar__list:has(> :nth-child(3)){display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:0 24px}
  .ld-topbar__list:has(> :nth-child(3))>:first-child{justify-self:start;text-align:left}
  .ld-topbar__list:has(> :nth-child(3))>:nth-child(2){justify-self:center;text-align:center}
  .ld-topbar__list:has(> :nth-child(3))>:last-child{justify-self:end;text-align:right}
}

/* ==========================================================================
   3. Cabecera
   ========================================================================== */
#header{position:relative;z-index:999;color:var(--ld-ink);background:var(--ld-white);box-shadow:none}
.ld-header{position:relative;background:var(--ld-white);border-bottom:1px solid var(--ld-line)}
.ld-header a{color:inherit}
.ld-header__inner{display:flex;align-items:center;justify-content:space-between;gap:24px;
  max-width:var(--ld-max);margin:0 auto;padding:22px var(--ld-gutter)}

/* Cabecera del checkout: solo el logo (checkout/_partials/header.tpl) */
.ld-checkout-header{background:var(--ld-white);border-bottom:1px solid var(--ld-line)}
.ld-checkout-header__inner{display:flex;max-width:var(--ld-max);margin:0 auto;padding:22px var(--ld-gutter)}

/* Logo */
.ld-header__logo{display:flex;flex:none}
.ld-header__logo:hover,.ld-header__logo:focus{text-decoration:none}
/* Variante "3a · Roseta horizontal · Negro #111111" (doc /logos). Proporciones del doc:
   roseta = 2 × cuerpo del nombre (64/32), separación 14, nombre–lema 6.
   El filete entre pétalos es un trazo del color del fondo pintado por DEBAJO del relleno
   (paint-order:stroke): 3 unidades del lienzo de 64 = el anillo de 1.5px del doc. */
.ld-logo{display:inline-flex;align-items:center;gap:14px}
.ld-logo__mark{display:block;flex:none;width:64px;height:64px;overflow:visible}
.ld-logo__petals{fill:var(--ld-logo-ink);stroke:var(--ld-white);stroke-width:3;paint-order:stroke}
.ld-logo__core{fill:var(--ld-white)}
.ld-logo__text{display:flex;flex-direction:column;gap:6px}
.ld-logo__name{font-family:var(--ld-font-serif);font-size:32px;line-height:.9;font-weight:500;letter-spacing:.005em;
  color:var(--ld-logo-ink);white-space:nowrap}
.ld-logo__tag{font-family:var(--ld-font-sans);font-size:8px;line-height:1;font-weight:300;letter-spacing:.22em;
  text-transform:uppercase;color:var(--ld-logo-tag);white-space:nowrap}
/* Footer (fondo negro): la misma 3a en negativo; filete y centro del color del fondo */
.ld-logo--white{gap:13px}
.ld-logo--white .ld-logo__mark{width:60px;height:60px}
.ld-logo--white .ld-logo__petals{fill:var(--ld-white);stroke:var(--ld-ink)}
.ld-logo--white .ld-logo__core{fill:var(--ld-ink)}
.ld-logo--white .ld-logo__name{font-size:30px;color:var(--ld-white)}
.ld-logo--white .ld-logo__tag{color:var(--ld-footer-text)}

/* Botón de menú (solo tablet/móvil) */
.ld-header__burger{display:none;align-items:center;justify-content:center;width:44px;height:44px;margin:-10px;padding:0;
  border:0;background:none;color:var(--ld-ink);cursor:pointer}
.ld-header__burger .ld-icon{width:24px;height:24px}
.ld-header__burger-close{display:none}

/* Menú principal */
.ld-menu__list{margin:0;padding:0;list-style:none}
.ld-menu__list--d0{display:flex;align-items:center;gap:34px}
.ld-menu__item{position:relative;margin:0}
.ld-menu__link{display:block;color:var(--ld-ink);transition:color .2s ease}
.ld-menu__link:hover,.ld-menu__link:focus{color:var(--ld-red);text-decoration:none}
.ld-menu__item--d0>.ld-menu__link{font-size:13.5px;letter-spacing:.18em;text-transform:uppercase;font-weight:500;white-space:nowrap}
/* classic fija #header a{color}: se necesita #header para ganarle */
#header .ld-menu__item.is-current>.ld-menu__link{color:var(--ld-red)}
/* "Ofertas" (enlace personalizado del menú) siempre destacado */
#header .ld-menu__item[id^="lnk-oferta"]>.ld-menu__link{color:var(--ld-red);font-weight:600}
.ld-menu__toggle{display:none;align-items:center;justify-content:center;width:44px;height:44px;padding:0;border:0;
  background:none;color:var(--ld-ink);cursor:pointer}
.ld-menu__toggle .ld-icon{width:18px;height:18px;transition:transform .2s ease}
.ld-menu__item.is-open>.ld-menu__toggle .ld-icon{transform:rotate(180deg)}
.ld-menu__sub .ld-menu__link{padding:6px 0;font-size:13.5px;letter-spacing:.06em}
.ld-menu__sub .ld-menu__list--d2{padding-left:14px}

/* Titulares del desplegable: ítems elegidos en ld_menu_headlines (ps_mainmenu.tpl).
   En mayúsculas y negrita para distinguirlos de los enlaces que cuelgan debajo. */
#header .ld-menu__item--headline > .ld-menu__link{font-size:12px;font-weight:600;letter-spacing:.14em;
  text-transform:uppercase;color:var(--ld-ink)}
.ld-menu__sub .ld-menu__item--headline{margin-top:12px}
.ld-menu__sub .ld-menu__item--headline:first-child{margin-top:0}

@media (min-width:992px){
  .ld-menu__item--d0>.ld-menu__sub{position:absolute;top:100%;left:-24px;z-index:1000;display:none;min-width:230px;
    margin-top:22px;padding:16px 24px;background:var(--ld-white);border:1px solid var(--ld-line)}
  /* puente invisible para no perder el hover entre el enlace y el desplegable */
  .ld-menu__item--d0>.ld-menu__sub::before{content:"";position:absolute;left:0;right:0;top:-23px;height:23px}
  .ld-menu__item--d0:hover>.ld-menu__sub,.ld-menu__item--d0:focus-within>.ld-menu__sub{display:block}

  /* Mega menú: los ítems de nivel 0 con subcategorías despliegan un panel a todo
     el ancho de la cabecera, con las subcategorías (d1) como columnas y sus hijas
     (d2/d3) listadas debajo — réplica del menú en columnas de la web antigua. */
  .ld-menu__item--d0.has-children{position:static}
  .ld-menu__item--d0.has-children>.ld-menu__sub{left:0;right:0;top:100%;min-width:0;margin-top:0;
    padding:30px var(--ld-gutter) 36px;border:0;border-top:1px solid var(--ld-line);border-bottom:1px solid var(--ld-line);
    box-shadow:0 18px 28px -18px rgba(0,0,0,.18)}
  /* El panel cuelga del borde inferior de la cabecera y el enlace está 44px más arriba
     (22px de padding + el centrado vertical junto al logo): el puente invisible tiene que
     cubrir todo ese hueco o el hover se pierde al bajar al panel. */
  .ld-menu__item--d0.has-children>.ld-menu__sub::before{top:-46px;height:46px}
  /* Columnas a nivel de panel, como el menú de la web antigua: cada subcategoría
     (d1) empieza columna nueva y, si su lista es más alta que el panel, continúa
     en la columna siguiente (p. ej. Marcas Mujer ocupa 2-3 columnas). El orden es
     el de las posiciones de categoría en el back office (Catálogo → Categorías). */
  .ld-menu__item--d0.has-children>.ld-menu__sub>.ld-menu__list--d1{display:block;column-count:6;column-gap:44px;
    column-fill:auto;max-height:560px;max-width:calc(var(--ld-max) - 2 * var(--ld-gutter));margin:0 auto}
  .ld-menu__item--d0.has-children .ld-menu__item--d1{break-before:column}
  .ld-menu__item--d0.has-children .ld-menu__item--d1>.ld-menu__link{padding:0 0 10px;font-size:12.5px;font-weight:600;
    letter-spacing:.14em;text-transform:uppercase;break-after:avoid}
  .ld-menu__item--d0.has-children .ld-menu__list--d2{padding-left:0}
  .ld-menu__item--d0.has-children .ld-menu__list--d3{padding-left:0}
  .ld-menu__item--d0.has-children .ld-menu__list--d2>.ld-menu__item{break-inside:avoid}
}

/* Utilidades: Buscar · Cuenta · Cesta */
.ld-header__utils{display:flex;align-items:center;gap:22px;flex:none;font-size:13px;letter-spacing:.08em}
.ld-utils__link{display:flex;align-items:center;gap:7px;color:var(--ld-ink);white-space:nowrap}
.ld-utils__link:hover,.ld-utils__link:focus{text-decoration:none}
/* Cuenta y Cesta se muestran como icono (el texto queda para lectores de pantalla) */
.ld-utils__link .ld-icon{display:block;width:21px;height:21px}
.ld-account,.ld-cart-wrap,.ld-cart-wrap .blockcart{margin:0;padding:0;background:none;height:auto}
.ld-cart__count{display:grid;place-items:center;min-width:19px;height:19px;padding:0 5px;border-radius:999px;
  background:var(--ld-red);color:var(--ld-white);font-size:11px;letter-spacing:0;line-height:1}
.ld-cart__total{color:var(--ld-muted-2)}
.ld-utils__link:hover .ld-cart__count{color:var(--ld-white)}

/* Buscador (ps_searchbar.css usa #search_widget: hay que igualar esa especificidad) */
.ld-search__toggle{display:none}
/* En la cabecera, "Buscar" es una lupa en todos los tamaños (el texto queda para lectores de pantalla) */
.ld-search__toggle .ld-icon{display:block}
.ld-utils__label{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}
#search_widget.ld-search__widget{float:none;overflow:visible;margin:0}
#search_widget .ld-search__form{display:flex;align-items:center;gap:14px;margin:0}
#search_widget .ld-search__input{flex:1;width:auto;min-width:0;padding:10px 0;border:0;border-bottom:1px solid var(--ld-ink);border-radius:0;
  background:transparent;color:var(--ld-ink);font-family:var(--ld-font-sans);font-size:16px;letter-spacing:.04em}
#search_widget .ld-search__input::placeholder{color:var(--ld-grey)}
#search_widget .ld-search__input:focus{border-bottom-color:var(--ld-red);outline:none}
.ld-search__submit{flex:none}
.ld-search__close{display:none;flex:none;align-items:center;justify-content:center;width:44px;height:44px;padding:0;border:0;
  background:none;color:var(--ld-ink);cursor:pointer}

.ld-header .ld-search__toggle{display:flex}
.ld-header .ld-search__panel{position:absolute;left:0;right:0;top:100%;z-index:1001;display:none;padding:18px var(--ld-gutter);
  background:var(--ld-white);border-top:1px solid var(--ld-line);border-bottom:1px solid var(--ld-line)}
.ld-header #search_widget.ld-search__widget{max-width:calc(var(--ld-max) - 2 * var(--ld-gutter));margin:0 auto}
.ld-header .ld-search__close{display:inline-flex}
.ld-header.is-search-open .ld-search__panel{display:block}

.ui-autocomplete.searchbar-autocomplete{z-index:1002;padding:6px 0;border:1px solid var(--ld-line);border-radius:0;background:var(--ld-white);
  font-family:var(--ld-font-sans)}
.ui-autocomplete.searchbar-autocomplete li a,.ui-autocomplete.searchbar-autocomplete li a.ui-state-focus{display:flex;align-items:center;gap:12px;
  padding:8px 16px;color:var(--ld-ink);font-size:14px}
.ui-autocomplete.searchbar-autocomplete li a:hover,.ui-autocomplete.searchbar-autocomplete li a.ui-state-focus{background:var(--ld-surface);color:var(--ld-ink)}
.ui-autocomplete.searchbar-autocomplete li a .autocomplete-thumbnail{float:none;width:44px;margin:0}

/* ==========================================================================
   4. Cabecera — responsive
   ========================================================================== */
@media (max-width:1199px){
  .ld-header__inner{padding:22px 32px}
  .ld-menu__list--d0{gap:22px}
  .ld-menu__item--d0>.ld-menu__link{letter-spacing:.14em}
  .ld-header__utils{gap:16px}
}

@media (max-width:991px){
  .ld-header__inner{display:grid;grid-template-columns:1fr auto 1fr;gap:12px;padding:16px 24px}
  .ld-header__burger{display:inline-flex;justify-self:start;margin:0 0 0 -10px}
  .ld-header__logo{justify-self:center}
  .ld-header__utils{justify-self:end}

  .ld-header__nav{position:absolute;left:0;right:0;top:100%;z-index:1000;display:none;max-height:calc(100vh - 140px);overflow-y:auto;
    padding:4px 24px 24px;background:var(--ld-white);border-top:1px solid var(--ld-line);border-bottom:1px solid var(--ld-line)}
  .ld-header.is-nav-open .ld-header__nav{display:block}
  .ld-header.is-nav-open .ld-header__burger-open{display:none}
  .ld-header.is-nav-open .ld-header__burger-close{display:block}

  .ld-menu__list--d0{flex-direction:column;align-items:stretch;gap:0}
  .ld-menu__item--d0{display:flex;flex-wrap:wrap;align-items:center;border-bottom:1px solid var(--ld-line)}
  .ld-menu__item--d0>.ld-menu__link{flex:1;padding:15px 0;letter-spacing:.16em}
  .ld-menu__toggle{display:inline-flex;margin-right:-12px}
  .ld-menu__sub{display:none;flex-basis:100%;padding:0 0 14px 14px}
  .ld-menu__item.is-open>.ld-menu__sub{display:block}
  .ld-menu__sub .ld-menu__item{display:flex;flex-wrap:wrap;align-items:center}
  .ld-menu__sub .ld-menu__link{flex:1}
  .ld-menu__sub .ld-menu__toggle{width:36px;height:36px}
}

@media (max-width:767px){
  :root{--ld-gutter:20px;--ld-gutter-wide:20px;--ld-grid-gap:16px}
  .ld-topbar__list{flex-direction:column;align-items:center;gap:4px;padding:8px 16px;font-size:11px;text-align:center}

  .ld-header__inner{padding:12px 16px}
  .ld-header__nav{padding:4px 20px 20px}
  .ld-logo{gap:10px}
  .ld-logo__mark{width:48px;height:48px}
  .ld-logo__text{gap:5px}
  .ld-logo__name{font-size:24px}
  .ld-logo__tag{font-size:7px;letter-spacing:.2em}

  .ld-header__utils{gap:12px}
  .ld-utils__link .ld-icon{display:block;width:22px;height:22px}
  .ld-utils__label{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}
  .ld-cart{position:relative}
  .ld-cart__count{position:absolute;top:-6px;right:-8px;min-width:17px;height:17px;padding:0 4px;font-size:10px}
  .ld-cart__total{display:none}
  .ld-header .ld-search__panel{padding:12px 20px}
  .ld-search__submit{padding:13px 18px;letter-spacing:.14em}
}

@media (max-width:399px){
  .ld-header__inner{gap:8px;padding:12px 14px}
  .ld-header__utils{gap:8px}
  .ld-utils__link .ld-icon{width:20px;height:20px}
  .ld-logo{gap:8px}
  .ld-logo__mark{width:42px;height:42px}
  .ld-logo__name{font-size:21px}
  .ld-logo__tag{font-size:6.5px;letter-spacing:.16em}
}

/* ==========================================================================
   5. Footer
   ========================================================================== */
#footer{padding-top:0;background:var(--ld-ink)}
.ld-footer{background:var(--ld-ink);color:var(--ld-footer-text)}
.ld-footer a{color:var(--ld-footer-text);transition:color .2s ease}
.ld-footer a:hover,.ld-footer a:focus{color:var(--ld-white);text-decoration:none}
.ld-footer__inner{max-width:var(--ld-max);margin:0 auto;padding:56px var(--ld-gutter-wide) 30px}
.ld-footer__cols{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:48px;align-items:start}
/* Lo que otros módulos inyectan en displayFooter (p. ej. modales de blockwishlist) no ocupa celdas */
.ld-footer__cols>:not(.ld-footer__brand):not(.ld-footer__col){position:absolute}
.ld-footer__logo{display:inline-block}
.ld-footer__contact{margin:16px 0 0;font-size:13.5px;line-height:1.7;color:var(--ld-footer-text)}
.ld-footer__h{margin:0 0 14px;font-size:12px;font-weight:400;letter-spacing:.24em;text-transform:uppercase;color:var(--ld-white)}
.ld-footer__list{display:flex;flex-direction:column;gap:9px;margin:0;padding:0;list-style:none;font-size:13.5px}
.ld-footer__list li{margin:0}
.ld-footer__legal{display:flex;justify-content:space-between;gap:20px;margin-top:44px;padding-top:22px;
  border-top:1px solid var(--ld-line-dark);font-size:12.5px;color:var(--ld-footer-legal)}

@media (max-width:991px){
  .ld-footer__cols{grid-template-columns:1fr;gap:28px}
}
@media (max-width:767px){
  .ld-footer__inner{padding:40px var(--ld-gutter-wide) 24px}
  .ld-footer__legal{flex-direction:column;gap:6px;margin-top:32px}
}

/* ==========================================================================
   6. Home — contenedor a ancho completo
   ========================================================================== */
#wrapper.ld-wrapper--full{padding:0;background:var(--ld-white)}
#wrapper.ld-wrapper--full #notifications .container{max-width:var(--ld-max)}
.ld-home{margin:0;padding:0}
.ld-h2{margin:0;font-size:36px;line-height:normal;font-weight:500;letter-spacing:.3em;text-transform:uppercase;color:var(--ld-ink)}

/* ==========================================================================
   7. Hero a ancho completo (ps_imageslider)
   ========================================================================== */
.ld-hero{position:relative;overflow:hidden;background:var(--ld-surface)}
.ld-hero .ld-hero__track{height:600px}
.ld-hero .ld-hero__slide{height:600px}
.ld-hero .ld-hero__slide .ld-hero__media{position:absolute;top:0;right:0;bottom:0;left:0;display:block}
/* classic fija .carousel-inner>.carousel-item>a>img{height:auto} */
.ld-hero .ld-hero__slide .ld-hero__media img{position:absolute;top:0;left:0;display:block;width:100%;height:100%;max-width:none;
  object-fit:cover;object-position:50% 10%}
.ld-hero__copy{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;justify-content:center;
  align-items:flex-start;gap:20px;padding:0 max(72px, calc((100% - var(--ld-max)) / 2 + 72px));pointer-events:none;
  background:linear-gradient(90deg,rgba(255,255,255,.92) 0%,rgba(255,255,255,.75) 34%,rgba(255,255,255,0) 62%)}
.ld-hero__eyebrow{margin:0;font-size:13px;letter-spacing:.3em;text-transform:uppercase;font-weight:600;color:var(--ld-red)}
.ld-hero__title{margin:0;max-width:12ch;font-size:52px;line-height:1.08;font-weight:500;letter-spacing:.04em;
  text-transform:uppercase;color:var(--ld-ink)}
.ld-hero__desc{display:flex;flex-direction:column;align-items:flex-start;gap:20px}
.ld-hero__desc p{max-width:36ch;margin:0;font-size:16px;line-height:1.6;color:#4C4C4C}
/* párrafo con los enlaces = fila de botones */
.ld-hero__desc p:has(a){display:flex;flex-wrap:wrap;align-items:center;gap:16px;max-width:none;margin-top:8px}
.ld-hero__desc a{pointer-events:auto}
.ld-hero__desc a:not(.ld-btn){padding-bottom:4px;border-bottom:2px solid var(--ld-ink);color:var(--ld-ink);font-size:13px;
  line-height:normal;letter-spacing:.2em;text-transform:uppercase;font-weight:500;transition:color .2s ease,border-color .2s ease}
.ld-hero__desc a:not(.ld-btn):hover,.ld-hero__desc a:not(.ld-btn):focus{color:var(--ld-red);border-color:var(--ld-red);text-decoration:none}

/* Varias diapositivas */
.ld-hero__dots{position:absolute;bottom:22px;left:50%;z-index:3;display:flex;gap:10px;width:auto;margin:0;padding:0;
  transform:translateX(-50%);list-style:none}
.ld-hero__dots li{width:9px;height:9px;margin:0;text-indent:-999px;overflow:hidden;cursor:pointer;background:transparent;
  border:1px solid var(--ld-ink);border-radius:999px}
.ld-hero__dots li.active{width:9px;height:9px;margin:0;background:var(--ld-ink)}
.ld-hero__arrow{position:absolute;top:50%;z-index:3;display:flex;align-items:center;justify-content:center;width:44px;height:44px;
  margin-top:-22px;color:var(--ld-ink);background:rgba(255,255,255,.7)}
.ld-hero__arrow:hover,.ld-hero__arrow:focus{color:var(--ld-red);background:var(--ld-white)}
.ld-hero__arrow--prev{left:16px}
.ld-hero__arrow--prev .ld-icon{transform:rotate(90deg)}
.ld-hero__arrow--next{right:16px}
.ld-hero__arrow--next .ld-icon{transform:rotate(-90deg)}

/* ==========================================================================
   8. Barra de confianza
   ========================================================================== */
.ld-trust{background:var(--ld-surface)}
.ld-trust__inner{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;max-width:var(--ld-max);margin:0 auto;
  padding:26px var(--ld-gutter)}
.ld-trust__item{display:flex;align-items:center;justify-content:center;gap:14px;text-align:left}
/* Paleta roja, regla 1: los iconos no van en rojo (el acento es solo precio/CTA/activo) */
.ld-trust__icon{flex:none;width:32px;height:32px;fill:none;stroke:var(--ld-ink);stroke-width:1.3;stroke-linecap:round;stroke-linejoin:round}
.ld-trust__t{margin:0;font-size:13px;letter-spacing:.22em;text-transform:uppercase;font-weight:600;color:var(--ld-ink)}
.ld-trust__d{margin:6px 0 0;font-size:14px;color:var(--ld-muted)}

/* ==========================================================================
   9. Secciones de producto con pestañas
   ========================================================================== */
.ld-products{background:var(--ld-white)}
.ld-products--grey{background:var(--ld-surface)}
.ld-products__inner{max-width:var(--ld-max);margin:0 auto}
.ld-products__head{padding:70px var(--ld-gutter) 20px;text-align:center}
.ld-tabs{display:flex;justify-content:center;gap:30px;margin-top:18px}
.ld-tabs__tab{padding:0 0 6px;border:0;border-bottom:2px solid transparent;border-radius:0;background:none;cursor:pointer;
  font-family:var(--ld-font-sans);font-size:13.5px;line-height:normal;letter-spacing:.16em;text-transform:uppercase;font-weight:400;
  color:var(--ld-grey);transition:color .2s ease}
.ld-tabs__tab:hover{color:var(--ld-ink)}
.ld-tabs__tab.is-active{border-bottom-color:var(--ld-red);color:var(--ld-ink);font-weight:600}
.ld-grid{padding:34px var(--ld-gutter) 26px}
.ld-cta-row{padding:6px 0 60px;text-align:center}

/* ==========================================================================
   11. Franja de oferta
   ========================================================================== */
.ld-offer{background:var(--ld-ink);color:var(--ld-white)}
.ld-offer__inner{display:grid;grid-template-columns:1fr auto;align-items:center;gap:40px;max-width:var(--ld-max);margin:0 auto;
  padding:54px var(--ld-gutter-wide)}
.ld-offer__t{margin:0;font-size:38px;line-height:1.15;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--ld-white)}
.ld-offer__t em{font-style:normal;color:var(--ld-red-soft)}
.ld-offer__d{margin:10px 0 0;font-size:14px;letter-spacing:.06em;color:#BDBDBD}
.ld-btn.ld-offer__cta{padding:16px 38px;letter-spacing:.22em}

/* ==========================================================================
   12. Marcas oficiales (ps_brandlist)
   ========================================================================== */
.ld-brands{border-bottom:1px solid var(--ld-line)}
.ld-brands__inner{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:20px 54px;max-width:var(--ld-max);
  margin:0 auto;padding:34px var(--ld-gutter)}
.ld-brands__label{font-size:12px;letter-spacing:.3em;text-transform:uppercase;color:var(--ld-grey)}
a.ld-brands__label:hover{color:var(--ld-red)}
.ld-brands__list{display:flex;flex-wrap:wrap;justify-content:center;gap:12px 54px;margin:0;padding:0;list-style:none}
.ld-brands__list li{margin:0}
.ld-brands__name{font-size:16px;letter-spacing:.14em;text-transform:uppercase;font-weight:500;color:var(--ld-ink-2)}
.ld-brands__name:hover{color:var(--ld-red)}

/* ==========================================================================
   13. Texto SEO (ps_customtext): pares título + párrafo en dos columnas
   ========================================================================== */
.ld-seo__inner{display:grid;grid-template-rows:auto 1fr;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:0 48px;
  max-width:var(--ld-max);margin:0 auto;padding:56px var(--ld-gutter-wide);font-size:14px;line-height:1.7;color:var(--ld-body)}
.ld-seo__inner:has(> div){grid-template-rows:none;grid-auto-flow:row;grid-template-columns:repeat(2,minmax(0,1fr));gap:48px}
.ld-seo h3{margin:0 0 12px;font-size:19px;line-height:normal;font-weight:600;letter-spacing:.04em;text-transform:none;color:var(--ld-ink)}
.ld-seo p{margin:0;font-size:14px;line-height:1.7;color:var(--ld-body);text-wrap:pretty}

/* ==========================================================================
   14. Home — responsive (css/home.css §12 del handoff)
   ========================================================================== */
@media (max-width:1199px){
  .ld-hero__title{font-size:44px}
}
@media (max-width:991px){
  .ld-trust__inner{grid-template-columns:1fr;gap:14px;text-align:left}
  .ld-trust__item{justify-content:flex-start}
  .ld-offer__inner{grid-template-columns:1fr;gap:22px}
  .ld-offer__cta{justify-self:start}
  .ld-seo__inner,.ld-seo__inner:has(> div){grid-template-rows:none;grid-auto-flow:row;grid-template-columns:1fr;gap:0}
  .ld-seo p+h3,.ld-seo__inner>div+div{margin-top:28px}
}
@media (max-width:767px){
  .ld-hero .ld-hero__track,.ld-hero .ld-hero__slide{height:auto}
  .ld-hero__copy{position:relative;justify-content:flex-start;min-height:520px;padding:48px 24px;
    background:linear-gradient(180deg,rgba(255,255,255,.94) 0%,rgba(255,255,255,.82) 55%,rgba(255,255,255,.2) 100%)}
  .ld-hero__title{max-width:none;font-size:34px}
  .ld-products__head{padding:48px var(--ld-gutter) 12px}
  .ld-h2{font-size:26px;letter-spacing:.22em}
  .ld-grid{padding:24px var(--ld-gutter) 20px}
  .ld-cta-row{padding:6px var(--ld-gutter) 44px}
  .ld-offer__inner{padding:40px var(--ld-gutter-wide)}
  .ld-offer__t{font-size:26px}
  .ld-brands__inner{gap:14px 28px;padding:28px var(--ld-gutter)}
  .ld-brands__list{gap:10px 28px}
  .ld-seo__inner{padding:40px var(--ld-gutter-wide)}
}

/* Selector de idioma (ps_languageselector en displayNav2): desplegable con el idioma actual como botón */
.ld-lang{position:relative;margin:0;padding:0}
.ld-lang__toggle{display:flex;align-items:center;gap:4px;cursor:pointer;list-style:none;font-size:12px;letter-spacing:.12em;line-height:1;color:var(--ld-ink);user-select:none}
.ld-lang__toggle::-webkit-details-marker{display:none}
.ld-lang__toggle .ld-icon{width:14px;height:14px;transition:transform .2s ease}
.ld-lang[open] .ld-lang__toggle .ld-icon{transform:rotate(180deg)}
.ld-lang__menu{position:absolute;top:calc(100% + 14px);left:50%;transform:translateX(-50%);z-index:1200;min-width:150px;margin:0;padding:6px 0;list-style:none;
  background:var(--ld-white);border:1px solid var(--ld-line);box-shadow:0 10px 30px rgba(0,0,0,.08)}
.ld-lang__menu::before{content:"";position:absolute;left:0;right:0;top:-15px;height:15px}
.ld-lang__item{margin:0}
.ld-lang__link{display:block;padding:9px 18px;font-size:13px;letter-spacing:.04em;line-height:1.2;color:var(--ld-ink);white-space:nowrap;text-decoration:none}
a.ld-lang__link:hover,a.ld-lang__link:focus{background:var(--ld-surface,#F5F5F7);text-decoration:none}
.ld-lang__link.is-active{font-weight:600}
.ld-lang__link.is-active::after{content:"";display:inline-block;width:6px;height:6px;margin-left:10px;border-radius:50%;background:var(--ld-red);vertical-align:middle}
@media (max-width:767px){
  .ld-lang__toggle{font-size:11px;gap:2px}
  .ld-lang__toggle .ld-icon{width:12px;height:12px}
  .ld-lang__menu{left:auto;right:-8px;transform:none}
}

/* Garantías para el cliente (blockreassurance) en pedido y carrito */
.blockreassurance_product{margin:24px 0 0;padding:0 4px}
.blockreassurance_product > div{display:flex;align-items:flex-start;gap:12px;margin:0 0 16px}
.blockreassurance_product .item-product{flex:none;float:none;display:block;width:26px;height:26px;margin:0;padding:0}
.blockreassurance_product .item-product img,.blockreassurance_product .item-product svg{width:26px;height:26px}
.blockreassurance_product .block-title{display:block;margin:2px 0 2px;font:500 12px/1.3 var(--ld-font-sans);letter-spacing:.1em;text-transform:uppercase;color:var(--ld-ink)}
.blockreassurance_product p{margin:0;font:300 13px/1.5 var(--ld-font-sans);color:var(--ld-muted-2,#6E6E76)}
.blockreassurance_product p.block-title{line-height:1.3}
.blockreassurance_product .clearfix{display:none}


/* ---------- Página de pedido (checkout nativo): cabecera y pie completos, banda de título, tarjetas anchas ---------- */
body#checkout #wrapper{background:var(--ld-white)}
body#checkout #wrapper .container{width:100%;max-width:1400px;padding:0 var(--ld-gutter)}
body#checkout #content{margin:0 0 56px}
body#checkout #content > .row{margin:0 -12px}
body#checkout .cart-grid-body,body#checkout .cart-grid-right{padding:0 12px}
/* Banda de título */
body#checkout .ld-checkout-title{margin:0 calc(-1 * var(--ld-gutter)) 32px;padding:34px var(--ld-gutter) 36px;background:var(--ld-surface,#F5F5F7);text-align:center}
body#checkout .ld-checkout-title__crumb{margin:0 0 10px;font:300 12px/1.4 var(--ld-font-sans);letter-spacing:.08em;text-transform:uppercase;color:var(--ld-muted-2,#6E6E76)}
body#checkout .ld-checkout-title__crumb a{color:inherit;text-decoration:none}
body#checkout .ld-checkout-title__crumb a:hover{color:var(--ld-ink)}
body#checkout .ld-checkout-title__crumb span[aria-hidden]{margin:0 8px}
body#checkout .ld-checkout-title h1{margin:0;font:400 40px/1.1 var(--ld-font-serif);color:var(--ld-ink);text-transform:none;letter-spacing:0}
/* Tarjetas de los pasos */
body#checkout section.checkout-step{margin:0 0 16px;padding:0;background:var(--ld-white);border:1px solid var(--ld-line)}
body#checkout section.checkout-step:last-child{border:1px solid var(--ld-line)}
body#checkout section.checkout-step .step-title{display:flex;align-items:center;gap:16px;margin:0;padding:22px 28px;border:0;border-bottom:1px solid transparent;font:400 20px/1.2 var(--ld-font-sans);text-transform:none;letter-spacing:0;color:var(--ld-ink)}
body#checkout section.checkout-step.-current .step-title{border-bottom-color:var(--ld-line)}
body#checkout section.checkout-step.-unreachable .step-title{color:var(--ld-muted-2,#6E6E76);opacity:1}
body#checkout section.checkout-step .step-title .step-number{display:inline-flex!important;align-items:center;justify-content:center;flex:none;width:38px;height:38px;margin:0;border-radius:50%;background:var(--ld-surface,#F0F0F2);color:var(--ld-muted-2,#6E6E76);font:500 14px/1 var(--ld-font-sans)}
body#checkout section.checkout-step.-reachable.-current .step-title .step-number,body#checkout section.checkout-step.-current.-reachable.-complete .step-title .step-number{background:var(--ld-ink);color:var(--ld-white);width:38px;height:38px;margin-right:0;font-size:14px}
body#checkout section.checkout-step.-reachable.-complete:not(.-current) .step-title .step-number{display:inline-flex!important;background:var(--ld-red);color:var(--ld-white)}
body#checkout section.checkout-step .step-title .done{display:none!important}
body#checkout section.checkout-step.-reachable.-complete .step-title .step-edit{float:none;margin:0 0 0 auto;font:400 12px/1 var(--ld-font-sans);letter-spacing:.1em;text-transform:uppercase;color:var(--ld-muted-2,#6E6E76)}
body#checkout section.checkout-step .step-title .step-edit .edit{font-size:14px;vertical-align:-2px}
body#checkout section.checkout-step .content{padding:26px 28px 28px}
body#checkout section.checkout-step.-current+.checkout-step .step-title{padding-top:22px;border-top:0}
/* Formularios: etiqueta a la izquierda, campo ancho, "Opcional" a la derecha */
body#checkout section.checkout-step .form-group.row{align-items:center;margin:0 0 14px}
body#checkout section.checkout-step .form-control-label{font:400 14px/1.3 var(--ld-font-sans);color:var(--ld-ink);text-align:left}
body#checkout section.checkout-step .form-control-comment{font:300 13px/1.3 var(--ld-font-sans);color:var(--ld-muted-2,#6E6E76)}
body#checkout section.checkout-step .js-input-column .form-control-comment{display:none}
body#checkout section.checkout-step .form-control{height:46px;padding:0 16px;border:1px solid #D9D9DE;border-radius:6px;background:var(--ld-white);font:300 15px/1.4 var(--ld-font-sans);color:var(--ld-ink);box-shadow:none}
body#checkout section.checkout-step .form-control:focus{border-color:var(--ld-ink);outline:0;box-shadow:none}
body#checkout section.checkout-step textarea.form-control{height:auto;min-height:90px;padding:12px 16px}
body#checkout section.checkout-step .input-group .form-control{border-radius:6px 0 0 6px}
body#checkout section.checkout-step .input-group .input-group-btn .btn{height:46px;border-radius:0 6px 6px 0;background:var(--ld-ink);color:var(--ld-white);font:500 12px/1 var(--ld-font-sans);letter-spacing:.1em;text-transform:uppercase}
body#checkout section.checkout-step .radio-inline{margin-right:18px;font:300 15px/1.4 var(--ld-font-sans)}
/* Pestañas "Pedir como invitado | Iniciar sesión" */
body#checkout section.checkout-step .nav-inline{display:flex;gap:8px;margin:0 0 22px;padding:0;border:0}
body#checkout section.checkout-step .nav-inline .nav-item{margin:0}
body#checkout section.checkout-step .nav-inline .nav-item::after{display:none}
body#checkout section.checkout-step .nav-inline .nav-link{display:inline-block;padding:10px 18px;border:1px solid #D9D9DE;border-radius:999px;font:400 13px/1 var(--ld-font-sans);letter-spacing:.04em;color:var(--ld-ink);text-decoration:none}
body#checkout section.checkout-step .nav-inline .nav-link.active{background:var(--ld-ink);border-color:var(--ld-ink);color:var(--ld-white)}
/* Botones */
body#checkout .btn-primary,body#checkout section.checkout-step .continue{height:48px;padding:0 32px;border:0;border-radius:0;background:var(--ld-red);color:var(--ld-white);font:500 13px/48px var(--ld-font-sans);letter-spacing:.14em;text-transform:uppercase;box-shadow:none}
body#checkout .btn-primary:hover,body#checkout section.checkout-step .continue:hover{background:var(--ld-cta-hover,#B5121F);color:var(--ld-white)}
body#checkout .btn-primary.disabled,body#checkout .btn-primary:disabled{background:#D9D9DE;color:var(--ld-white);opacity:1}
body#checkout section.checkout-step .cancel-address{margin-right:18px;font:300 14px/48px var(--ld-font-sans);color:var(--ld-muted-2,#6E6E76)}
/* Direcciones */
body#checkout section.checkout-step .address-item{margin-bottom:16px;border-radius:6px}
body#checkout section.checkout-step .address-item .address-alias{font:500 15px/1.3 var(--ld-font-sans)}
body#checkout section.checkout-step .address-item .address{font:300 14px/1.5 var(--ld-font-sans)}
body#checkout section.checkout-step .add-address a{font:400 14px/1.4 var(--ld-font-sans);color:var(--ld-ink)}
/* Envío y pago */
body#checkout .delivery-option{margin:0 0 10px;padding:14px 18px;background:var(--ld-white);border:1px solid #D9D9DE;border-radius:6px}
body#checkout .delivery-option .carrier-name{font:500 15px/1.3 var(--ld-font-sans);color:var(--ld-ink)}
body#checkout .delivery-option .carrier-delay,body#checkout .delivery-option .carrier-price{font:300 14px/1.4 var(--ld-font-sans)}
body#checkout .delivery-option .carrier-price{font-weight:500}
body#checkout .payment-options .payment-option{margin:0 0 10px;padding:14px 18px;border:1px solid #D9D9DE;border-radius:6px}
body#checkout .payment-options .payment-option label{font:400 15px/1.3 var(--ld-font-sans);color:var(--ld-ink)}
body#checkout #conditions-to-approve{margin-top:18px}
body#checkout #conditions-to-approve label,body#checkout #conditions-to-approve .condition-label{font:300 14px/1.5 var(--ld-font-sans)}
body#checkout #payment-confirmation .btn{width:100%}
/* Resumen de la cesta */
body#checkout #js-checkout-summary{padding:24px 28px;background:var(--ld-white);border:1px solid var(--ld-line)}
body#checkout #js-checkout-summary .card-block{padding:0}
body#checkout #js-checkout-summary .cart-summary-top{display:flex;align-items:center;justify-content:space-between;margin:0 0 14px;font:400 15px/1.3 var(--ld-font-sans)}
body#checkout #js-checkout-summary .js-show-details{font:300 13px/1.3 var(--ld-font-sans);color:var(--ld-muted-2,#6E6E76)}
body#checkout #js-checkout-summary .cart-summary-subtotals-container{padding:14px 0;border-top:1px solid var(--ld-line);border-bottom:1px solid var(--ld-line)}
body#checkout #js-checkout-summary .cart-summary-line{display:flex;justify-content:space-between;font:300 14px/1.5 var(--ld-font-sans)}
body#checkout #js-checkout-summary .cart-summary-line .value{font-weight:500}
body#checkout #js-checkout-summary .cart-summary-totals{padding:16px 0 4px}
body#checkout #js-checkout-summary .cart-total .label,body#checkout #js-checkout-summary .cart-total .value{font:500 18px/1.3 var(--ld-font-sans);color:var(--ld-ink)}
body#checkout #js-checkout-summary .media{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid var(--ld-line)}
body#checkout #js-checkout-summary .media-left img{width:56px;height:auto}
body#checkout #js-checkout-summary .media-body{flex:1;font:300 13px/1.4 var(--ld-font-sans)}
body#checkout #js-checkout-summary .product-name{font-weight:400;color:var(--ld-ink)}
/* Código promocional siempre visible */
body#checkout #js-checkout-summary .block-promo{margin:18px -28px -24px;padding:18px 28px 22px;background:var(--ld-surface,#F5F5F7)}
body#checkout #js-checkout-summary .block-promo .promo-code-button{display:none}
body#checkout #js-checkout-summary .block-promo #promo-code.collapse{display:block;height:auto}
body#checkout #js-checkout-summary .block-promo form.promo-code{display:flex;gap:8px}
body#checkout #js-checkout-summary .block-promo .promo-input,body#checkout #js-checkout-summary .block-promo input[name="discount_name"]{flex:1;min-width:0;height:44px;padding:0 14px;border:1px solid #D9D9DE;border-radius:6px;background:var(--ld-white);font:300 14px/1.4 var(--ld-font-sans)}
body#checkout #js-checkout-summary .block-promo .btn{height:44px;padding:0 18px;border:0;border-radius:6px;background:var(--ld-ink);color:var(--ld-white);font:500 12px/44px var(--ld-font-sans);letter-spacing:.1em;text-transform:uppercase}
body#checkout #js-checkout-summary .block-promo .promo-discounts,body#checkout #js-checkout-summary .block-promo .promo-name{margin:10px 0 0;font:300 13px/1.5 var(--ld-font-sans)}
body#checkout .blockreassurance_product{margin-top:20px;padding:22px 28px;background:var(--ld-white);border:1px solid var(--ld-line)}
@media (max-width:991px){
  body#checkout .ld-checkout-title{margin:0 -16px 24px;padding:26px 16px}
  body#checkout .ld-checkout-title h1{font-size:30px}
  body#checkout #wrapper .container{padding:0 16px}
  body#checkout section.checkout-step .step-title{padding:18px 18px;font-size:17px;gap:12px}
  body#checkout section.checkout-step .step-title .step-number{width:32px;height:32px;font-size:13px}
  body#checkout section.checkout-step .content{padding:20px 18px 22px}
  body#checkout #js-checkout-summary{padding:20px 18px}
  body#checkout #js-checkout-summary .block-promo{margin:16px -18px -20px;padding:16px 18px 18px}
  body#checkout .blockreassurance_product{padding:18px}
}
body#checkout section.checkout-step .nav-inline .nav-separator{display:none}
