/* Universinn · Formación para el empleo
 * Fuente visual: revisión aprobada b81b408 del rediseño 2026.
 * Este fichero está aislado bajo .uni-site para no alterar el resto de la web.
 */
:root {
  --uni-display: "Bricolage Grotesque", "Arial Narrow", Arial, sans-serif;
  --uni-body: "Public Sans", Inter, Arial, sans-serif;
}

html { scroll-behavior: smooth; }
body { margin: 0; background: #fffaf2; }
*, *::before, *::after { box-sizing: border-box; }
.uni-site { --uni-navy:#082c4d; --uni-ink:#07213d; --uni-orange:#ff7b32; --uni-gold:#ffbd49; --uni-cream:#fffaf2; min-height:100vh; overflow-x:clip; background:var(--uni-cream); color:var(--uni-ink); font-family:var(--uni-body); }
.uni-site img { max-width:100%; }
.uni-shell { width:min(1220px,calc(100% - 48px)); margin-inline:auto; }
.uni-skip { position:fixed; z-index:20000; top:8px; left:8px; transform:translateY(-160%); padding:12px 16px; background:#fff; color:var(--uni-ink); font-weight:800; }
.uni-skip:focus { transform:none; }
.uni-topline { background:var(--uni-navy); color:#fff; font-size:11px; letter-spacing:.045em; }
.uni-topline .uni-shell { min-height:34px; display:flex; align-items:center; gap:28px; }
.uni-topline a { margin-left:auto; color:#fff; font-weight:800; text-decoration:none; white-space:nowrap; }
.uni-topline-note { opacity:.72; }
.uni-header { min-height:96px; display:grid; grid-template-columns:200px 1fr auto; gap:32px; align-items:center; }
.uni-logo img { display:block; width:178px; height:74px; object-fit:contain; }
.uni-nav { justify-self:center; display:flex; align-items:center; gap:30px; }
.uni-nav a { color:var(--uni-ink); font-size:13px; font-weight:700; text-decoration:none; }
.uni-nav a:hover { color:var(--uni-orange); }
.uni-nav .uni-group-link { display:inline-flex; align-items:center; gap:7px; padding:10px 13px; border:1px solid #d4dcd8; border-radius:999px; background:#fff; color:#082c4d; white-space:nowrap; }
.uni-nav .uni-group-link span { color:#ff7b32; font-size:15px; }
.uni-header-cta { display:inline-flex; align-items:center; gap:26px; padding:14px 16px 14px 20px; border:1px solid #cbd3d7; border-radius:999px; color:var(--uni-ink); font-size:13px; font-weight:800; text-decoration:none; }
.uni-header-cta span { display:grid; place-items:center; width:34px; height:34px; border-radius:50%; background:var(--uni-orange); color:#fff; }
.uni-mobile-menu { display:none; }
.uni-breadcrumb { position:absolute; z-index:3; top:12px; left:50%; min-height:24px; display:flex; align-items:center; gap:10px; margin:0; color:#64747e; font-size:10px; transform:translateX(-50%); }
.uni-breadcrumb a { color:#465c69; text-decoration:none; }
.uni-breadcrumb b { color:#a2630c; font-weight:800; }

.uni-hero { position:relative; overflow:hidden; background:linear-gradient(110deg,#fffaf2 0 51%,#e9f4ef 51% 100%); border-block:1px solid #dbe2df; }
.uni-hero::before { content:""; position:absolute; width:680px; height:680px; right:-120px; top:-240px; border:1px solid rgba(8,44,77,.14); border-radius:50%; box-shadow:0 0 0 88px rgba(8,44,77,.025),0 0 0 176px rgba(8,44,77,.02); }
.uni-hero-grid { position:absolute; inset:0 49% 0 0; opacity:.25; background-image:linear-gradient(#d9dedb 1px,transparent 1px),linear-gradient(90deg,#d9dedb 1px,transparent 1px); background-size:66px 66px; }
.uni-hero-layout { position:relative; min-height:760px; display:grid; grid-template-columns:minmax(0,.92fr) minmax(520px,1.08fr); gap:64px; align-items:center; padding-block:72px; }
.uni-eyebrow { display:flex; align-items:center; gap:12px; margin:0 0 28px; color:#8e5b0b; font-size:11px; font-weight:900; letter-spacing:.13em; text-transform:uppercase; }
.uni-eyebrow i { width:28px; height:1px; background:var(--uni-orange); }
.uni-hero h1 { margin:0; font-family:var(--uni-display); font-size:clamp(56px,5.4vw,82px); line-height:.93; letter-spacing:-.06em; }
.uni-hero h1 em { color:var(--uni-orange); font-style:normal; }
.uni-hero-lead { max-width:610px; margin:34px 0 0; color:#4c5d6a; font-size:19px; line-height:1.58; }
.uni-hero-actions { display:flex; gap:12px; align-items:center; margin-top:36px; }
.uni-button { min-height:60px; display:inline-flex; align-items:center; justify-content:space-between; gap:26px; padding:0 24px; border-radius:4px; font-size:15px; line-height:1.2; font-weight:900; text-decoration:none; }
.uni-button-primary { min-width:258px; border:1px solid #082c4d; background:#082c4d; color:#fff; box-shadow:7px 7px 0 rgba(255,123,50,.34); }
.uni-button-primary:hover { background:#0d3b65; }
.uni-button-ghost { color:var(--uni-ink); border:1px solid #cdd6d2; background:rgba(255,255,255,.42); }
.uni-button:focus-visible, .uni-header a:focus-visible, .uni-nav a:focus-visible { outline:3px solid #ffbd49; outline-offset:3px; }
.uni-proof-row { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; margin-top:54px; padding-top:22px; border-top:1px solid #d2d9d5; color:#4d5e6b; font-size:13px; line-height:1.28; font-weight:850; letter-spacing:.035em; text-transform:uppercase; }
.uni-proof-row span { display:flex; gap:9px; align-items:flex-start; }
.uni-proof-row b { flex:0 0 auto; color:var(--uni-orange); font-size:12px; }
.uni-learning-console { position:relative; z-index:1; width:100%; border:1px solid rgba(8,44,77,.18); border-radius:20px; overflow:hidden; background:rgba(255,255,255,.92); box-shadow:0 32px 80px rgba(8,44,77,.15); transform:rotate(-1.2deg); }
.uni-console-head { min-height:88px; display:flex; justify-content:space-between; align-items:center; padding:20px 24px; background:var(--uni-navy); color:#fff; }
.uni-console-head > div { display:grid; gap:7px; color:#b8c9d6; font-size:9px; font-weight:800; letter-spacing:.1em; }
.uni-console-head strong { color:#fff; font:700 23px/1 var(--uni-display); letter-spacing:-.03em; }
.uni-live-dot { display:inline-block; width:7px; height:7px; margin-right:5px; border-radius:50%; background:#61d39d; box-shadow:0 0 0 4px rgba(97,211,157,.15); }
.uni-status { padding:8px 10px; border:1px solid rgba(255,255,255,.22); border-radius:99px; color:#aee7c9; font-size:8px; font-weight:900; letter-spacing:.12em; }
.uni-console-summary { display:grid; grid-template-columns:1fr 96px; align-items:center; gap:24px; padding:28px 26px 22px; }
.uni-console-summary > div:first-child { display:grid; gap:5px; }
.uni-console-summary small { color:#8a6119; font-size:9px; font-weight:900; letter-spacing:.12em; }
.uni-console-summary strong { font:800 40px/1 var(--uni-display); letter-spacing:-.05em; }
.uni-console-summary span { color:#687986; font-size:11px; }
.uni-progress-ring { width:86px; height:86px; display:grid; place-content:center; text-align:center; border-radius:50%; background:radial-gradient(circle at center,#fff 57%,transparent 59%),conic-gradient(var(--uni-orange) 0 78%,#e5ebe8 78% 100%); }
.uni-progress-ring b { font:800 20px/1 var(--uni-display); }
.uni-progress-ring span { margin-top:3px; font-size:8px; }
.uni-track-list { display:grid; gap:9px; padding:0 24px 24px; }
.uni-track-list article { min-height:64px; display:grid; grid-template-columns:42px 1fr 100px 34px; gap:12px; align-items:center; padding:9px 13px; border:1px solid #e1e6e3; border-radius:10px; background:#fff; }
.uni-track-code { width:38px; height:38px; display:grid; place-items:center; border-radius:8px; font-size:9px; font-weight:900; }
.uni-track-code.orange { background:#fff0e8; color:#d85319; }
.uni-track-code.violet { background:#eeeafa; color:#634cb0; }
.uni-track-code.mint { background:#e4f5ee; color:#257852; }
.uni-track-list article div { display:grid; gap:3px; }
.uni-track-list article strong { font-size:12px; }
.uni-track-list article small { color:#84909a; font-size:9px; }
.uni-track-progress { height:5px; overflow:hidden; border-radius:99px; background:#edf0ee; }
.uni-track-progress i { display:block; height:100%; border-radius:inherit; background:var(--uni-orange); }
.uni-track-list article > b { font-size:10px; }
.uni-console-foot { min-height:58px; display:flex; align-items:center; gap:18px; padding:0 24px; border-top:1px solid #dde4e0; color:#71808a; font-size:9px; }
.uni-console-foot b { color:var(--uni-ink); }
.uni-console-foot .uni-next { margin-left:auto; color:#8d6014; font-weight:800; }
.uni-marquee { overflow:hidden; background:var(--uni-orange); color:#fff; white-space:nowrap; }
.uni-marquee div { width:max-content; padding:16px 0; font-size:11px; font-weight:900; letter-spacing:.12em; word-spacing:22px; animation:uni-marquee 28s linear infinite; }
.uni-marquee span { color:var(--uni-navy); }
@keyframes uni-marquee { to { transform:translateX(-45%); } }

.uni-solutions, .uni-areas, .uni-faq-home { padding-block:112px; }
.uni-section-heading { display:grid; grid-template-columns:210px 1fr; gap:32px; align-items:start; }
.uni-section-heading > p { margin:9px 0 0; color:#966315; font-size:13px; line-height:1.35; font-weight:900; letter-spacing:.09em; }
.uni-section-heading h2 { max-width:820px; margin:0; font:700 clamp(42px,5vw,70px)/.98 var(--uni-display); letter-spacing:-.055em; }
.uni-section-heading h2 em { color:var(--uni-orange); font-style:normal; }
.uni-solutions-grid { display:grid; grid-template-columns:repeat(3,1fr); margin-top:72px; border:1px solid #d8ddd9; }
.uni-solutions-grid a { min-height:310px; display:flex; flex-direction:column; padding:28px; color:var(--uni-ink); text-decoration:none; background:#fffdf8; }
.uni-solutions-grid a + a { border-left:1px solid #d8ddd9; }
.uni-solutions-grid a:hover { background:var(--uni-navy); color:#fff; transform:translateY(-8px); box-shadow:0 18px 40px rgba(8,44,77,.16); }
.uni-solutions-grid span { color:#ac781d; font-size:10px; font-weight:900; }
.uni-solutions-grid h3 { max-width:260px; margin:62px 0 14px; font:700 30px/1.02 var(--uni-display); letter-spacing:-.04em; }
.uni-solutions-grid p { margin:0; color:#687682; font-size:14px; line-height:1.6; }
.uni-solutions-grid a:hover p { color:#c5d1da; }
.uni-solutions-grid b { margin-top:auto; color:var(--uni-orange); font-size:11px; }
.uni-impact { border-block:1px solid #d7ddd9; background:#fff; }
.uni-impact-grid { display:grid; grid-template-columns:repeat(4,1fr); }
.uni-impact article { min-height:174px; display:flex; flex-direction:column; justify-content:center; padding:28px; }
.uni-impact article + article { border-left:1px solid #d7ddd9; }
.uni-impact strong { font:800 46px/1 var(--uni-display); letter-spacing:-.05em; }
.uni-impact span { margin-top:9px; color:#70808b; font-size:11px; font-weight:700; text-transform:uppercase; letter-spacing:.08em; }
.uni-process { padding-block:112px; background:var(--uni-navy); color:#fff; }
.uni-section-heading.inverse > p { color:#f2aa3d; }
.uni-section-heading.inverse h2 em { color:#ffbd49; }
.uni-process-grid { display:grid; grid-template-columns:repeat(4,1fr); margin-top:68px; border:1px solid rgba(255,255,255,.2); }
.uni-process-grid article { min-height:280px; padding:28px; }
.uni-process-grid article + article { border-left:1px solid rgba(255,255,255,.2); }
.uni-process-grid span { color:#ffbd49; font-size:10px; font-weight:900; }
.uni-process-grid h3 { margin:90px 0 14px; font:700 27px/1 var(--uni-display); }
.uni-process-grid p { margin:0; color:#b8c6d1; font-size:14px; line-height:1.6; }
.uni-area-grid { display:grid; grid-template-columns:repeat(3,1fr); margin-top:68px; border:1px solid #d6ddd9; }
.uni-area-grid a { min-height:220px; display:flex; flex-direction:column; padding:26px; color:var(--uni-ink); text-decoration:none; background:#fff; }
.uni-area-grid a:not(:nth-child(3n+1)) { border-left:1px solid #d6ddd9; }
.uni-area-grid a:nth-child(n+4) { border-top:1px solid #d6ddd9; }
.uni-area-grid a:hover { background:#fff1e8; }
.uni-area-grid b { width:42px; height:42px; display:grid; place-items:center; border-radius:50%; background:var(--uni-navy); color:#fff; font-size:10px; }
.uni-area-grid h3 { max-width:290px; margin:38px 0 0; font:700 25px/1.05 var(--uni-display); letter-spacing:-.035em; }
.uni-area-grid span { display:flex; justify-content:space-between; margin-top:auto; color:#6e7b84; font-size:11px; text-transform:uppercase; }
.uni-area-grid i { color:var(--uni-orange); font-style:normal; }
.uni-faq-home { border-top:1px solid #d7ddd9; }
.uni-faq-list { width:min(860px,100%); margin:64px 0 0 auto; border-top:1px solid #cfd7d2; }
.uni-faq-list details { border-bottom:1px solid #cfd7d2; }
.uni-faq-list summary { min-height:82px; display:flex; align-items:center; justify-content:space-between; gap:20px; cursor:pointer; list-style:none; font:700 20px/1.2 var(--uni-display); }
.uni-faq-list summary::-webkit-details-marker { display:none; }
.uni-faq-list summary span { width:34px; height:34px; display:grid; place-items:center; border:1px solid #cdd6d2; border-radius:50%; color:#a96c12; }
.uni-faq-list details p { max-width:720px; margin:0 0 28px; color:#63737e; font-size:15px; line-height:1.7; }
.uni-contact-preview { padding-block:86px; background:var(--uni-navy); color:#fff; }
.uni-contact-preview-grid { display:grid; grid-template-columns:1fr auto; gap:60px; align-items:end; }
.uni-contact-preview .uni-eyebrow { color:#ffca6e; }
.uni-contact-preview h2 { max-width:820px; margin:0; font:700 clamp(42px,4.7vw,68px)/1 var(--uni-display); letter-spacing:-.055em; }
.uni-button-light { min-width:230px; border:0; background:#fff; color:var(--uni-navy); cursor:pointer; font-family:var(--uni-body); }

.uni-footer { padding:72px 0 100px; border-top:1px solid #d5ddd8; background:#fffaf2; }
.uni-footer-grid { display:grid; grid-template-columns:1.35fr repeat(3,.65fr); gap:56px; }
.uni-footer-grid > div { display:flex; flex-direction:column; align-items:flex-start; gap:13px; }
.uni-footer-grid img { width:164px; height:72px; object-fit:contain; }
.uni-footer-grid p { max-width:330px; margin:8px 0; color:#64747e; font-size:14px; line-height:1.6; }
.uni-footer-grid a, .uni-footer-grid button { padding:0; border:0; background:none; color:var(--uni-ink); font:12px var(--uni-body); text-decoration:none; cursor:pointer; }
.uni-footer-grid a:hover, .uni-footer-grid button:hover { color:var(--uni-orange); }
.uni-footer-grid b { margin:16px 0 7px; color:#a86f18; font-size:9px; letter-spacing:.12em; }
.uni-footer-bottom { display:flex; justify-content:space-between; margin-top:54px; padding-top:18px; border-top:1px solid #d5ddd8; color:#7e8b93; font-size:9px; text-transform:uppercase; letter-spacing:.08em; }

.uni-conversion-dock { position:fixed; z-index:9950; right:24px; bottom:24px; display:flex; flex-direction:column; align-items:flex-end; gap:10px; font-family:var(--uni-body); }
.uni-conversion-dock a, .uni-conversion-dock button { border:0; text-decoration:none; box-shadow:0 14px 38px rgba(8,44,77,.22); transition:transform .2s ease,box-shadow .2s ease; cursor:pointer; font-family:var(--uni-body); }
.uni-budget-float { min-height:50px; display:inline-flex; align-items:center; gap:22px; padding:0 20px; border-radius:999px; background:#ffbd49; color:#082c4d; font-size:13px; font-weight:900; }
.uni-budget-float b { font-size:18px; }
.uni-whatsapp-float { min-height:60px; display:inline-flex; align-items:center; gap:10px; padding:0 19px 0 10px; border-radius:999px; background:#1fa855; color:#fff; font-size:14px; font-weight:900; }
.uni-whatsapp-float > span { width:40px; height:40px; display:grid; place-items:center; border-radius:50%; background:rgba(255,255,255,.16); font-size:20px; }
.uni-conversion-dock a:focus-visible, .uni-conversion-dock button:focus-visible { outline:3px solid #082c4d; outline-offset:3px; }
.cookie-banner[hidden], .cookie-options[hidden] { display:none; }
.cookie-banner { position:fixed; z-index:11000; right:18px; bottom:18px; left:18px; display:grid; grid-template-columns:minmax(0,1fr) auto auto; align-items:center; gap:22px; width:min(1120px,calc(100% - 36px)); margin-inline:auto; padding:20px 22px; border:1px solid rgba(255,255,255,.14); border-top:4px solid var(--uni-gold); border-radius:16px; background:#081a2d; color:#fff; box-shadow:0 22px 70px rgba(0,0,0,.34); font-family:var(--uni-body); }
.cookie-copy { max-width:570px; }
.cookie-copy strong { color:#fff; font:650 18px/1.2 var(--uni-display); }
.cookie-copy p { margin:6px 0; color:rgba(255,255,255,.72); font-size:12px; line-height:1.55; }
.cookie-copy a { color:#ead679; font-size:11px; text-decoration:underline; text-underline-offset:3px; }
.cookie-options { display:flex; flex-wrap:wrap; gap:10px 15px; color:rgba(255,255,255,.82); font-size:11px; }
.cookie-options label { display:flex; align-items:center; gap:7px; }
.cookie-options input { accent-color:var(--uni-gold); }
.cookie-actions { display:flex; justify-content:flex-end; gap:8px; }
.cookie-actions button { min-height:40px; padding:0 14px; border-radius:9px; cursor:pointer; font:750 11px var(--uni-body); white-space:nowrap; }
.cookie-secondary { border:1px solid rgba(255,255,255,.28); background:transparent; color:#fff; }
.cookie-primary { border:1px solid var(--uni-gold); background:var(--uni-gold); color:var(--uni-navy); }
.cookie-actions button:focus-visible { outline:3px solid #fff; outline-offset:2px; }
.cookie-open .uni-conversion-dock { opacity:0; pointer-events:none; transform:translateY(20px); }
.uni-exit-overlay[hidden] { display:none; }
[data-training-form-content][hidden], .uni-exit-success[hidden] { display:none; }
.uni-exit-overlay { position:fixed; z-index:12000; inset:0; display:grid; place-items:center; overflow-y:auto; padding:24px; background:rgba(3,20,36,.76); backdrop-filter:blur(7px); }
.uni-exit-card { position:relative; width:min(600px,100%); max-height:calc(100vh - 48px); overflow-y:auto; padding:42px; border-top:6px solid #ff7b32; border-radius:22px; background:#fffaf2; color:#07213d; box-shadow:0 34px 110px rgba(0,0,0,.38); }
.uni-exit-close { position:absolute; top:12px; right:14px; width:38px; height:38px; display:grid; place-items:center; border:0; border-radius:50%; background:transparent; color:#5d6d79; font-size:30px; cursor:pointer; }
.uni-exit-eyebrow { margin:0 0 12px; color:#966315; font-size:11px; font-weight:900; letter-spacing:.12em; text-transform:uppercase; }
.uni-exit-card h2 { max-width:500px; margin:0; color:#082c4d; font:750 38px/1.03 var(--uni-display); letter-spacing:-.045em; }
.uni-exit-card > p:not(.uni-exit-eyebrow) { max-width:500px; margin:17px 0 0; color:#586a76; font-size:15px; line-height:1.58; }
.uni-exit-form { display:grid; gap:15px; margin-top:26px; }
.uni-exit-fields { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.uni-exit-form label:not(.uni-exit-privacy) { display:grid; gap:7px; }
.uni-exit-form label > span { color:#4c606d; font-size:10px; font-weight:900; letter-spacing:.07em; text-transform:uppercase; }
.uni-exit-form input:not([type="hidden"]):not([type="checkbox"]) { width:100%; min-height:51px; padding:13px 14px; border:1px solid #c8d3ce; border-radius:8px; outline:0; background:#fff; color:#07213d; font:600 14px var(--uni-body); }
.uni-exit-privacy { display:grid; grid-template-columns:18px 1fr; gap:9px; align-items:start; color:#5c6c77; font-size:11px; line-height:1.45; }
.uni-exit-privacy input { width:16px; height:16px; margin-top:1px; accent-color:#ff7b32; }
.uni-exit-privacy span { font-weight:500!important; letter-spacing:0!important; text-transform:none!important; }
.uni-exit-privacy a { color:#082c4d; text-decoration:underline; }
.uni-exit-form > button, .uni-exit-success button { min-height:54px; display:flex; align-items:center; justify-content:space-between; padding:0 18px; border:0; border-radius:8px; background:#082c4d; color:#fff; font:900 14px var(--uni-body); cursor:pointer; }
.uni-exit-error, .uni-exit-success { margin:0; }
.uni-exit-error { padding:11px 13px; border-radius:7px; background:#fff0ed; color:#a9442a; font-size:12px; }
.uni-exit-success { display:grid; gap:16px; text-align:center; }
.uni-exit-success > span { width:62px; height:62px; display:grid; place-items:center; margin:0 auto; border-radius:50%; background:#e2f5ea; color:#1b8650; font-size:28px; }
.uni-exit-success p { color:#586a76; line-height:1.55; }
.uni-exit-whatsapp { display:block; color:#167e42; font-size:13px; font-weight:900; text-align:center; text-decoration:none; }

@media (max-width:980px) {
  .uni-nav { display:none; }
  .uni-mobile-menu { display:block; justify-self:end; position:relative; }
  .uni-mobile-menu summary { padding:11px 14px; border:1px solid #ccd5d1; border-radius:99px; font-size:11px; font-weight:800; list-style:none; cursor:pointer; }
  .uni-mobile-menu > div { position:absolute; right:0; top:48px; z-index:20; width:230px; display:grid; padding:10px; border:1px solid #d1dad5; background:#fff; box-shadow:0 16px 35px rgba(8,44,77,.14); }
  .uni-mobile-menu a, .uni-mobile-menu button { padding:12px; border:0; background:#fff; color:var(--uni-ink); text-align:left; text-decoration:none; font:800 12px var(--uni-body); }
  .uni-header { grid-template-columns:160px 1fr auto; }
  .uni-hero-layout { grid-template-columns:1fr; padding-block:64px; }
  .uni-learning-console { max-width:680px; transform:none; }
  .uni-hero { background:linear-gradient(160deg,#fffaf2 0 55%,#e9f4ef 55% 100%); }
  .uni-hero-grid { inset:0; }
  .uni-section-heading { grid-template-columns:1fr; }
  .uni-solutions-grid { grid-template-columns:1fr; }
  .uni-solutions-grid a + a { border-left:0; border-top:1px solid #d8ddd9; }
  .uni-impact-grid, .uni-process-grid { grid-template-columns:repeat(2,1fr); }
  .uni-impact article:nth-child(3), .uni-process-grid article:nth-child(3) { border-left:0; }
  .uni-impact article:nth-child(n+3), .uni-process-grid article:nth-child(n+3) { border-top:1px solid #d7ddd9; }
  .uni-area-grid { grid-template-columns:repeat(2,1fr); }
  .uni-area-grid a:not(:nth-child(3n+1)) { border-left:0; }
  .uni-area-grid a:nth-child(even) { border-left:1px solid #d5dcd8; }
  .uni-area-grid a:nth-child(n+3) { border-top:1px solid #d5dcd8; }
  .uni-footer-grid { grid-template-columns:1fr 1fr; }
}

@media (max-width:640px) {
  .uni-shell { width:min(100% - 28px,1220px); }
  .uni-topline-note { display:none; }
  .uni-header { min-height:78px; grid-template-columns:122px 1fr; gap:12px; }
  .uni-logo img { width:118px; height:58px; }
  .uni-header-cta { display:none; }
  .uni-mobile-menu { grid-column:2; grid-row:1; }
  .uni-hero-layout { min-height:auto; padding-block:54px; }
  .uni-hero h1 { font-size:52px; }
  .uni-hero-lead { font-size:16px; }
  .uni-hero-actions { align-items:stretch; flex-direction:column; }
  .uni-button { width:100%; }
  .uni-proof-row { grid-template-columns:1fr; gap:14px; }
  .uni-learning-console { border-radius:14px; }
  .uni-console-head strong { font-size:19px; }
  .uni-console-summary strong { font-size:32px; }
  .uni-track-list article { grid-template-columns:38px 1fr 44px; }
  .uni-track-progress { display:none; }
  .uni-console-foot { display:grid; grid-template-columns:repeat(3,1fr); padding-block:14px; }
  .uni-console-foot .uni-next { grid-column:1/-1; margin-left:0; }
  .uni-solutions, .uni-areas, .uni-faq-home { padding-block:76px; }
  .uni-section-heading h2 { font-size:44px; }
  .uni-solutions-grid { margin-top:44px; }
  .uni-impact-grid, .uni-process-grid, .uni-area-grid { grid-template-columns:1fr; }
  .uni-impact article + article, .uni-process-grid article + article, .uni-area-grid a:nth-child(n+2) { border-left:0; border-top:1px solid #d5dcd8; }
  .uni-process-grid article { min-height:220px; }
  .uni-process-grid h3 { margin-top:54px; }
  .uni-contact-preview-grid { grid-template-columns:1fr; }
  .uni-contact-preview h2 { font-size:43px; }
  .uni-footer-grid { grid-template-columns:1fr; gap:28px; }
  .uni-footer-bottom { display:grid; gap:8px; }
  .uni-conversion-dock { right:12px; bottom:max(12px,env(safe-area-inset-bottom)); left:12px; flex-direction:row; align-items:center; gap:8px; }
  .uni-budget-float { min-width:0; min-height:52px; flex:1; justify-content:space-between; padding:0 17px; font-size:12px; }
  .uni-whatsapp-float { width:52px; min-width:52px; min-height:52px; justify-content:center; padding:0; }
  .uni-whatsapp-float b { display:none; }
  .uni-exit-overlay { align-items:end; padding:12px; }
  .uni-exit-card { width:100%; max-height:calc(100vh - 24px); padding:34px 20px 22px; border-radius:18px; }
  .uni-exit-card h2 { font-size:31px; }
  .uni-exit-fields { grid-template-columns:1fr; }
  .cookie-banner { right:10px; bottom:10px; left:10px; grid-template-columns:1fr; gap:14px; width:calc(100% - 20px); padding:18px; }
  .cookie-actions { display:grid; grid-template-columns:1fr 1fr; }
  .cookie-actions .cookie-primary { grid-column:1/-1; }
  .cookie-actions button { width:100%; }
}

@media (prefers-reduced-motion:reduce) {
  html { scroll-behavior:auto; }
  *, *::before, *::after { animation-duration:.01ms!important; animation-iteration-count:1!important; transition-duration:.01ms!important; }
}
