/*
Theme Name: AM&H Ingeniería
Description: Tema de AM & H Ingeniería, Auditoría y Tecnología S.A.C. Todo el contenido se edita con el editor de bloques; datos y textos generales en "Ajustes del sitio".
Version: 0.3.2
Requires PHP: 8.1
Text Domain: amh
*/

@font-face { font-family: "AMH Montserrat"; src: url(assets/fonts/montserrat.woff2) format("woff2"); font-weight: 500 800; font-display: swap; }
@font-face { font-family: "AMH Inter"; src: url(assets/fonts/inter.woff2) format("woff2"); font-weight: 400 700; font-display: swap; }

:root {
	--primary: #0B2A55;      /* azul marino AM&H: botones, cabeceras */
	--primary-dark: #071A36; /* azul noche: header, footer, secciones oscuras */
	--primary-soft: #E8EEF7;
	--accent: #EE6D18;       /* naranja AM&H: botones y detalles grandes */
	--accent-text: #A94B0E;  /* naranja para texto pequeño sobre claro (5.7:1 blanco, 5.0:1 gris) */
	--ink: #0E1928;          /* texto principal */
	--muted: #5B6576;        /* texto secundario */
	--bg-soft: #EEF2F7;
	--border: #D9E1EC;
	--accent-soft: #FDEBDC;
	--white: #fff;
	--radius: 12px;
	--shadow: 0 1px 2px rgba(14,25,40,.06), 0 4px 16px rgba(14,25,40,.05);
	--font: "AMH Inter", "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
	--font-head: "AMH Montserrat", "Montserrat", "AMH Inter", "Segoe UI", Arial, sans-serif;
	--container: 72rem;
}

*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; font-family: var(--font); color: var(--ink); background: var(--white); line-height: 1.6; -webkit-font-smoothing: antialiased; }
img { max-width: 100%; height: auto; display: block; }
a { color: var(--primary); }
h1, h2, h3, h4 { font-family: var(--font-head); line-height: 1.15; letter-spacing: -.015em; margin: 0 0 .6em; font-weight: 700; color: var(--ink); }
h1 { font-weight: 800; }
h1 { font-size: clamp(2.3rem, 5vw, 3.75rem); }
h2 { font-size: clamp(1.75rem, 3vw, 2.25rem); }
h3 { font-size: 1.15rem; letter-spacing: -.01em; }
p { margin: 0 0 1rem; }
:focus-visible { outline: 3px solid var(--accent); outline-offset: 2px; }
.sr-only { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; }
.skip-link { position: absolute; left: -999px; top: 0; z-index: 1000; background: var(--accent); color: var(--ink); padding: .6rem 1rem; }
.skip-link:focus { left: 1rem; }

.amh-container, .site-header__inner, .site-footer__inner { width: min(100% - 3rem, var(--container)); margin-inline: auto; }

/* ---------- Header ---------- */
.site-header { position: sticky; top: 0; z-index: 100; background: var(--primary-dark); border-bottom: 3px solid var(--accent); box-shadow: 0 4px 20px rgba(7,26,54,.25); }
.admin-bar .site-header { top: 32px; }
@media (max-width: 782px) { .admin-bar .site-header { top: 46px; } }
.site-header__inner { display: flex; align-items: center; justify-content: space-between; gap: 1.5rem; min-height: 80px; }
.brand { display: flex; align-items: center; gap: .85rem; text-decoration: none; color: var(--white); }
.brand__amp { color: var(--logo, var(--accent)); }
.brand svg, .brand img { width: 46px; height: auto; flex: 0 0 auto; }
.brand img.custom-logo { width: auto; max-height: 48px; }
.brand__name { font-family: var(--font-head); font-weight: 800; font-size: 1.45rem; line-height: 1; letter-spacing: -.01em; display: block; }
.brand__tag { font-size: .64rem; font-weight: 600; letter-spacing: .16em; text-transform: uppercase; color: rgba(255,255,255,.7); display: block; margin-top: .3rem; white-space: nowrap; }
.main-nav { display: flex; align-items: center; gap: 2rem; }
.main-nav ul { list-style: none; display: flex; gap: 2rem; margin: 0; padding: 0; }
.main-nav ul a { color: rgba(255,255,255,.82); text-decoration: none; font-size: .95rem; font-weight: 500; padding-block: .4rem; border-bottom: 2px solid transparent; }
.main-nav ul a:hover, .main-nav .current-menu-item > a { color: var(--white); border-color: var(--accent); }
.header-cta { background: var(--accent); color: var(--ink) !important; font-weight: 700; font-size: .92rem; padding: .7rem 1.1rem; border-radius: 6px; text-decoration: none; white-space: nowrap; }
.header-cta:hover { filter: brightness(.95); }
.nav-toggle { display: none; background: none; border: 0; padding: .5rem; cursor: pointer; color: var(--white); }
.nav-toggle svg { width: 26px; height: 26px; }
@media (max-width: 900px) {
	.nav-toggle { display: inline-flex; }
	.main-nav { display: none; position: absolute; left: 0; right: 0; top: 100%; background: var(--primary-dark); border-bottom: 3px solid var(--accent); flex-direction: column; align-items: stretch; padding: 1rem 1.5rem 1.5rem; gap: 1rem; }
	.main-nav.is-open { display: flex; }
	.main-nav ul { flex-direction: column; gap: .9rem; }
	.header-cta { text-align: center; }
	.brand__tag { display: none; }
}

/* ---------- Secciones (clases que usan los bloques de las páginas) ---------- */
.entry-content > * { margin-block: 0; }
.amh-section { padding-block: clamp(4rem, 8vw, 6rem); }
.amh-section--tight-top { padding-top: clamp(3rem, 6vw, 4.5rem); }
.amh-section--muted { background: var(--bg-soft); border-block: 1px solid var(--border); }
.amh-section--navy { background: var(--primary); color: var(--white); padding-block: clamp(3.5rem, 7vw, 5rem); }
.amh-section--navy h1, .amh-section--navy h2 { color: var(--white); max-width: 44rem; }
.amh-section--navy h1, .wp-block-cover.amh-page-cover h1 { font-size: clamp(2rem, 3.6vw, 2.6rem); }
.amh-section--navy p { color: rgba(255,255,255,.8); max-width: 38rem; }
.amh-section--navy .amh-eyebrow, .wp-block-cover .amh-eyebrow { color: var(--accent); }
.amh-eyebrow { text-transform: uppercase; letter-spacing: .25em; font-size: .75rem; font-weight: 700; color: var(--accent-text); margin-bottom: 1rem; }
.amh-lead { font-size: 1.1rem; color: var(--muted); }
.amh-muted { color: var(--muted); }
/* Los grupos de un tema clásico tienen un contenedor interno: la fila se aplica a él. */
.amh-head { margin-bottom: 2.5rem; }
.amh-head > .wp-block-group__inner-container { display: flex; justify-content: space-between; align-items: end; gap: 1rem; flex-wrap: wrap; }
.amh-head > .wp-block-group__inner-container > *, .amh-head h2 { margin-bottom: 0; }
.amh-link a, a.amh-link { color: var(--ink); font-weight: 600; text-decoration: none; }
.amh-link a::after, a.amh-link::after { content: " →"; color: var(--accent); }
.amh-link--accent a { color: var(--accent); }
.amh-section .wp-block-columns { gap: 2.5rem; margin-bottom: 0; }

/* Botones */
.wp-block-button__link { border-radius: 999px; font-weight: 600; font-size: .95rem; padding: .85rem 1.5rem; text-decoration: none; transition: filter .2s, background .2s; }
.wp-block-button:not(.is-style-outline) .wp-block-button__link { background: var(--accent); color: var(--ink); }
.wp-block-button:not(.is-style-outline) .wp-block-button__link::after { content: " →"; }
.wp-block-button:not(.is-style-outline) .wp-block-button__link:hover { filter: brightness(.95); }
.wp-block-button.is-style-outline .wp-block-button__link { border: 1px solid rgba(255,255,255,.35); color: var(--white); background: transparent; }
.amh-section:not(.amh-section--navy) .wp-block-button.is-style-outline .wp-block-button__link { border-color: var(--border); color: var(--ink); }
.wp-block-buttons { gap: 1rem; }

/* Hero y cabeceras con foto (bloque Portada) */
.wp-block-cover.amh-hero { min-height: min(85vh, 680px); padding-block: 5rem; }
.wp-block-cover.amh-hero h1 { color: var(--white); max-width: 42rem; }
.wp-block-cover.amh-hero p { color: rgba(255,255,255,.85); max-width: 36rem; font-size: 1.05rem; }
.wp-block-cover.amh-hero .amh-eyebrow { color: rgba(255,255,255,.75); }
.wp-block-cover.amh-page-cover { min-height: 460px; padding-block: 4.5rem; }
.wp-block-cover.amh-page-cover h1 { color: var(--white); }
.wp-block-cover.amh-page-cover p { color: rgba(255,255,255,.85); max-width: 36rem; }
.wp-block-cover .wp-block-cover__inner-container { width: min(100% - 3rem, var(--container)); margin-inline: auto; }

/* Tarjetas simples (01 Auditoría…) */
.amh-cards.wp-block-columns { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.5rem; margin-top: 3.5rem; }
.amh-cards > .wp-block-column { background: var(--white); border: 1px solid var(--border); border-radius: var(--radius); padding: 2rem; box-shadow: var(--shadow); }
.amh-cards .amh-num { font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: .8rem; color: var(--muted); margin-bottom: 1.2rem; }
.amh-cards h3 { margin-bottom: .6rem; }
.amh-cards p:last-child { color: var(--muted); font-size: .95rem; margin: 0; }

/* Especialidades con foto */
.amh-specialties.wp-block-columns { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.5rem; }
.amh-specialties > .wp-block-column { background: var(--white); border: 1px solid var(--border); border-radius: var(--radius); overflow: hidden; box-shadow: var(--shadow); transition: transform .25s, box-shadow .25s; }
.amh-specialties > .wp-block-column:hover { transform: translateY(-4px); box-shadow: 0 10px 30px rgba(14,25,40,.1); }
.amh-specialties .wp-block-image { margin: 0; }
.amh-specialties .wp-block-image img { aspect-ratio: 16/9; object-fit: cover; width: 100%; }
.amh-specialties h3, .amh-specialties p { padding-inline: 1.75rem; }
.amh-specialties h3 { margin: 1.6rem 0 .5rem; }
.amh-specialties h3 a { color: var(--ink); text-decoration: none; }
.amh-specialties p { color: var(--muted); font-size: .95rem; padding-bottom: 1.6rem; margin: 0; }

/* ¿Qué necesita tu organización? */
.amh-needs.wp-block-columns { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1rem; margin-top: 2.5rem; }
.amh-needs > .wp-block-column { border: 1px solid var(--border); border-radius: 8px; padding: 1.5rem 1.5rem 1.5rem 4.5rem; position: relative; background: var(--white); transition: border-color .2s; }
.amh-needs > .wp-block-column:hover { border-color: var(--accent); }
.amh-needs > .wp-block-column::before { content: ""; position: absolute; left: 1.5rem; top: 1.5rem; width: 36px; height: 36px; border-radius: 6px; background: var(--bg-soft) var(--icon, none) center / 18px no-repeat; }
.amh-needs h3 { font-size: 1rem; margin: 0 0 .25rem; }
.amh-needs h3 a { color: var(--ink); text-decoration: none; }
.amh-needs p { font-size: .85rem; color: var(--muted); margin: 0; }
.amh-needs p::after { content: " →"; }

/* Sectores sobre foto */
.wp-block-cover.amh-sectors { padding-block: clamp(4rem, 8vw, 6rem); }
.wp-block-cover.amh-sectors h2 { color: var(--white); }
.amh-sector-cards.wp-block-columns { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1rem; margin: 2.5rem 0 2rem; }
.amh-sector-cards > .wp-block-column { border: 1px solid rgba(255,255,255,.18); background: rgba(255,255,255,.06); border-radius: 8px; padding: 1.8rem 1.5rem; backdrop-filter: blur(2px); }
.amh-sector-cards .amh-num { font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: .8rem; color: var(--accent); margin-bottom: .8rem; }
.amh-sector-cards h3 { color: var(--white); font-size: 1.2rem; }
.amh-sector-cards p { color: rgba(255,255,255,.75); font-size: .95rem; margin: 0; }
.wp-block-cover .amh-link a { color: var(--accent); }

/* Proceso (lista como pastillas con flechas) */
ul.is-style-amh-process { list-style: none; display: flex; flex-wrap: wrap; align-items: center; gap: .75rem 0; padding: 0; margin: 2rem 0 0; }
ul.is-style-amh-process li { border: 1px solid var(--border); border-radius: 999px; padding: .5rem 1.25rem; font-size: .95rem; background: var(--white); }
ul.is-style-amh-process li { position: relative; }
ul.is-style-amh-process li:not(:last-child) { margin-right: 2.75rem; }
ul.is-style-amh-process li:not(:last-child)::after { content: "→"; color: var(--accent); position: absolute; right: -1.9rem; top: 50%; transform: translateY(-50%); }

/* Llamada a la acción */
.amh-cta.wp-block-group { border: 1px solid var(--border); background: var(--bg-soft); border-radius: var(--radius); padding: 2.5rem; }
.amh-cta .wp-block-columns { align-items: center !important; }
.amh-cta h2, .amh-cta h3 { font-size: 1.5rem; margin-bottom: .4rem; }
.amh-cta p { color: var(--muted); margin: 0; }
.amh-cta .wp-block-buttons { justify-content: flex-end; }
@media (max-width: 781px) { .amh-cta .wp-block-buttons { justify-content: flex-start; } }

/* Listas en dos columnas con viñeta naranja */
ul.is-style-amh-bullets, ul.is-style-amh-2col { list-style: none; padding: 0; margin: 0; }
ul.is-style-amh-2col { display: grid; grid-template-columns: 1fr 1fr; column-gap: 2.5rem; }
ul.is-style-amh-bullets li, ul.is-style-amh-2col li { position: relative; padding-left: 1rem; margin-bottom: .55rem; break-inside: avoid; font-size: .95rem; color: #3A4556; }
ul.is-style-amh-bullets li::before, ul.is-style-amh-2col li::before { content: ""; position: absolute; left: 0; top: .6em; width: 5px; height: 5px; border-radius: 50%; background: var(--accent); }
@media (max-width: 640px) { ul.is-style-amh-2col { grid-template-columns: 1fr; } }

/* Servicios: filas y títulos de área */
.amh-area-title > .wp-block-group__inner-container { display: flex; align-items: baseline; gap: 1rem; }
.amh-area-title p { margin: 0; }
.amh-area-title .amh-num, p.amh-num-inline { font-family: ui-monospace, SFMono-Regular, Menlo, monospace; color: var(--accent-text); font-size: .9rem; }
.amh-row.wp-block-columns { border-top: 1px solid var(--border); padding-top: 2.5rem; margin-top: 2.5rem !important; }
.amh-row h3 { margin-bottom: .5rem; }
.amh-row .amh-muted { font-size: .9rem; }

/* Sectores: etiquetas */
ul.is-style-amh-tags { list-style: none; display: flex; flex-wrap: wrap; gap: .5rem; padding: 0; margin: 1rem 0 0; }
ul.is-style-amh-tags li { border: 1px solid var(--border); border-radius: 4px; padding: .25rem .6rem; font-size: .8rem; color: #465062; background: var(--white); }

/* Galería de trabajos en campo */
/* Galería: WordPress calcula el ancho de cada foto con esta variable. */
.amh-gallery.wp-block-gallery.has-nested-images { --wp--style--unstable-gallery-gap: 1rem !important; gap: 1rem !important; }
.amh-gallery.wp-block-gallery figure.wp-block-image { flex-grow: 0; }
.amh-gallery .wp-block-image { border-radius: var(--radius); overflow: hidden; position: relative; }
.amh-gallery .wp-block-image img { aspect-ratio: 4/3; object-fit: cover; }
.amh-gallery.wp-block-gallery .wp-block-image figcaption { text-align: left !important; background: linear-gradient(0deg, rgba(14,25,40,.85), rgba(14,25,40,0)); padding: 2.5rem 1rem 1rem; text-align: left; font-size: .9rem; color: var(--white); }
.amh-gallery figcaption strong { display: inline-block; background: var(--accent); color: var(--ink); font-size: .65rem; letter-spacing: .15em; padding: .15rem .5rem; border-radius: 999px; margin-bottom: .4rem; }

/* Formulario de contacto */
.amh-form-wrap { display: grid; grid-template-columns: 1fr 320px; gap: 3rem; align-items: start; }
@media (max-width: 900px) { .amh-form-wrap { grid-template-columns: 1fr; } }
.amh-form .row { display: grid; grid-template-columns: 1fr 1fr; gap: 1.25rem; }
@media (max-width: 640px) { .amh-form .row { grid-template-columns: 1fr; } }
.amh-form label.lbl, .amh-form legend { display: block; font-size: .72rem; letter-spacing: .15em; text-transform: uppercase; font-weight: 700; margin-bottom: .45rem; color: var(--ink); }
.amh-form .field { margin-bottom: 1.3rem; }
.amh-form input[type=text], .amh-form input[type=email], .amh-form input[type=tel], .amh-form select, .amh-form textarea { width: 100%; font: inherit; padding: .75rem .9rem; border: 1px solid var(--border); border-radius: 6px; background: var(--white); }
.amh-form fieldset { border: 0; padding: 0; margin: 0 0 1.3rem; }
.amh-form .toggles { display: flex; flex-wrap: wrap; gap: .5rem; }
.amh-form .toggles input { position: absolute; opacity: 0; }
.amh-form .toggles label { border: 1px solid var(--border); padding: .5rem .9rem; font-size: .9rem; cursor: pointer; border-radius: 4px; }
.amh-form .toggles input:checked + label { background: var(--accent); border-color: var(--accent); color: var(--ink); font-weight: 600; }
.amh-form .toggles input:focus-visible + label { outline: 3px solid var(--accent); outline-offset: 2px; }
.amh-form .checks { display: grid; grid-template-columns: 1fr 1fr; gap: .6rem; }
@media (max-width: 640px) { .amh-form .checks { grid-template-columns: 1fr; } }
.amh-form .checks label { display: flex; gap: .6rem; align-items: center; border: 1px solid var(--border); border-radius: 6px; padding: .6rem .8rem; font-size: .9rem; cursor: pointer; }
.amh-form .hp { position: absolute; left: -9999px; }
.amh-form button { background: var(--accent); color: var(--ink); border: 0; font: inherit; font-weight: 600; padding: .85rem 1.5rem; cursor: pointer; }
.amh-summary { background: var(--bg-soft); border: 1px solid var(--border); border-radius: 8px; padding: 1.5rem; position: sticky; top: 110px; font-size: .9rem; }
.amh-summary h3 { font-size: 1rem; }
.amh-summary dt { font-size: .7rem; letter-spacing: .15em; text-transform: uppercase; color: var(--muted); margin-top: 1rem; }
.amh-summary dd { margin: .2rem 0 0; }
.amh-notice { padding: 1rem 1.2rem; border-radius: 8px; margin-bottom: 1.5rem; }
.amh-notice--ok { background: #E6F4EA; color: #1E4620; }
.amh-notice--error { background: #FDECEA; color: #611A15; }

/* ---------- Footer ---------- */
.site-footer { background: var(--primary-dark); color: rgba(255,255,255,.75); border-top: 4px solid var(--accent); border-radius: 40px 40px 0 0; margin-top: 3rem; overflow: hidden; }
.site-footer .brand__tag { color: rgba(255,255,255,.6); }
.site-footer__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 2.5rem; padding-block: 3.5rem; }
@media (max-width: 800px) { .site-footer__grid { grid-template-columns: 1fr; } }
.site-footer h2 { font-size: .75rem; letter-spacing: .22em; text-transform: uppercase; margin-bottom: 1.2rem; color: var(--accent); }
.site-footer ul { list-style: none; padding: 0; margin: 0; }
.site-footer li { margin-bottom: .55rem; }
.site-footer a, .site-footer li { color: rgba(255,255,255,.78); text-decoration: none; font-size: .95rem; }
.site-footer a:hover { color: var(--white); }
.site-footer__desc { color: rgba(255,255,255,.7); font-size: .95rem; margin-top: 1.2rem; max-width: 20rem; }
.site-footer__bottom { background: #04122A; text-align: center; padding-block: 1.4rem; font-size: .8rem; color: rgba(255,255,255,.6); }

/* ---------- Genéricos (noticias, 404) ---------- */
.amh-simple { padding-block: 4rem; }

/* Responsive de grillas */
@media (max-width: 1000px) {
	.amh-specialties.wp-block-columns, .amh-needs.wp-block-columns, .amh-sector-cards.wp-block-columns { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 640px) {
	.amh-cards.wp-block-columns, .amh-specialties.wp-block-columns, .amh-needs.wp-block-columns, .amh-sector-cards.wp-block-columns { grid-template-columns: 1fr; }
	.amh-cta.wp-block-group { padding: 1.75rem; }
}
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { transition: none !important; scroll-behavior: auto !important; } }

/* Íconos de tarjetas: clase "amh-ico-<nombre>" en Avanzado › Clases CSS adicionales. */
.amh-ico-casco { --icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23EE6D18%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M2%2018h20M4%2018v-3a8%208%200%200%201%2016%200v3M10%207V4h4v3M8%2010.5%209%207M16%2010.5%2015%207%22/%3E%3C/svg%3E"); }
.amh-ico-servidor { --icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23EE6D18%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%223%22%20y%3D%223%22%20width%3D%2218%22%20height%3D%227%22%20rx%3D%222%22/%3E%3Crect%20x%3D%223%22%20y%3D%2214%22%20width%3D%2218%22%20height%3D%227%22%20rx%3D%222%22/%3E%3Cpath%20d%3D%22M7%206.5h.01M7%2017.5h.01%22/%3E%3C/svg%3E"); }
.amh-ico-medidor { --icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23EE6D18%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M12%2014l4-4M3.3%2019a10%2010%200%201%201%2017.4%200%22/%3E%3C/svg%3E"); }
.amh-ico-hoja { --icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23EE6D18%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M11%2020A7%207%200%200%201%209.8%206.1C15.5%205%2017%204.5%2019%202c1%202%202%204.2%202%208%200%205.5-4.8%2010-10%2010Z%22/%3E%3Cpath%20d%3D%22M2%2021c0-3%201.9-5.4%205.1-6%22/%3E%3C/svg%3E"); }
.amh-ico-documento { --icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23EE6D18%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M14%202H6a2%202%200%200%200-2%202v16a2%202%200%200%200%202%202h12a2%202%200%200%200%202-2V8z%22/%3E%3Cpath%20d%3D%22M14%202v6h6%22/%3E%3Ccircle%20cx%3D%2211.5%22%20cy%3D%2214.5%22%20r%3D%222.5%22/%3E%3Cpath%20d%3D%22M13.3%2016.3%2015%2018%22/%3E%3C/svg%3E"); }
.amh-ico-portapapeles { --icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23EE6D18%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%228%22%20y%3D%222%22%20width%3D%228%22%20height%3D%224%22%20rx%3D%221%22/%3E%3Cpath%20d%3D%22M16%204h2a2%202%200%200%201%202%202v14a2%202%200%200%201-2%202H6a2%202%200%200%201-2-2V6a2%202%200%200%201%202-2h2M12%2011h4M12%2016h4M8%2011h.01M8%2016h.01%22/%3E%3C/svg%3E"); }

/* Dentro de una Portada el contenedor ya está acotado. */
.wp-block-cover .wp-block-cover__inner-container > .amh-container { width: 100%; }

/* ---------- Identidad: más color y contraste ---------- */
.amh-eyebrow { font-family: var(--font-head); }
.amh-section--navy { background: linear-gradient(120deg, var(--primary-dark) 0%, var(--primary) 100%); position: relative; }
.amh-section--navy::after { content: ""; position: absolute; left: 0; bottom: 0; width: 120px; height: 4px; background: var(--accent); }
.amh-section--muted { background: var(--bg-soft); }
/* Tarjetas 01/02/03 con franja naranja */
.amh-cards > .wp-block-column { border-top: 4px solid var(--accent); }
.amh-cards .amh-num { color: var(--accent-text); font-weight: 700; }
.amh-cards h3 { color: var(--primary); }
/* Especialidades: título azul y línea naranja al pasar el cursor */
.amh-specialties h3 a { color: var(--primary); }
.amh-specialties > .wp-block-column { border-bottom: 3px solid transparent; }
.amh-specialties > .wp-block-column:hover { border-bottom-color: var(--accent); }
/* ¿Qué necesita?: íconos sobre fondo naranja suave */
.amh-needs > .wp-block-column::before { background-color: var(--accent-soft); }
.amh-needs h3 a { color: var(--primary); }
/* Sectores: capa azul noche (el color de la capa también se puede cambiar en el bloque Portada) */
.wp-block-cover.amh-sectors .wp-block-cover__background { background-color: var(--primary-dark) !important; }
/* Proceso: la sección que contiene la lista "Proceso" va en azul */
.amh-section:has(.is-style-amh-process) { background: var(--primary); }
.amh-section:has(.is-style-amh-process) h2 { color: var(--white); }
.amh-section:has(.is-style-amh-process) ul.is-style-amh-process li { background: rgba(255,255,255,.08); border-color: rgba(255,255,255,.25); color: var(--white); }
.amh-section:has(.is-style-amh-process) .wp-block-button.is-style-outline .wp-block-button__link { color: var(--white); border-color: rgba(255,255,255,.35); }
/* Llamada a la acción en azul */
.amh-cta.wp-block-group { background: linear-gradient(120deg, var(--primary-dark), var(--primary)); border: 0; border-left: 6px solid var(--accent); }
.amh-cta h2, .amh-cta h3 { color: var(--white); }
.amh-cta p { color: rgba(255,255,255,.8); }
/* Enlaces de texto */
.amh-link a { color: var(--primary); }
/* Formulario: resumen con acento */
.amh-summary { border-top: 4px solid var(--accent); }
.amh-summary h3 { color: var(--primary); }
@media (max-width: 640px) { .amh-eyebrow { letter-spacing: .12em; } }

/* ---------- Íconos sobre las fotos de especialidades ----------
   Cada tarjeta lleva la clase "amh-spec-<nombre>" (Avanzado › Clases CSS adicionales):
   civil, ambiental, tecnologia, auditoria, industrial. */
.amh-specialties .wp-block-image { position: relative; }
.amh-specialties .wp-block-image::after { content: ""; position: absolute; left: 14px; bottom: 14px; width: 38px; height: 38px; border-radius: 8px; background: rgba(7,26,54,.6) var(--spec-icon, none) center / 20px no-repeat; backdrop-filter: blur(2px); pointer-events: none; }
.amh-spec-civil { --spec-icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23fff%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%224%22%20y%3D%222%22%20width%3D%2216%22%20height%3D%2220%22%20rx%3D%221%22/%3E%3Cpath%20d%3D%22M9%2022v-4h6v4M8%206h.01M16%206h.01M12%206h.01M12%2010h.01M12%2014h.01M16%2010h.01M16%2014h.01M8%2010h.01M8%2014h.01%22/%3E%3C/svg%3E"); }
.amh-spec-ambiental { --spec-icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23fff%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M11%2020A7%207%200%200%201%209.8%206.1C15.5%205%2017%204.5%2019%202c1%202%202%204.2%202%208%200%205.5-4.8%2010-10%2010Z%22/%3E%3Cpath%20d%3D%22M2%2021c0-3%201.9-5.4%205.1-6%22/%3E%3C/svg%3E"); }
.amh-spec-tecnologia { --spec-icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23fff%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%2216%22%20y%3D%2216%22%20width%3D%226%22%20height%3D%226%22%20rx%3D%221%22/%3E%3Crect%20x%3D%222%22%20y%3D%2216%22%20width%3D%226%22%20height%3D%226%22%20rx%3D%221%22/%3E%3Crect%20x%3D%229%22%20y%3D%222%22%20width%3D%226%22%20height%3D%226%22%20rx%3D%221%22/%3E%3Cpath%20d%3D%22M5%2016v-3a1%201%200%200%201%201-1h12a1%201%200%200%201%201%201v3M12%2012V8%22/%3E%3C/svg%3E"); }
.amh-spec-auditoria { --spec-icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23fff%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M20%2013c0%205-3.5%207.5-7.66%208.95a1%201%200%200%201-.67-.01C7.5%2020.5%204%2018%204%2013V6a1%201%200%200%201%201-1c2%200%204.5-1.2%206.24-2.72a1.17%201.17%200%200%201%201.52%200C14.51%203.81%2017%205%2019%205a1%201%200%200%201%201%201z%22/%3E%3Cpath%20d%3D%22m9%2012%202%202%204-4%22/%3E%3C/svg%3E"); }
.amh-spec-industrial { --spec-icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23fff%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M2%2020a2%202%200%200%200%202%202h16a2%202%200%200%200%202-2V8l-7%205V8l-7%205V4a2%202%200%200%200-2-2H4a2%202%200%200%200-2%202Z%22/%3E%3C/svg%3E"); }

/* Número de área en Servicios ("01 Ingeniería"): grande y en negrita. */
.amh-area-title .amh-num-inline, p.amh-num-inline { font-family: var(--font-head); font-size: clamp(1.6rem, 3vw, 2.25rem); font-weight: 800; color: var(--accent); line-height: 1; letter-spacing: -.02em; }
.amh-area-title > .wp-block-group__inner-container { align-items: center; gap: .9rem; }
.amh-area-title h2 { margin: 0; }

/* Cabeceras de página con foto real (bloque Portada). */
.wp-block-cover.amh-page-cover.is-short { min-height: 380px; }
.wp-block-cover.amh-page-cover::after { content: ""; position: absolute; left: 0; bottom: 0; width: 120px; height: 4px; background: var(--accent); z-index: 2; }

/* Especialidades: 4 tarjetas → 4 columnas en pantallas anchas, 2 en medianas, 1 en móvil. */
.amh-specialties.wp-block-columns { grid-template-columns: repeat(4, 1fr); }
@media (max-width: 1100px) { .amh-specialties.wp-block-columns { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 640px) { .amh-specialties.wp-block-columns { grid-template-columns: 1fr; } }
.amh-specialties h3, .amh-specialties p { padding-inline: 1.4rem; }

/* ---------- Formulario de contacto con más contraste ---------- */
.amh-section:has(.amh-form-wrap) { background: var(--bg-soft); }
.amh-form { background: var(--white); border: 1px solid var(--border); border-top: 4px solid var(--accent); border-radius: var(--radius); padding: clamp(1.5rem, 3vw, 2.5rem); box-shadow: 0 10px 30px rgba(7,26,54,.08); }
.amh-form label.lbl, .amh-form legend { color: var(--primary); }
.amh-form input[type=text], .amh-form input[type=email], .amh-form input[type=tel], .amh-form select, .amh-form textarea { border-color: #B7C3D4; background: #FBFCFE; color: var(--ink); }
.amh-form input:hover, .amh-form select:hover, .amh-form textarea:hover { border-color: #8FA1BA; }
.amh-form input:focus, .amh-form select:focus, .amh-form textarea:focus { outline: none; border-color: var(--primary); box-shadow: 0 0 0 3px rgba(238,109,24,.35); background: var(--white); }
.amh-form .toggles label { border-color: #B7C3D4; color: var(--primary); font-weight: 600; background: var(--white); }
.amh-form .toggles label:hover { border-color: var(--primary); }
.amh-form .checks label { border-color: #B7C3D4; background: #FBFCFE; color: var(--ink); }
.amh-form .checks label:has(input:checked) { border-color: var(--accent); background: var(--accent-soft); font-weight: 600; }
.amh-form .checks input { accent-color: var(--accent); width: 1.05rem; height: 1.05rem; }
.amh-form button { border-radius: 6px; padding: .95rem 1.8rem; font-size: 1rem; box-shadow: 0 4px 14px rgba(238,109,24,.35); }
.amh-form button:hover { filter: brightness(.95); }
.amh-captcha { background: var(--primary-soft); border: 1px dashed #8FA1BA; border-radius: 8px; padding: 1rem 1.1rem; max-width: 26rem; }
.amh-captcha input { max-width: 7rem; font-size: 1.1rem; font-weight: 700; text-align: center; }
/* Resumen lateral en azul */
.amh-summary { background: linear-gradient(160deg, var(--primary-dark), var(--primary)); color: var(--white); border: 0; border-top: 4px solid var(--accent); box-shadow: 0 10px 30px rgba(7,26,54,.18); }
.amh-summary h3 { color: var(--white); }
.amh-summary dt { color: rgba(255,255,255,.65); }
.amh-summary dd { color: var(--white); font-weight: 600; }
.amh-summary__foot { margin: 1.5rem 0 0; padding-top: 1rem; border-top: 1px solid rgba(255,255,255,.2); font-size: .8rem; color: rgba(255,255,255,.7); }
/* Al volver con un aviso, que el header fijo no lo tape. */
#formulario { scroll-margin-top: 110px; }

@media (max-width: 640px) { .site-footer { border-radius: 24px 24px 0 0; } }

/* ---------- Sectores del inicio sin foto: fondo azul sólido y tarjetas legibles ---------- */
.amh-sectors-solid { background: linear-gradient(135deg, var(--primary-dark) 0%, var(--primary) 100%); color: var(--white); position: relative; }
.amh-sectors-solid h2 { color: var(--white); }
.amh-sectors-solid .amh-eyebrow { color: var(--accent); }
.amh-sectors-solid .amh-sector-cards > .wp-block-column { background: rgba(255,255,255,.07); border: 1px solid rgba(255,255,255,.16); border-top: 3px solid var(--accent); border-radius: 10px; backdrop-filter: none; transition: background .2s, transform .2s; }
.amh-sectors-solid .amh-sector-cards > .wp-block-column:hover { background: rgba(255,255,255,.12); transform: translateY(-3px); }
.amh-sectors-solid .amh-sector-cards .amh-num { font-family: var(--font-head); font-size: 1.35rem; font-weight: 800; color: var(--accent); margin-bottom: .6rem; }
.amh-sectors-solid .amh-sector-cards h3 { color: var(--white); font-size: 1.2rem; margin-bottom: .45rem; }
.amh-sectors-solid .amh-sector-cards p { color: rgba(255,255,255,.85); }
.amh-sectors-solid .amh-link a { color: var(--accent); }

/* Si "Proceso" va justo después de Sectores (ambos azules), el proceso pasa a fondo claro para separarlos. */
.amh-sectors-solid + .amh-section:has(.is-style-amh-process) { background: var(--bg-soft); border-bottom: 1px solid var(--border); }
.amh-sectors-solid + .amh-section:has(.is-style-amh-process) h2 { color: var(--ink); }
.amh-sectors-solid + .amh-section:has(.is-style-amh-process) ul.is-style-amh-process li { background: var(--white); border-color: #B7C3D4; color: var(--primary); font-weight: 600; }

/* ---------- Secciones insertables (Patrones › AM&H) ---------- */
/* Logos de clientes: escala de grises que pasa a color al pasar el cursor. */
.amh-logos.wp-block-gallery.has-nested-images { --wp--style--unstable-gallery-gap: 1.5rem !important; gap: 1.5rem !important; align-items: center; }
.amh-logos.wp-block-gallery figure.wp-block-image { flex-grow: 0; background: var(--white); border: 1px solid var(--border); border-radius: 10px; padding: 1rem; }
.amh-logos.wp-block-gallery figure.wp-block-image img { height: 70px !important; width: 100%; object-fit: contain !important; filter: grayscale(1); opacity: .75; transition: filter .25s, opacity .25s; }
.amh-logos.wp-block-gallery figure.wp-block-image:hover img { filter: none; opacity: 1; }
/* Testimonios */
.amh-testimonials.wp-block-columns { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.5rem; margin-top: 2.5rem; }
.amh-testimonials > .wp-block-column { background: var(--white); border: 1px solid var(--border); border-top: 4px solid var(--accent); border-radius: var(--radius); padding: 2rem; box-shadow: var(--shadow); display: flex; flex-direction: column; }
.amh-testimonials .wp-block-quote { border: 0; margin: 0 0 1.5rem; padding: 0; font-size: 1rem; color: #3A4556; position: relative; flex: 1; }
.amh-testimonials .wp-block-quote::before { content: "“"; font-family: var(--font-head); font-size: 4rem; line-height: 1; color: var(--accent); display: block; height: 2.2rem; }
.amh-testimonials .wp-block-quote cite { display: none; }
.amh-testimonials .wp-block-image { margin: 0; }
.amh-testimonials .wp-block-image img { width: 56px; height: 56px; border-radius: 50%; object-fit: cover; }
.amh-testimonials .amh-person { margin: 0; font-size: .92rem; color: var(--muted); }
.amh-testimonials .amh-person strong { color: var(--primary); font-family: var(--font-head); }
.amh-testimonials .wp-block-group.amh-author > .wp-block-group__inner-container { display: flex; align-items: center; gap: .9rem; }
/* Equipo */
.amh-team.wp-block-columns { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1.5rem; margin-top: 2.5rem; }
.amh-team > .wp-block-column { text-align: center; background: var(--white); border: 1px solid var(--border); border-radius: var(--radius); padding: 1.75rem 1.25rem; box-shadow: var(--shadow); }
.amh-team .wp-block-image { margin: 0 auto 1.1rem; }
.amh-team .wp-block-image img { width: 132px; height: 132px; border-radius: 50%; object-fit: cover; border: 4px solid var(--accent); margin-inline: auto; }
.amh-team h3 { color: var(--primary); margin-bottom: .25rem; }
.amh-team .amh-role { color: var(--accent-text); font-weight: 600; font-size: .9rem; margin-bottom: .5rem; }
.amh-team p:last-child { color: var(--muted); font-size: .88rem; margin: 0; }
/* Preguntas frecuentes (bloque Detalles) */
.amh-faq .wp-block-details { background: var(--white); border: 1px solid var(--border); border-radius: 10px; padding: 0; margin: 0 0 .75rem; overflow: hidden; }
.amh-faq .wp-block-details summary { cursor: pointer; list-style: none; padding: 1.15rem 3.25rem 1.15rem 1.4rem; font-family: var(--font-head); font-weight: 700; color: var(--primary); position: relative; }
.amh-faq .wp-block-details summary::-webkit-details-marker { display: none; }
.amh-faq .wp-block-details summary::after { content: "+"; position: absolute; right: 1.3rem; top: 50%; transform: translateY(-50%); font-size: 1.5rem; color: var(--accent); font-weight: 400; }
.amh-faq .wp-block-details[open] summary::after { content: "–"; }
.amh-faq .wp-block-details[open] { border-color: var(--accent); }
.amh-faq .wp-block-details > :not(summary) { padding: 0 1.4rem 1.2rem; margin: 0; color: #3A4556; }
.amh-faq { max-width: 52rem; }
@media (max-width: 1000px) { .amh-testimonials.wp-block-columns { grid-template-columns: 1fr 1fr; } .amh-team.wp-block-columns { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 640px) { .amh-testimonials.wp-block-columns, .amh-team.wp-block-columns { grid-template-columns: 1fr; } }

/* Botón flotante de WhatsApp */
.amh-wa { position: fixed; right: 1.2rem; bottom: 1.2rem; z-index: 200; width: 58px; height: 58px; border-radius: 50%; background: #25D366; color: #fff; display: flex; align-items: center; justify-content: center; box-shadow: 0 8px 24px rgba(0,0,0,.25); transition: transform .2s; }
.amh-wa:hover { transform: scale(1.06); }
.amh-wa svg { width: 30px; height: 30px; }

/* ================= Secciones del sitio de Tecnología ================= */
/* Hero sin foto: degradado azul con cuadrícula técnica */
.amh-tech-hero { background: radial-gradient(1200px 500px at 85% -10%, rgba(14,165,233,.35), transparent 60%), linear-gradient(135deg, var(--primary-dark) 0%, var(--primary) 100%); color: var(--white); position: relative; overflow: hidden; padding-block: clamp(4.5rem, 9vw, 7rem); }
.amh-tech-hero::before { content: ""; position: absolute; inset: 0; background-image: linear-gradient(rgba(255,255,255,.05) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.05) 1px, transparent 1px); background-size: 44px 44px; mask-image: linear-gradient(180deg, #000 30%, transparent 100%); pointer-events: none; }
.amh-tech-hero > * { position: relative; }
.amh-tech-hero h1 { color: var(--white); max-width: 46rem; font-size: clamp(2.3rem, 5vw, 3.6rem); }
.amh-tech-hero h1 mark { background: none; color: var(--accent); }
.amh-tech-hero p { color: rgba(255,255,255,.85); max-width: 40rem; font-size: 1.1rem; }
.amh-tech-hero .amh-eyebrow { color: var(--accent); }
ul.amh-hero-stats { list-style: none; display: flex; flex-wrap: wrap; gap: 1rem 2.5rem; padding: 0; margin: 2.5rem 0 0; }
ul.amh-hero-stats li { color: rgba(255,255,255,.8); font-size: .92rem; padding-left: 1.5rem; position: relative; }
ul.amh-hero-stats li::before { content: "✓"; position: absolute; left: 0; color: var(--accent); font-weight: 800; }
/* Grilla de servicios con ícono */
.amh-services.wp-block-columns { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.25rem; margin-top: 2.5rem; }
.amh-services > .wp-block-column { background: var(--white); border: 1px solid var(--border); border-radius: var(--radius); padding: 1.75rem 1.6rem 1.6rem; box-shadow: var(--shadow); transition: transform .2s, border-color .2s, box-shadow .2s; position: relative; }
.amh-services > .wp-block-column:hover { transform: translateY(-4px); border-color: var(--accent); box-shadow: 0 12px 30px rgba(7,26,54,.1); }
.amh-services > .wp-block-column::before { content: ""; display: block; width: 48px; height: 48px; border-radius: 12px; margin-bottom: 1.1rem; background: var(--primary) var(--icon, none) center / 24px no-repeat; }
.amh-services h3 { margin-bottom: .45rem; }
.amh-services h3 a { color: var(--primary); text-decoration: none; }
.amh-services h3 a::after { content: ""; position: absolute; inset: 0; } /* toda la tarjeta es clicable */
.amh-services p { color: var(--muted); font-size: .95rem; margin: 0; }
.amh-services .amh-from { color: var(--accent-text); font-weight: 700; font-size: .85rem; margin-top: .8rem; }
/* Planes */
.amh-plans.wp-block-columns { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.25rem; margin-top: 2.5rem; align-items: stretch; }
.amh-plans > .wp-block-column { background: var(--white); border: 1px solid var(--border); border-radius: 16px; padding: 2rem 1.75rem; box-shadow: var(--shadow); display: flex; flex-direction: column; }
.amh-plans > .wp-block-column.is-featured { border: 2px solid var(--accent); box-shadow: 0 16px 40px rgba(238,109,24,.2); position: relative; }
.amh-plans > .wp-block-column.is-featured::before { content: "Más elegido"; position: absolute; top: -.8rem; left: 1.75rem; background: var(--accent); color: var(--ink); font-size: .72rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; padding: .25rem .7rem; border-radius: 999px; }
.amh-plans h3 { color: var(--primary); margin-bottom: .3rem; }
.amh-plans .amh-price { font-family: var(--font-head); font-size: 2rem; font-weight: 800; color: var(--ink); margin: .6rem 0 .2rem; line-height: 1.1; }
.amh-plans .amh-price small { font-size: .85rem; font-weight: 600; color: var(--muted); }
.amh-plans .amh-muted { font-size: .9rem; }
.amh-plans ul { flex: 1; margin: 1rem 0 1.5rem !important; }
.amh-plans .wp-block-buttons { margin-top: auto; }
/* Destacado de producto (VoIP, auditoría): texto + marco de captura */
.amh-feature.wp-block-columns { align-items: center !important; gap: 3rem; }
.amh-screen { border-radius: 14px; background: var(--primary-dark); padding: 2.2rem 1rem 1rem; position: relative; box-shadow: 0 20px 50px rgba(7,26,54,.25); }
.amh-screen::before { content: ""; position: absolute; top: .9rem; left: 1rem; width: 52px; height: 10px; background: radial-gradient(circle, #FF5F57 4px, transparent 5px) 0 0 / 18px 10px repeat-x; }
.amh-screen .wp-block-image { margin: 0; }
.amh-screen .wp-block-image img { border-radius: 8px; width: 100%; }
.amh-screen p { color: rgba(255,255,255,.75); text-align: center; border: 1px dashed rgba(255,255,255,.3); border-radius: 8px; padding: 4.5rem 1rem; margin: 0; }
/* Segmentos (para quién): chips grandes */
.amh-section ul.is-style-amh-tags.amh-segments li { font-size: .95rem; padding: .5rem .9rem; border-radius: 999px; background: var(--white); color: var(--primary); font-weight: 600; border-color: #B7C3D4; }
@media (max-width: 1000px) { .amh-services.wp-block-columns, .amh-plans.wp-block-columns { grid-template-columns: 1fr 1fr; } }
@media (max-width: 640px) { .amh-services.wp-block-columns, .amh-plans.wp-block-columns { grid-template-columns: 1fr; } }
/* Íconos de servicios: clase "amh-svc-<nombre>" en la columna */
.amh-svc-web { --icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23fff%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%222%22%20y%3D%223%22%20width%3D%2220%22%20height%3D%2214%22%20rx%3D%222%22/%3E%3Cpath%20d%3D%22M8%2021h8M12%2017v4%22/%3E%3C/svg%3E"); }
.amh-svc-landing { --icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23fff%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M4.5%2016.5c-1.5%201.26-2%205-2%205s3.74-.5%205-2c.71-.84.7-2.13-.09-2.91a2.18%202.18%200%200%200-2.91-.09z%22/%3E%3Cpath%20d%3D%22m12%2015-3-3a22%2022%200%200%201%202-3.95A12.88%2012.88%200%200%201%2022%202c0%202.72-.78%207.5-6%2011a22.35%2022.35%200%200%201-4%202z%22/%3E%3Cpath%20d%3D%22M9%2012H4s.55-3.03%202-4c1.62-1.08%205%200%205%200M12%2015v5s3.03-.55%204-2c1.08-1.62%200-5%200-5%22/%3E%3C/svg%3E"); }
.amh-svc-tienda { --icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23fff%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%228%22%20cy%3D%2221%22%20r%3D%221%22/%3E%3Ccircle%20cx%3D%2219%22%20cy%3D%2221%22%20r%3D%221%22/%3E%3Cpath%20d%3D%22M2.05%202.05h2l2.66%2012.42a2%202%200%200%200%202%201.58h9.78a2%202%200%200%200%201.95-1.57l1.65-7.43H5.12%22/%3E%3C/svg%3E"); }
.amh-svc-software { --icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23fff%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22m16%2018%206-6-6-6M8%206l-6%206%206%206%22/%3E%3C/svg%3E"); }
.amh-svc-telefonia { --icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23fff%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M22%2016.92v3a2%202%200%200%201-2.18%202%2019.79%2019.79%200%200%201-8.63-3.07%2019.5%2019.5%200%200%201-6-6%2019.79%2019.79%200%200%201-3.07-8.67A2%202%200%200%201%204.11%202h3a2%202%200%200%201%202%201.72c.13.96.36%201.9.7%202.81a2%202%200%200%201-.45%202.11L8.09%209.91a16%2016%200%200%200%206%206l1.27-1.27a2%202%200%200%201%202.11-.45c.91.34%201.85.57%202.81.7A2%202%200%200%201%2022%2016.92z%22/%3E%3C/svg%3E"); }
.amh-svc-auditoria { --icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23fff%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M20%2013c0%205-3.5%207.5-7.66%208.95a1%201%200%200%201-.67-.01C7.5%2020.5%204%2018%204%2013V6a1%201%200%200%201%201-1c2%200%204.5-1.2%206.24-2.72a1.17%201.17%200%200%201%201.52%200C14.51%203.81%2017%205%2019%205a1%201%200%200%201%201%201z%22/%3E%3Cpath%20d%3D%22m9%2012%202%202%204-4%22/%3E%3C/svg%3E"); }
.amh-svc-redes { --icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23fff%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%2216%22%20y%3D%2216%22%20width%3D%226%22%20height%3D%226%22%20rx%3D%221%22/%3E%3Crect%20x%3D%222%22%20y%3D%2216%22%20width%3D%226%22%20height%3D%226%22%20rx%3D%221%22/%3E%3Crect%20x%3D%229%22%20y%3D%222%22%20width%3D%226%22%20height%3D%226%22%20rx%3D%221%22/%3E%3Cpath%20d%3D%22M5%2016v-3a1%201%200%200%201%201-1h12a1%201%200%200%201%201%201v3M12%2012V8%22/%3E%3C/svg%3E"); }
.amh-svc-soporte { --icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23fff%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M3%2011h3a2%202%200%200%201%202%202v3a2%202%200%200%201-2%202H5a2%202%200%200%201-2-2v-5Zm0%200a9%209%200%201%201%2018%200m0%200v5a2%202%200%200%201-2%202h-1a2%202%200%200%201-2-2v-3a2%202%200%200%201%202-2h3Z%22/%3E%3Cpath%20d%3D%22M21%2016v2a4%204%200%200%201-4%204h-5%22/%3E%3C/svg%3E"); }
.amh-svc-seo { --icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23fff%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2211%22%20cy%3D%2211%22%20r%3D%228%22/%3E%3Cpath%20d%3D%22m21%2021-4.3-4.3M8%2011h6M11%208v6%22/%3E%3C/svg%3E"); }

/* ---------- Cabeceras de Tecnología: ilustración de nube + nubes que se desplazan (todas las páginas) ---------- */
.amh-tech-hero { background: linear-gradient(var(--accent), var(--accent)) left bottom / 120px 4px no-repeat, linear-gradient(90deg, rgba(4,18,43,.92) 0%, rgba(4,18,43,.55) 45%, rgba(4,18,43,0) 70%), var(--hero-img) right center / cover no-repeat, var(--primary-dark); min-height: 440px; display: flex; align-items: center; }
.home .amh-tech-hero { min-height: min(88vh, 720px); }
.amh-tech-hero > .amh-container { width: min(100% - 3rem, var(--container)); }
.amh-tech-hero::before, .amh-tech-hero::after { content: ""; position: absolute; pointer-events: none; mask-image: none; background-size: auto; filter: blur(18px); }
.amh-tech-hero::before { inset: -10% -20% auto auto; width: 75%; height: 70%; background: radial-gradient(closest-side, rgba(255,255,255,.16), transparent 70%) 0 0 / 55% 60% no-repeat, radial-gradient(closest-side, rgba(186,230,253,.14), transparent 70%) 60% 40% / 45% 55% no-repeat; animation: amh-drift 38s ease-in-out infinite alternate; }
.amh-tech-hero::after { inset: auto -10% -15% 25%; height: 55%; background: radial-gradient(closest-side, rgba(255,255,255,.10), transparent 70%) 10% 60% / 40% 70% no-repeat, radial-gradient(closest-side, rgba(125,211,252,.12), transparent 70%) 70% 30% / 50% 60% no-repeat; animation: amh-drift 52s ease-in-out infinite alternate-reverse; }
@keyframes amh-drift { from { transform: translateX(0) translateY(0); } to { transform: translateX(-8%) translateY(3%); } }
@media (max-width: 900px) {
	.amh-tech-hero { background: linear-gradient(var(--accent), var(--accent)) left bottom / 120px 4px no-repeat, linear-gradient(180deg, rgba(4,18,43,.9) 0%, rgba(4,18,43,.8) 55%, rgba(4,18,43,.55) 100%), var(--hero-img) 70% center / cover no-repeat, var(--primary-dark); }
}
@media (prefers-reduced-motion: reduce) { .amh-tech-hero::before, .amh-tech-hero::after { animation: none; } }
.amh-tech-hero > .wp-block-group__inner-container { width: 100%; }
.amh-tech-hero ul.amh-hero-stats { max-width: 34rem; gap: .8rem 2rem; }

/* Planes en 4 columnas (hosting) y tabla de dominios */
.amh-plans.amh-plans--4.wp-block-columns { grid-template-columns: repeat(4, 1fr); }
@media (max-width: 1100px) { .amh-plans.amh-plans--4.wp-block-columns { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 640px) { .amh-plans.amh-plans--4.wp-block-columns { grid-template-columns: 1fr; } }
.amh-plans .amh-specs { font-size: .9rem; }
.amh-note { font-size: .85rem; color: var(--muted); margin-top: 1.25rem; }
.amh-domains.wp-block-table { margin: 0; }
.amh-domains table { border-collapse: separate; border-spacing: 0; width: 100%; background: var(--white); border: 1px solid var(--border); border-radius: var(--radius); overflow: hidden; box-shadow: var(--shadow); }
.amh-domains th { background: var(--primary); color: var(--white); text-align: left; font-family: var(--font-head); font-size: .85rem; letter-spacing: .04em; padding: .85rem 1.1rem; border: 0; }
.amh-domains td { padding: .8rem 1.1rem; border: 0; border-top: 1px solid var(--border); }
.amh-domains td:first-child { font-family: var(--font-head); font-weight: 700; color: var(--primary); }
.amh-domains td:last-child { font-weight: 700; white-space: nowrap; }
.amh-domains tr:nth-child(even) td { background: #F8FAFC; }
.amh-domain-grid.wp-block-columns { display: grid; grid-template-columns: repeat(2, 1fr); gap: 1.5rem; }
@media (max-width: 800px) { .amh-domain-grid.wp-block-columns { grid-template-columns: 1fr; } }
.amh-svc-hosting { --icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23fff%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%222%22%20y%3D%222%22%20width%3D%2220%22%20height%3D%228%22%20rx%3D%222%22/%3E%3Crect%20x%3D%222%22%20y%3D%2214%22%20width%3D%2220%22%20height%3D%228%22%20rx%3D%222%22/%3E%3Cpath%20d%3D%22M6%206h.01M6%2018h.01%22/%3E%3C/svg%3E"); }
.amh-svc-dominio { --icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23fff%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%2210%22/%3E%3Cpath%20d%3D%22M2%2012h20M12%202a15.3%2015.3%200%200%201%204%2010%2015.3%2015.3%200%200%201-4%2010%2015.3%2015.3%200%200%201-4-10%2015.3%2015.3%200%200%201%204-10z%22/%3E%3C/svg%3E"); }

/* Menú: los elementos no se parten en dos líneas; menos espacio entre ellos en pantallas medianas. */
.main-nav ul a { white-space: nowrap; }
@media (max-width: 1360px) and (min-width: 1181px) { .main-nav ul { gap: 1.25rem; } .main-nav { gap: 1.25rem; } .main-nav ul a { font-size: .9rem; } }

/* Menú de hamburguesa desde 1180 px (antes 900) para que los 7 elementos nunca desborden. */
@media (max-width: 1180px) {
	.nav-toggle { display: inline-flex; }
	.main-nav { display: none; position: absolute; left: 0; right: 0; top: 100%; background: var(--primary-dark); border-bottom: 3px solid var(--accent); flex-direction: column; align-items: stretch; padding: 1rem 1.5rem 1.5rem; gap: 1rem; }
	.main-nav.is-open { display: flex; }
	.main-nav ul { flex-direction: column; gap: .9rem; }
	.header-cta { text-align: center; }
}

/* Cabeceras de Tecnología: el texto queda a la izquierda de la ilustración. */
.amh-tech-hero h1 { max-width: 38rem; }
.amh-tech-hero p { max-width: 34rem; }
.amh-tech-hero h1 + p.amh-eyebrow, .amh-tech-hero .amh-eyebrow { max-width: none; }

/* ---------- Header claro (opción de Ajustes del sitio) ---------- */
.amh-header-claro .site-header { background: rgba(255,255,255,.96); backdrop-filter: blur(10px); border-bottom: 1px solid #E2E8F0; box-shadow: 0 1px 12px rgba(15,23,42,.06); }
.amh-header-claro .brand { color: #0F172A; }
.amh-header-claro .brand__tag { color: #64748B; }
.amh-header-claro .main-nav ul a { color: #334155; font-weight: 500; border-bottom-color: transparent; }
.amh-header-claro .main-nav ul a:hover, .amh-header-claro .main-nav .current-menu-item > a { color: #0F172A; border-bottom-color: var(--accent); }
.amh-header-claro .header-cta { background: #0F172A; color: #fff !important; border-radius: 999px; padding: .65rem 1.2rem; }
.amh-header-claro .header-cta:hover { background: var(--accent); color: #0F172A !important; filter: none; }
.amh-header-claro .nav-toggle { color: #0F172A; }
@media (max-width: 1180px) { .amh-header-claro .main-nav { background: #fff; border-bottom: 1px solid #E2E8F0; box-shadow: 0 12px 24px rgba(15,23,42,.08); } }
/* Cabeceras de Tecnología más bajas */
.amh-tech-hero { min-height: 380px; padding-block: clamp(3.5rem, 6vw, 5rem); }
.home .amh-tech-hero { min-height: min(62vh, 540px); }
/* Hero del inicio de Tecnología compacto */
.home .amh-tech-hero { padding-block: clamp(2.5rem, 4.5vw, 3.75rem); min-height: 0; }
.home .amh-tech-hero h1 { font-size: clamp(2rem, 3.6vw, 3rem); max-width: 34rem; margin-bottom: .45em; }
.home .amh-tech-hero .amh-eyebrow { margin-bottom: .7rem; }
.home .amh-tech-hero p { font-size: 1.02rem; margin-bottom: 1.25rem; }
.home .amh-tech-hero ul.amh-hero-stats { margin-top: 1.4rem; gap: .5rem 1.75rem; }
@media (max-width: 640px) {
	.home .amh-tech-hero { padding-block: 2.25rem; }
	.home .amh-tech-hero ul.amh-hero-stats li { font-size: .85rem; }
	.home .amh-tech-hero ul.amh-hero-stats { gap: .35rem 1.2rem; }
}

/* Cabeceras interiores (Tecnología): mismo alto en todas las páginas, título compacto como el inicio */
body:not(.home) .amh-tech-hero { padding-block: clamp(2.75rem, 5vw, 4rem); min-height: var(--amh-hero-h, 0); }
body:not(.home) .amh-tech-hero h1 { font-size: clamp(2rem, 3.6vw, 3rem); max-width: 36rem; margin-bottom: .45em; }
body:not(.home) .amh-tech-hero .amh-eyebrow { margin-bottom: .7rem; }
body:not(.home) .amh-tech-hero p { font-size: 1.02rem; margin-bottom: 1.25rem; }
@media (min-width: 1181px) { .page:not(.home) .amh-tech-hero { min-height: 502px; } }
@media (min-width: 782px) and (max-width: 1180px) { .page:not(.home) .amh-tech-hero { min-height: 391px; } }
/* Sin margen extra cuando una sección empieza directamente con columnas, tarjetas, etc. */
.amh-container > :first-child, .amh-container > .wp-block-group__inner-container > :first-child { margin-top: 0; }

/* Tarjetas de servicios: más contraste con el fondo */
.amh-section:has(> .amh-container > .amh-services), .amh-section:has(.amh-services) { background: #E3E9F1; }
.amh-services > .wp-block-column { border: 1px solid #CBD5E1; border-top: 3px solid var(--accent); box-shadow: 0 1px 2px rgba(7,26,54,.06), 0 6px 18px rgba(7,26,54,.08); }
.amh-services > .wp-block-column:hover { border-color: var(--accent); box-shadow: 0 14px 32px rgba(7,26,54,.16); }

/* Ilustración de cada cabecera (ver amh_hero_por_pagina() en inc/helpers.php). Subir ?v= al cambiar un SVG. */
.amh-tech-hero { --hero-img: url(assets/img/tech-nube.svg?v=2); }
.amh-tech-hero.amh-hero--nube { --hero-img: url(assets/img/tech-nube.svg?v=2); }

/* Foto de fondo detrás del texto de la cabecera (assets/img/hero-fotos/*.jpg, fotos CC0 de StockSnap).
   La nube (--hero-img) queda a la derecha con sus efectos; la foto se funde hacia ella. */
.amh-tech-hero { --hero-foto: url(assets/img/hero-fotos/inicio.jpg?v=1); }
.amh-tech-hero.amh-hero--servicios { --hero-foto: url(assets/img/hero-fotos/servicios.jpg?v=1); }
.amh-tech-hero.amh-hero--web { --hero-foto: url(assets/img/hero-fotos/web.jpg?v=1); }
.amh-tech-hero.amh-hero--landing { --hero-foto: url(assets/img/hero-fotos/landing.jpg?v=1); }
.amh-tech-hero.amh-hero--tienda { --hero-foto: url(assets/img/hero-fotos/tienda.jpg?v=1); }
.amh-tech-hero.amh-hero--software { --hero-foto: url(assets/img/hero-fotos/software.jpg?v=1); }
.amh-tech-hero.amh-hero--telefonia { --hero-foto: url(assets/img/hero-fotos/telefonia.jpg?v=1); }
.amh-tech-hero.amh-hero--auditoria { --hero-foto: url(assets/img/hero-fotos/auditoria.jpg?v=1); }
.amh-tech-hero.amh-hero--redes { --hero-foto: url(assets/img/hero-fotos/redes.jpg?v=1); }
.amh-tech-hero.amh-hero--soporte { --hero-foto: url(assets/img/hero-fotos/soporte.jpg?v=1); }
.amh-tech-hero.amh-hero--seo { --hero-foto: url(assets/img/hero-fotos/seo.jpg?v=1); }
.amh-tech-hero.amh-hero--hosting { --hero-foto: url(assets/img/hero-fotos/hosting.jpg?v=1); }
.amh-tech-hero.amh-hero--dominio { --hero-foto: url(assets/img/hero-fotos/dominio.jpg?v=1); }
.amh-tech-hero.amh-hero--planes { --hero-foto: url(assets/img/hero-fotos/planes.jpg?v=1); }
.amh-tech-hero.amh-hero--contacto { --hero-foto: url(assets/img/hero-fotos/contacto.jpg?v=1); }
.amh-tech-hero {
	background:
		linear-gradient(var(--accent), var(--accent)) left bottom / 120px 4px no-repeat,
		linear-gradient(90deg, rgba(4,18,43,.8) 0%, rgba(4,18,43,.6) 36%, rgba(4,18,43,.88) 52%, rgba(4,18,43,1) 59%, rgba(4,18,43,1) 64%, rgba(4,18,43,0) 78%),
		var(--hero-foto) calc(62vw - max(62vw, 830px)) center / max(62vw, 830px) auto no-repeat,
		var(--hero-img) right center / cover no-repeat,
		var(--primary-dark);
}
@media (max-width: 900px) {
	.amh-tech-hero {
		background:
			linear-gradient(var(--accent), var(--accent)) left bottom / 120px 4px no-repeat,
			linear-gradient(180deg, rgba(4,18,43,.8) 0%, rgba(4,18,43,.84) 100%),
			var(--hero-foto) center / cover no-repeat,
			var(--primary-dark);
	}
}

/* ---------- Footer: navegación en dos columnas y contacto como en Operativos ---------- */
.site-footer__grid { grid-template-columns: minmax(0, 1.1fr) minmax(0, 1.5fr) minmax(0, 1.2fr); }
.site-footer__grid ul:not(.amh-contact-list):has(> li:nth-child(7)) { columns: 2; column-gap: 2rem; }
.site-footer__grid ul:not(.amh-contact-list) > li { break-inside: avoid; }
.amh-contact-list li { margin-bottom: .6rem; line-height: 1.5; color: rgba(255,255,255,.85); }
.amh-contact-list__label { color: rgba(255,255,255,.6); font-weight: 600; }
.amh-contact-list a { color: #fff; text-decoration: none; border-bottom: 1px solid rgba(255,255,255,.25); }
.amh-contact-list a:hover { color: var(--accent); border-color: var(--accent); }
.amh-social { display: flex; flex-wrap: wrap; gap: .6rem; margin-top: 1.1rem; }
.amh-social a { display: inline-grid; place-items: center; width: 38px; height: 38px; border-radius: 50%; border: 1px solid rgba(255,255,255,.25); color: #fff; transition: background-color .2s, border-color .2s, color .2s; }
.amh-social a:hover, .amh-social a:focus-visible { background: var(--accent); border-color: var(--accent); color: #0E1928; }
.amh-social svg { width: 18px; height: 18px; }
.amh-todo { display: inline-block; font: 600 .7rem/1.4 ui-monospace, SFMono-Regular, Menlo, monospace; background: #FEF3C7; color: #78350F; border: 1px dashed #D97706; border-radius: 4px; padding: .1rem .4rem; }
@media (max-width: 800px) { .site-footer__grid { grid-template-columns: 1fr; } }

/* ---------- Portada (Tecnología): cabecera centrada ---------- */
.home .amh-tech-hero { text-align: center; }
.home .amh-tech-hero h1, .home .amh-tech-hero p { margin-inline: auto; }
.home .amh-tech-hero h1 { max-width: 46rem; }
.home .amh-tech-hero p { max-width: 42rem; }
.home .amh-tech-hero .wp-block-buttons { justify-content: center; }
.home .amh-tech-hero ul.amh-hero-stats { justify-content: center; max-width: 44rem; margin-inline: auto; }
@media (min-width: 901px) {
	.home .amh-tech-hero {
		background:
			linear-gradient(var(--accent), var(--accent)) left bottom / 120px 4px no-repeat,
			radial-gradient(ellipse 60% 85% at 50% 50%, rgba(4,18,43,.9) 0%, rgba(4,18,43,.78) 55%, rgba(4,18,43,.4) 100%),
			linear-gradient(90deg, rgba(4,18,43,0) 50%, rgba(4,18,43,.95) 59%, rgba(4,18,43,.95) 65%, rgba(4,18,43,0) 76%),
			var(--hero-foto) calc(62vw - max(62vw, 830px)) center / max(62vw, 830px) auto no-repeat,
			var(--hero-img) right center / cover no-repeat,
			var(--primary-dark);
	}
}
.home .amh-tech-hero ul.amh-hero-stats { max-width: 62rem; }
@media (max-width: 700px) { .home .amh-tech-hero ul.amh-hero-stats { display: grid; grid-template-columns: repeat(2, auto); justify-content: center; text-align: left; } }
/* Descripción del footer justificada (con guiones en español para evitar huecos entre palabras) */
.site-footer__desc { text-align: justify; text-justify: inter-word; hyphens: auto; -webkit-hyphens: auto; max-width: 21.5rem; }
/* Logo subido (imagen completa con nombre): proporción original, alto fijo; placa clara sobre el footer oscuro */
.brand--logo img.custom-logo { height: 54px; max-height: none; width: auto; display: block; }
.brand--placa { display: inline-flex; background: #fff; padding: .55rem .8rem; border-radius: 10px; }
.brand--placa img.custom-logo { height: 58px; }
@media (max-width: 700px) { .brand--logo img.custom-logo { height: 44px; } }
/* Logo con isotipo + texto (Ajustes del sitio › Header › Logo: usar isotipo + texto) */
.brand--iso { gap: .7rem; }
.brand--iso .brand__iso { width: 52px; height: 52px; flex: 0 0 auto; object-fit: contain; }
.brand--iso .brand__name { font-size: 1.6rem; font-weight: 800; letter-spacing: -.01em; }
.brand--iso .brand__tag { font-size: .68rem; letter-spacing: .24em; margin-top: .25rem; color: rgba(255,255,255,.78); }
@media (max-width: 700px) { .brand--iso .brand__iso { width: 42px; height: 42px; } .brand--iso .brand__name { font-size: 1.35rem; } .brand--iso .brand__tag { display: block; font-size: .6rem; } }

/* Secciones azules con lista de pasos: texto y etiqueta legibles sobre el azul (contraste ≥ 4,5:1) */
.amh-section:has(.is-style-amh-process):not(.amh-sectors-solid + .amh-section) p { color: rgba(255,255,255,.85); }
.amh-section:has(.is-style-amh-process):not(.amh-sectors-solid + .amh-section) .amh-eyebrow { color: #F59A5B; }

/* Precio "Consultar cotización" (sin precio publicado) */
.amh-plans .amh-price.amh-price--consulta { font-size: 1.35rem; line-height: 1.25; }
