/* AM Vivencial Tours v2 - blog, entradas, busqueda y 404 (se carga despues de page.css)
   v22 (29-sep): cabecera crema con lineas animadas en todas las vistas del blog, redes como las del pie,
   filtro por categoria, imagen o video destacado con pie de foto. */

/* --------------------- hero con foto (solo con entradas) --------------------- */
.am-phero--blog{ min-height:clamp(440px,64vh,640px); }
.am-page--blog .am-phero__bg img{ object-position:50% 78%; }
.am-page--blog .am-phero__crumbs{ align-items:center; flex-wrap:wrap; gap:0 10px; margin-bottom:14px; }
.am-page--blog .am-phero__crumbs a, .am-page--blog .am-phero__crumbs span{ display:inline-flex; align-items:center; min-height:40px; }
.am-page .am-blog-title .am-title-duo__light{ font-size:.5em; line-height:1.1; margin-top:.12em; color:#FAEDE4; }

/* ------------------ cabecera sobria (sin entradas, busqueda, 404) ------------------ */
.am-page--plain{ background:#FAEDE4; }
.am-blog-plain{ position:relative; overflow:hidden; padding-top:calc(var(--am-hd,92px) + clamp(40px,6vw,88px)); padding-bottom:var(--am-sec-y); background:#FAEDE4; color:var(--am-ink); }
.am-blog-plain__grid{ display:grid; grid-template-columns:minmax(0,1fr); gap:clamp(36px,5vw,64px); }
.am-page .am-blog-crumbs{ color:var(--am-muted); margin:0 0 clamp(14px,2vw,22px); }
.am-page .am-blog-crumbs a{ min-width:44px; justify-content:center; margin-inline:-4px; padding-inline:4px; color:var(--am-green) !important; opacity:1; text-decoration-color:rgba(55,70,49,.35); }
.am-page .am-blog-crumbs a:hover{ text-decoration-color:var(--am-green); }
.am-page .am-blog-plain__title{ margin:0; max-width:14ch; color:var(--am-green); }
.am-page .am-blog-plain__title .am-title-duo__light{ font-size:.5em; line-height:1.12; margin-top:.14em; color:var(--am-terracotta); }
.am-page .am-blog-plain__lead{ margin:clamp(20px,2.4vw,28px) 0 0; max-width:46ch; color:#4d544b; }
.am-blog-plain--404 .am-blog-plain__main{ position:relative; z-index:1; }
.am-blog-plain__btns{ margin-top:clamp(26px,3vw,36px); gap:12px; }
.am-blog-plain__btns .am-btn{ gap:8px; font-weight:400; }
.am-blog-plain__net{ font-weight:600; }

/* foto unica (blog sin entradas) */
.am-page .am-blog-plain__photo{ position:relative; margin:0; width:100%; aspect-ratio:4/5; max-height:70svh; overflow:hidden; border-radius:var(--am-r-lg); background:var(--am-green); }
.am-blog-plain__photo img{ width:100%; height:100%; object-fit:cover; object-position:54% 36%; }

@media (min-width:600px) and (max-width:1023.98px){
  .am-page .am-blog-plain__photo{ width:min(100%,520px); justify-self:end; }
}
@media (min-width:1024px){
  .am-blog-plain__grid{ grid-template-columns:minmax(0,7fr) minmax(0,5fr); align-items:end; }
  .am-blog-hero--photo .am-blog-plain__main{ padding-bottom:clamp(8px,2vw,32px); }
  .am-page .am-blog-plain__photo{ max-height:none; }
}
@media (max-width:560px){
  .am-blog-plain__btns{ flex-direction:column; align-items:stretch; }
}

/* ---------------------------------- 404 ----------------------------------- */
.am-page .am-blog-plain__code{ margin:0 0 14px; font-family:var(--am-font-display); font-size:12px; font-weight:500; letter-spacing:.18em; text-transform:uppercase; color:var(--am-terracotta); }
.am-blog-plain--404 .am-blog-plain__title{ max-width:12ch; }
.am-blog-plain--404 .am-blog-plain__lead{ margin-bottom:clamp(24px,3vw,32px); }
.am-page .am-blog-plain__links{ display:flex; flex-wrap:wrap; align-items:center; gap:4px 14px; margin:clamp(18px,2.4vw,26px) 0 0; font-family:var(--am-font-display); font-size:1.02rem; }
.am-page .am-blog-plain__link{ display:inline-flex; align-items:center; gap:8px; min-height:44px; font-weight:600; color:var(--am-green) !important;
  text-decoration:underline; text-decoration-color:rgba(162,87,58,.45); text-decoration-thickness:1.5px; text-underline-offset:6px; }
.am-page .am-blog-plain__link--soft{ font-weight:500; color:var(--am-muted) !important; text-decoration-color:rgba(93,103,95,.35); }
.am-blog-plain__link:hover{ text-decoration-color:currentColor; }
.am-blog-plain__link span{ display:inline-block; transition:transform .45s var(--am-ease); }
.am-blog-plain__link:hover span{ transform:translateX(4px); }
.am-blog-plain__sep{ color:#a39b90; }
.am-blog-plain__art{ position:relative; display:flex; justify-content:flex-end; color:#A2573A; pointer-events:none; }
.am-blog-plain--404 .am-blog-plain__bird{ display:block; width:auto; height:40vw; margin-right:calc(var(--am-gutter) * -1 - 6vw); }
@media (max-width:767.98px){
  .am-blog-plain--404 .am-blog-plain__grid{ gap:8px; }
  .am-blog-plain--404 .am-blog-plain__art{ order:-1; margin-top:-8px; }
}
@media (min-width:768px){
  .am-blog-plain--404 .am-blog-plain__grid{ grid-template-columns:minmax(0,7fr) minmax(0,5fr); align-items:center; }
  .am-blog-plain--404 .am-blog-plain__art{ position:static; }
  /* recortada contra el borde derecho de la pantalla, no del contenedor */
  .am-blog-plain--404 .am-blog-plain__bird{ position:absolute; right:-7vw; top:50%; translate:0 -46%; height:clamp(280px,40vw,560px); margin:0; }
}
@media (min-width:1024px){
  .am-blog-plain--404{ display:flex; align-items:center; min-height:calc(100svh - var(--am-hd,92px)); box-sizing:border-box; }
  .am-blog-plain--404 > .am-container{ width:100%; }
}

/* -------------------------------- buscador -------------------------------- */
.am-blog-search{ display:flex; flex-wrap:nowrap; align-items:center; gap:10px; width:100%; max-width:600px; margin:0; }
.am-blog-search__field{ position:relative; flex:1 1 auto; min-width:0; }
.am-blog-search__field .am-ico{ position:absolute; left:18px; top:50%; translate:0 -50%; width:20px; height:20px; color:var(--am-muted); pointer-events:none; }
.am-page .am-blog-search input[type="search"]{ -webkit-appearance:none; appearance:none; box-sizing:border-box; width:100% !important; height:52px !important; margin:0 !important;
  padding:0 20px 0 50px !important; border:1.5px solid rgba(55,70,49,.22) !important; border-radius:var(--am-r-pill) !important; background:#fff !important;
  font-family:var(--am-font-body) !important; font-size:1.05rem !important; color:var(--am-ink) !important; box-shadow:none !important; outline-offset:2px; }
.am-page .am-blog-search input[type="search"]::placeholder{ color:#6f756f; opacity:1; }
.am-page .am-blog-search input[type="search"]:focus{ border-color:var(--am-green) !important; }
.am-page .am-blog-search input[type="search"]::-webkit-search-cancel-button{ -webkit-appearance:none; }
.am-page .am-blog-search .am-blog-search__btn{ flex:0 0 auto; align-self:center; height:52px; margin:0 !important; }
.am-blog-search__btn .am-blog-search__btn-ico{ display:none; width:22px; height:22px; }
@media (max-width:560px){
  .am-page .am-blog-search input[type="search"]{ padding-left:20px !important; }
  .am-blog-search__field .am-ico{ display:none; }
  .am-page .am-blog-search .am-blog-search__btn{ width:52px; min-width:52px; padding:0 !important; justify-content:center; }
  .am-blog-search__btn .am-blog-search__btn-ico{ display:block; position:static; translate:none; color:currentColor; }
  .am-blog-search__btn-txt{ position:absolute !important; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
}

/* ------------------------------- busqueda ---------------------------------- */
.am-blog-plain--search{ padding-bottom:clamp(36px,5vw,56px); border-bottom:1px solid rgba(55,70,49,.14); }
.am-page .am-blog-plain__title--search{ max-width:24ch; overflow-wrap:anywhere; }
.am-page .am-blog-plain__count{ margin:12px 0 clamp(22px,3vw,30px); font-family:var(--am-font-display); font-size:1.05rem; color:var(--am-muted); max-width:60ch; }
.am-page--search .am-blog-results{ padding-top:clamp(28px,4vw,48px); background:#FAEDE4; }

.am-search-list{ list-style:none; margin:0; padding:0; max-width:920px; }
.am-page .am-search-item{ display:grid; grid-template-columns:88px minmax(0,1fr) auto; align-items:center; gap:6px 22px; margin:0; padding:18px 0; list-style:none; border-bottom:1px solid rgba(55,70,49,.14); }
.am-page .am-search-item:first-child{ padding-top:0; }
.am-search-item__thumb{ display:grid; place-items:center; width:88px; height:88px; overflow:hidden; border-radius:var(--am-r-sm); background:#374631; }
.am-search-item__thumb img{ width:100%; height:100%; object-fit:cover; transition:scale .9s var(--am-ease); }
.am-search-item:hover .am-search-item__thumb img{ scale:1.06; }
.am-search-item__thumb.is-brand .am-brand{ width:auto; height:60px; color:#E1C5AF; }
.am-search-item__body{ min-width:0; }
.am-page .am-search-item__kind{ margin:0 0 2px; font-family:var(--am-font-display); font-size:12px; font-weight:500; letter-spacing:.14em; text-transform:uppercase; color:var(--am-terracotta); }
.am-page .am-search-item__title{ margin:0; font-size:1.25rem !important; line-height:1.2 !important; letter-spacing:-.005em; }
.am-page .am-search-item__title a{ display:inline-block; padding-block:4px; color:var(--am-green) !important; text-decoration:none; }
.am-page .am-search-item__title a:hover{ text-decoration:underline; text-decoration-color:rgba(162,87,58,.5); text-underline-offset:5px; }
.am-page .am-search-item__text{ margin:0; font-size:1rem; line-height:1.5; color:#4d544b; }
.am-search-item__price{ justify-self:end; text-align:right; }
.am-search-item__price .am-price{ font-size:1.1rem; }
.am-search-item__price .am-price--quote{ font-size:.98rem; color:var(--am-muted); font-weight:500; }
@media (max-width:599.98px){
  .am-page .am-search-item{ grid-template-columns:72px minmax(0,1fr); align-items:start; gap:4px 16px; }
  .am-search-item__thumb{ width:72px; height:72px; }
  .am-search-item__thumb.is-brand .am-brand{ height:48px; }
  .am-search-item__price{ grid-column:2; justify-self:start; text-align:left; }
}

.am-search-pages{ max-width:920px; margin-top:clamp(40px,5vw,64px); }
.am-page .am-search-pages__title{ margin:0 0 12px; font-family:var(--am-font-display); font-size:12px !important; font-weight:500; letter-spacing:.16em; text-transform:uppercase; color:var(--am-muted); }
.am-page .am-search-list + .am-search-pages__title, .am-page .am-blog-results .am-search-pages__title:first-child{ margin-bottom:18px; }
.am-search-pages__list{ display:flex; flex-wrap:wrap; gap:4px 28px; list-style:none; margin:0; padding:0; }
.am-page .am-search-pages__list li{ margin:0; padding:0; list-style:none; }
.am-page .am-search-pages__list a{ display:inline-flex; align-items:center; gap:6px; min-height:44px; font-family:var(--am-font-display); font-size:1.1rem; font-weight:500; color:var(--am-green) !important;
  text-decoration:underline; text-decoration-color:rgba(55,70,49,.3); text-underline-offset:6px; }
.am-page .am-search-pages__list a:hover{ text-decoration-color:var(--am-terracotta); }

/* ---------------------------- grilla de entradas ---------------------------- */
.am-blog-grid{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:clamp(18px,2.4vw,32px); }
@media (max-width:1000px){ .am-blog-grid{ grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:640px){ .am-blog-grid{ grid-template-columns:1fr; } }

.am-blog-card{ position:relative; display:flex; flex-direction:column; border-radius:var(--am-r-lg); background:#fff; overflow:hidden; box-shadow:0 1px 0 var(--am-line);
  transition:transform .6s var(--am-ease), box-shadow .6s var(--am-ease); }
.am-blog-card:hover{ transform:translateY(-6px); box-shadow:var(--am-shadow); }
.am-blog-card__media{ display:block; aspect-ratio:4/3; overflow:hidden; border-radius:0 !important; }
.am-blog-card__media img{ width:100%; height:100%; object-fit:cover; transition:transform 1.1s var(--am-ease); }
.am-blog-card:hover .am-blog-card__media img{ transform:scale(1.06); }
.am-blog-card__body{ display:flex; flex-direction:column; gap:12px; padding:26px 26px 22px; flex:1; }
.am-blog-card__date{ display:inline-flex; align-items:center; gap:8px; font-family:var(--am-font-display); font-size:max(.78rem,12px); font-weight:500; letter-spacing:.14em; text-transform:uppercase; color:var(--am-terracotta); }
.am-page .am-blog-card .am-blog-card__title{ margin:0 !important; font-size:clamp(1.3rem,1.8vw,1.6rem); line-height:1.18; }
.am-page .am-blog-card .am-blog-card__title a{ display:inline-block; padding-block:7px; color:var(--am-green-800); text-decoration:none; }
.am-page .am-blog-card p{ margin:0; color:var(--am-muted); line-height:1.65; }
.am-page .am-blog-card__more{ display:inline-flex; align-items:center; gap:6px; min-height:44px; margin-top:auto; font-family:var(--am-font-display); font-weight:600; color:var(--am-green) !important; text-decoration:none; }
.am-blog-card__more span[aria-hidden]{ display:inline-block; transition:transform .4s var(--am-ease); }
.am-blog-card:hover .am-blog-card__more span[aria-hidden]{ transform:translateX(5px); }

.am-blog-pag{ margin-top:48px; }
.am-blog-pag:empty{ display:none; }
.am-blog-pag .nav-links{ display:flex; justify-content:center; gap:8px; flex-wrap:wrap; }
.am-blog-pag .page-numbers{ display:grid; place-items:center; min-width:44px; height:44px; padding:0 12px; border-radius:999px; border:1px solid var(--am-line); color:var(--am-green-800); background:#fff; font-family:var(--am-font-display); }
.am-blog-pag .page-numbers.current{ background:var(--am-green); border-color:var(--am-green); color:#fff; }

/* ------------------------------ CIERRE: ESCRÍBENOS ------------------------------
   Bloque propio (no .am-cta-inline): banda verde a sangre con aire de verdad arriba, abajo
   y entre las dos columnas. Es lo ultimo antes del pie en el blog, en las entradas y en la
   portada del blog sin historias. */
.am-blog-close{ position:relative; overflow:hidden; isolation:isolate; margin-top:clamp(56px,7vw,96px);
  padding-block:var(--am-sec-y); background:#A2573A; color:#FAEDE4; }
.am-page--blog .am-section + .am-blog-close{ margin-top:0; }
.am-blog-close .am-blog-close__mark{ position:absolute; z-index:-1; right:-5%; top:50%; translate:0 -50%; width:clamp(300px,38vw,520px); height:auto; color:#FAEDE4; opacity:.13; pointer-events:none; }
.am-blog-close__inner{ position:relative; display:grid; grid-template-columns:minmax(0,1fr); gap:clamp(32px,4.5vw,72px); align-items:center; }
.am-page .am-blog-close__eyebrow{ margin:0 0 16px; color:var(--am-beige); }
.am-page .am-blog-close__title{ margin:0; color:#FAEDE4 !important; }
.am-page .am-blog-close__lead{ margin:clamp(16px,2vw,22px) 0 0; max-width:44ch; font-size:clamp(1.05rem,1.3vw,1.2rem); line-height:1.7; color:#FAEDE4; }
.am-blog-close__actions{ display:flex; flex-direction:column; align-items:flex-start; gap:14px; min-width:0; }
.am-blog-close__actions .am-btn{ width:100%; max-width:340px; }
.am-page .am-blog-close__note{ margin:6px 0 0; font-family:var(--am-font-display); font-size:.92rem; color:#f2e2d6; }
.am-page .am-blog-close :focus-visible{ outline-color:#FAEDE4; }
@media (min-width:900px){
  .am-blog-close__inner{ grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr); }
  .am-blog-close__actions{ justify-self:end; align-items:stretch; width:100%; max-width:360px; }
}
@media (prefers-reduced-motion:reduce){
  .am-blog-close .am-btn{ transition:none; }
}

/* ------------------------------ entrada ------------------------------ */
.am-blog-article{ max-width:760px !important; }
.am-blog-back{ max-width:760px !important; margin-top:40px; }
.am-prose{ font-size:1.08rem; line-height:1.85; color:var(--am-ink); }
.am-page .am-prose p{ margin:0 0 1.2em; }
.am-page .am-prose h2{ font-size:clamp(1.6rem,2.6vw,2.2rem); margin:1.6em 0 .6em; }
.am-page .am-prose h3{ font-size:clamp(1.3rem,2vw,1.6rem); margin:1.4em 0 .5em; }
.am-prose ul, .am-prose ol{ margin:0 0 1.2em 1.2em; }
.am-prose img{ border-radius:var(--am-r); height:auto; }
.am-prose a{ color:var(--am-green); text-decoration:underline; text-underline-offset:3px; }
.am-prose blockquote{ margin:1.6em 0; padding:8px 0 8px 24px; border-left:3px solid var(--am-terracotta); font-family:var(--am-font-display); font-size:1.3rem; color:var(--am-green-800); }

@media (prefers-reduced-motion:reduce){
  .am-blog-card, .am-blog-card__media img, .am-search-item__thumb img, .am-blog-plain__link span{ transition:none; }
}

/* ======================= CANAL DE YOUTUBE (banda del blog) =======================
   Va entre la grilla de historias y "Escríbenos": verde a sangre, con las olas y el
   emblema del manual. Solo se pinta cuando la opción am_youtube_url tiene la URL del
   canal, así que sin ese dato del cliente el blog queda exactamente como estaba. */
.am-yt{ position:relative; overflow:hidden; isolation:isolate; padding-block:clamp(40px,5vw,68px);
  background:#374631; color:#FAEDE4; }
.am-page--blog .am-yt + .am-blog-close{ margin-top:0; border-top:1px solid rgba(250,237,228,.16); }
.am-yt .am-yt__mark{ position:absolute; z-index:-1; left:-11%; top:50%; translate:0 -50%;
  width:clamp(240px,30vw,420px); height:auto; color:#E1C5AF; opacity:.1; pointer-events:none; }
.am-yt__inner{ position:relative; display:grid; grid-template-columns:minmax(0,1fr); gap:clamp(18px,2.4vw,40px); align-items:center; }
.am-yt__glyph{ display:block; color:#E1C5AF; }
.am-yt-logo{ flex:0 0 auto; }
.am-yt__glyph .am-yt-logo--big{ width:clamp(46px,5vw,62px); height:auto; }
.am-page .am-yt .am-eyebrow{ margin:0 0 10px; color:#E1C5AF; }
.am-page .am-yt__title{ margin:0; font-size:clamp(1.62rem,2.5vw,2.15rem); line-height:1.1; letter-spacing:-.012em; color:#FAEDE4 !important; }
.am-page .am-yt__lead{ margin:10px 0 0; max-width:52ch; font-size:clamp(1rem,1.1vw,1.06rem); line-height:1.65; color:#f1e5da; }
.am-yt__cta{ display:flex; flex-direction:column; align-items:stretch; gap:8px; min-width:0; }
.am-page .am-yt__note{ margin:0; font-family:var(--am-font-display); font-size:.88rem; color:#d9c8b8; }
.am-page .am-yt :focus-visible{ outline-color:#E1C5AF; }
@media (min-width:900px){
  .am-yt__inner{ grid-template-columns:auto minmax(0,1fr) auto; }
  .am-yt__cta{ justify-self:end; align-items:flex-end; }
  .am-yt__cta .am-yt__btn{ min-width:230px; }
}
@media (max-width:899.98px){
  .am-yt__cta{ align-items:flex-start; }
  .am-yt__cta .am-yt__btn{ width:100%; max-width:340px; }
}

/* ========================= VIDEO DE LA ENTRADA =========================
   Miniatura + botón: el iframe de YouTube se crea al pulsar (ver el script de
   blog.php), así una entrada con video no carga el reproductor ni su rastreo
   para quien solo viene a leer. */
.am-page .am-blog-article--video{ max-width:760px !important; margin-top:clamp(34px,4.5vw,56px); }
.am-video{ margin:0; }
.am-page .am-video__head{ margin:0 0 14px; font-size:clamp(1.24rem,1.9vw,1.55rem); line-height:1.15; color:var(--am-green-800); }
.am-video__box{ position:relative; aspect-ratio:16/9; overflow:hidden; border-radius:var(--am-r); background:var(--am-green-800); }
.am-page .am-video__btn, .am-page .am-video__btn:hover, .am-page .am-video__btn:focus{
  position:absolute; inset:0; display:block; width:100%; height:100%; min-height:0; padding:0; margin:0;
  border:0; border-radius:0; background:transparent; color:inherit; box-shadow:none; cursor:pointer;
  -webkit-appearance:none; appearance:none; }
/* el recorte de .am-video__box se comeria el anillo de foco por fuera */
.am-page .am-video__btn:focus-visible{ outline:2px solid var(--am-terracotta); outline-offset:-6px; }
.am-video__img{ display:block; width:100%; height:100%; object-fit:cover; transition:scale .9s var(--am-ease); }
.am-video__btn:hover .am-video__img{ scale:1.04; }
.am-video__play{ position:absolute; left:50%; top:50%; translate:-50% -50%; display:grid; place-items:center;
  width:clamp(62px,9vw,80px); aspect-ratio:1; border-radius:999px; border:1.5px solid rgba(250,237,228,.55);
  background:rgba(37,30,24,.55); color:#FAEDE4; backdrop-filter:blur(3px); -webkit-backdrop-filter:blur(3px);
  transition:background .4s var(--am-ease), scale .4s var(--am-ease), border-color .4s; }
.am-video__play svg{ width:clamp(28px,4vw,34px); height:auto; margin-left:3px; }
.am-video__btn:hover .am-video__play, .am-video__btn:focus-visible .am-video__play{ background:var(--am-terracotta); border-color:var(--am-terracotta); scale:1.06; }
.am-video__box.is-on{ background:#000; }
.am-video__frame{ position:absolute; inset:0; width:100%; height:100%; border:0; }
.am-video__cap{ display:flex; flex-wrap:wrap; align-items:center; gap:2px 24px; margin-top:12px; }
.am-page .am-video__link{ display:inline-flex; align-items:center; gap:9px; min-height:44px;
  font-family:var(--am-font-display); font-size:1rem; font-weight:600; color:var(--am-green) !important;
  text-decoration:underline; text-decoration-color:rgba(162,87,58,.45); text-decoration-thickness:1.5px; text-underline-offset:6px; }
.am-page .am-video__link:hover{ text-decoration-color:var(--am-terracotta); }
.am-page .am-video__link--soft{ font-weight:500; color:var(--am-muted) !important; text-decoration-color:rgba(93,103,95,.35); }
.am-video__link .am-yt-logo{ width:22px; height:22px; }
.am-video__link span[aria-hidden]{ display:inline-block; transition:transform .4s var(--am-ease); }
.am-video__link:hover span[aria-hidden]{ transform:translateX(4px); }

/* chapa de la tarjeta cuando la historia lleva video */
.am-blog-card__vid{ position:absolute; left:14px; bottom:14px; display:inline-flex; align-items:center; gap:6px;
  padding:6px 12px 6px 10px; border-radius:var(--am-r-pill); background:rgba(37,30,24,.72); color:#FAEDE4;
  font-family:var(--am-font-display); font-size:.76rem; font-weight:500; letter-spacing:.1em; text-transform:uppercase;
  backdrop-filter:blur(3px); -webkit-backdrop-filter:blur(3px); }
.am-blog-card:hover .am-blog-card__vid{ background:var(--am-terracotta); }

@media (prefers-reduced-motion:reduce){
  .am-video__img, .am-video__play, .am-video__link span[aria-hidden]{ transition:none; }
}


/* ====================== CABECERA DEL BLOG CON LINEAS ANIMADAS (v22) ======================
   Portada, categorias y entradas. Las lineas son las curvas de nivel del manual (.am-contours de
   am.css, la misma animacion del resto del sitio) en oliva sobre crema, mas fuertes en el lado del
   texto (el espacio vacio junto al titulo) y desvanecidas hacia la foto.
   Movimiento: "full" fluyen; "suave" quietas (am.js corta .am-contours::before); "ninguna" quietas
   por la regla de abajo; con prefers-reduced-motion am.css ya no las anima. */
.am-blog-hero{ isolation:isolate; }
.am-blog-hero > .am-container{ position:relative; z-index:1; }
.am-page .am-blog-hero .am-blog-hero__lines{ position:absolute; inset:0; z-index:0; pointer-events:none;
  --am-contours-color:var(--am-olive); --am-contours-opacity:.2;
  -webkit-mask-image:linear-gradient(180deg,#000 0%,#000 55%,rgba(0,0,0,.35) 100%); mask-image:linear-gradient(180deg,#000 0%,#000 55%,rgba(0,0,0,.35) 100%); }
@media (min-width:1024px){
  .am-page .am-blog-hero--photo .am-blog-hero__lines{
    -webkit-mask-image:linear-gradient(90deg,#000 0%,#000 52%,rgba(0,0,0,.3) 74%,rgba(0,0,0,.12) 100%);
    mask-image:linear-gradient(90deg,#000 0%,#000 52%,rgba(0,0,0,.3) 74%,rgba(0,0,0,.12) 100%); }
}
html.am-motion-ninguna .am-blog-hero__lines::before,
html.am-motion-suave .am-blog-hero__lines::before,
html.am-no-motion:not(.am-motion-force) .am-blog-hero__lines::before{ animation:none !important; }
.am-page .am-blog-hero__eyebrow{ margin:0 0 clamp(14px,1.8vw,20px); font-size:clamp(.86rem,.8rem + .3vw,1.02rem); letter-spacing:.16em; }
@media (min-width:1024px){
  .am-blog-hero--photo .am-blog-plain__grid{ align-items:center; }
}

/* entrada: cabecera sin foto (la imagen o el video van debajo, con su pie) */
.am-blog-hero--single{ padding-bottom:clamp(36px,4.5vw,64px); }
.am-page .am-blog-hero--single .am-blog-plain__title{ max-width:24ch; font-size:clamp(2.05rem,1.4rem + 2.6vw,3.7rem) !important; line-height:1.06 !important; text-transform:none; text-wrap:balance; }
.am-page .am-blog-hero--single .am-blog-plain__lead{ max-width:60ch; }

/* ------------- redes: como las del pie, texto con subrayado y el icono al lado ------------- */
.am-blog-redes{ margin-top:clamp(24px,3vw,36px); }
.am-page .am-blog-redes__label{ margin:0 0 4px; font-family:var(--am-font-display); font-size:max(.78rem,12px); font-weight:500; letter-spacing:.16em; text-transform:uppercase; color:var(--am-terracotta-700); }
.am-blog-redes__list{ display:flex; flex-wrap:wrap; gap:0 30px; list-style:none; margin:0; padding:0; }
.am-page .am-blog-redes__list li{ margin:0; padding:0; list-style:none; }
.am-page .am-blog-red{ display:inline-flex; align-items:center; gap:10px; min-height:48px; font-family:var(--am-font-display); font-size:clamp(1.02rem,.96rem + .25vw,1.15rem); font-weight:600;
  color:var(--am-green) !important; text-decoration:none !important; }
.am-blog-red span{ text-decoration:underline; text-decoration-color:rgba(162,87,58,.5); text-decoration-thickness:1.5px; text-underline-offset:6px; transition:text-decoration-color .3s var(--am-ease); }
.am-blog-red:hover span{ text-decoration-color:var(--am-terracotta); }
.am-blog-red .am-ico{ flex:0 0 auto; width:20px; height:20px; color:var(--am-terracotta); transition:transform .4s var(--am-ease); }
.am-blog-red:hover .am-ico{ transform:translateY(-2px); }
@media (max-width:420px){
  .am-blog-redes__list{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 16px; }
}

/* ------------------------------ filtro por categoria ------------------------------ */
.am-page .am-blog-list.am-section{ padding-top:clamp(40px,5vw,72px); }
.am-blog-filter{ margin:0 0 clamp(26px,3.4vw,42px); }
.am-blog-filter__list{ display:flex; flex-wrap:wrap; gap:10px; list-style:none; margin:0; padding:0; }
.am-page .am-blog-filter__list li{ margin:0; padding:0; list-style:none; }
.am-page .am-blog-filter__chip{ min-height:46px; padding:10px 22px; font-size:1rem; text-decoration:none !important; }
.am-page .am-blog-filter__chip:not(.is-active){ background:transparent; border-color:rgba(55,70,49,.28); }
.am-page .am-blog-filter__chip:not(.is-active):hover{ background:#fff; border-color:var(--am-green); }
.am-page .am-blog-list__empty a{ color:var(--am-green); text-decoration:underline; text-underline-offset:5px; }

/* ------------------- tarjeta: categoria y enlace con subrayado + icono ------------------- */
/* categoria arriba y fecha debajo: en una sola linea no caben a 340px con el espaciado de las mayusculas */
.am-page .am-blog-card .am-blog-card__meta{ display:flex; flex-direction:column; align-items:flex-start; gap:3px; margin:0; font-family:var(--am-font-display); font-size:max(.76rem,12px);
  font-weight:500; letter-spacing:.12em; text-transform:uppercase; line-height:1.4; color:var(--am-terracotta-700); }
.am-blog-card__meta .am-blog-card__date{ font-size:inherit; letter-spacing:inherit; color:inherit; }
.am-blog-card__cat{ font-weight:600; color:var(--am-green); }
.am-blog-card__dot{ display:none; }
.am-page .am-blog-card__more{ gap:9px; }
.am-blog-card__more-txt{ text-decoration:underline; text-decoration-color:rgba(162,87,58,.45); text-decoration-thickness:1.5px; text-underline-offset:6px; }
.am-blog-card__more .am-ico{ width:18px; height:18px; color:var(--am-terracotta); transition:transform .4s var(--am-ease); }
.am-blog-card:hover .am-blog-card__more .am-ico{ transform:translateX(5px); }
.am-blog-card:hover .am-blog-card__more-txt{ text-decoration-color:var(--am-terracotta); }

/* ------------------- entrada: imagen o video destacado con pie de foto ------------------- */
.am-page .am-blog-single.am-section{ padding-top:0; }
/* la textura clara de am.css pinta las curvas en el ::before de CADA .am-container hijo de la seccion:
   la entrada tiene tres contenedores y las lineas salian al triple. Solo las dibuja el primero. */
.am-page .am-blog-single.am-section > .am-container ~ .am-container::before{ content:none; }
.am-page .am-blog-feature-wrap{ max-width:calc(1040px + var(--am-gutter) * 2) !important; }
.am-blog-feature{ margin:0 0 clamp(36px,5vw,64px); }
.am-page .am-blog-feature__box{ position:relative; overflow:hidden; aspect-ratio:16/9; border-radius:var(--am-r-lg); background:var(--am-green-800); }
.am-blog-feature__box img{ display:block; width:100%; height:100%; object-fit:cover; }
.am-page .am-blog-feature--portrait .am-blog-feature__box{ aspect-ratio:auto; width:min(100%,560px); margin-inline:auto; }
.am-blog-feature--portrait .am-blog-feature__box img{ height:auto; max-height:82svh; }
.am-blog-feature__video{ display:block; width:100%; height:100%; object-fit:cover; background:#1a1411; }
.am-page .am-blog-feature__cap{ margin:14px 0 0; padding-left:14px; border-left:2px solid var(--am-terracotta); max-width:70ch;
  font-size:clamp(.96rem,.92rem + .2vw,1.05rem); line-height:1.55; color:#4d544b; }
.am-page .am-blog-feature--portrait .am-blog-feature__cap{ width:min(100%,560px); margin-inline:auto; }
@media (max-width:599.98px){
  .am-page .am-blog-feature__box{ aspect-ratio:4/3; border-radius:var(--am-r); }
  .am-page .am-blog-feature--video .am-blog-feature__box{ aspect-ratio:16/9; }
}

/* volver al blog: texto con subrayado y el icono al lado */
.am-page .am-blog-back__link{ display:inline-flex; align-items:center; gap:10px; min-height:44px; font-family:var(--am-font-display); font-size:1.05rem; font-weight:600;
  color:var(--am-green) !important; text-decoration:none !important; }
.am-blog-back__link span{ text-decoration:underline; text-decoration-color:rgba(162,87,58,.45); text-decoration-thickness:1.5px; text-underline-offset:6px; }
.am-blog-back__link:hover span{ text-decoration-color:var(--am-terracotta); }
.am-blog-back__link .am-ico{ width:20px; height:20px; color:var(--am-terracotta); transform:rotate(180deg); transition:transform .4s var(--am-ease); }
.am-blog-back__link:hover .am-ico{ transform:rotate(180deg) translateX(4px); }

/* cierre: icono de correo en "Solicitar cotizacion" */
.am-blog-close__actions .am-btn .am-ico{ flex:0 0 auto; width:20px; height:20px; }

@media (prefers-reduced-motion:reduce){
  .am-blog-red .am-ico, .am-blog-red span, .am-blog-card__more .am-ico, .am-blog-back__link .am-ico{ transition:none; }
}
html.am-no-motion:not(.am-motion-force) :is(.am-blog-red .am-ico, .am-blog-card__more .am-ico, .am-blog-back__link .am-ico, .am-blog-card, .am-blog-card__media img){ transition:none !important; }

/* r23 · historias que mandan los visitantes: "Historia de <nombre>" bajo el titulo de la entrada */
.am-page .am-blog-byline{ margin:14px 0 0; font-family:var(--am-font-display); font-weight:500; font-size:clamp(1rem,1.25vw,1.15rem); letter-spacing:.01em; color:var(--am-terracotta-700); }

/* r23b: galeria dentro de una entrada = carrusel horizontal (el script de blog.php pone .am-gcar si hay 2 fotos o mas).
   Los pies de cada foto van debajo, legibles, no encima de la foto como trae WordPress. */
.am-blog-article .wp-block-gallery.am-gcar{ display:flex !important; flex-wrap:nowrap !important; gap:14px !important; overflow-x:auto; overscroll-behavior-x:contain;
  scroll-snap-type:x mandatory; scrollbar-width:thin; margin-left:0; margin-right:0; padding-bottom:6px; }
.am-blog-article .wp-block-gallery.am-gcar > figure.wp-block-image{ flex:0 0 min(86%, 760px) !important; width:auto !important; max-width:none !important; margin:0 !important;
  scroll-snap-align:start; display:flex !important; flex-direction:column !important; }
.am-blog-article .wp-block-gallery.am-gcar > figure.wp-block-image img{ width:100% !important; height:auto !important; aspect-ratio:3/2; object-fit:cover; border-radius:14px; flex:none !important; }
.am-blog-article .wp-block-gallery.am-gcar > figure.wp-block-image figcaption{ position:static !important; inset:auto !important; background:none !important; max-height:none !important;
  overflow:visible !important; padding:8px 2px 0 !important; margin:0 !important; color:#5E544A !important; font-size:.86rem !important; line-height:1.45; text-align:left !important; text-shadow:none !important; }
.am-blog-article .am-gcar-nav{ display:flex; gap:10px; justify-content:flex-end; margin:10px 0 28px; }
.am-blog-article .am-gcar-nav button{ width:44px; height:44px; border-radius:50%; border:1px solid rgba(55,70,49,.35); background:#fff; color:#374631; font-size:1.05rem; line-height:1; cursor:pointer; }
.am-blog-article .am-gcar-nav button:hover:not(:disabled){ background:#374631; color:#FAEDE4; }
.am-blog-article .am-gcar-nav button:disabled{ opacity:.35; cursor:default; }

/* r24 · Portada del blog y categorias sin historias: el filtro sale igual y debajo una linea corta. Sin la grilla,
   la seccion no deja un bloque alto y vacio antes del formulario de visitantes. */
.am-page .am-blog-list.is-empty.am-section{ padding-bottom:clamp(30px,3.6vw,52px); }
.am-page .am-blog-list.is-empty .am-blog-filter{ margin-bottom:clamp(18px,2.2vw,26px); }
.am-page .am-blog-list__empty{ margin:0; max-width:52ch; }
.am-page .am-blog-list__empty a{ white-space:nowrap; }
