/* ===== NEW LAYOUT (v2) — sobrepõe o CSS antigo para o conteúdo novo ===== */
.v2 *{box-sizing:border-box}
.v2{font-family:'Georgia','Times New Roman',serif;background:#fff;color:#111;line-height:1.5}
.v2 :root,.v2{
  --brand:#1B4A2E;--gold:#9A7209;--goldl:#C49A20;
  --gray:#f2f2f0;--border:#d0d0cc;--tx:#111;--tx2:#4a4a46;
  --fs:'Georgia','Times New Roman',serif;
  --fn:-apple-system,'Helvetica Neue',sans-serif;
}
.v2 a{color:inherit}
.v2 .link-ed{text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.v2 .cta-row{text-decoration:none}

/* HEADER v2 */
html body{margin:0 !important;padding:0 !important;overflow-x:hidden;max-width:100vw}
html body{padding-top:0 !important}
.v2-hdr{background:#111;display:flex;align-items:center;height:80px;padding:18px 2rem 0;margin:0 !important;position:fixed !important;top:0 !important;left:0 !important;right:0 !important;width:100%;z-index:100;font-family:-apple-system,'Helvetica Neue',sans-serif;transition:background-color .45s ease;overflow:visible}
.v2-hdr.over-hero{background:transparent}
.v2-hdr.over-hero::before{content:"";position:absolute;inset:0;background:linear-gradient(to bottom,rgba(0,0,0,.55),rgba(0,0,0,0));pointer-events:none;z-index:-1}
.v2-hdr-logo{display:flex;align-items:center;gap:9px;flex-shrink:0;text-decoration:none}
.v2-hdr-logo img{width:285px;height:190px;object-fit:contain;display:block}
.v2-hdr-logo{overflow:visible;margin-top:30px}
.v2-hdr-ln{font-size:15px;font-weight:500;color:#fff;display:block}
.v2-hdr-ls{font-size:8px;text-transform:uppercase;letter-spacing:1px;color:rgba(255,255,255,.5);display:block}
.v2-hdr-alert{display:flex;align-items:center;gap:7px;flex:1;padding:0 2rem;font-size:12px;color:rgba(255,255,255,.85)}
.v2-hdr-dot{width:7px;height:7px;border-radius:50%;background:#C49A20;flex-shrink:0}
.v2-hdr-right{display:flex;align-items:stretch;background:none;border-left:none}
.v2-hdr-search-btn{display:flex;align-items:center;justify-content:center;background:none;border:none;width:54px;cursor:pointer;padding:0;color:#fff;transition:opacity .2s}
.v2-hdr-search-btn:hover{opacity:.7}
.hv-search{position:fixed;top:0;left:0;right:0;background:#111;z-index:200;padding:5rem 2rem 4rem;transform:translateY(-100%);transition:transform .5s cubic-bezier(.65,.05,.36,1);box-shadow:0 8px 30px rgba(0,0,0,.4)}
.hv-search.open{transform:translateY(0)}
.hv-search .ov-close{position:absolute;top:18px;right:24px;background:none;border:1px solid rgba(255,255,255,.4);color:#fff;cursor:pointer;padding:10px 20px;font-family:'Bebas Neue',sans-serif;font-size:14px;letter-spacing:1.5px;text-transform:uppercase;transition:all .2s;display:flex;align-items:center;gap:10px}
.hv-search .ov-close:hover{border-color:#fff;background:rgba(255,255,255,.05)}
.hv-search .ov-close svg{transition:transform .3s ease}
.hv-search .ov-close:hover svg{transform:rotate(90deg)}
.hv-search-inner{max-width:880px;margin:0 auto;text-align:center}
.hv-search-title{font-family:Georgia,'Times New Roman',serif;font-size:clamp(28px,4vw,48px);font-weight:400;color:#fff;margin:0 0 2rem;line-height:1.2}
.hv-search-form{display:flex;align-items:stretch;gap:0;border:1px solid #111;background:#ececec}
.hv-search-input{flex:1;border:none;background:transparent;padding:0 1.25rem;font-size:18px;font-family:inherit;color:#111;outline:none;height:60px;min-width:0}
.hv-search-input::placeholder{color:#666;font-style:italic}
.hv-search-submit{background:#c00;color:#fff;border:none;padding:0 2.5rem;font-size:15px;font-weight:600;text-transform:uppercase;letter-spacing:1px;cursor:pointer;font-family:inherit;transition:background .2s}
.hv-search-submit:hover{background:#900}
@media (max-width:640px){
  .v2-hdr-search-btn{width:46px}
  .hv-search{padding:4rem 1rem 3rem}
  .hv-search-form{flex-direction:column;border:none;background:none;gap:.75rem}
  .hv-search-input{border:1px solid #111;background:#ececec;height:54px}
  .hv-search-submit{height:50px}
}
.v2-hdr-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:0 1.25rem;border:none;background:none;cursor:pointer;color:rgba(255,255,255,.9);font-family:inherit}
.v2-hdr-btn-label{font-size:11px;letter-spacing:.2px}
.v2-hdr-btn-sub{font-size:9px;color:rgba(255,255,255,.45);letter-spacing:.3px;text-transform:uppercase}
.v2-hdr-btn+.v2-hdr-btn{border-left:none}
.v2-hdr-l{width:19px;height:1.5px;background:rgba(255,255,255,.9);display:block;margin:1.5px 0}
.v2-hdr-link{text-decoration:underline;text-underline-offset:2px;cursor:pointer;color:inherit}

/* HERO */
.v2 .hero{position:relative;height:90vh;min-height:600px;overflow:hidden;background:#000 !important;padding:0 !important;display:block !important;align-items:initial !important}
.v2 .hero-img{width:100%;height:100%;object-fit:cover;object-position:center bottom;display:block;filter:brightness(.45) saturate(.35)}
.v2 .hero::after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at center,rgba(0,0,0,.25) 0%,rgba(0,0,0,.55) 70%,rgba(0,0,0,.7) 100%);pointer-events:none}
.v2 .hero-copy{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:0 3rem;z-index:2}
.v2 .hero-over{font-family:var(--fn);font-size:11px;text-transform:uppercase;letter-spacing:2.5px;color:rgba(255,255,255,.55);margin-bottom:.875rem}
.v2 .hero-h1{font-size:clamp(38px,5.2vw,68px);line-height:1.1;color:#fff;font-weight:400;max-width:760px}
.v2 .hero-sub{font-size:15px;color:rgba(255,255,255,.68);line-height:1.72;max-width:520px;margin-top:.875rem;font-family:var(--fn)}

/* SECTIONS CHROME */
.v2 .sec-hdr{display:flex;gap:3rem;align-items:flex-start;padding:3.5rem 3rem 0}
.v2 .sec-title{font-size:clamp(22px,2.8vw,36px);font-weight:400;line-height:1.18;flex:0 0 360px}
.v2 .sec-desc{font-size:14px;color:var(--tx2);line-height:1.78;max-width:540px;padding-top:4px;font-family:var(--fn)}
.v2 .sec-rule{height:1.5px;background:#111;margin:1.5rem 3rem 0}
.v2 .sec-link{font-size:12px;color:#111;text-decoration:underline;text-underline-offset:2px;cursor:pointer;font-family:var(--fn)}
.v2 .badge{display:inline-block;font-size:9px;font-family:var(--fn);text-transform:uppercase;letter-spacing:.8px;background:#f5e8c8;color:var(--gold);padding:2px 7px;border-radius:2px}

/* EM FOCO 50/50 */
.v2 .d-ef{background:#faf9f7;border-top:1px solid var(--border)}
.v2 .ef-hdr{padding:1.5rem 3rem .875rem;border-bottom:0.5px solid var(--border);display:flex;justify-content:space-between;align-items:baseline}
.v2 .ef-hdr h2{font-size:20px;font-weight:400}
.v2 .ef-grid{display:grid;grid-template-columns:56fr 44fr}
.v2 .ef-l{padding:2rem 3rem}
.v2 .zen{height:310px;overflow:hidden;background:#000;position:relative;display:block;margin-bottom:1.5rem}
.v2 .zen-side,.v2 .zen-fl,.v2 .zen-fr{display:none}
.v2 .zen-c{position:absolute;inset:0;width:100%;height:100%;z-index:1}
.v2 .zen-c img{width:100%;height:100%;object-fit:cover;object-position:center center;display:block;transition:transform .9s cubic-bezier(.2,.8,.2,1),filter .6s ease}
.v2 .zen:hover .zen-c img{transform:scale(1.08);filter:brightness(1.05)}
.v2 .zen-cap{position:absolute;bottom:0;left:0;right:0;padding:12px 18px 10px;background:rgba(4,14,8,.88);z-index:10}
.v2 .zen-q{font-size:13px;color:rgba(255,255,255,.92);line-height:1.55;font-style:italic;margin-bottom:6px}
.v2 .zen-name{font-size:12px;font-weight:400;color:#fff;font-family:var(--fn)}
.v2 .zen-role{font-size:9px;color:rgba(255,255,255,.5);text-transform:uppercase;letter-spacing:.8px;margin-top:2px;font-family:var(--fn)}
.v2 .ef-title{font-size:21px;font-weight:400;line-height:1.32;text-decoration:underline;text-underline-offset:3px;cursor:pointer;margin-bottom:.7rem}
.v2 .ef-desc{font-size:13px;color:var(--tx2);line-height:1.78;font-family:var(--fn)}
.v2 .ef-r{padding:2rem 2.5rem 2rem 2rem;border-left:0.5px solid var(--border)}
.v2 .ef-r{display:flex;flex-direction:column;justify-content:space-between}
.v2 .si{display:flex;gap:.875rem;padding:1.4rem 0;border-bottom:0.5px solid var(--border);cursor:pointer;align-items:flex-start;line-height:1.42;text-decoration:none;color:inherit;flex:1;justify-content:space-between}
.v2 .si:first-child{padding-top:0}
.v2 .si:last-child{border-bottom:none;padding-bottom:0}
.v2 .si-txt{flex:1;font-size:14.5px;line-height:1.42;text-decoration:underline;text-underline-offset:2px}
.v2 .si-th{width:66px;height:52px;flex-shrink:0;overflow:hidden;transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s ease;transform-origin:center right}
.v2 .si:hover .si-th{transform:scale(1.4);box-shadow:0 8px 24px rgba(0,0,0,.18)}
.v2 .si-th img{width:100%;height:100%;object-fit:cover;object-position:center top;transition:transform .7s cubic-bezier(.2,.8,.2,1),filter .5s ease}
.v2 .si:hover .si-th img{transform:scale(1.15);filter:brightness(1.08)}

/* STATS */
.v2 .d-st{display:grid;grid-template-columns:repeat(4,1fr);border-top:0.5px solid var(--border)}
.v2 .st{padding:2rem 3rem;border-right:0.5px solid var(--border)}
.v2 .st:last-child{border-right:none}
.v2 .st-n{font-size:34px;color:#111;line-height:1}
.v2 .st-l{font-size:12px;color:var(--tx2);margin-top:5px;line-height:1.45;font-family:var(--fn)}

/* SAÚDE PÚBLICA */
.v2 .d-sp{background:var(--gray)}
.v2 .sp-lead{display:grid;grid-template-columns:55fr 45fr;padding:2.5rem 3rem 0}
.v2 .sp-img{position:relative;height:360px;overflow:hidden}
.v2 .sp-img img{width:100%;height:100%;object-fit:cover;filter:brightness(.72) saturate(.75);transition:transform .9s cubic-bezier(.2,.8,.2,1),filter .6s ease}
.v2 .sp-img:hover img{transform:scale(1.08);filter:brightness(.82) saturate(.9)}
.v2 .sp-tag{position:absolute;bottom:14px;left:14px;background:var(--brand);color:#fff;font-family:var(--fn);font-size:10px;padding:4px 10px;text-transform:uppercase;letter-spacing:.8px}
.v2 .sp-copy{padding:0 0 0 3rem;display:flex;flex-direction:column;justify-content:center}
.v2 .sp-h{font-size:27px;font-weight:400;line-height:1.3;margin-bottom:.875rem}
.v2 .sp-p{font-family:var(--fn);font-size:13px;color:var(--tx2);line-height:1.75;margin-bottom:1.25rem}
.v2 .sp-rows{padding:0 3rem 3rem;margin-top:1.5rem}
.v2 .sp-row{display:grid;grid-template-columns:220px 1fr 96px;gap:2rem;align-items:start;padding:1.4rem 0;border-top:0.5px solid var(--border)}
.v2 .sp-row:last-child{border-bottom:0.5px solid var(--border)}
.v2 .sp-rt{font-family:var(--fn);font-size:14px;font-weight:700;line-height:1.4}
.v2 .sp-rd{font-family:var(--fn);font-size:13px;color:var(--tx2);line-height:1.7}
.v2 .sp-rd strong{color:var(--tx);font-weight:600;text-decoration:underline;text-underline-offset:2px;cursor:pointer}
.v2 .sp-ri{width:96px;height:74px;overflow:hidden}
.v2 .sp-ri img{width:100%;height:100%;object-fit:cover;object-position:center top}

/* DESCOBERTAS */
.v2 .d-desc{background:#fff}
.v2 .d-desc .sec-hdr{padding-bottom:0}
.v2 .desc-source{font-size:11px;text-transform:uppercase;letter-spacing:1.5px;color:var(--tx2);font-family:var(--fn);margin-top:.4rem}
.v2 .dc3{display:grid;grid-template-columns:repeat(3,1fr);padding:2.5rem 3rem 3rem}
.v2 .dc-card{cursor:pointer}
.v2 .dc-card:not(:last-child){border-right:0.5px solid var(--border);padding-right:2rem}
.v2 .dc-card:not(:first-child){padding-left:2rem}
.v2 .dc-img{height:220px;overflow:hidden;margin-bottom:1.25rem}
.v2 .dc-img img{width:100%;height:100%;object-fit:cover;object-position:center top;transition:transform .9s cubic-bezier(.2,.8,.2,1)}
.v2 .dc-img:hover img,.v2 .dc-card:hover .dc-img img{transform:scale(1.08)}
.v2 .dc-source{display:block;font-size:10px;text-transform:uppercase;letter-spacing:1.2px;color:var(--tx2);font-family:var(--fn);margin-bottom:8px}
.v2 .dc-h{font-size:21px;font-weight:400;line-height:1.3;margin-bottom:.75rem;text-decoration:underline;text-underline-offset:3px}
.v2 .dc-p{font-family:var(--fn);font-size:13px;color:var(--tx2);line-height:1.75;margin-bottom:1rem}
.v2 .dc-cta{display:flex;align-items:center;gap:9px;font-family:var(--fn);font-size:13px;font-weight:600;color:var(--tx);margin-top:1rem}
.v2 .arr{width:26px;height:26px;border-radius:50%;background:#e8e8e4;display:flex;align-items:center;justify-content:center;flex-shrink:0}

/* CAMPUS */
.v2 .d-cp{background:var(--gray);border-top:1px solid var(--border)}
.v2 .cp-body{display:grid;grid-template-columns:55fr 45fr;padding:0 3rem 3rem}
.v2 .cp-img{height:360px;overflow:hidden}
.v2 .cp-img img{width:100%;height:100%;object-fit:cover;object-position:center 60%;transition:transform .9s cubic-bezier(.2,.8,.2,1)}
.v2 .cp-img:hover img{transform:scale(1.08)}
.v2 .cp-copy{padding:2rem 0 0 3rem}
.v2 .cp-h{font-size:30px;font-weight:400;line-height:1.25;margin-bottom:.875rem}
.v2 .cp-p{font-family:var(--fn);font-size:13px;color:var(--tx2);line-height:1.78;margin-bottom:1.5rem}
.v2 .cp-li{display:flex;align-items:flex-start;gap:12px;padding:.875rem 0;border-bottom:0.5px solid var(--border);font-family:var(--fn);font-size:13px;cursor:pointer;line-height:1.5}
.v2 .cp-li:last-child{border-bottom:none}

/* AGORA */
.v2 .d-now{background:#fff;border-top:1px solid var(--border)}
.v2 .nw-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;padding:2.5rem 3rem 3rem}
.v2 .nw-card{cursor:pointer}
.v2 .nw-img{height:220px;overflow:hidden;margin-bottom:1rem}
.v2 .nw-img img{width:100%;height:100%;object-fit:cover;object-position:center top;filter:brightness(.88) saturate(.72);transition:transform .9s cubic-bezier(.2,.8,.2,1),filter .6s ease}
.v2 .nw-img:hover img,.v2 .nw-card:hover .nw-img img{transform:scale(1.08);filter:brightness(1) saturate(.9)}
.v2 .nw-tag{font-size:10px;text-transform:uppercase;letter-spacing:1.5px;color:var(--goldl);display:block;margin-bottom:4px;font-family:var(--fn)}
.v2 .nw-t{font-size:15px;font-weight:400;line-height:1.4;margin-bottom:4px;text-decoration:underline;text-underline-offset:3px}
.v2 .nw-d{font-size:11px;color:var(--tx2);font-family:var(--fn)}

/* PERSONA BAR (Acesso rápido) */
.v2 .d-persona{background:#111;display:flex;align-items:center;padding:.875rem 3rem;gap:2rem;border-top:0.5px solid rgba(255,255,255,.1)}
.v2 .persona-label{font-family:var(--fn);font-size:10px;text-transform:uppercase;letter-spacing:1.8px;color:rgba(255,255,255,.45);white-space:nowrap;font-weight:600;flex-shrink:0}
/* flex-wrap garante que os 5 perfis (Sou Candidato/Sou aluno/Sou professor/Ex-aluno/Comunidade) sempre apareçam, mesmo em telas estreitas — sem wrap, itens excedentes vazavam e podiam ser cortados pelo overflow-x do body (2026-06-03) */
.v2 .persona-items{display:flex;flex-wrap:wrap;gap:0;flex:1}
.v2 .persona-item{font-family:var(--fn);font-size:13px;font-weight:500;color:rgba(255,255,255,.72);padding:.45rem 1.5rem;cursor:pointer;border-left:0.5px solid rgba(255,255,255,.15);transition:color .15s,background .15s;text-decoration:none;white-space:nowrap;background:none;border-top:none;border-right:none;border-bottom:none;font-family:var(--fn)}
.v2 .persona-item:first-child{border-left:none;padding-left:0;color:#C49A20;font-weight:600}
.v2 .persona-item:hover{color:#C49A20;background:rgba(196,154,32,.08)}
.v2 .persona-item:first-child:hover{color:#e8b830}

/* FOOTER */
.v2 .footer{background:#111;padding:3.5rem 3rem 2rem;color:#fff;font-family:var(--fn)}

/* ══════ HARVARD FOOTER ══════ */
.v2 .hv-footer{background:#0a0a0a;padding:5rem 3rem 2.5rem;position:relative;overflow:hidden}
.v2 .hv-footer::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#1B4A2E 0%,#C49A20 50%,#1B4A2E 100%)}
.v2 .hv-ft-hero{display:flex;align-items:center;justify-content:space-between;gap:3rem;padding-bottom:3rem;margin-bottom:3rem;border-bottom:0.5px solid rgba(255,255,255,.12);flex-wrap:wrap}
.v2 .hv-ft-logo{height:140px;width:auto;object-fit:contain;filter:brightness(1.05)}
.v2 .hv-ft-hero-r{text-align:right;flex:1;min-width:280px}
.v2 .hv-ft-tagline{font-family:Georgia,serif;font-size:clamp(20px,2.4vw,32px);font-weight:400;color:#fff;line-height:1.25;margin:0 0 .5rem;font-style:italic}
.v2 .hv-ft-since{font-family:var(--fn);font-size:11px;text-transform:uppercase;letter-spacing:2px;color:rgba(255,255,255,.45);margin:0}

.v2 .hv-ft-grid{display:grid;grid-template-columns:1fr 1fr 1fr 1.4fr;gap:3rem;padding-bottom:3rem}
.v2 .hv-ft-grid .ft-col h5{font-family:Georgia,serif;font-size:13px;font-weight:400;text-transform:none;letter-spacing:.5px;color:rgba(255,255,255,.95);margin:0 0 1.25rem;padding-bottom:.75rem;border-bottom:0.5px solid rgba(255,255,255,.18);font-style:italic}
.v2 .hv-ft-grid .ft-col ul{list-style:none;padding:0;margin:0}
.v2 .hv-ft-grid .ft-col li{margin-bottom:.7rem}
.v2 .hv-ft-grid .ft-col a{font-family:var(--fn);font-size:13px;color:rgba(255,255,255,.7);text-decoration:none;transition:color .2s,padding-left .2s;display:inline-block}
.v2 .hv-ft-grid .ft-col a:hover{color:#C49A20;padding-left:6px}

.v2 .hv-ft-contact address{font-style:normal;font-family:var(--fn);font-size:13px;line-height:1.7;color:rgba(255,255,255,.65);margin-bottom:1rem}
.v2 .hv-ft-tel,.v2 .hv-ft-mail{display:block;font-family:var(--fn);font-size:13px;color:rgba(255,255,255,.85);text-decoration:none;margin-bottom:.4rem;transition:color .2s}
.v2 .hv-ft-tel:hover,.v2 .hv-ft-mail:hover{color:#C49A20}

.v2 .hv-ft-divider{height:0.5px;background:rgba(255,255,255,.12);margin:0 0 1.75rem}

.v2 .hv-ft-bottom{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem}
.v2 .hv-ft-soc{display:flex;gap:1rem}
.v2 .hv-ft-soc a{display:flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:50%;border:0.5px solid rgba(255,255,255,.25);color:rgba(255,255,255,.7);text-decoration:none;transition:all .25s ease}
.v2 .hv-ft-soc a:hover{border-color:#C49A20;color:#C49A20;transform:translateY(-2px)}
.v2 .hv-footer .ft-copy{font-family:var(--fn);font-size:11px;color:rgba(255,255,255,.4);margin:0;text-align:center;flex:1;letter-spacing:.3px}
.v2 .hv-ft-legal{display:flex;gap:.5rem;align-items:center;font-family:var(--fn);font-size:11px}
.v2 .hv-ft-legal a{color:rgba(255,255,255,.5);text-decoration:none;transition:color .2s}
.v2 .hv-ft-legal a:hover{color:#C49A20}
.v2 .hv-ft-legal span{color:rgba(255,255,255,.25)}

@media (max-width:1024px){
  .v2 .hv-footer{padding:3.5rem 1.5rem 2rem}
  .v2 .hv-ft-hero{flex-direction:column;text-align:center;gap:1.5rem}
  .v2 .hv-ft-hero-r{text-align:center}
  .v2 .hv-ft-grid{grid-template-columns:1fr 1fr;gap:2.5rem 1.5rem;text-align:center}
  .v2 .hv-ft-grid .ft-col h5{text-align:center}
  .v2 .hv-ft-contact address{text-align:center}
  .v2 .hv-ft-soc{justify-content:center}
  .v2 .hv-ft-bottom{flex-direction:column;text-align:center;align-items:center}
  .v2 .hv-ft-legal{justify-content:center}
  .v2 .hv-footer .ft-copy{order:3}
}
@media (max-width:520px){
  .v2 .hv-ft-grid{grid-template-columns:1fr}
  .v2 .hv-ft-logo{height:100px}
}
.v2 .ft-top{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;border-bottom:0.5px solid rgba(255,255,255,.15);padding-bottom:2.5rem;margin-bottom:2.5rem}
.v2 .ft-col h5{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:rgba(255,255,255,.5);margin-bottom:1rem}
.v2 .ft-col ul{list-style:none;padding:0;margin:0}
.v2 .ft-col li{margin-bottom:.65rem}
.v2 .ft-col a{font-size:13px;color:rgba(255,255,255,.6);text-decoration:underline;text-underline-offset:2px;cursor:pointer}
.v2 .ft-bot{display:flex;align-items:center;justify-content:space-between}
.v2 .ft-logo{display:flex;align-items:center;gap:10px}
.v2 .ft-logo img{height:36px;width:auto;object-fit:contain;opacity:.85}
.v2 .ft-name{font-size:14px;font-weight:500;color:#fff;display:block}
.v2 .ft-sub{font-size:10px;color:rgba(255,255,255,.4);text-transform:uppercase;letter-spacing:.8px}
.v2 .ft-soc{display:flex;gap:1rem}
.v2 .ft-s{width:34px;height:34px;border-radius:50%;border:0.5px solid rgba(255,255,255,.25);display:flex;align-items:center;justify-content:center;cursor:pointer;color:rgba(255,255,255,.6)}
.v2 .ft-copy{font-size:11px;color:rgba(255,255,255,.3);margin-top:1.5rem}

/* ══════ UNDERLINE HOVER ANIMATION (estilo Harvard) ══════ */
.v2 .ef-title,.v2 .si-txt,.v2 .dc-h,.v2 .nw-t,.v2 .sp-h,.v2 .cp-h,
.v2 .ef-hdr h2 a,.v2 .sec-link,.v2 .ft-col a,
.v2 .ef-title a,.v2 .si-txt a,.v2 .dc-h a,.v2 .nw-t a{
  display:inline;
  background-image:linear-gradient(currentColor,currentColor);
  background-size:0% 1.5px;
  background-repeat:no-repeat;
  background-position:0 100%;
  text-decoration:none !important;
  border-bottom:none !important;
  transition:background-size .45s cubic-bezier(.65,.05,.36,1);
}
.v2 .ef-title:hover,.v2 .si:hover .si-txt,.v2 .dc-card:hover .dc-h,
.v2 .nw-card:hover .nw-t,.v2 .sp-h:hover,.v2 .cp-h:hover,
.v2 .ef-hdr h2 a:hover,.v2 .sec-link:hover,.v2 .ft-col a:hover,
.v2 .si:hover .si-txt a,.v2 .dc-card:hover .dc-h a,.v2 .nw-card:hover .nw-t a{
  background-size:100% 1.5px;
}
.v2 .dc-cta,.v2 .cp-li{transition:transform .25s ease,color .25s ease}
.v2 .dc-cta:hover,.v2 .dc-card:hover .dc-cta,.v2 .cp-li:hover{transform:translateX(6px);color:#111}
.v2 .dc-cta:hover .arr,.v2 .dc-card:hover .dc-cta .arr,.v2 .cp-li:hover .arr{background:#111}
.v2 .dc-cta:hover .arr svg path,.v2 .dc-card:hover .dc-cta .arr svg path,.v2 .cp-li:hover .arr svg path{stroke:#fff}

/* ══════ RESPONSIVO (estilo harvard.edu) ══════ */
@media (max-width:1024px){
  html,body{overflow-x:hidden;max-width:100vw;width:100%}
  .v2,.v2 section,.v2 header,.v2 footer{max-width:100vw;overflow-x:hidden}
  .v2-hdr{padding:0 1rem;height:120px;align-items:center;width:100vw;left:0;right:0;overflow:hidden}
  .v2-hdr-logo{margin-top:0 !important;display:flex;align-items:center;justify-content:center;height:100%;overflow:hidden}
  .v2-hdr-logo{margin-left:-.75rem}
  .v2-hdr-logo img{width:auto !important;height:150px !important;max-width:62vw;display:block;object-fit:contain;object-position:left center;transform:translate(-6px,14px)}
  .v2-hdr-right{display:flex;align-items:center;height:100%}
  html body{padding-top:0 !important}
  .v2-hdr-alert{display:none}
  .v2-hdr-right{margin-left:auto;gap:.25rem}
  .v2-hdr-btn{padding:0 .65rem}
  .v2-hdr-btn-sub{display:none}
  .v2-hdr-btn-label{display:none}
  .v2-hdr-btn svg{width:26px !important;height:26px !important}
  .v2-hdr-search-btn svg{width:24px !important;height:24px !important}
  .v2-hdr-search-btn{width:44px}
  .v2-hdr-l{width:26px;height:2px;margin:2.5px 0}
  .v2-hdr-ln{font-size:12px}
  .v2-hdr-ls{font-size:7px}

  .v2 .hero{height:100vh;height:100svh;min-height:560px}
  .v2 .hero-img{filter:brightness(.42) saturate(.5);object-position:center center}
  .v2 .hero::after{background:linear-gradient(to bottom,rgba(0,0,0,.55) 0%,rgba(0,0,0,.35) 40%,rgba(0,0,0,.7) 100%)}
  .v2 .hero-copy{padding:0 1.5rem;justify-content:center}
  .v2 .hero-h1{font-size:40px;line-height:1.08;font-weight:500;max-width:92%;letter-spacing:-.5px}
  .v2 .hero-sub{font-size:14px;line-height:1.6;max-width:88%;margin-top:1rem;color:rgba(255,255,255,.78)}
  .v2 .hero-over{margin-bottom:1.125rem}
  .v2-hdr.over-hero{background:transparent !important;border-bottom:none}
  .v2-hdr.over-hero::before{background:linear-gradient(to bottom,rgba(0,0,0,.5),rgba(0,0,0,0))}

  .v2 .sec-hdr{flex-direction:column;gap:1rem;padding:2.5rem 1.25rem 0}
  .v2 .sec-title{flex:0 0 auto}
  .v2 .sec-rule{margin:1.25rem 1.25rem 0}

  .v2 .ef-hdr{padding:1rem 1.25rem .75rem}
  .v2 .ef-grid{grid-template-columns:1fr}
  .v2 .ef-l{padding:1.5rem 1.25rem}
  .v2 .ef-r{padding:1rem 1.25rem 1.5rem;border-left:none;border-top:0.5px solid var(--border)}

  .v2 .d-st{grid-template-columns:repeat(2,1fr)}
  .v2 .st{padding:1.5rem 1.25rem;text-align:center}
  .v2 .st:nth-child(2){border-right:none}
  .v2 .st:nth-child(-n+2){border-bottom:0.5px solid var(--border)}

  .v2 .d-persona{flex-direction:column;align-items:flex-start;gap:.5rem;padding:.875rem 1.25rem}
  .v2 .persona-items{width:100%;display:flex;flex-wrap:wrap;gap:.5rem .25rem}
  .v2 .persona-item{padding:.45rem .85rem;font-size:12px;border-left:none;border:0.5px solid rgba(255,255,255,.18);border-radius:3px}
  .v2 .persona-item:first-child{padding-left:.85rem}

  .v2 .sp-lead{grid-template-columns:1fr;padding:1.5rem 1.25rem 0;gap:1.25rem}
  .v2 .sp-img{height:240px}
  .v2 .sp-copy{padding:0}
  .v2 .sp-h{font-size:22px}
  .v2 .sp-rows{padding:0 1.25rem 2rem}
  .v2 .sp-row{grid-template-columns:1fr;gap:.75rem}
  .v2 .sp-ri{display:none}

  .v2 .dc3{grid-template-columns:1fr;padding:1.5rem 1.25rem 2rem;gap:2rem}
  .v2 .dc-card:not(:last-child){border-right:none;padding-right:0;padding-bottom:2rem;border-bottom:0.5px solid var(--border)}
  .v2 .dc-card:not(:first-child){padding-left:0}

  .v2 .cp-body{grid-template-columns:1fr;padding:0 1.25rem 2rem;gap:1.25rem}
  .v2 .cp-img{height:240px}
  .v2 .cp-img img{object-position:center center}
  .v2 .cp-copy{padding:1rem 0 0}
  .v2 .cp-h{font-size:24px}

  .v2 .nw-grid{grid-template-columns:1fr;padding:1.5rem 1.25rem 2rem;gap:1.5rem}

  .v2 .footer{padding:2.5rem 1.25rem 1.5rem}
  .v2 .ft-top{grid-template-columns:repeat(2,1fr);gap:1.5rem;padding-bottom:1.75rem;margin-bottom:1.75rem}
  .v2 .ft-bot{flex-direction:column;gap:1rem;align-items:flex-start}

  /* ── NAV OVERLAY ACCORDION (mobile) ── */
  .nav-overlay .ov-body{flex-direction:column !important;overflow-y:auto !important}
  .nav-overlay .ov-left{width:100% !important;height:auto !important;padding:24px !important;display:flex !important;flex-direction:column;justify-content:flex-start !important;gap:4px;border:none !important;flex:1 0 auto}
  .nav-overlay .ov-item{padding:16px 0;cursor:pointer;position:relative;opacity:1 !important;transform:none !important;transition:none !important;border-bottom:1px solid rgba(255,255,255,.08)}
  .nav-overlay .ov-item:last-of-type{border-bottom:none}
  .nav-overlay .ov-item-label{font-size:26px !important}
  .nav-overlay .ov-right{display:none !important}
  .nav-overlay .ov-left .ov-panel{display:none !important;padding:8px 0 24px 4px;width:100%;animation:none !important;opacity:1 !important;transform:none !important}
  .nav-overlay .ov-left .ov-panel.active{display:flex !important;flex-direction:column;gap:18px}
  .nav-overlay .ov-left .ov-panel-title{display:none}
  .nav-overlay .ov-left .ov-panels-grid{display:flex;flex-direction:column;gap:18px}
  .nav-overlay .ov-left .ov-panel-group-label{font-size:11px;letter-spacing:1.2px}
  .nav-overlay .ov-left .ov-link{font-size:15px;padding:4px 0}
  .nav-overlay .ov-back-mobile{display:none}
}

@media (max-width:640px){
  .v2-hdr-btn-label{font-size:10px}
  .v2 .hero{height:100vh;height:100svh;min-height:540px}
  .v2 .hero-copy{padding:0 1.25rem}
  .v2 .hero-over{font-size:10px;letter-spacing:1.8px;margin-bottom:1rem}
  .v2 .hero-h1{font-size:34px;line-height:1.1;font-weight:500;max-width:94%;letter-spacing:-.4px}
  .v2 .hero-sub{font-size:13px;line-height:1.6;max-width:92%;margin-top:.875rem}
  .v2 .sec-hdr{padding:2rem 1rem 0}
  .v2 .sec-rule{margin:1rem 1rem 0}
  .v2 .ef-hdr{padding:.875rem 1rem .625rem}
  .v2 .ef-hdr h2{font-size:16px}
  .v2 .ef-l{padding:1.25rem 1rem}
  .v2 .ef-r{padding:.875rem 1rem 1.25rem}
  .v2 .zen{height:260px}
  .v2 .zen-c{width:140px;left:50%;right:auto;transform:translateX(-50%)}
  .v2 .ef-title{font-size:18px}
  .v2 .d-st{grid-template-columns:1fr;width:100%}
  .v2 .st{display:flex;flex-direction:column;align-items:center;padding:1.5rem 1.25rem;border-right:none;border-bottom:0.5px solid var(--border);text-align:center}
  .v2 .st:last-child{border-bottom:none}
  .v2 .st-n{font-size:44px;font-weight:500;line-height:1;text-align:center;width:100%}
  .v2 .st-l{margin-top:.75rem;font-size:13px;text-align:center;width:100%;line-height:1.5}
  .v2 .d-persona{padding:.75rem 1rem}
  .v2 .sp-lead{padding:1.25rem 1rem 0}
  .v2 .sp-rows{padding:0 1rem 1.5rem}
  .v2 .sp-h{font-size:20px}
  .v2 .dc3{padding:1.25rem 1rem 1.5rem}
  .v2 .dc-img{height:180px}
  .v2 .dc-h{font-size:18px}
  .v2 .cp-body{padding:0 1rem 1.5rem}
  .v2 .cp-img{height:200px}
  .v2 .cp-img img{object-position:center center}
  .v2 .cp-copy{padding:.75rem 0 0}
  .v2 .cp-h{font-size:22px}
  .v2 .nw-grid{padding:1.25rem 1rem 1.5rem}
  .v2 .nw-img{height:180px}
  .v2 .footer{padding:2rem 1rem 1.25rem}
  .v2 .ft-top{grid-template-columns:1fr}

  /* ── ESCALA GLOBAL DE FONTE (mobile) ── */
  .v2{font-size:17px}
  .v2 p,.v2 li,.v2 a{font-size:16px;line-height:1.65}
  .v2 .hero-h1{font-size:44px;line-height:1.08}
  .v2 .hero-sub{font-size:16px;line-height:1.6}
  .v2 .hero-over{font-size:12px;letter-spacing:2px}
  .v2 .sec-title,.v2 .sec-h,.v2 .ef-title{font-size:22px !important}
  .v2 .sp-h,.v2 .cp-h,.v2 .dc-h,.v2 .nw-t,.v2 .nw-t a,.v2 .sp-h a,.v2 .cp-h a,.v2 .dc-h a{font-size:22px !important;line-height:1.3}
  .v2 .sp-p,.v2 .cp-p,.v2 .dc-p,.v2 .nw-p,.v2 .ef-p{font-size:16px;line-height:1.6}
  .v2 .st-n{font-size:52px}
  .v2 .st-l{font-size:15px}
  .v2 .persona-item{font-size:14px}
  .v2 .ft-h,.v2 .ft-t{font-size:15px}
  .v2 .ft-li,.v2 .ft-bot{font-size:14px}
  .v2 .dc-cta,.v2 .cp-li{font-size:15px}
}
.reveal{opacity:0;transform:translateY(90px);transition:opacity 1.3s cubic-bezier(.16,.84,.24,1),transform 1.3s cubic-bezier(.16,.84,.24,1);will-change:opacity,transform;filter:blur(8px)}
.reveal.r-left{transform:translateX(-120px)}
.reveal.r-right{transform:translateX(120px)}
.reveal.r-zoom{transform:scale(.78)}
.reveal.in{filter:blur(0)}
.reveal.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}}
