/*
Theme Name: Disaster Street Wear
Theme URI: https://www.disasterstreetwear.com/
Description: Tema de Disaster Street Wear (Málaga). Tema hijo de Twenty Twenty-Five, ligero y editable con bloques.
Template: twentytwentyfive
Version: 1.0.0
Requires at least: 6.7
Requires PHP: 7.4
Text Domain: disaster
*/

/* ---------- Barra superior y cabecera ---------- */
.dsw-topbar { font-size: 13px; letter-spacing: .01em; }
.dsw-topbar p { margin: 0; }
.dsw-topbar a { color: inherit; text-decoration: none; }
.dsw-topbar a:hover { color: var(--wp--preset--color--accent); text-decoration: none; }
.dsw-cabecera { position: sticky; top: 0; z-index: 50; background: var(--wp--preset--color--base); border-bottom: 1px solid var(--wp--preset--color--base-2); }
.admin-bar .dsw-cabecera { top: 32px; }
@media (max-width: 782px) { .admin-bar .dsw-cabecera { top: 0; } }
.dsw-cabecera .wp-block-site-logo img { width: 210px; height: auto; }
@media (max-width: 600px) { .dsw-cabecera .wp-block-site-logo img { width: 150px; } .dsw-topbar .dsw-topbar-horario { display: none; } }
.dsw-menu .wp-block-navigation-item__content:hover { color: var(--wp--preset--color--accent); text-decoration: none; }
.dsw-menu .current-menu-item > .wp-block-navigation-item__content { color: var(--wp--preset--color--accent); }

/* ---------- Portada ---------- */
.dsw-hero h1 { font-size: clamp(2.4rem, 6vw, 4.6rem); line-height: .98; margin: 0; }
.dsw-hero .dsw-sobretitulo { display: inline-block; background: var(--wp--preset--color--accent); color: #fff; padding: .25em .7em; font-family: var(--wp--preset--font-family--fira-sans); font-weight: 800; text-transform: uppercase; letter-spacing: .08em; font-size: 13px; }
.dsw-hero .wp-block-cover__inner-container { max-width: 1280px; }
.dsw-boton-borde .wp-block-button__link { background: transparent; color: #fff; box-shadow: inset 0 0 0 2px #fff; }
.dsw-boton-borde .wp-block-button__link:hover { background: #fff; color: var(--wp--preset--color--contrast); }

.dsw-seccion-titulo { display: flex; align-items: baseline; justify-content: space-between; gap: 1rem; flex-wrap: wrap; }
.dsw-seccion-titulo h2 { margin: 0; }
.dsw-seccion-titulo h2::after { content: ""; display: block; width: 56px; height: 5px; background: var(--wp--preset--color--accent); margin-top: .35em; }

.dsw-categoria { position: relative; overflow: hidden; background: var(--wp--preset--color--contrast); }
.dsw-categoria .wp-block-image { margin: 0; }
.dsw-categoria .wp-block-image img { display: block; width: 100%; transition: transform .45s ease, opacity .45s ease; }
.dsw-categoria:hover .wp-block-image img { transform: scale(1.05); opacity: .85; }
.dsw-categoria .dsw-categoria-nombre { position: absolute; left: 0; right: 0; bottom: 0; margin: 0; padding: 2.2rem 1rem 1rem; font-size: clamp(1rem, 1.6vw, 1.35rem); background: linear-gradient(transparent, rgba(0,0,0,.82)); }
.dsw-categoria .dsw-categoria-nombre a { color: #fff; text-decoration: none; }
.dsw-categoria .dsw-categoria-nombre a::after { content: " →"; color: var(--wp--preset--color--accent); }
.dsw-categoria .dsw-categoria-nombre a::before { content: ""; position: absolute; inset: -100vh 0 0 0; } /* toda la tarjeta clicable */

.dsw-tienda img { width: 100%; height: 100%; object-fit: cover; }
.dsw-datos p { margin: .2em 0; }
.dsw-datos strong { font-family: var(--wp--preset--font-family--fira-sans); text-transform: uppercase; letter-spacing: .05em; }

/* ---------- Tarjetas de entradas (blog y portada) ---------- */
.dsw-tarjeta { height: 100%; display: flex; flex-direction: column; background: var(--wp--preset--color--base); border: 1px solid var(--wp--preset--color--base-2); transition: box-shadow .25s ease, transform .25s ease; }
.dsw-tarjeta:hover { box-shadow: 0 12px 30px rgba(0,0,0,.09); transform: translateY(-3px); }
.dsw-tarjeta .wp-block-post-featured-image { margin: 0; overflow: hidden; }
.dsw-tarjeta .wp-block-post-featured-image img { transition: transform .45s ease; }
.dsw-tarjeta:hover .wp-block-post-featured-image img { transform: scale(1.04); }
.dsw-tarjeta-texto { padding: 1.1rem 1.25rem 1.4rem; display: flex; flex-direction: column; gap: .5rem; flex: 1; }
.dsw-tarjeta-texto > * { margin: 0 !important; }
.dsw-tarjeta .wp-block-post-title { font-size: clamp(1.1rem, 1.5vw, 1.35rem); line-height: 1.15; }
.dsw-tarjeta .wp-block-post-title a { color: var(--wp--preset--color--contrast); text-decoration: none; }
.dsw-tarjeta .wp-block-post-title a:hover { color: var(--wp--preset--color--accent); }
.dsw-tarjeta .wp-block-post-excerpt { color: #444; font-size: .95rem; }
.dsw-tarjeta .wp-block-post-excerpt__more-text { display: none; }
.dsw-tarjeta .wp-block-post-date { margin-top: auto !important; }
.dsw-tarjeta .wp-block-post-terms a { color: var(--wp--preset--color--accent); text-decoration: none; }
.dsw-sin-imagen { aspect-ratio: 4/3; display: grid; place-items: center; background: var(--wp--preset--color--contrast); }
.dsw-sin-imagen a { display: grid; place-items: center; width: 100%; height: 100%; color: var(--wp--preset--color--accent); font-family: var(--wp--preset--font-family--fira-sans); font-weight: 900; font-size: 1.6rem; letter-spacing: .08em; text-decoration: none; }

.wp-block-query-pagination { font-family: var(--wp--preset--font-family--fira-sans); font-weight: 600; text-transform: uppercase; }
.wp-block-query-pagination .page-numbers.current { background: var(--wp--preset--color--accent); color: #fff; padding: .1em .6em; }

/* ---------- Entrada individual ---------- */
.dsw-entrada-cabecera .wp-block-post-title { font-size: clamp(2rem, 4.5vw, 3.4rem); }
.dsw-entrada .wp-block-post-content img { height: auto; }
.dsw-entrada .wp-block-post-content a { text-decoration: underline; text-underline-offset: 3px; }
.dsw-cta { position: relative; }
.dsw-cta h2 { color: #fff; margin: 0; }

/* ---------- Pie ---------- */
.dsw-pie a { color: #fff; text-decoration: none; }
.dsw-pie a:hover { color: var(--wp--preset--color--accent); }
.dsw-pie h2 { font-size: 1rem; letter-spacing: .08em; color: var(--wp--preset--color--accent); margin-bottom: .6em; }
.dsw-pie p { margin: .15em 0; color: #d7d7d7; font-size: .95rem; }
.dsw-pie .dsw-marca { font-family: var(--wp--preset--font-family--fira-sans); font-weight: 900; font-size: 1.6rem; letter-spacing: .02em; text-transform: uppercase; color: #fff; line-height: 1; }
.dsw-pie .dsw-marca span { color: var(--wp--preset--color--accent); }
.dsw-pie-legal p { color: #9a9a9a; font-size: 13px; }

/* Portada: el texto de la cabecera alineado con el resto de secciones */
.dsw-hero.wp-block-cover { padding-left: var(--wp--style--root--padding-left, 1.5rem); padding-right: var(--wp--style--root--padding-right, 1.5rem); }
.dsw-hero .wp-block-cover__inner-container { width: 100%; max-width: var(--wp--style--global--wide-size, 1280px); margin-inline: auto; }
@media (max-width: 600px) { .dsw-hero.wp-block-cover { min-height: 88vh !important; } }

/* Botón de la cabecera compacto y sin saltos de línea */
.dsw-cabecera .wp-block-button__link { white-space: nowrap; padding: .7em 1.1em; }
@media (max-width: 600px) {
  .dsw-cabecera .wp-block-button__link { font-size: 12px !important; padding: .6em .8em; }
  /* Categorías: dos por fila en el móvil */
  .wp-block-group:has(> .dsw-categoria) { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 10px !important; }
  .dsw-categoria .dsw-categoria-nombre { padding: 1.6rem .6rem .6rem; font-size: .95rem; }
}

/* Barra superior: teléfono y WhatsApp con icono */
.dsw-topbar-derecha { align-items: center; }
.dsw-icono-tel, .dsw-icono-whatsapp { display: inline-flex; align-items: center; gap: 6px; font-weight: 600; }
.dsw-icono-tel::before, .dsw-icono-whatsapp::before { content: ""; width: 15px; height: 15px; flex: none; background: currentColor; -webkit-mask: var(--dsw-icono) center / contain no-repeat; mask: var(--dsw-icono) center / contain no-repeat; }
.dsw-icono-tel { --dsw-icono: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6.6 10.8a15.1 15.1 0 0 0 6.6 6.6l2.2-2.2c.3-.3.7-.4 1-.2 1.1.4 2.3.6 3.6.6.6 0 1 .4 1 1V20c0 .6-.4 1-1 1A17 17 0 0 1 3 4c0-.6.4-1 1-1h3.5c.6 0 1 .4 1 1 0 1.3.2 2.5.6 3.6.1.3 0 .7-.2 1l-2.3 2.2z'/%3E%3C/svg%3E"); }
.dsw-icono-whatsapp { --dsw-icono: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M17.5 14.4c-.3-.1-1.8-.9-2-1-.3-.1-.5-.1-.7.1-.2.3-.8 1-.9 1.2-.2.2-.3.2-.6.1a8.2 8.2 0 0 1-4-3.5c-.3-.5.3-.5.9-1.6.1-.2 0-.4 0-.5l-.9-2.2c-.2-.6-.5-.5-.7-.5h-.6c-.2 0-.5.1-.8.4-.3.3-1 1-1 2.5s1.1 2.9 1.2 3.1c.1.2 2.1 3.2 5.1 4.5 1.9.8 2.6.9 3.6.7.6-.1 1.8-.7 2-1.4.3-.7.3-1.3.2-1.4l-.5-.4zM12 2a10 10 0 0 0-8.6 15.1L2 22l5-1.3A10 10 0 1 0 12 2zm0 18.2c-1.5 0-3-.4-4.3-1.2l-.3-.2-3 .8.8-2.9-.2-.3A8.2 8.2 0 1 1 12 20.2z'/%3E%3C/svg%3E"); }
.dsw-icono-whatsapp::before { background: #25d366; width: 16px; height: 16px; }
@media (max-width: 600px) {
  .dsw-topbar .dsw-topbar-dir, .dsw-topbar .dsw-topbar-horario { display: none; }
  .dsw-topbar .alignwide, .dsw-topbar-derecha { justify-content: center !important; width: 100%; }
}
