/* =========================================================================
   Pawmily — Páginas de contenido
   ========================================================================= */

/* -------------------------------------------------------------------------
   404
   ------------------------------------------------------------------------- */

.pw-404__grid { display: grid; gap: var(--pw-8); align-items: center; }
@media (min-width: 800px) {
	.pw-404__grid { grid-template-columns: 0.85fr 1fr; gap: var(--pw-12); }
}

.pw-404__art { max-width: 340px; margin-inline: auto; }
.pw-404__art svg { border-radius: var(--pw-r-xl); }

.pw-404__search { margin-top: var(--pw-8); }
.pw-404__search p { font-size: var(--pw-text-sm); color: var(--pw-ink-soft); margin-bottom: var(--pw-3); }

.pw-searchform { display: flex; gap: var(--pw-2); max-width: 420px; }
.pw-searchform input { flex: 1; }
.pw-searchform .pw-btn { flex: none; width: 48px; padding: 0; }

.pw-404__links { margin-top: var(--pw-16); padding-top: var(--pw-8); border-top: 1px solid var(--pw-line); }
.pw-404__links h2 { font-size: var(--pw-text-xl); margin-bottom: var(--pw-5); }
.pw-404__links ul {
	list-style: none;
	margin: 0; padding: 0;
	display: grid;
	gap: var(--pw-3);
	grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
}
.pw-404__links li { margin: 0; }
.pw-404__links a {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--pw-3);
	padding: var(--pw-4) var(--pw-5);
	background: var(--pw-surface);
	border: 1px solid var(--pw-line);
	border-radius: var(--pw-r-md);
	color: var(--pw-ink-deep);
	font-family: var(--pw-font-display);
	font-weight: 600;
	text-decoration: none;
	transition: border-color var(--pw-fast) var(--pw-ease),
	            transform var(--pw-fast) var(--pw-ease);
}
.pw-404__links a:hover { border-color: var(--pw-ink-brand); transform: translateX(3px); }
.pw-404__links svg { width: 18px; height: 18px; color: var(--pw-ink-brand); }

/* -------------------------------------------------------------------------
   Sobre nosotros
   ------------------------------------------------------------------------- */

.pw-about__intro { display: grid; gap: var(--pw-8); align-items: center; }
@media (min-width: 900px) {
	.pw-about__intro { grid-template-columns: 1fr 1fr; gap: var(--pw-12); }
}
.pw-about__art { border-radius: var(--pw-r-xl); overflow: hidden; }

.pw-values {
	display: grid;
	gap: var(--pw-6);
	margin-top: var(--pw-section);
}
@media (min-width: 760px) { .pw-values { grid-template-columns: repeat(3, 1fr); gap: var(--pw-8); } }

.pw-value { display: flex; flex-direction: column; gap: var(--pw-3); }
.pw-value svg { width: 34px; height: 34px; color: var(--pw-ink-brand); }
.pw-value h3 { margin: 0; font-size: var(--pw-text-lg); }
.pw-value p { margin: 0; color: var(--pw-ink-soft); font-size: var(--pw-text-sm); }

/* -------------------------------------------------------------------------
   Contacto
   ------------------------------------------------------------------------- */

.pw-contact { display: grid; gap: var(--pw-8); align-items: start; }
@media (min-width: 900px) {
	.pw-contact { grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); gap: var(--pw-12); }
}

.pw-contact__form {
	padding: var(--pw-6);
	background: var(--pw-surface);
	border: 1px solid var(--pw-line);
	border-radius: var(--pw-r-xl);
}
@media (min-width: 640px) {
	.pw-contact__form { padding: var(--pw-8); }
	.pw-contact__row { display: grid; grid-template-columns: 1fr 1fr; gap: 0 var(--pw-4); }
}

.pw-contact__channels { display: flex; flex-direction: column; gap: var(--pw-3); }

.pw-channel {
	display: flex;
	align-items: flex-start;
	gap: var(--pw-4);
	padding: var(--pw-5);
	background: var(--pw-surface);
	border: 1px solid var(--pw-line);
	border-radius: var(--pw-r-lg);
	text-decoration: none;
	color: var(--pw-ink);
	transition: border-color var(--pw-fast) var(--pw-ease),
	            transform var(--pw-fast) var(--pw-ease);
}
.pw-channel:hover { border-color: var(--pw-ink-brand); transform: translateY(-2px); color: var(--pw-ink); }
.pw-channel svg { width: 26px; height: 26px; color: var(--pw-ink-brand); flex: none; margin-top: 2px; }
.pw-channel h3 { margin: 0 0 var(--pw-1); font-size: var(--pw-text-base); }
.pw-channel p { margin: 0; font-size: var(--pw-text-sm); color: var(--pw-ink-soft); }

.pw-hours { list-style: none; margin: var(--pw-2) 0 0; padding: 0; }
.pw-hours li {
	display: flex;
	justify-content: space-between;
	gap: var(--pw-4);
	padding: var(--pw-1) 0;
	margin: 0;
	font-size: var(--pw-text-sm);
	font-variant-numeric: tabular-nums;
}
.pw-hours li span:first-child { color: var(--pw-ink-soft); }
.pw-hours li[data-today="true"] { font-weight: 700; color: var(--pw-ink-deep); }

/* -------------------------------------------------------------------------
   FAQ
   ------------------------------------------------------------------------- */

.pw-faq { max-width: 780px; }
.pw-faq__group { margin-bottom: var(--pw-10); }
.pw-faq__group h2 { font-size: var(--pw-text-xl); margin-bottom: var(--pw-4); }

.pw-faq__cta {
	margin-top: var(--pw-10);
	padding: var(--pw-6);
	background: var(--pw-surface);
	border: 1px solid var(--pw-line);
	border-radius: var(--pw-r-xl);
	text-align: center;
}
.pw-faq__cta h2 { font-size: var(--pw-text-xl); margin-bottom: var(--pw-2); }
.pw-faq__cta p { color: var(--pw-ink-soft); margin-bottom: var(--pw-5); }

/* -------------------------------------------------------------------------
   Comentarios
   ------------------------------------------------------------------------- */

.comment-list { list-style: none; margin: 0 0 var(--pw-8); padding: 0; }
.comment-body {
	padding: var(--pw-5);
	margin-bottom: var(--pw-3);
	background: var(--pw-surface);
	border-radius: var(--pw-r-md);
}
.comment-meta { font-size: var(--pw-text-sm); color: var(--pw-ink-soft); margin-bottom: var(--pw-2); }

/* -------------------------------------------------------------------------
   Enlaces legales del pie
   ------------------------------------------------------------------------- */

.pw-footer__legal ul,
.pw-footer__legal-list {
	display: flex;
	flex-wrap: wrap;
	gap: var(--pw-4);
	list-style: none;
	margin: 0;
	padding: 0;
}
.pw-footer__legal li { margin: 0; }

/* -------------------------------------------------------------------------
   Bloques del editor dentro de .pw-prose
   ------------------------------------------------------------------------- */

.pw-prose img,
.pw-prose figure { border-radius: var(--pw-r-md); }
.pw-prose figure { margin: var(--pw-6) 0; }
.pw-prose figcaption {
	margin-top: var(--pw-2);
	font-size: var(--pw-text-sm);
	color: var(--pw-ink-soft);
	text-align: center;
}
.pw-prose table { margin: var(--pw-6) 0; font-size: var(--pw-text-sm); }
.pw-prose th, .pw-prose td { padding: var(--pw-3); border-bottom: 1px solid var(--pw-line); text-align: left; }
.pw-prose th { font-weight: 700; background: var(--pw-surface); }

/* -------------------------------------------------------------------------
   Tablas con desbordamiento: nunca la página entera
   ------------------------------------------------------------------------- */

.pw-scroll-x {
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
	overscroll-behavior-x: contain;
}
