/*
Theme Name: Sur Global Odorox
Theme URI: http://orodox-new.local/
Author: Paillao Design
Author URI: https://www.paillaodesign.com/
Description: Tema WordPress clásico para Sur Global | Tecnología Odorox by Pyure. Sitio corporativo de purificación y sanitización ambiental con hidroxilos. Construido a partir del diseño de Figma "Sur Global Odorox — Theme". Incluye una portada (front-page) con hero, sectores, recursos, eventos, clientes, estadísticas y CTA de contacto.
Version: 1.0.0
Requires at least: 6.0
Tested up to: 7.0
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: sur-global-odorox
Tags: business, custom-menu, featured-images, footer-widgets, translation-ready, blog
*/

/* ============================================================
   DESIGN TOKENS  (from Figma variables)
   ============================================================ */
:root{
  --accent-primary:#0033cc;
  --accent-primary-subtle:#ebf0ff;
  --primary-50:#ebf0ff;
  --accent-secondary:#29b1e6;
  --primary-300:#7094ff;
  --text-primary:#090d1a;
  --text-secondary:#161f3c;
  --status-success:#13aa85;
  --base-white:#ffffff;
  --bg-canvas:#f5f4ee;
  --bg-light-50:#fdfdfc;
  --bg-light-100:#f9f8f6;
  --border-subtle:#d2d9ef;

  --grad-primary-dark:linear-gradient(135deg,#002896 0%,#0033cc 55%,#2978d2 100%);

  --font-display:"Instrument Sans",-apple-system,Segoe UI,Roboto,Arial,sans-serif;
  --font-body:"Geist",-apple-system,Segoe UI,Roboto,Arial,sans-serif;

  --maxw:1200px;
  --gutter:clamp(20px,5vw,48px);
  --radius-sm:10px;
  --radius:16px;
  --radius-lg:24px;
  --shadow-sm:0 1px 2px rgba(9,13,26,.06),0 4px 14px rgba(9,13,26,.05);
  --shadow-md:0 12px 40px rgba(9,13,26,.10);
}

/* ============================================================
   RESET / BASE
   ============================================================ */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0;
  font-family:var(--font-body);
  font-size:1rem; /* 16px */
  line-height:1.5;
  color:var(--text-primary);
  background:var(--bg-light-50);
  -webkit-font-smoothing:antialiased;
}
img{max-width:100%;height:auto;display:block}
a{color:var(--accent-primary);text-decoration:none}
a:hover{text-decoration:underline}
h1,h2,h3,h4,h5{font-family:var(--font-display);font-weight:500;color:var(--text-primary);margin:0 0 .4em}
h1{font-size:clamp(2.5rem,6vw,4.5rem);line-height:1.05;letter-spacing:-2px}
h2{font-size:clamp(1.875rem,4vw,3rem);line-height:1.1;letter-spacing:-1px}
h3{font-size:1.75rem;line-height:1.18;letter-spacing:-.5px}
h4{font-size:1.5rem;line-height:1.25;letter-spacing:-.5px}
h5{font-size:1.25rem;line-height:1.3;letter-spacing:-.25px}
p{margin:0 0 1em}
.container{max-width:var(--maxw);margin-inline:auto;padding-inline:var(--gutter)}
.eyebrow{font-family:var(--font-body);font-weight:600;font-size:0.8125rem;letter-spacing:1.4px;text-transform:uppercase;color:var(--accent-primary)}
.section{padding-block:clamp(56px,8vw,104px)}
.faq-list-section{padding-top:22px}
.text-center{text-align:center}
.skip-link{position:absolute;left:-9999px}
.skip-link:focus{left:16px;top:16px;background:#fff;padding:10px 16px;border-radius:8px;z-index:9999}

/* ============================================================
   BUTTONS
   ============================================================ */
.btn{display:inline-flex;align-items:center;gap:.5em;font-family:var(--font-display);font-weight:600;
  font-size:1rem;letter-spacing:.2px;line-height:1;padding:13px 22px;border-radius:6px;border:1.5px solid transparent;
  cursor:pointer;white-space:nowrap;transition:transform .15s ease,box-shadow .15s ease,background .15s ease,color .15s ease;text-decoration:none}
.btn:hover{text-decoration:none;transform:translateY(-1px)}
.btn--primary{background:var(--accent-primary);color:#fff}
.btn--primary:hover{background:#0029a8;color:#fff;box-shadow:0 8px 22px rgba(0,51,204,.28)}
.btn--secondary{background:transparent;color:var(--text-primary);border-color:var(--border-subtle)}
.btn--secondary:hover{border-color:var(--accent-primary);color:var(--accent-primary)}
.btn--cyan{background:var(--accent-secondary);color:#fff}
.btn--cyan:hover{background:#1aa0d6;color:#fff}
.btn--soft{background:var(--accent-primary-subtle);color:var(--accent-primary)}
.btn--soft:hover{background:#dce5ff;color:var(--accent-primary)}
.btn--ghost-light{background:#fff;color:var(--accent-primary)}
.btn--on-dark{background:#fff;color:var(--accent-primary)}
.btn--on-dark:hover{background:var(--accent-secondary);color:#fff}
.btn--text{background:none;border:none;padding:0;color:var(--accent-primary);font-family:var(--font-display);font-weight:600;font-size:0.9375rem;display:inline-flex;gap:.4em;align-items:center}
.btn--text:hover{gap:.7em;text-decoration:none}

/* ============================================================
   HEADER / NAV
   ============================================================ */
.site-header{position:sticky;top:0;z-index:100;background:var(--bg-light-50);
  border-bottom:1px solid var(--border-subtle)}
.site-header__inner{display:flex;align-items:center;gap:24px;height:77px}
.site-brand{display:flex;align-items:center;flex:0 0 auto}
.site-brand img,.site-brand svg{height:30px;width:auto;display:block}
.site-brand a{display:inline-flex;text-decoration:none}
/* Logo subido en Personalizar -> Identidad del Sitio */
.site-brand .custom-logo,.menu-drawer__head .custom-logo{height:34px;width:auto;max-width:240px;object-fit:contain}

.primary-nav{margin-inline:auto}
.primary-nav ul{list-style:none;display:flex;align-items:center;gap:36px;margin:0;padding:0}
.primary-nav a{display:inline-flex;align-items:center;gap:6px;font-family:var(--font-display);font-weight:600;font-size:0.9375rem;
  letter-spacing:.5px;line-height:1.3;color:var(--text-primary)}
.primary-nav a:hover{color:var(--accent-primary);text-decoration:none}
.primary-nav .current-menu-item>a{color:var(--accent-primary)}
.primary-nav .chev{color:var(--text-primary);transition:transform .15s}
.primary-nav a:hover .chev{color:var(--accent-primary)}

/* Dropdown de submenú (card blanca, radio 15, sombra suave) */
.primary-nav .nav-item{position:relative}
.primary-nav .nav-item.has-sub.is-open>a{color:var(--accent-primary)}
.primary-nav .nav-item.has-sub.is-open .chev{transform:rotate(180deg);color:var(--accent-primary)}
.nav-sub{position:absolute;top:calc(100% + 16px);left:50%;transform:translateX(-50%) translateY(8px);min-width:236px;
  background:#fff;border:1px solid var(--border-subtle);border-radius:15px;box-shadow:0 16px 40px rgba(9,13,26,.13);
  padding:10px;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .18s ease,transform .18s ease;z-index:130}
.nav-sub::before{content:"";position:absolute;top:-7px;left:50%;transform:translateX(-50%) rotate(45deg);width:13px;height:13px;
  background:#fff;border-left:1px solid var(--border-subtle);border-top:1px solid var(--border-subtle)}
.primary-nav .nav-item.has-sub.is-open .nav-sub{opacity:1;visibility:visible;pointer-events:auto;transform:translateX(-50%) translateY(0)}
.nav-sub ul{list-style:none;margin:0;padding:0;display:grid;gap:2px}
.nav-sub a{display:block;padding:11px 14px;border-radius:9px;font-family:var(--font-display);font-weight:600;font-size:0.9375rem;
  letter-spacing:.5px;color:var(--text-primary);white-space:nowrap}
.nav-sub a:hover{background:var(--accent-primary-subtle);color:var(--accent-primary);text-decoration:none}

/* Sub-ítems en el menú móvil (acordeón: cerrados por defecto) */
.menu-row .chev{transition:transform .22s ease}
.menu-row.has-sub.is-open>a .chev{transform:rotate(180deg);color:var(--accent-primary)}
.menu-row.has-sub.is-open>a span{color:var(--accent-primary)}
.menu-subrows{list-style:none;margin:0;padding:0;max-height:0;overflow:hidden;transition:max-height .3s ease}
.menu-row.has-sub.is-open>.menu-subrows{max-height:520px;padding-bottom:8px}
.menu-subrows a{display:block;padding:10px 22px 10px 38px;font-family:var(--font-display);font-weight:600;font-size:0.9375rem;
  letter-spacing:.4px;color:var(--text-secondary)}
.menu-subrows a:hover{color:var(--accent-primary);text-decoration:none}

.header-cta{display:flex;align-items:center;gap:12px;flex:0 0 auto}
.btn--outline{background:#fff;color:var(--accent-primary);border-color:var(--accent-primary)}
.btn--outline:hover{background:var(--accent-primary-subtle);color:var(--accent-primary)}

/* Hamburger (mobile only) */
.nav-toggle{display:none;background:none;border:0;width:44px;height:44px;cursor:pointer;align-items:center;justify-content:center;margin-left:auto}
.nav-toggle__bars{display:flex;flex-direction:column;gap:5px;width:24px}
.nav-toggle__bars span{display:block;height:2.4px;width:100%;border-radius:2px;background:var(--accent-primary)}

/* ===== Mobile menu drawer (Figma "Menu Mobile") ===== */
.menu-overlay{position:fixed;inset:0;background:rgba(9,13,26,.42);opacity:0;transition:opacity .26s ease;z-index:200}
.menu-overlay.is-visible{opacity:1}
.menu-drawer{position:fixed;top:0;left:0;height:100dvh;width:min(440px,100%);background:var(--bg-light-50);z-index:210;
  transform:translateX(-100%);transition:transform .28s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column;
  box-shadow:0 24px 60px rgba(9,13,26,.18);overflow-y:auto;visibility:hidden}
.menu-drawer.is-open{transform:translateX(0);visibility:visible}
.menu-drawer__head{display:flex;align-items:center;justify-content:space-between;padding:20px 22px;border-bottom:1px solid var(--border-subtle)}
.menu-drawer__head img,.menu-drawer__head svg{height:30px;width:auto}
.menu-close{width:40px;height:40px;border:0;border-radius:10px;background:var(--accent-primary-subtle);display:grid;place-items:center;cursor:pointer}
.menu-close:hover{background:#dce5ff}
.menu-drawer__label{margin:0;padding:13px 22px;background:var(--accent-primary-subtle);color:var(--text-secondary);
  font-family:var(--font-display);font-weight:600;font-size:0.75rem;letter-spacing:1.4px;text-transform:uppercase}
.menu-rows{list-style:none;margin:0;padding:0}
.menu-row{border-bottom:1px solid var(--border-subtle)}
.menu-row>a{display:flex;align-items:center;justify-content:space-between;padding:20px 22px;
  font-family:var(--font-display);font-weight:600;font-size:1.125rem;letter-spacing:-.2px;color:var(--text-primary)}
.menu-row>a:hover{text-decoration:none;color:var(--accent-primary)}
.menu-row .chev{color:var(--text-primary)}
.menu-row.is-active{position:relative}
.menu-row.is-active>a{color:var(--accent-primary)}
.menu-row.is-active::before{content:"";position:absolute;left:0;top:14px;bottom:14px;width:3px;border-radius:0 3px 3px 0;background:var(--accent-primary)}
.menu-rows--featured .menu-row>a{color:var(--accent-primary)}
body.menu-open{overflow:hidden}

/* ============================================================
   HERO
   ============================================================ */
.hero{padding-block:clamp(36px,5vw,64px)}
.hero__grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(30px,5vw,72px);align-items:center}
.hero__left{align-self:center}
.hero__eyebrow{display:inline-flex;align-items:center;gap:9px;margin-bottom:26px;background:var(--accent-primary-subtle);
  color:var(--accent-primary);padding:9px 16px;border-radius:999px;font-weight:600;font-size:0.8125rem;letter-spacing:1.3px;text-transform:uppercase}
.hero__eyebrow::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--accent-primary)}
.hero h1{margin-bottom:30px;font-size:clamp(2.5rem,6vw,3.875rem);line-height:1.04;letter-spacing:-2px}
.hero h1 .soft{display:block;margin-top:2px;font-size:clamp(1.75rem,3.6vw,2.625rem);line-height:1.1;letter-spacing:-1px;
  color:var(--text-primary);font-weight:500}
.hero__list{list-style:none;margin:0 0 34px;padding:0;display:grid;gap:18px;max-width:560px}
.hero__list li{position:relative;padding-left:26px;font-size:1rem;line-height:1.5;color:var(--text-primary)}
.hero__list li::before{content:"";position:absolute;left:0;top:8px;width:9px;height:9px;border-radius:50%;background:var(--accent-primary)}
.hero__list li:nth-child(even)::before{background:var(--accent-secondary)}
.hero__actions{display:flex;flex-wrap:wrap;gap:14px}
.hero__visual{position:relative;border-radius:24px;overflow:hidden;box-shadow:var(--shadow-md);
  aspect-ratio:620/460;background:var(--grad-primary-dark)}
.hero__visual img{width:100%;height:100%;object-fit:cover;display:block}

/* Applicable overlap card */
.applicable{margin-top:clamp(28px,4vw,52px);position:relative;z-index:1}
.applicable__card{display:flex;flex-wrap:wrap;align-items:center;gap:20px 36px;background:#fff;border:1px solid var(--border-subtle);
  border-radius:var(--radius);padding:26px 30px;box-shadow:var(--shadow-sm);overflow:hidden}
.applicable__card::before{content:"";position:absolute;left:0;top:0;bottom:0;width:6px;background:var(--accent-secondary)}
.applicable__card .eyebrow{margin-bottom:6px}
.applicable__card h4{margin:0}
.applicable__card p{margin:4px 0 0;color:var(--text-secondary);max-width:520px}
.applicable__card .btn{margin-left:auto}

/* ============================================================
   NEWS BANNER
   ============================================================ */
.news-banner{background:var(--grad-primary-dark);color:#fff}
.news-slider .slider__dots{display:none}
.news-slider .news-slide{flex:0 0 100%;height:auto;min-height:115px;display:flex;flex-direction:column;justify-content:center;scroll-snap-align:start}
@media (max-width:600px){.news-slider .news-slide{min-height:190px}}
.news-banner__inner{width:100%;display:flex;align-items:center;gap:20px;padding-block:18px;flex-wrap:wrap}
.news-banner .tag{font-family:var(--font-display);font-weight:600;font-size:0.75rem;letter-spacing:1.2px;text-transform:uppercase;
  background:var(--status-success);color:#fff;padding:6px 12px;border-radius:4px;white-space:nowrap}
.news-banner p{margin:0;color:rgba(255,255,255,.92);font-size:0.9688rem;flex:1;min-width:240px}
.news-banner a{white-space:nowrap}

/* ============================================================
   SECTION HEADER
   ============================================================ */
.section-head{max-width:760px;margin-bottom:44px}
.section-head.center{margin-inline:auto;text-align:center}
.section-head p{color:var(--text-secondary);font-size:1.125rem;margin:0}

/* ============================================================
   SECTORS GRID
   ============================================================ */
.sectors{background:var(--bg-light-100)}
.sector-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.sector-card{background:#fff;border:1px solid var(--border-subtle);border-radius:var(--radius);overflow:hidden;
  transition:transform .18s ease,box-shadow .18s ease;display:flex;flex-direction:column}
.sector-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md)}
.sector-card__img{display:block;aspect-ratio:16/10;background:linear-gradient(135deg,var(--accent-primary-subtle),#d9e2ff);overflow:hidden}
.sector-card__img img{width:100%;height:100%;object-fit:cover}
.sector-card__body{padding:18px 20px 22px;display:flex;flex-direction:column;gap:10px;flex:1}
.sector-card__body h5{margin:0;font-size:1.1875rem}
.sector-card__body .btn--text{margin-top:auto}

/* ============================================================
   RESOURCES
   ============================================================ */
.resources{background:var(--bg-light-50)}
.resources__grid{display:grid;grid-template-columns:1.15fr 1fr;gap:22px}
.resource-feat{position:relative;border-radius:var(--radius);overflow:hidden;background:var(--grad-primary-dark);color:#fff;
  padding:36px;display:flex;flex-direction:column;justify-content:flex-end;min-height:360px}
.resource-feat .eyebrow{color:var(--accent-secondary)}
.resource-feat h3{color:#fff;margin:12px 0 10px;max-width:18ch}
.resource-feat .meta{color:rgba(255,255,255,.75);font-size:0.875rem}
.resource-list{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.resource-item{background:#fff;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);padding:20px;display:flex;
  flex-direction:column;gap:10px;transition:border-color .15s}
.resource-item:hover{border-color:var(--accent-primary)}
.resource-item .eyebrow{font-size:0.6875rem}
.resource-item h5{font-size:1rem;line-height:1.3;margin:0;font-family:var(--font-display)}
.resource-item .meta{margin-top:auto;font-size:0.7812rem;color:#6a7390}
.resources__more{margin-top:30px}

/* ============================================================
   HIGHLIGHT BANNER (gastro CTA)
   ============================================================ */
.highlight{background:var(--grad-primary-dark);color:#fff;border-radius:0}
.highlight__inner{display:flex;align-items:center;gap:28px;flex-wrap:wrap;padding-block:18px;min-height:115px}
.highlight .eyebrow{color:var(--accent-secondary)}
.highlight__text{flex:1;min-width:260px}
.highlight h3{color:#fff;margin:6px 0 0;max-width:none;font-size:20px;white-space:nowrap}
.highlight .btn{margin-left:auto;align-self:center}

/* ============================================================
   EVENTS
   ============================================================ */
.events{background:var(--bg-light-100)}
.events__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.event-card{background:#fff;border:1px solid var(--border-subtle);border-radius:var(--radius);padding:24px;display:flex;
  flex-direction:column;gap:14px}
.event-date{display:flex;align-items:baseline;gap:8px;color:var(--accent-primary)}
.event-date .d{font-family:var(--font-display);font-weight:600;font-size:2.125rem;line-height:1;letter-spacing:-1px}
.event-date .m{font-family:var(--font-display);font-weight:600;font-size:0.8125rem;letter-spacing:1px;text-transform:uppercase}
.event-card .tag{font-size:0.6875rem;letter-spacing:1px;text-transform:uppercase;color:var(--status-success);font-weight:700;font-family:var(--font-body)}
.event-card h5{font-size:1.0625rem;line-height:1.3;margin:0}
.event-card p{font-size:0.875rem;color:var(--text-secondary);margin:0}
.event-card .where{margin-top:auto;font-size:0.8125rem;color:#6a7390;border-top:1px solid var(--border-subtle);padding-top:14px}

/* ============================================================
   CLIENTS
   ============================================================ */
.clients{background:var(--bg-light-50);text-align:center}
.clients h2{font-size:clamp(1.375rem,3vw,2rem)}
.clients__grid{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:18px 38px;margin-top:34px}
.client-logo{display:flex;align-items:center;justify-content:center;height:136px;padding:6px;
  background:#fff;border:1px solid var(--border-subtle);border-radius:12px;transition:box-shadow .2s ease,border-color .2s ease}
.client-logo:hover{border-color:var(--primary-300);box-shadow:var(--shadow-sm);text-decoration:none}
.client-logo img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;
  filter:grayscale(1);opacity:.72;transition:filter .2s ease,opacity .2s ease}
.client-logo:hover img{filter:grayscale(0);opacity:1}
.client-logo span{font-family:var(--font-display);font-weight:600;font-size:1.125rem;color:#9aa1b4}
/* Slider de clientes (10 logos por slide) */
.clients-slider{margin-top:34px}
.clients-slider .slide{height:auto;flex:0 0 100%;scroll-snap-align:start}
.clients-slide{display:grid;grid-template-columns:repeat(5,1fr);gap:24px 28px;padding:6px 2px}
@media (max-width:860px){.clients-slide{grid-template-columns:repeat(3,1fr)}}
@media (max-width:560px){.clients-slide{grid-template-columns:repeat(2,1fr)}}

/* ============================================================
   TESTIMONIAL
   ============================================================ */
.testimonial{background:var(--bg-light-100)}
.testimonial__card{max-width:880px;margin-inline:auto;background:#fff;border:1px solid var(--border-subtle);
  border-radius:var(--radius-lg);padding:clamp(30px,5vw,56px);text-align:center;position:relative}
.testimonial__card .quote-mark{font-family:var(--font-display);font-size:4.5rem;line-height:.5;color:var(--accent-secondary);display:block;height:36px}
.testimonial__card blockquote{font-family:var(--font-display);font-weight:500;font-size:20px;line-height:1.4;
  letter-spacing:-.4px;margin:18px 0 20px;color:var(--text-primary)}
.testimonial__avatar{display:block;width:60px;height:60px;border-radius:50%;overflow:hidden;margin:0 auto 16px;
  background:var(--primary-50);border:1px solid var(--border-subtle)}
.testimonial__avatar img{width:100%;height:100%;object-fit:cover;display:block}
.testimonial__avatar.is-empty{background:var(--primary-50);display:grid;place-items:center;color:var(--primary-300)}
.testimonial__avatar .lucide-user{width:30px;height:30px}
.tq-slide .testimonial__avatar.is-empty{color:rgba(255,255,255,.75)}
.testimonial__card cite{font-style:normal;display:block;font-weight:600;color:var(--text-primary)}
.testimonial__card .role{color:#6a7390;font-size:0.875rem}
.testimonial-slider .slide{height:auto;flex:0 0 100%;scroll-snap-align:start}
.testimonial-slider .slider__dots{margin-top:24px}

/* ============================================================
   STATS
   ============================================================ */
.stats{background:var(--bg-light-50)}
.stats__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:40px}
.stat{background:#fff;border:1px solid var(--border-subtle);border-radius:var(--radius);padding:28px 24px}
.stat .num{font-family:var(--font-display);font-weight:500;font-size:clamp(2.125rem,4vw,3rem);line-height:1;letter-spacing:-1.5px;color:var(--accent-primary)}
.stat .label{margin-top:14px;color:var(--text-secondary);font-size:0.9375rem}

/* ============================================================
   CONTACT CTA
   ============================================================ */
.cta-band{background:var(--grad-primary-dark);color:#fff;text-align:center}
.cta-band__inner{max-width:720px;margin-inline:auto;padding-block:clamp(56px,8vw,96px)}
.cta-band h2{color:#fff}
.cta-band p{color:rgba(255,255,255,.85);font-size:1.125rem;margin:0 0 28px}

/* ============================================================
   FOOTER
   ============================================================ */
.site-footer{background:var(--text-primary);color:#c4cbdc}
.site-footer a{color:var(--primary-300)}.site-footer a:hover{color:#fff;text-decoration:none}
.site-footer__top{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:40px;padding-block:clamp(48px,7vw,72px)}
.footer-brand img{height:30px;margin-bottom:18px}
.footer-brand p{color:#8b93a8;font-size:0.875rem;max-width:30ch}
.footer-social{display:flex;gap:12px;margin-top:18px}
.footer-social a{width:38px;height:38px;border-radius:50%;border:1px solid rgba(255,255,255,.16);display:grid;place-items:center}
.footer-social a:hover{background:var(--accent-primary);border-color:var(--accent-primary)}
.footer-social svg{width:18px;height:18px;fill:currentColor}
.footer-col h6{font-family:var(--font-display);font-weight:600;font-size:0.8125rem;letter-spacing:1px;text-transform:uppercase;color:#fff;margin:0 0 16px}
.footer-col ul{list-style:none;margin:0;padding:0;display:grid;gap:11px;font-size:0.9062rem}
.footer-contact .line{font-size:0.9062rem;margin-bottom:8px}
.site-footer__legal{border-top:1px solid rgba(255,255,255,.1);padding-block:22px;display:flex;flex-wrap:wrap;gap:14px;
  justify-content:space-between;align-items:center;font-size:0.7812rem;color:#79839c}
.site-footer__legal a{color:var(--primary-300)}
.footer-disclaimer{padding-bottom:26px;font-size:0.7188rem;color:#5d6680;max-width:none;line-height:1.55}

/* ============================================================
   GENERIC PAGE / POSTS
   ============================================================ */
.page-hero{background:var(--bg-light-100);border-bottom:1px solid var(--border-subtle);padding-block:clamp(48px,7vw,84px)}
.page-hero .eyebrow{margin-bottom:12px}
.entry{max-width:760px;margin-inline:auto;padding-block:clamp(40px,6vw,72px)}
.entry img{border-radius:var(--radius)}
.entry h2{font-size:2rem;margin-top:1.4em}
.entry h3{font-size:1.5rem;margin-top:1.2em}
.post-card{background:#fff;border:1px solid var(--border-subtle);border-radius:var(--radius);overflow:hidden;display:flex;flex-direction:column}
.post-card__img{aspect-ratio:16/9;background:var(--accent-primary-subtle);overflow:hidden}
.post-card__img img{width:100%;height:100%;object-fit:cover}
.post-card__body{padding:22px;display:flex;flex-direction:column;gap:10px}
.posts-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;padding-block:48px}
.pagination{display:flex;gap:10px;justify-content:center;padding-bottom:60px}
.pagination .page-numbers{padding:8px 14px;border:1px solid var(--border-subtle);border-radius:8px;color:var(--text-secondary)}
.pagination .current{background:var(--accent-primary);color:#fff;border-color:var(--accent-primary)}

/* WP core helpers */
.screen-reader-text{position:absolute!important;clip:rect(1px,1px,1px,1px);width:1px;height:1px;overflow:hidden}
.aligncenter{margin-inline:auto}.alignright{float:right;margin-left:1.5em}.alignleft{float:left;margin-right:1.5em}
.wp-caption-text{font-size:0.8125rem;color:#6a7390;text-align:center}

/* ============================================================
   RESPONSIVE
   ============================================================ */
@media (max-width:1024px){
  .hero__grid{grid-template-columns:1fr 1fr}
  .resources__grid{grid-template-columns:1fr}
  .resource-feat{min-height:260px}
}
@media (max-width:980px){
  .nav-toggle{display:inline-flex}
  .primary-nav,.header-cta{display:none}
}
@media (max-width:860px){
  .hero__grid{grid-template-columns:1fr}
  .hero__visual{aspect-ratio:620/460}
  .sector-grid,.events__grid,.posts-grid{grid-template-columns:1fr 1fr}
  .stats__grid{grid-template-columns:1fr 1fr}
  .resource-list{grid-template-columns:1fr 1fr}
  .site-footer__top{grid-template-columns:1fr 1fr}
  .applicable__card .btn,.highlight .btn{margin-left:0}
  .highlight h3{white-space:normal}
}
@media (max-width:560px){
  .sector-grid,.events__grid,.posts-grid,.stats__grid,.resource-list,.site-footer__top{grid-template-columns:1fr}
  .news-banner__inner{align-items:flex-start}
}

/* ============================================================
   TECNOLOGÍA PAGE
   ============================================================ */
.breadcrumb{background:var(--bg-light-50);border-bottom:1px solid var(--border-subtle)}
.breadcrumb .container{display:flex;gap:8px;align-items:center;padding-block:14px;font-size:0.8125rem;color:#6a7390;font-family:var(--font-display);font-weight:600;letter-spacing:.3px}
.breadcrumb a{color:#6a7390}.breadcrumb a:hover{color:var(--accent-primary);text-decoration:none}
.breadcrumb .is-current{color:var(--accent-primary)}

.btn--outline-light{background:transparent;color:#fff;border-color:rgba(255,255,255,.45)}
.btn--outline-light:hover{background:rgba(255,255,255,.12);color:#fff;border-color:#fff}

/* Tech hero */
.tech-hero{padding-top:30px}
.tech-hero .hero__grid{align-items:center}
.tech-hero h1{font-size:clamp(2rem,4.8vw,3.1rem)}
.tech-hero__lead{font-size:1.0625rem;line-height:1.6;color:var(--text-secondary);max-width:560px;margin:0 0 30px}
.tech-hero h1 .hl{color:var(--accent-primary)}
.tech-molecule>svg,.tech-molecule>img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;padding:clamp(1.25rem,3vw,2.5rem);z-index:2}
.tech-molecule>img{object-fit:cover;padding:0}
/* Animaciones del SVG del hero de Tecnología (clases del SVG original) */
.tech-molecule .hidroxilo{animation:sgo-th-float 4s ease-in-out infinite;transform-origin:center}
.tech-molecule .uv-ray{animation:sgo-th-uvpulse 2s ease-in-out infinite}
.tech-molecule .pathogen-x{animation:sgo-th-shrink 3s ease-out infinite;transform-origin:center}
@keyframes sgo-th-float{0%,100%{transform:translate(0,0)}50%{transform:translate(0,-8px)}}
@keyframes sgo-th-uvpulse{0%,100%{opacity:.3}50%{opacity:1}}
@keyframes sgo-th-shrink{0%{opacity:1;transform:scale(1)}100%{opacity:0;transform:scale(.3)}}
@media (prefers-reduced-motion:reduce){
  .tech-molecule .hidroxilo,.tech-molecule .uv-ray,.tech-molecule .pathogen-x{animation:none}
}
.tech-molecule{position:relative;align-self:stretch;min-height:440px;border-radius:24px;background:
  radial-gradient(120% 120% at 70% 20%,#0a1f6e 0%,#06103e 55%,#040a26 100%);overflow:hidden;box-shadow:var(--shadow-md)}
.tech-molecule__core{position:absolute;left:50%;top:50%;width:96px;height:96px;margin:-48px 0 0 -48px;border-radius:50%;
  background:radial-gradient(circle at 40% 35%,#39c0ff,#0033cc 70%);box-shadow:0 0 0 10px rgba(41,177,230,.14),0 0 60px rgba(41,177,230,.5)}
.tech-molecule__ion{position:absolute;display:grid;place-items:center;min-width:46px;height:46px;padding:0 10px;border-radius:999px;
  font-family:var(--font-display);font-weight:600;font-size:0.8125rem;color:#dbe6ff;background:rgba(255,255,255,.06);
  border:1px solid rgba(112,148,255,.35);backdrop-filter:blur(2px)}
.tech-molecule .ion1{left:16%;top:22%}.tech-molecule .ion2{right:14%;top:30%}
.tech-molecule .ion3{left:20%;bottom:26%}.tech-molecule .ion4{right:18%;bottom:22%}
.tech-molecule .ion5{left:50%;top:16%;transform:translateX(-50%)}
.tech-molecule__label{position:absolute;left:0;right:0;bottom:22px;text-align:center;color:rgba(219,230,255,.7);
  font-family:var(--font-display);font-weight:600;font-size:0.75rem;letter-spacing:1.4px;text-transform:uppercase}

/* Tech stats */
.tech-stats{background:var(--bg-light-100)}
.tech-stats__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:8px}
.tech-stat{background:#fff;border:1px solid var(--border-subtle);border-radius:var(--radius);padding:30px 26px}
.tech-stat__tag{display:inline-block;font-family:var(--font-display);font-weight:600;font-size:0.6875rem;letter-spacing:1.2px;
  text-transform:uppercase;color:var(--accent-primary);background:var(--accent-primary-subtle);padding:6px 11px;border-radius:999px;margin-bottom:18px}
.tech-stat__num{font-family:var(--font-display);font-weight:500;font-size:clamp(2.5rem,4.4vw,3.5rem);line-height:1;letter-spacing:-2px;color:var(--accent-primary)}
.tech-stat h5{margin:16px 0 8px;font-size:1.125rem}
.tech-stat p{margin:0;color:var(--text-secondary);font-size:0.9062rem;line-height:1.5}

/* Principle / sun */
.tech-principle__grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(30px,5vw,64px);align-items:center}
.tech-principle p{color:var(--text-secondary);font-size:1.0625rem;line-height:1.6}
.tech-sun{position:relative;aspect-ratio:1/1;border-radius:24px;overflow:hidden;display:grid;place-items:center;
  background:radial-gradient(circle at 50% 50%,#ffd36b 0%,#ff8a2a 32%,#ff5a1f 52%,#7a1500 100%);box-shadow:var(--shadow-md)}
.tech-sun__play{width:74px;height:74px;border-radius:50%;background:rgba(255,255,255,.92);display:grid;place-items:center;z-index:2}
.tech-sun__play::after{content:"";border-left:20px solid #ff5a1f;border-top:12px solid transparent;border-bottom:12px solid transparent;margin-left:5px}
.tech-sun__caption{position:absolute;bottom:20px;left:0;right:0;text-align:center;color:rgba(255,255,255,.9);
  font-family:var(--font-display);font-weight:600;font-size:0.75rem;letter-spacing:1.4px;text-transform:uppercase}
.tech-video{position:relative;width:100%;aspect-ratio:16/9;border-radius:24px;overflow:hidden;box-shadow:var(--shadow-md);background:transparent}
.tech-video iframe,.tech-video video,.tech-video embed,.tech-video object{position:absolute;inset:0;width:100%;height:100%;border:0}

/* Steps */
.tech-steps__grid{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;align-items:stretch;gap:14px}
.tech-step{background:#fff;border:1px solid var(--border-subtle);border-radius:var(--radius);padding:28px 24px}
.tech-step__no{font-family:var(--font-display);font-weight:600;font-size:0.75rem;letter-spacing:1.4px;text-transform:uppercase;color:var(--accent-secondary)}
.tech-step h4{margin:14px 0 10px;font-size:1.3125rem}
.tech-step p{margin:0;color:var(--text-secondary);font-size:0.9375rem;line-height:1.5}
.tech-step__arrow{align-self:center;color:var(--accent-primary);font-size:1.5rem;font-weight:700}

/* Reaction */
.tech-reaction{background:var(--bg-light-100)}
.tech-reaction__grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(30px,5vw,64px);align-items:center}
.tech-reaction p{color:var(--text-secondary);font-size:1.0625rem;line-height:1.6}
.tech-levels{list-style:none;margin:0;padding:0;display:grid;gap:14px}
.tech-level{display:flex;gap:16px;background:#fff;border:1px solid var(--border-subtle);border-radius:var(--radius);padding:20px 22px}
.tech-level__dot{flex:0 0 auto;width:14px;height:14px;margin-top:6px;border-radius:50%;background:var(--status-success);box-shadow:0 0 0 5px rgba(19,170,133,.14)}
.tech-level h5{margin:0 0 5px;font-size:1rem}
.tech-level p{margin:0;font-size:0.9062rem}

/* 8 reasons */
.tech-reasons__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.tech-reason{background:#fff;border:1px solid var(--border-subtle);border-radius:var(--radius);padding:24px 22px}
.tech-reason__check{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:var(--status-success);margin-bottom:16px}
.tech-reason h5{margin:0 0 8px;font-size:1rem;line-height:1.25}
.tech-reason p{margin:0;color:var(--text-secondary);font-size:0.875rem;line-height:1.5}

/* Spectrum */
.tech-spectrum__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.tech-spectrum__col{background:#fff;border:1px solid var(--border-subtle);border-radius:var(--radius);padding:26px 24px}
.tech-spectrum__col h5{margin:0 0 16px;font-size:1.125rem}
.tech-spectrum__col ul{list-style:none;margin:0;padding:0;display:grid;gap:11px}
.tech-spectrum__col li{display:flex;align-items:center;gap:10px;font-size:0.9375rem;color:var(--text-secondary)}
.tech-spectrum__col .dot{width:8px;height:8px;border-radius:50%;background:var(--accent-secondary);flex:0 0 auto}

/* Endorsements */
.tech-endorse{background:var(--bg-light-100)}
.tech-endorse__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.tech-endorse__foot{max-width:50rem;margin:32px auto 0;text-align:center;color:var(--text-secondary);font-size:0.9375rem;line-height:1.6}
.tech-endorse__card{background:#fff;border:1px solid var(--border-subtle);border-radius:var(--radius);padding:26px 22px;text-align:center}
.tech-endorse__badge{font-family:var(--font-display);font-weight:700;font-size:1.25rem;letter-spacing:.5px;color:var(--accent-primary);
  height:54px;display:grid;place-items:center;border-bottom:1px solid var(--border-subtle);margin-bottom:16px}
.tech-endorse__card h5{margin:0 0 8px;font-size:0.9375rem}
.tech-endorse__card p{margin:0;font-size:0.8125rem;color:#6a7390;line-height:1.45}

/* Comparison table */
.tech-compare__wrap{overflow-x:auto;border:1px solid var(--border-subtle);border-radius:var(--radius);background:#fff}
.tech-table{width:100%;border-collapse:collapse;min-width:680px}
.tech-table th,.tech-table td{padding:16px 18px;text-align:center;border-bottom:1px solid var(--border-subtle)}
.tech-table thead th{font-family:var(--font-display);font-weight:600;font-size:0.9375rem;color:var(--text-primary);background:var(--bg-light-100)}
.tech-table .row-label{text-align:left;font-weight:500;color:var(--text-secondary);font-size:0.9375rem}
.tech-table th.row-label{color:var(--text-primary)}
.tech-table .is-odorox{background:var(--accent-primary-subtle)}
.tech-table thead th.is-odorox{color:var(--accent-primary)}
.tech-table tbody tr:last-child td{border-bottom:0}
.mk{display:inline-grid;place-items:center;width:26px;height:26px;border-radius:50%;font-size:0.875rem;font-weight:700}
.mk.yes{background:rgba(19,170,133,.14);color:var(--status-success)}
.mk.no{background:rgba(230,70,70,.12);color:#d34b4b}
.mk.part{background:rgba(41,177,230,.16);color:#1487b8}

/* Quote band */
.tech-quote{background:var(--grad-primary-dark);color:#fff}
.tech-quote .container{padding-block:clamp(44px,6vw,64px);text-align:center;max-width:900px}
.tech-quote blockquote{margin:0 0 16px;font-family:var(--font-display);font-weight:500;font-size:20px;
  line-height:1.4;letter-spacing:-.4px}
.tq-slide .testimonial__avatar{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.25)}
.tech-quote cite{font-style:normal;font-weight:600}
.tech-quote cite span{color:rgba(255,255,255,.72);font-weight:400}
/* Slider de testimonios */
.tq-slider .slide{height:auto;flex:0 0 100%;scroll-snap-align:start}
.tq-slide{text-align:center;padding:0 4%}
.tq-slider .slider__track{border-radius:0}
.tq-slider .slider__dots{margin-top:24px}
.tq-slider .slider__dots button{background:rgba(255,255,255,.4)}
.tq-slider .slider__dots button:hover{background:rgba(255,255,255,.7)}
.tq-slider .slider__dots button.is-active{background:#fff}

/* Phases */
.tech-phases__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.tech-phase{background:#fff;border:1px solid var(--border-subtle);border-radius:var(--radius);padding:30px 26px;position:relative}
.tech-phase__no{font-family:var(--font-display);font-weight:600;font-size:2.5rem;line-height:1;letter-spacing:-2px;color:var(--accent-primary-subtle);
  -webkit-text-stroke:1px var(--primary-300);display:block;margin-bottom:14px}
.tech-phase h4{margin:0 0 10px;font-size:1.3125rem}
.tech-phase p{margin:0;color:var(--text-secondary);font-size:0.9375rem;line-height:1.5}

.cta-band__actions{display:flex;flex-wrap:wrap;gap:14px;justify-content:center}

/* Tecnología responsive */
@media (max-width:1024px){
  .tech-stats__grid,.tech-spectrum__grid,.tech-phases__grid{grid-template-columns:1fr}
  .tech-reasons__grid,.tech-endorse__grid{grid-template-columns:1fr 1fr}
  .tech-principle__grid,.tech-reaction__grid{grid-template-columns:1fr}
  .tech-steps__grid{grid-template-columns:1fr;gap:18px}
  .tech-step__arrow{display:none}
}
@media (max-width:860px){
  .tech-molecule{min-height:340px}
}
@media (max-width:560px){
  .tech-reasons__grid,.tech-endorse__grid{grid-template-columns:1fr}
}

/* ============================================================
   PÁGINA: DESCARGA DE BROCHURES
   ============================================================ */
.bro-hero-sec{padding-block:clamp(28px,4vw,48px)}
.bro-hero{background:var(--accent-primary-subtle);border-radius:var(--radius-lg);padding:clamp(28px,5vw,56px);
  display:grid;grid-template-columns:1.2fr .9fr;gap:clamp(28px,5vw,56px);align-items:center}
.bro-hero__text .eyebrow{display:inline-block;margin-bottom:16px}
.bro-hero h1{font-size:clamp(2.25rem,4.4vw,3.25rem);line-height:1.08;letter-spacing:-1.5px;margin-bottom:16px}
.bro-hero__subtitle{font-family:var(--font-display);font-weight:600;font-size:1.125rem;color:var(--text-primary);margin:0 0 14px}
.bro-hero__lead{font-size:1rem;line-height:1.65;color:var(--text-secondary);margin:0;max-width:36rem}
.bro-hero__media{aspect-ratio:4/3;border-radius:var(--radius);background:#fff;display:grid;place-items:center;overflow:hidden;box-shadow:var(--shadow-sm)}
.bro-hero__media img{width:100%;height:100%;object-fit:cover}
.bro-hero__placeholder{color:#9aa1b4}.bro-hero__placeholder svg{width:3rem;height:3rem}

/* Brochures grid */
.bro-list-sec{padding-top:0;padding-bottom:74px}
.bro-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.bro-card{background:#fff;border:1px solid var(--border-subtle);border-radius:var(--radius);overflow:hidden;
  display:flex;flex-direction:column;transition:box-shadow .18s ease,transform .18s ease}
.bro-card:hover{box-shadow:var(--shadow-md);transform:translateY(-3px)}
.bro-card__cover{position:relative;aspect-ratio:4/3;background:#f1f3f7;overflow:hidden}
.bro-card__cover img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:top center}
.bro-card__ph{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;color:#9aa1b4;font-family:var(--font-display);font-weight:600;font-size:0.8125rem}
.bro-card__ph svg{width:2.5rem;height:2.5rem}
.bro-card__body{padding:22px;display:flex;flex-direction:column;gap:10px;flex:1}
.bro-card__body h5{margin:0;font-size:1.0625rem}
.bro-card__body p{margin:0;color:var(--text-secondary);font-size:0.9062rem;line-height:1.5}
.bro-card__btn{align-self:flex-start;margin-top:auto}

/* Videos */
.bro-videos-sec{background:var(--bg-light-100);padding-block:74px}
.bro-videos-sec .section-head{text-align:center;margin-inline:auto}
.video-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}
/* Slider de videos con flechas (sin autoplay). Un video a la vez, reproducción inline. */
.video-slider{position:relative;width:60%;margin-inline:auto}
.video-slider__track{display:flex;gap:24px;overflow-x:auto;scroll-snap-type:x mandatory;
  scroll-behavior:smooth;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding-bottom:4px}
.video-slider__track::-webkit-scrollbar{display:none}
.video-slide{flex:0 0 100%;scroll-snap-align:center}
.video-embed{position:relative;aspect-ratio:16/9;border-radius:var(--radius);overflow:hidden;
  background:#000;box-shadow:var(--shadow-md)}
.video-embed iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.video-embed--empty{display:grid;place-items:center}
.video-embed--empty img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.video-embed--empty .video-card__play{position:relative;width:68px;height:48px;z-index:2}
.video-slide__label{display:block;margin-top:12px;text-align:center;color:var(--text-primary);
  font-family:var(--font-display);font-weight:600;font-size:0.95rem}
.video-slider__arrow{position:absolute;top:calc(50% - 24px);transform:translateY(-50%);z-index:5;
  width:48px;height:48px;border-radius:50%;border:1px solid var(--border-subtle);
  background:#fff;color:var(--text-primary);display:grid;place-items:center;cursor:pointer;
  box-shadow:var(--shadow-md);transition:opacity .18s ease,background .18s ease}
.video-slider__arrow svg{width:24px;height:24px}
.video-slider__arrow:hover{background:var(--bg-light-100)}
.video-slider__arrow--prev{left:-24px}
.video-slider__arrow--next{right:-24px}
.video-slider__arrow[disabled]{opacity:.35;cursor:default;pointer-events:none}
.video-card{position:relative;display:block;aspect-ratio:16/9;border-radius:var(--radius);overflow:hidden;background:transparent}
.video-card__poster{position:absolute;inset:0}
.video-card__poster img{width:100%;height:100%;object-fit:cover}
.video-card::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(9,13,26,.18),rgba(9,13,26,.04))}
.video-card__label{position:absolute;top:14px;left:14px;z-index:2;color:#fff;font-family:var(--font-display);font-weight:600;
  font-size:0.8125rem;text-shadow:0 1px 4px rgba(0,0,0,.45)}
.video-card__play{position:absolute;inset:0;margin:auto;width:68px;height:48px;z-index:2;transition:transform .18s ease}
.video-card:hover .video-card__play{transform:scale(1.08)}
.video-card__play svg{width:100%;height:100%;filter:drop-shadow(0 2px 6px rgba(0,0,0,.3))}

/* Formulario HubSpot */
.bro-form-sec{scroll-margin-top:90px}
.bro-form{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,5vw,56px);align-items:start}
.bro-form__text h2{font-size:clamp(1.75rem,3vw,2.25rem)}
.bro-form__text p{color:var(--text-secondary);font-size:1.0625rem;line-height:1.6;max-width:32rem}
.bro-form__image{margin-top:24px;max-width:32rem}
.bro-form__embed{background:#fff;border:1px solid var(--border-subtle);border-radius:var(--radius);padding:clamp(20px,3vw,32px)}
.bro-form__demo{display:flex;flex-direction:column;gap:12px}
.bro-form__field{display:block;padding:14px 16px;border:1px solid var(--border-subtle);border-radius:8px;color:#9aa1b4;background:var(--bg-light-100)}
.bro-form__btn{justify-content:center;margin-top:4px}
.bro-form__hint{color:#9aa1b4;font-size:0.8125rem;margin-top:6px}

/* Responsive brochures */
@media (max-width:980px){
  .bro-hero{grid-template-columns:1fr}
  .bro-grid{grid-template-columns:repeat(2,1fr)}
  .bro-form{grid-template-columns:1fr}
  .video-slider{width:100%}
  .video-slider__arrow--prev{left:6px}
  .video-slider__arrow--next{right:6px}
}
@media (max-width:640px){
  .bro-grid,.video-grid{grid-template-columns:1fr}
  .video-slider__arrow{width:40px;height:40px}
}

/* ============================================================
   BLOG — ARCHIVO
   ============================================================ */
.blog-hero{padding-block:clamp(40px,6vw,72px)}
.blog-hero .eyebrow{display:inline-block;background:var(--accent-primary-subtle);color:var(--accent-primary);
  padding:8px 16px;border-radius:999px;margin-bottom:22px}
.blog-hero h1{font-size:clamp(2.25rem,4.8vw,3.5rem);line-height:1.05;letter-spacing:-2px;margin-bottom:16px}
.blog-hero__lead{font-size:1.0625rem;line-height:1.6;color:var(--text-secondary);max-width:40rem;margin:0}

/* Meta común */
.blog-meta{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin:0 0 12px;font-size:0.8125rem;color:#6a7390}
.blog-meta__cat{font-family:var(--font-display);font-weight:600;color:var(--accent-primary)}

/* Artículo destacado */
.blog-featured-sec{background:var(--bg-light-100);padding-block:clamp(32px,5vw,56px)}
.blog-featured{display:grid;grid-template-columns:1.1fr 1fr;gap:0;background:#fff;border:1px solid var(--border-subtle);
  border-radius:var(--radius-lg);overflow:hidden;margin-top:18px}
.blog-featured__img{display:block;min-height:280px;background:var(--accent-primary-subtle);overflow:hidden}
.blog-featured__img img{width:100%;height:100%;object-fit:cover;display:block}
.blog-featured__body{padding:clamp(28px,4vw,48px);align-self:center}
.blog-featured__body h3{font-size:clamp(1.5rem,2.6vw,1.875rem);line-height:1.18;margin:0 0 14px}
.blog-featured__body h3 a{color:var(--text-primary)}
.blog-featured__body h3 a:hover{color:var(--accent-primary);text-decoration:none}
.blog-featured__excerpt{color:var(--text-secondary);font-size:1rem;line-height:1.6;margin:0 0 20px}

/* Últimos artículos */
.blog-latest{background:#f1f4fb;padding-top:74px}
.blog-latest__head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;flex-wrap:wrap;margin-bottom:32px}
.blog-latest__head .section-head{margin-bottom:0}
.blog-filters{display:flex;gap:8px;flex-wrap:wrap}
.blog-filter{font-family:var(--font-display);font-weight:600;font-size:0.875rem;padding:8px 16px;border-radius:999px;
  border:1px solid var(--border-subtle);color:var(--text-secondary);background:#fff}
.blog-filter:hover{border-color:var(--accent-primary);color:var(--accent-primary);text-decoration:none}
.blog-filter.is-active{background:var(--accent-primary);color:#fff;border-color:var(--accent-primary)}

.post-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.post-card__img{display:block;aspect-ratio:16/10}
.post-card__body h5{margin:0 0 8px;font-size:1.0625rem;line-height:1.3}
.post-card__body h5 a{color:var(--text-primary)}
.post-card__body h5 a:hover{color:var(--accent-primary);text-decoration:none}
.post-card__excerpt{margin:0;color:var(--text-secondary);font-size:0.9062rem;line-height:1.5}

.blog-more{display:flex;justify-content:center;margin-top:36px}
.blog-more a{text-decoration:none}

/* Newsletter — hero de 2 columnas (texto / formulario) */
.blog-newsletter{background:var(--grad-primary-dark);color:#fff}
.blog-newsletter__inner{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,4vw,56px);
  align-items:center;padding-block:clamp(36px,5vw,56px);text-align:left}
.blog-newsletter__text{max-width:none}
.blog-newsletter__col{min-width:0}
.blog-newsletter h2{color:#fff;font-size:clamp(1.75rem,3.2vw,2.5rem);margin:0 0 12px}
.blog-newsletter p{color:rgba(255,255,255,.85);margin:0}
.blog-newsletter__embed{width:100%}
.blog-newsletter__form{display:flex;gap:10px;width:100%}
.blog-newsletter__form input{flex:1;min-width:0;padding:14px 18px;border-radius:8px;border:1px solid transparent;
  font-family:var(--font-body);font-size:1rem;background:#fff;color:var(--text-primary)}
.blog-newsletter__form .btn{flex:0 0 auto}

@media (max-width:980px){
  .blog-featured{grid-template-columns:1fr}
  .blog-featured__img{min-height:220px;aspect-ratio:16/9}
  .blog-newsletter__inner{grid-template-columns:1fr;text-align:center}
  .blog-newsletter p{margin:0 auto}
  .post-grid{grid-template-columns:repeat(2,1fr)}
  .blog-latest__head{align-items:flex-start}
}
@media (max-width:640px){
  .post-grid{grid-template-columns:1fr}
  .blog-newsletter__form{flex-direction:column}
}

/* ============================================================
   SINGLE SECTOR
   ============================================================ */
.sector-hero{padding-top:30px}
.sector-hero .hero__grid{align-items:center}
.sector-hero h1{font-weight:500;font-size:clamp(1.8rem,3.52vw,2.6rem);line-height:1.1;letter-spacing:-1.5px;margin-bottom:22px}
.sector-hero h1 .hl{color:var(--accent-primary)}
.sector-hero__lead{font-size:1.0625rem;line-height:1.6;color:var(--text-secondary);max-width:34rem;margin:0 0 28px}
/* Botones del hero: siempre en una línea, repartidos en partes iguales;
   el texto de cada botón pasa a 2 líneas si hace falta, con misma altura */
.sector-hero .hero__actions{flex-wrap:nowrap;align-items:stretch;gap:12px}
.sector-hero .hero__actions .btn{flex:1 1 0;min-width:0;white-space:normal;text-align:center;justify-content:center;line-height:1.2}

/* Tarjeta oscura de patógenos del hero */
.sector-patho{position:relative;align-self:stretch;min-height:24rem;border-radius:24px;overflow:hidden;box-shadow:var(--shadow-md);
  background:radial-gradient(120% 120% at 70% 20%,#0a1f6e 0%,#06103e 55%,#040a26 100%);display:grid;place-items:center}
.sector-patho__badge{position:relative;z-index:2;display:inline-grid;place-items:center;width:8.5rem;height:8.5rem;border-radius:50%;
  background:radial-gradient(circle at 40% 35%,#19c79a,#0c7e62 70%);color:#fff;font-family:var(--font-display);font-weight:600;
  font-size:0.8125rem;text-align:center;letter-spacing:.5px;text-transform:uppercase;line-height:1.2;
  box-shadow:0 0 0 .6rem rgba(19,170,133,.12),0 0 3rem rgba(19,170,133,.45);padding:0 1rem}
.sector-patho__node{position:absolute;display:grid;place-items:center;padding:.45rem .85rem;border-radius:999px;
  font-family:var(--font-display);font-weight:600;font-size:0.8125rem;color:#dbe6ff;background:rgba(255,255,255,.06);
  border:1px solid rgba(112,148,255,.35)}
.sector-patho .n1{left:12%;top:20%}.sector-patho .n2{right:12%;top:32%}.sector-patho .n3{left:18%;bottom:20%}
.sector-patho__svg{width:100%;height:100%;object-fit:contain;padding:clamp(1.25rem,3vw,2.5rem)}
img.sector-patho__svg{object-fit:cover;padding:0}

.tech-molecule__video,.sector-patho__video{position:relative;width:100%;aspect-ratio:16/9;border-radius:14px;overflow:hidden;background:transparent}
.tech-molecule__video iframe,.sector-patho__video iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
/* El degradado de fondo solo aplica para SVG / ilustración por defecto.
   Para imagen (otro formato) o video, sin fondo ni sombra. */
.tech-molecule:has(img),.tech-molecule:has(.tech-molecule__video),
.sector-patho:has(img),.sector-patho:has(.sector-patho__video){background:none;box-shadow:none}
/* Si el hero muestra un video, el contenedor se ajusta al alto del video (no al min-height del SVG) */
.tech-molecule:has(.tech-molecule__video),.sector-patho:has(.sector-patho__video){min-height:0;align-self:start}
.tech-molecule:has(.tech-molecule__video) .tech-molecule__video,
.sector-patho:has(.sector-patho__video) .sector-patho__video{border-radius:inherit}
/* SVG animado del hero (inline) — clases del SVG de Odorox */
.sector-patho__art,.sector-patho>svg{width:100%;height:100%;display:block}
.sector-patho .hidroxilo-anim{animation:sgo-float 4s ease-in-out infinite;transform-origin:center}
.sector-patho .uv-glow{animation:sgo-glow 2s ease-in-out infinite}
.sector-patho .pathogen-fade{animation:sgo-pathogen 3s ease-out infinite;transform-origin:center}
@keyframes sgo-float{0%,100%{transform:translate(0,0)}50%{transform:translate(0,-6px)}}
@keyframes sgo-glow{0%,100%{opacity:.4}50%{opacity:1}}
@keyframes sgo-pathogen{0%{opacity:1;transform:scale(1)}100%{opacity:0;transform:scale(.2)}}
@media (prefers-reduced-motion:reduce){
  .sector-patho .hidroxilo-anim,.sector-patho .uv-glow,.sector-patho .pathogen-fade{animation:none}
}

/* Tags de subsectores */
.sector-tags{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:0;
  padding:30px 0 0;border-top:0}
.sector-tags{align-items:stretch}
.sector-tags li{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:8px;
  background:#fff;border:1px solid var(--border-subtle);border-radius:12px;padding:16px 10px;font-family:var(--font-display);
  font-weight:600;font-size:0.8125rem;line-height:1.2;color:var(--text-primary);
  transition:transform .18s ease,border-color .18s ease,background .18s ease}
.sector-tags li:hover{border-color:var(--accent-primary);background:var(--accent-primary-subtle);transform:translateY(-2px)}
.sector-tags li svg,.sector-tags li img{width:1.75rem;height:1.75rem;color:var(--accent-primary)}

/* Placeholder cuando el slider no tiene imágenes */
.sector-placeholder{display:grid;place-items:center;text-align:center;height:clamp(220px,32vw,420px);
  border-radius:var(--radius-lg);background:#eef0f4;border:1px dashed var(--border-subtle);color:#8b93a8}
.sector-placeholder__inner{display:flex;flex-direction:column;align-items:center;gap:10px;
  font-family:var(--font-display);font-weight:600;font-size:0.9375rem;letter-spacing:.3px}
.sector-placeholder__inner svg{width:2.5rem;height:2.5rem;opacity:.75}
.sector-slider-sec{padding-block:clamp(28px,4vw,48px)}

/* Slider de imágenes (autoplay + puntos + swipe) */
.slider{position:relative}
.slider__track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;
  border-radius:var(--radius-lg);-ms-overflow-style:none;scrollbar-width:none}
.slider__track::-webkit-scrollbar{display:none}
.slide{flex:0 0 100%;scroll-snap-align:center;height:clamp(240px,38vw,480px);margin:0}
.slide img{width:100%;height:100%;object-fit:cover;display:block}
.slider__arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:5;width:34px;height:34px;
  border:0;background:none;padding:0;display:grid;place-items:center;cursor:pointer;
  color:var(--accent-primary);transition:opacity .18s ease}
.slider__arrow svg{width:28px;height:28px}
.slider__arrow:hover{opacity:.65}
.slider__arrow--prev{left:-10px}
.slider__arrow--next{right:-10px}
/* Flecha blanca sobre fondo azul (Tecnología) */
.tq-slider .slider__arrow{color:#fff}
.tq-slider .slider__arrow--prev{left:-25px}
.tq-slider .slider__arrow--next{right:-25px}
@media (max-width:640px){
  .testimonial-slider .slider__arrow,.tq-slider .slider__arrow{display:none}
}
.slider__dots{display:flex;gap:8px;justify-content:center;align-items:center;margin-top:18px}
.slider__dots button{width:8px;height:8px;padding:0;border:0;border-radius:999px;background:var(--border-subtle);
  cursor:pointer;transition:width .2s ease,background .2s ease}
.slider__dots button:hover{background:var(--primary-300)}
.slider__dots button.is-active{width:24px;background:var(--accent-primary)}

/* La solución (texto centrado) */
.section-la-solucion{padding-top:0}
.sector-intro{max-width:46rem;text-align:center;margin-inline:auto}
.sector-intro .eyebrow{display:inline-block;margin-bottom:12px}
.sector-intro p{color:var(--text-secondary);font-size:1.0625rem;line-height:1.65;margin:0}

/* Flujo de proceso */
.sector-flow{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:12px;margin-bottom:40px}
.sector-flow__step{font-family:var(--font-display);font-weight:600;font-size:0.9375rem;letter-spacing:.4px;color:var(--accent-primary);
  background:var(--accent-primary-subtle);border-radius:999px;padding:10px 18px}
.sector-flow__arrow{color:var(--primary-300);font-weight:700}

/* Zonas */
.zones-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px}
.zone-card{background:#fff;border:1px solid var(--border-subtle);border-radius:var(--radius);padding:22px 20px}
.zone-card__no{font-family:var(--font-display);font-weight:600;font-size:0.75rem;letter-spacing:1px;text-transform:uppercase;color:var(--accent-secondary)}
.zone-card h4{margin:10px 0 8px;font-size:1.1875rem}
.zone-card p{margin:0;color:var(--text-secondary);font-size:0.9062rem;line-height:1.5}

/* Dónde se aplica — caja del gráfico */
.sector-aplica-sec{background:var(--bg-light-100)}
.sector-aplica__graphic svg,.sector-aplica__graphic img{display:block;width:100%;height:auto;margin-inline:auto}
/* Desktop vs mobile graphic */
.sector-aplica__mobile{display:none}
.sector-aplica__graphic>.sector-aplica__mobile:only-child{display:block}
@media (max-width:768px){
  .sector-aplica__graphic.has-mobile .sector-aplica__desktop{display:none}
  .sector-aplica__graphic.has-mobile .sector-aplica__mobile{display:block}
}

/* Espectro de patógenos */
.sector-patho-sec{background:var(--bg-light-100)}
.patho-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.patho-col{background:#fff;border:1px solid var(--border-subtle);border-radius:var(--radius);padding:28px 26px;display:flex;flex-direction:column}
.patho-col h4{margin:0 0 6px;font-size:1.3125rem}
.patho-col__sub{margin:0 0 18px;color:var(--text-secondary);font-size:0.9062rem;line-height:1.5}
.patho-col ul{list-style:none;margin:0 0 18px;padding:0;display:grid;gap:11px}
.patho-col li{display:flex;align-items:center;gap:10px;font-size:0.9375rem;color:var(--text-primary)}
.patho-col .dot{width:8px;height:8px;border-radius:50%;background:var(--accent-secondary);flex:0 0 auto}
.patho-col__note{margin:auto 0 0;padding-top:16px;border-top:1px solid var(--border-subtle);color:#6a7390;font-size:0.8125rem;line-height:1.5}

/* Impacto operativo */
.ops-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.ops-card{background:#fff;border:1px solid var(--border-subtle);border-radius:var(--radius);padding:26px 24px}
.ops-card__tag{display:inline-block;font-family:var(--font-display);font-weight:600;font-size:0.6875rem;letter-spacing:1px;
  text-transform:uppercase;color:var(--status-success);background:rgba(19,170,133,.1);border-radius:999px;padding:6px 11px;margin-bottom:14px}
.ops-card h5{margin:0 0 8px;font-size:1.0625rem}
.ops-card p{margin:0;color:var(--text-secondary);font-size:0.9062rem;line-height:1.55}

/* Casos reales */
.sector-cases{background:var(--bg-light-100)}
.cases-grid{display:flex;flex-wrap:wrap;gap:22px}
.cases-grid>.case-card{flex:1 1 0;min-width:260px}
.case-card{background:#fff;border:1px solid var(--border-subtle);border-radius:var(--radius);padding:26px 24px;display:flex;flex-direction:column}
.case-card__tag{font-family:var(--font-display);font-weight:600;font-size:0.6875rem;letter-spacing:1px;text-transform:uppercase;color:var(--accent-primary)}
.case-card h4{margin:12px 0 4px;font-size:1.3125rem}
.case-card__desc{margin:0 0 16px;color:#6a7390;font-size:0.875rem}
.case-card__metric{font-family:var(--font-display);font-weight:600;font-size:clamp(2.25rem,3.4vw,3rem);line-height:1;
  letter-spacing:-1.5px;color:var(--accent-primary);margin:0 0 8px}
.case-card__result{margin:0 0 12px;font-family:var(--font-display);font-weight:600;font-size:0.9375rem;line-height:1.35;color:var(--text-primary)}
.case-card__quote{margin:0 0 20px;font-size:0.9375rem;line-height:1.55;color:var(--text-secondary)}
.case-card__author{margin-top:auto;border-top:1px solid var(--border-subtle);padding-top:16px;display:flex;flex-direction:column;gap:2px;font-size:0.875rem}
.case-card__author strong{color:var(--text-primary)}
.case-card__author span{color:#6a7390}

/* Caso destacado (banda azul + gráfico) */
.featured-case{background:var(--grad-primary-dark);color:#fff}
.featured-case__inner{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,610px);gap:clamp(28px,5vw,56px);align-items:center;
  padding-block:clamp(40px,6vw,64px)}
.featured-case .eyebrow{color:var(--accent-secondary)}
.featured-case h3{color:#fff;margin:12px 0 16px;max-width:20ch}
.featured-case__quote{margin:0 0 18px;padding:0;border:0;color:rgba(255,255,255,.9);font-size:1.0625rem;line-height:1.55}
.featured-case__author{color:rgba(255,255,255,.82);font-size:0.9375rem;margin:0}
.featured-case__author strong{color:#fff}
.featured-case__chart{border-radius:var(--radius);overflow:hidden}
.featured-case__chart svg,.featured-case__chart img{display:block;width:100%;height:auto;margin-inline:auto}
.featured-case__chart-title{display:block;font-family:var(--font-display);font-weight:600;font-size:0.9375rem;margin-bottom:18px}
.chart-bars{display:flex;align-items:flex-end;gap:12px;height:120px}
.chart-bars span{flex:1;height:var(--h);background:linear-gradient(180deg,var(--accent-secondary),#1366c9);border-radius:6px 6px 0 0;min-height:6px}
.featured-case__chart-note{display:block;margin-top:14px;color:rgba(255,255,255,.6);font-size:0.75rem;line-height:1.4}

/* FAQ */
.sector-faq__inner{max-width:50rem;margin-inline:auto}
.faq-list{display:grid;gap:12px}
.faq-item{background:#fff;border:1px solid var(--border-subtle);border-radius:var(--radius);overflow:hidden}
.faq-item summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:16px;
  padding:20px 24px;font-family:var(--font-display);font-weight:600;font-size:1.0625rem;color:var(--text-primary)}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item__icon{position:relative;flex:0 0 auto;width:18px;height:18px}
.faq-item__icon::before,.faq-item__icon::after{content:"";position:absolute;background:var(--accent-primary);transition:transform .2s}
.faq-item__icon::before{top:8px;left:0;width:18px;height:2px}
.faq-item__icon::after{left:8px;top:0;width:2px;height:18px}
.faq-item[open] .faq-item__icon::after{transform:scaleY(0)}
.faq-item[open] summary{color:var(--accent-primary)}
.faq-item__body{padding:0 24px 22px}
.faq-item__body p{margin:0;color:var(--text-secondary);font-size:0.9375rem;line-height:1.6}

/* Single sector responsive */
@media (max-width:1024px){
  .zones-grid{grid-template-columns:repeat(2,1fr)}
  .patho-grid,.ops-grid,.cases-grid{grid-template-columns:1fr}
  .featured-case__inner{grid-template-columns:1fr}
}
@media (max-width:860px){
  .sector-hero .hero__grid{grid-template-columns:1fr}
  .sector-patho{min-height:18rem}
}
@media (max-width:560px){
  .zones-grid{grid-template-columns:1fr}
  .sector-tags{grid-template-columns:repeat(2,1fr)}
  .sector-hero .hero__actions .btn{white-space:normal;text-align:center}
}

/* ============================================================
   WP ADMIN BAR (solo usuarios logueados)
   El header sticky se ubica bajo la barra; la barra se oculta al hacer scroll.
   ============================================================ */
#wpadminbar{transition:transform .28s ease}
body.admin-bar .site-header{top:32px;transition:top .28s ease}
@media screen and (max-width:782px){
  body.admin-bar .site-header{top:46px}
}
body.adminbar-hidden #wpadminbar{transform:translateY(-100%)}
body.adminbar-hidden.admin-bar .site-header{top:0}

/* ============================================================
   EQUIPOS (template-equipos.php)
   ============================================================ */
/* Tamaños de fuente extraídos del Figma (Equipos - Desktop, node 2:2236) */
.eq-hero{background:var(--bg-light-50);text-align:center;padding-block:clamp(48px,7vw,84px)}
.eq-hero .container{max-width:var(--maxw)}
.eq-hero .eyebrow{display:inline-block;background:var(--accent-primary-subtle);color:var(--accent-primary);
  border-radius:999px;padding:7px 16px;font-size:0.8125rem;font-weight:600;letter-spacing:0.065px;text-transform:none;margin-bottom:18px}
.eq-hero__subtitle{color:var(--accent-primary);font-family:var(--font-display);font-weight:400;
  font-size:1.375rem;line-height:1.4;margin:0 0 12px}
.eq-hero h1{margin:0 0 20px;font-size:3rem;font-weight:600;line-height:1.1;color:var(--text-primary)}
.eq-hero__lead{color:var(--text-secondary);font-size:1rem;font-weight:400;line-height:1.65;margin:0 auto}

/* Catálogo: sección con fondo azul claro y encabezado alineado a la izquierda (Figma) */
.eq-catalog{background:var(--primary-50)}
.eq-video{background:var(--bg-light-100);padding-block:clamp(40px,6vw,72px)}
.eq-video__eyebrow{display:block;text-align:center;margin-bottom:16px}
.eq-video__caption{margin:16px auto 0;max-width:1104px;text-align:center;color:var(--text-primary);
  font-family:var(--font-display);font-weight:600;font-size:0.95rem}
.eq-video .container{max-width:var(--maxw)}
.eq-video__frame{width:60%;max-width:1104px;margin-inline:auto;position:relative;aspect-ratio:16/9;
  border-radius:18px;overflow:hidden;background:#000;box-shadow:var(--shadow-md)}
@media (max-width:860px){ .eq-video__frame{width:100%} }
.eq-video__frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.eq-catalog .section-head{text-align:left;max-width:none;margin:0 0 32px}
.eq-catalog .section-head .eyebrow{display:block;color:var(--text-primary);font-size:1rem;font-weight:600;
  letter-spacing:normal;text-transform:none;margin-bottom:6px}
.eq-catalog .section-head h2{font-size:2rem;font-weight:500;letter-spacing:-0.32px;line-height:1.15;color:var(--text-primary)}
.eq-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.eq-card{background:#fff;border:1px solid var(--border-subtle);border-radius:var(--radius);overflow:hidden;
  display:flex;flex-direction:column;transition:box-shadow .18s ease,transform .18s ease}
.eq-card:hover{box-shadow:var(--shadow-md);transform:translateY(-3px)}
.eq-card__img{position:relative;aspect-ratio:1/1;background:#fff;display:grid;place-items:center;padding:6%;overflow:hidden}
.eq-card__img img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}
.eq-card__img .eq-card__ph{display:grid;place-items:center}
.eq-card__ph{color:#aeb4c4}.eq-card__ph svg{width:2.75rem;height:2.75rem}
.eq-card__body{padding:24px;display:flex;flex-direction:column;gap:10px;flex:1}
.eq-card__cat{font-size:0.6875rem;font-weight:500;letter-spacing:0.6px}
.eq-card__body h5{margin:0;font-size:1.375rem;font-weight:500;letter-spacing:-0.4px;line-height:1.2}
.eq-card__body p{margin:0;color:var(--text-secondary);font-size:0.875rem;font-weight:400;line-height:1.55}
.eq-card__link{margin-top:auto;padding-top:8px;font-size:0.8125rem;font-weight:700;text-transform:uppercase;letter-spacing:0.3px}

.cta-band--blue{background:var(--accent-primary)}
.cta-band h2.eq-cta__title{font-size:2.5rem;font-weight:500;letter-spacing:-0.6px}
.btn--green{background:var(--status-success);color:#fff;border:none;font-size:0.9375rem;font-weight:500}
.btn--green:hover{background:#0f9070;color:#fff;text-decoration:none}

@media (max-width:1024px){
  .eq-grid{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:768px){
  .eq-hero h1{font-size:2.25rem}
}
@media (max-width:600px){
  .eq-grid{grid-template-columns:1fr}
}

/* ============================================================
   CASOS DE ÉXITO — ARCHIVO (template-casos-exito.php)
   Tamaños/colores extraídos del Figma (node 29:1444)
   ============================================================ */
.ce-archive{background:var(--bg-light-100);padding-top:72px}
.ce-archive__head{text-align:left;max-width:45rem;margin:0 0 56px}
.ce-archive__title{font-size:3rem;font-weight:500;letter-spacing:-0.72px;line-height:1.1;margin:0 0 16px;color:var(--text-primary)}
.ce-archive__lead{font-size:1rem;font-weight:400;line-height:1.6;color:var(--text-secondary);margin:0}
.ce-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.ce-card{display:flex;flex-direction:column;background:var(--bg-light-50);border:1px solid var(--border-subtle);
  border-radius:12px;overflow:hidden;transition:box-shadow .18s ease,transform .18s ease}
.ce-card:hover{box-shadow:var(--shadow-md);transform:translateY(-3px)}
.ce-card__img{display:block;position:relative;aspect-ratio:290/183;background:var(--accent-primary-subtle);overflow:hidden}
.ce-card__img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.ce-card__body{padding:24px;display:flex;flex-direction:column;gap:12px;flex:1}
.ce-card__title{font-family:var(--font-body);font-weight:500;font-size:1.125rem;line-height:1.3;letter-spacing:1.44px;
  color:var(--text-primary);text-decoration:none}
.ce-card__title:hover{color:var(--accent-primary)}
.ce-card__more{margin-top:auto;font-family:var(--font-body);font-weight:600;font-size:1rem;color:var(--accent-primary);text-decoration:none}
.ce-card__more:hover{text-decoration:underline}
.ce-empty{color:var(--text-secondary)}
.ce-pagination,.blog-pagination{margin-top:40px}
.ce-pagination ul,.blog-pagination ul{list-style:none;display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;justify-content:center}
.ce-pagination a,.ce-pagination span,.blog-pagination a,.blog-pagination span{display:grid;place-items:center;min-width:40px;height:40px;padding:0 12px;border-radius:8px;
  border:1px solid var(--border-subtle);background:var(--bg-light-50);color:var(--text-primary);font-weight:600;text-decoration:none}
.ce-pagination .current,.blog-pagination .current{background:var(--accent-primary);border-color:var(--accent-primary);color:#fff}
.ce-pagination a:hover,.blog-pagination a:hover{border-color:var(--accent-primary);color:var(--accent-primary)}
.blog-pagination__info{margin:14px 0 0;text-align:center;color:var(--text-secondary);font-size:0.875rem}
.blog-pagination__info,.blog-pagination ul li{border:0}

@media (max-width:1024px){
  .ce-grid{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:768px){
  .ce-archive__title{font-size:2.25rem}
}
@media (max-width:560px){
  .ce-grid{grid-template-columns:1fr}
}

/* ============================================================
   CASO DE ÉXITO — SINGLE (single-caso-exito.php)
   Tamaños/colores extraídos del Figma (node 1:2142)
   ============================================================ */
.case-hero{background:var(--bg-light-100);padding-block:30px}
.case-hero__grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,0.95fr);gap:clamp(32px,4vw,56px);align-items:start}
.case-hero__media{position:relative;aspect-ratio:62/39;border-radius:18px;overflow:hidden;
  background-image:linear-gradient(147deg,#0a1f44 0%,var(--status-success) 71%)}
.case-hero__media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.case-hero__media::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.05),rgba(0,0,0,.42))}
.case-hero__eyebrow{display:inline-block;background:var(--accent-primary-subtle);color:var(--accent-primary);
  border-radius:16px;padding:6px 13px;font-size:0.8125rem;font-weight:500;letter-spacing:.4px;text-transform:uppercase;margin-bottom:18px}
.case-hero__title{font-family:var(--font-body);font-size:2.125rem;font-weight:500;line-height:1.18;letter-spacing:-0.3px;
  color:var(--text-primary);margin:0}
.case-hero__lede{margin-top:18px}
.case-hero__lede p{font-size:1rem;line-height:1.6;color:var(--text-secondary);margin:0}

/* Cuerpo editorial (the_content estilizado al design system) */
.case-body{background:var(--bg-light-50);padding-top:30px;padding-bottom:clamp(40px,6vw,72px)}
.case-content{max-width:none;color:var(--text-primary)}
.case-content > *{margin-block:0}
.case-content > * + *{margin-top:1.25em}
.case-content h2{font-family:var(--font-display);font-size:1.875rem;font-weight:500;line-height:1.2;letter-spacing:-0.3px;
  color:var(--text-primary);margin-top:0}
.case-content h3{font-family:var(--font-display);font-size:1.375rem;font-weight:600;line-height:1.25;color:var(--text-primary);margin-top:1.6em}
.case-content h4{font-size:1.125rem;font-weight:600;color:var(--text-primary);margin-top:1.4em}
/* Encabezado 6 = epígrafe pequeño (kicker) en mayúsculas */
.case-content h6{font-family:var(--font-body);font-size:0.6875rem;font-weight:600;letter-spacing:1px;text-transform:uppercase;
  color:var(--accent-primary);margin-top:2em;margin-bottom:-0.6em}
.case-content p{font-size:1rem;line-height:1.75;color:var(--text-primary)}
.case-content a{color:var(--accent-primary);text-decoration:underline;text-underline-offset:2px}
.case-content strong{font-weight:700}
.case-content img{display:block;max-width:80%;width:auto;height:auto;border-radius:12px;margin-inline:auto}
.case-content figure{margin:1.5em auto;max-width:80%}
.case-content figure img{max-width:100%}
.case-content figcaption{font-size:0.8125rem;color:var(--text-secondary);margin-top:8px;text-align:center}
/* Citas → tarjeta */
.case-content blockquote{position:relative;background:var(--accent-primary-subtle);border:none;border-radius:12px;
  padding:60px 28px 28px;margin:1.75em 0}
.case-content blockquote::before{content:"\201C";position:absolute;top:10px;left:24px;font-family:var(--font-display);
  font-weight:500;font-size:5rem;line-height:.8;color:var(--accent-primary)}
.case-content blockquote p{font-size:1.125rem;line-height:1.55;color:var(--text-primary);margin:0}
.case-content blockquote p + p{margin-top:.6em}
.case-content blockquote cite{display:block;font-style:normal;font-weight:700;color:var(--text-primary);margin-top:14px}
/* Listas → tarjetas de resultado con marcador verde */
.case-content ul{list-style:none;padding:0;display:grid;gap:12px}
.case-content ul li{position:relative;background:var(--bg-light-50);border:1px solid var(--border-subtle);border-radius:8px;
  padding:16px 18px 16px 60px;font-weight:500;line-height:1.5;color:var(--text-primary)}
.case-content ul li::before{content:"+";position:absolute;left:16px;top:50%;transform:translateY(-50%);display:grid;
  place-items:center;width:28px;height:28px;border-radius:14px;background:var(--status-success);color:#fff;font-weight:700;font-size:0.95rem}
.case-content ol{padding-left:1.25em}
.case-content ol li{margin-top:.4em;line-height:1.6}

.case-back{display:inline-block;margin-top:40px;color:var(--accent-primary);font-weight:600;text-decoration:none}
.case-back:hover{text-decoration:underline}

/* Cuerpo del caso de éxito en una sola columna, a ancho completo (como el hero) */
.case-content{max-width:none;margin-inline:0}

@media (max-width:860px){
  .case-hero__grid{grid-template-columns:1fr}
  .case-hero__title{font-size:1.75rem}
}

/* ============================================================
   CONTACTO (template-contacto.php)
   Tamaños/colores extraídos del Figma (node 1:3094)
   ============================================================ */
.contact-hero{background-image:linear-gradient(192deg,var(--accent-primary) 50%,var(--accent-secondary) 121%);
  text-align:center;padding-block:clamp(48px,7vw,72px)}
.contact-hero .container{max-width:50rem}
.contact-hero__title{color:#fff;font-family:var(--font-display);font-size:2.5rem;font-weight:500;line-height:1.12;
  letter-spacing:-0.6px;margin:0}
.contact-hero__subtitle{color:rgba(255,255,255,.82);font-size:1.125rem;line-height:1.6;margin:16px auto 0;max-width:40rem}

.contact-main{background:var(--bg-canvas);padding-block:clamp(48px,7vw,80px)}
.contact-main__grid{display:grid;grid-template-columns:minmax(0,41fr) minmax(0,59fr);gap:clamp(28px,3vw,40px);align-items:start}
.contact-aside{display:flex;flex-direction:column;gap:32px}
.contact-info{display:flex;flex-direction:column;gap:14px}
.contact-info__label{margin:0;font-family:var(--font-display);font-weight:600;font-size:1rem;letter-spacing:1.2px;
  text-transform:uppercase;color:var(--accent-primary)}
.contact-info__label:not(:first-child){margin-top:10px}
.contact-info__text{margin:0;font-size:1rem;line-height:1.5;color:var(--text-primary)}
.contact-info__text a{color:var(--text-primary);text-decoration:none}
.contact-info__text a:hover{color:var(--accent-primary);text-decoration:underline}
.contact-image{aspect-ratio:480/300;border-radius:18px;overflow:hidden;background:var(--border-subtle)}
.contact-image img{width:100%;height:100%;object-fit:cover;display:block}

.contact-form-card{background:var(--bg-light-50);border:1px solid #adb9e1;border-radius:16px;padding:clamp(24px,3vw,34px)}
.contact-form-card__title{margin:0 0 22px;font-family:var(--font-display);font-size:1.5rem;font-weight:500;
  letter-spacing:-0.5px;line-height:1.25;color:var(--text-primary)}
.contact-form-card__placeholder{margin:0;color:var(--text-secondary);font-size:0.9375rem;
  border:1px dashed var(--border-subtle);border-radius:8px;padding:20px;text-align:center}

@media (max-width:900px){
  .contact-main__grid{grid-template-columns:1fr}
}
@media (max-width:600px){
  .contact-hero__title{font-size:1.875rem}
}

/* ============================================================
   QUIÉNES SOMOS (template-quienes-somos.php)
   ============================================================ */
.qs-hero{background:var(--primary-50);padding-block:clamp(40px,6vw,72px)}
.qs-hero__grid{display:block;text-align:center}
.qs-hero__text{max-width:46rem;margin-inline:auto}
.qs-hero__title{font-size:3rem;font-weight:600;line-height:1.1;letter-spacing:-0.6px;margin:0 0 18px;color:var(--text-primary)}
.qs-hero__lead{font-size:1.0625rem;line-height:1.65;color:var(--text-secondary);margin:0 auto;max-width:40rem}
.qs-hero__media{width:60%;margin:32px auto 0}
.qs-embed{position:relative;aspect-ratio:16/9;border-radius:18px;overflow:hidden;background:transparent}
.qs-embed iframe{position:absolute;inset:0;width:100%;height:100%;border:0}

/* Secciones texto + imagen */
.qs-split{padding-block:clamp(40px,6vw,72px)}
.qs-split__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(32px,4vw,56px);align-items:center}
.qs-split--reverse{background:var(--bg-light-100)}
.qs-split--reverse .qs-split__media{order:-1}
.qs-split__text h2{font-size:2.25rem;font-weight:500;letter-spacing:-0.4px;line-height:1.15;margin:0 0 18px;color:var(--text-primary)}
.qs-prose p{font-size:1rem;line-height:1.7;color:var(--text-primary);margin:0 0 1em}
.qs-prose p:last-child{margin-bottom:0}
.qs-split__media{aspect-ratio:4/3;border-radius:16px;overflow:hidden;background:var(--border-subtle)}
.qs-split__media img{width:100%;height:100%;object-fit:cover;display:block}
.qs-split__media.is-empty{background:repeating-linear-gradient(45deg,#eef0f4,#eef0f4 12px,#e7eaf0 12px,#e7eaf0 24px)}

/* Testimonio CEO */
.qs-ceo{background:var(--accent-primary);color:#fff;padding-block:30px}
.qs-ceo__grid{display:grid;grid-template-columns:225px minmax(0,1fr);gap:clamp(16px,2vw,28px);align-items:center}
.qs-ceo__photo{aspect-ratio:1/1;width:100%;border-radius:18px;overflow:hidden;background:rgba(255,255,255,.12);display:grid;place-items:center}
.qs-ceo__photo img{width:100%;height:100%;object-fit:cover}
.qs-ceo__photo span{color:rgba(255,255,255,.5)}.qs-ceo__photo svg{width:7rem;height:7rem}
.qs-ceo__mark{display:block;font-family:var(--font-display);font-weight:500;font-size:4.5rem;line-height:.6;color:rgba(255,255,255,.5);margin-bottom:8px}
.qs-ceo__quote{font-size:1rem;font-weight:500;line-height:1.6;margin:0 0 22px;color:#fff}
.qs-ceo__name{font-weight:700;font-size:1.0625rem;margin:0;color:#fff}
.qs-ceo__role{font-size:1rem;margin:2px 0 0;color:rgba(255,255,255,.8)}

/* Clientes */
.qs-clients{background:var(--bg-light-50)}
.qs-clients__title{text-align:center;max-width:40rem;margin:0 auto 40px}

/* Descubre */
.qs-discover{background:var(--primary-50)}
.qs-discover .section-head{text-align:center;max-width:42rem;margin:0 auto 44px}
.qs-discover__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.qs-discover__card{display:flex;flex-direction:column;background:var(--bg-light-50);border:1px solid var(--border-subtle);
  border-radius:12px;overflow:hidden;text-decoration:none;transition:box-shadow .18s ease,transform .18s ease}
a.qs-discover__card:hover{box-shadow:var(--shadow-md);transform:translateY(-3px)}
.qs-discover__img{aspect-ratio:16/10;background:var(--accent-primary-subtle);overflow:hidden}
.qs-discover__img img{width:100%;height:100%;object-fit:cover;display:block}
.qs-discover__body{padding:22px;display:flex;flex-direction:column;gap:10px}
.qs-discover__body h5{margin:0;font-size:1.0625rem;color:var(--text-primary)}
.qs-discover__more{margin-top:auto;align-self:flex-start;font-family:var(--font-body);font-weight:600;font-size:0.9375rem;color:var(--accent-primary);text-decoration:none}
.qs-discover__more:hover{text-decoration:underline}

/* Certificaciones */
.qs-certs{background:var(--bg-light-50)}
.qs-certs__title{text-align:center;margin:0 0 36px}
.qs-cert-table{max-width:74rem;margin:0 auto;border:1.5px solid var(--accent-secondary);border-radius:14px;overflow:hidden}
.qs-cert-row{display:grid;grid-template-columns:120px 1fr;gap:24px;padding:20px 28px}
.qs-cert-row:nth-child(even){background:var(--bg-canvas)}
.qs-cert-row__label{font-weight:700;color:var(--accent-primary)}
.qs-cert-row__desc{color:var(--text-secondary);font-size:0.9375rem;line-height:1.5}
.qs-cert-seals{display:flex;justify-content:center;gap:clamp(40px,8vw,120px);margin-top:40px}
.qs-seal{position:relative;display:grid;place-items:center;width:7rem;height:7rem;color:var(--accent-primary)}
.qs-seal svg{position:absolute;inset:0;width:100%;height:100%}
.qs-seal__txt{font-family:var(--font-body);font-weight:700;font-size:1.5rem;letter-spacing:.5px;display:flex;flex-direction:column;align-items:center;line-height:1}
.qs-seal__txt small{font-weight:500;font-size:.55rem;letter-spacing:.5px;margin-top:3px}

@media (max-width:860px){
  .qs-hero__grid,.qs-split__grid,.qs-ceo__grid{grid-template-columns:1fr}
  .qs-hero__media{width:100%}
  .qs-hero__title{font-size:2.25rem}
  .qs-split__text h2{font-size:1.875rem}
  .qs-split--reverse .qs-split__media{order:0}
  .qs-ceo__quote{font-size:1rem}
  .qs-ceo__photo{width:50%}
  .qs-discover__grid{grid-template-columns:1fr}
  .qs-cert-row{grid-template-columns:1fr;gap:6px;padding:16px 20px}
}
