
:root{
  --v2-bg:#f8f4ec;--v2-paper:#fffefb;--v2-ink:#0d264c;--v2-purple:#553358;
  --v2-gold:#b4853c;--v2-gold-dark:#8f6425;--v2-muted:#687083;--v2-line:#e1d9c8;
  --v2-shadow:0 18px 55px rgba(37,31,23,.09);--v2-radius:26px;--v2-max:1420px;
}
html[data-theme="purple"]{
  --v2-bg:#2d1833;--v2-paper:#3a2240;--v2-ink:#f4ead7;--v2-purple:#553358;
  --v2-gold:#d2b47c;--v2-gold-dark:#e0c690;--v2-muted:#d7cddd;--v2-line:#684b6a;
  --v2-shadow:0 18px 55px rgba(0,0,0,.28);
}
.v2-site{margin:0;background:var(--v2-bg);color:var(--v2-ink);font-family:"Segoe UI",Arial,sans-serif;line-height:1.55}
.v2-site *{box-sizing:border-box}.v2-site a{color:inherit}
.v2-header{position:sticky;top:0;z-index:70;background:rgba(255,253,248,.96);border-bottom:1px solid rgba(231,220,198,.75);backdrop-filter:blur(14px)}
html[data-theme="purple"] .v2-header{background:rgba(21,16,24,.94)}
.v2-header-inner{width:min(calc(100% - 36px),var(--v2-max));height:100px;margin:auto;display:flex;align-items:center;gap:24px}
.v2-brand{display:flex;align-items:center;text-decoration:none;min-width:205px;height:86px}.v2-brand-logo{display:block;width:104px;height:86px;object-fit:contain;object-position:center}
.v2-brand strong{display:block;font:500 2.05rem/1 Georgia,serif;letter-spacing:.045em}.v2-brand span{display:block;margin-top:4px;font-size:.61rem;letter-spacing:.18em}
.v2-nav{display:flex;align-items:center;justify-content:center;gap:2px;flex:1}.v2-nav-link{position:relative;padding:12px 10px;text-decoration:none;font-size:.76rem;font-weight:650;white-space:nowrap}
.v2-nav-link::after{content:"";position:absolute;left:10px;right:10px;bottom:5px;height:1px;background:transparent}.v2-nav-link.active::after,.v2-nav-link:hover::after{background:var(--v2-gold)}
.v2-actions{display:flex;align-items:center;gap:8px}.v2-theme,.v2-login,.v2-cta,.v2-menu-button{font:inherit;cursor:pointer}
.v2-theme{width:40px;height:40px;border:0;background:transparent;color:var(--v2-ink)}
.v2-login,.v2-cta{height:44px;padding:0 18px;border-radius:999px;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;font-size:.76rem}
.v2-login{border:1px solid var(--v2-gold);background:transparent;color:var(--v2-ink)}.v2-cta{border:1px solid var(--v2-gold);background:var(--v2-gold);color:#fff}
.v2-menu-button{display:none;border:0;background:transparent;color:var(--v2-ink)}
.v2-hero{width:min(100%,var(--v2-max));margin:0 auto;background:var(--v2-paper);display:grid;grid-template-columns:48% 52%;min-height:530px;overflow:hidden}
.v2-hero-copy{padding:74px 60px 62px;display:flex;flex-direction:column;justify-content:center;position:relative;z-index:2}
.v2-kicker{display:block;color:var(--v2-gold);font-size:.68rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase}
.v2-hero h1{margin:14px 0 18px;font:500 clamp(3.7rem,5.8vw,6.3rem)/.93 Georgia,serif;letter-spacing:-.045em}
.v2-hero h1 em,.v2-section-heading h2 em,.v2-about-copy h2 em{color:var(--v2-gold);font-weight:400}
.v2-hero p{max-width:720px;margin:0;color:var(--v2-muted);font:400 1.08rem/1.55 Georgia,serif}
.v2-hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:28px}
.v2-button{display:inline-flex;align-items:center;justify-content:center;gap:18px;min-height:47px;padding:0 22px;border-radius:999px;text-decoration:none;border:1px solid transparent;font:700 .82rem/1 "Segoe UI",sans-serif;cursor:pointer}
.v2-button.primary{background:var(--v2-gold);border-color:var(--v2-gold);color:#fff}.v2-button.outline{border-color:var(--v2-gold);background:transparent;color:var(--v2-ink)}.v2-button.gold{background:#d8b35d;color:#0d264c}
.v2-hero-media{position:relative;min-width:0;min-height:530px;overflow:hidden;background:#ece5d8}.v2-hero-media img{width:100%;height:100%;object-fit:cover;object-position:center center;display:block;image-rendering:auto}.v2-hero-quote{position:absolute;right:9%;top:26%;max-width:165px;padding-top:22px;border-top:3px solid var(--v2-gold);font:italic 1.18rem/1.18 Georgia,serif;color:#28241d}
.v2-hero.inner{min-height:510px}.v2-hero.inner .v2-hero-copy{padding-top:60px;padding-bottom:60px}.v2-hero.inner h1{font-size:clamp(3.1rem,5vw,5.2rem)}.v2-hero.inner .v2-hero-media{min-height:510px}
.v2-benefits{width:min(100%,var(--v2-max));margin:0 auto;background:var(--v2-paper);display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--v2-line);border-bottom:1px solid var(--v2-line)}
.v2-benefits article{display:flex;align-items:center;gap:16px;padding:22px 28px;border-right:1px solid var(--v2-line)}.v2-benefits article:last-child{border-right:0}.v2-benefits article>span{font:400 2rem Georgia,serif;color:var(--v2-gold)}
.v2-benefits b,.v2-benefits small{display:block}.v2-benefits b{font:500 1rem Georgia,serif}.v2-benefits small{margin-top:3px;color:var(--v2-muted);font-size:.72rem}
.v2-benefits.compact{max-width:var(--v2-max)}
.v2-about-home{width:min(100%,var(--v2-max));margin:0 auto;display:grid;grid-template-columns:1.05fr .95fr;align-items:stretch;background:var(--v2-paper)}
.v2-about-image{position:relative;min-height:520px}.v2-about-image img{width:100%;height:100%;object-fit:cover;display:block}.v2-about-image blockquote{position:absolute;left:0;bottom:0;margin:0;width:49%;min-height:180px;padding:36px 44px 30px;background:rgba(13,38,76,.96);color:#fff;font:italic 1.05rem/1.55 Georgia,serif}
.v2-about-copy{padding:62px 54px;display:flex;flex-direction:column;justify-content:center}.v2-about-copy h2,.v2-section-heading h2,.v2-editorial h2,.v2-final-cta h2{margin:10px 0 20px;font:500 clamp(2.3rem,4vw,4rem)/1 Georgia,serif;letter-spacing:-.03em}.v2-about-copy p,.v2-editorial p,.v2-final-cta p{color:var(--v2-muted)}
.v2-about-copy .v2-button{align-self:flex-start;margin-top:16px}
.v2-services-home{width:min(100%,var(--v2-max));margin:0 auto;padding:50px 44px 64px;background:#f8f1e7}.v2-section-heading.center{text-align:center}.v2-section-heading.center h2{margin-bottom:8px}.v2-section-heading.center i{display:block;width:44px;height:2px;background:var(--v2-gold);margin:12px auto 28px}
.v2-service-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.v2-service-cards a{min-height:230px;border-radius:8px;overflow:hidden;position:relative;text-decoration:none;padding:24px;background:linear-gradient(to bottom,rgba(255,255,255,.15),rgba(255,255,255,.92)),var(--bg) center/cover no-repeat;display:flex;flex-direction:column;justify-content:flex-end}.v2-service-cards span{font:500 1.25rem/1.05 Georgia,serif}.v2-service-cards small{margin-top:7px;color:#56524c}
.v2-dark-section{width:min(100%,var(--v2-max));margin:0 auto;display:grid;grid-template-columns:1fr .85fr;gap:50px;align-items:center;padding:70px 60px;background:#0d264c;color:#fff}.v2-dark-section .light{color:#e1bd6c}.v2-dark-section h2{margin:10px 0 18px;font:500 clamp(2.6rem,4.5vw,4.5rem)/1 Georgia,serif}.v2-dark-section p{color:#dce4ef;max-width:680px}
.v2-digital-card{padding:28px;border:1px solid rgba(255,255,255,.2);border-radius:20px;background:rgba(255,255,255,.05)}.v2-digital-card b,.v2-digital-card span{display:block}.v2-digital-card b{color:#e1bd6c;margin-bottom:12px;letter-spacing:.12em;font-size:.72rem}.v2-digital-card span{padding:12px 0;border-top:1px solid rgba(255,255,255,.12)}
.v2-final-cta{width:min(100%,var(--v2-max));margin:0 auto;padding:62px 60px;background:var(--v2-paper);display:flex;justify-content:space-between;align-items:center;gap:50px;border-top:1px solid var(--v2-line)}.v2-final-cta>div{max-width:850px}
.v2-pillars,.v2-process,.v2-platform-grid{width:min(100%,var(--v2-max));margin:0 auto;background:var(--v2-paper);display:grid}
.v2-pillars{grid-template-columns:repeat(4,1fr)}.v2-pillars article,.v2-process article,.v2-platform-grid article{padding:34px;border-right:1px solid var(--v2-line);border-top:1px solid var(--v2-line)}.v2-pillars article:last-child,.v2-process article:last-child{border-right:0}.v2-pillars span,.v2-process span,.v2-platform-grid span{color:var(--v2-gold);font-weight:800}.v2-pillars h3,.v2-process h3,.v2-platform-grid h3{font:500 1.32rem Georgia,serif}.v2-pillars p,.v2-process p,.v2-platform-grid p{color:var(--v2-muted);font-size:.9rem}
.v2-editorial{width:min(100%,var(--v2-max));margin:0 auto;padding:78px 60px;background:var(--v2-paper)}.v2-editorial.two{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px;align-items:center}.v2-editorial.reverse{grid-template-columns:1.1fr .9fr}
.v2-symbol-card{padding:50px;text-align:center;background:#f4ecde;border-radius:10px}.v2-symbol{font:400 8rem/1 Georgia,serif;color:var(--v2-gold)}.v2-symbol-card h2{font-size:2rem}
.v2-editorial blockquote{margin:28px 0 0;padding:20px 24px;border-left:3px solid var(--v2-gold);background:#f8f3e9;font:italic 1.1rem Georgia,serif}
.v2-photo-card{height:420px;overflow:hidden;border-radius:10px}.v2-photo-card.tall{height:500px}.v2-photo-card img{width:100%;height:100%;object-fit:cover}.v2-note{padding:12px 14px;border-left:3px solid var(--v2-gold);background:#f8f3e9;font-size:.86rem}
.v2-icon-list{list-style:none;padding:0;margin:26px 0;display:grid;grid-template-columns:1fr 1fr;gap:12px}.v2-icon-list li{padding:14px 16px;border:1px solid var(--v2-line);border-radius:10px}.v2-icon-list b,.v2-icon-list span{display:block}.v2-icon-list span{font-size:.77rem;color:var(--v2-muted)}
.v2-band-quote{width:min(100%,var(--v2-max));margin:0 auto;padding:55px 60px;text-align:center;background:#f5eee1}.v2-band-quote span{display:block;max-width:950px;margin:auto;font:italic 1.6rem/1.4 Georgia,serif;color:#5c5140}
.v2-service-grid.detail,.v2-resource-grid{width:min(100%,var(--v2-max));margin:0 auto;padding:54px 44px;background:var(--v2-paper);display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.v2-service-grid.detail article,.v2-resource-grid article{background:#fff;border:1px solid var(--v2-line);overflow:hidden;border-radius:12px}.v2-service-grid.detail img,.v2-resource-grid img{width:100%;height:185px;object-fit:cover}.v2-service-grid.detail article>div,.v2-resource-grid article{padding-bottom:20px}.v2-service-grid.detail h3,.v2-service-grid.detail p,.v2-service-grid.detail a{margin-left:20px;margin-right:20px}.v2-service-grid.detail h3,.v2-resource-grid h3{font:500 1.3rem Georgia,serif}.v2-service-grid.detail p,.v2-resource-grid p{color:var(--v2-muted);font-size:.88rem}.v2-service-grid.detail a{font-weight:700;color:var(--v2-gold);text-decoration:none}
.v2-quote-card{padding:48px;border-radius:12px;background:#0d264c;color:#fff;font:italic 2rem/1.35 Georgia,serif}
.v2-alert{width:min(100%,var(--v2-max));margin:0 auto;padding:28px 44px;background:#fff8e9;border-top:1px solid #efd9aa}.v2-alert b{color:var(--v2-gold-dark);text-transform:uppercase;letter-spacing:.12em;font-size:.72rem}.v2-alert p{margin:7px 0 0;color:#655d52}
.v2-process{grid-template-columns:repeat(5,1fr)}.v2-process article{min-height:210px}
.v2-faq{width:min(100%,var(--v2-max));margin:0 auto;padding:52px 60px;background:var(--v2-paper);display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.v2-faq details{padding:22px;border:1px solid var(--v2-line);border-radius:12px}.v2-faq summary{cursor:pointer;font-weight:700}.v2-faq p{color:var(--v2-muted)}
.v2-platform-grid{grid-template-columns:repeat(3,1fr)}.v2-platform-grid article{min-height:170px}
.v2-resource-grid{grid-template-columns:repeat(3,1fr)}.v2-resource-grid article{padding:0 0 22px}.v2-resource-grid article>span,.v2-resource-grid article>h3,.v2-resource-grid article>p{display:block;margin-left:20px;margin-right:20px}.v2-resource-grid article>span{margin-top:20px;color:var(--v2-gold);font-size:.68rem;font-weight:800;letter-spacing:.12em}
.v2-contact{width:min(100%,var(--v2-max));margin:0 auto;background:var(--v2-paper);display:grid;grid-template-columns:1.35fr .65fr;gap:0}.v2-contact-form{padding:58px 60px}.v2-contact-side{padding:58px 48px;background:#f4ecde}.v2-contact-side ol{padding-left:22px;line-height:2}.v2-contact-data{margin-top:35px;padding-top:24px;border-top:1px solid var(--v2-line)}.v2-contact-data b,.v2-contact-data span,.v2-contact-data a{display:block;margin-bottom:7px}
.v2-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:24px 0}.v2-form-grid label{display:flex;flex-direction:column;gap:6px;font-size:.8rem;font-weight:700}.v2-form-grid .wide{grid-column:1/-1}.v2-form-grid input,.v2-form-grid select,.v2-form-grid textarea{width:100%;padding:12px;border:1px solid var(--v2-line);border-radius:8px;background:#fff;color:#252525;font:inherit}.v2-contact-form small{display:block;margin-top:14px;color:var(--v2-muted)}
.v2-footer{background:#0d264c;color:#fff;padding:58px 20px 22px}.v2-footer-inner{width:min(100%,var(--v2-max));margin:auto;display:grid;grid-template-columns:1.7fr 1fr 1fr 1.2fr;gap:40px}.v2-footer-brand{display:flex;gap:14px}.v2-footer-brand img{width:62px;height:62px;object-fit:contain}.v2-footer-brand strong{font:500 1.7rem Georgia,serif}.v2-footer-brand span{display:block;font-size:.6rem;letter-spacing:.16em}.v2-footer-brand p{color:#e2d6e6}.v2-footer-inner>div:not(.v2-footer-brand){display:flex;flex-direction:column;gap:7px}.v2-footer-inner b{color:#e1bd6c;font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;margin-bottom:6px}.v2-footer a,.v2-footer button{color:#f0e8f2;text-decoration:none;background:none;border:0;padding:0;text-align:left;font:inherit;cursor:pointer}.v2-footer-bottom{width:min(100%,var(--v2-max));margin:38px auto 0;padding-top:18px;border-top:1px solid rgba(255,255,255,.15);display:flex;justify-content:space-between;color:#cdbdd1;font-size:.75rem}
@media(max-width:1180px){
 .v2-nav{position:fixed;top:80px;left:18px;right:18px;display:none;flex-direction:column;align-items:stretch;background:var(--v2-paper);padding:16px;border:1px solid var(--v2-line);box-shadow:var(--v2-shadow);border-radius:14px}.v2-menu-open .v2-nav{display:flex}.v2-menu-button{display:block;margin-left:auto}.v2-actions{margin-left:0}.v2-brand{min-width:190px}.v2-login{display:none}
 .v2-service-cards,.v2-service-grid.detail{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:900px){
 .v2-hero,.v2-about-home,.v2-dark-section,.v2-editorial.two,.v2-contact{grid-template-columns:1fr}.v2-hero-media{min-height:430px}.v2-hero-quote{right:7%;top:12%}.v2-benefits,.v2-pillars{grid-template-columns:repeat(2,1fr)}.v2-process{grid-template-columns:repeat(2,1fr)}.v2-platform-grid,.v2-resource-grid,.v2-faq{grid-template-columns:1fr 1fr}.v2-footer-inner{grid-template-columns:1fr 1fr}.v2-about-image blockquote{width:70%}
}
@media(max-width:640px){
 .v2-header-inner{height:74px;width:calc(100% - 20px)}.v2-brand img{width:48px;height:48px}.v2-brand strong{font-size:1.45rem}.v2-brand span{display:none}.v2-cta{display:none}.v2-hero-copy{padding:44px 24px}.v2-hero h1{font-size:3.2rem}.v2-hero-media{min-height:360px}.v2-benefits,.v2-pillars,.v2-process,.v2-platform-grid,.v2-resource-grid,.v2-faq,.v2-service-cards,.v2-service-grid.detail,.v2-footer-inner{grid-template-columns:1fr}.v2-benefits article{border-right:0}.v2-about-image blockquote{position:relative;width:100%;min-height:0}.v2-about-copy,.v2-dark-section,.v2-editorial,.v2-final-cta,.v2-contact-form,.v2-contact-side{padding:38px 24px}.v2-final-cta{flex-direction:column;align-items:flex-start}.v2-services-home{padding:40px 18px}.v2-service-grid.detail,.v2-resource-grid{padding:30px 18px}.v2-form-grid{grid-template-columns:1fr}.v2-form-grid .wide{grid-column:auto}.v2-footer-bottom{flex-direction:column;gap:7px}.v2-hero.inner .v2-hero-media{min-height:360px}
}

.v2-brand strong,.v2-brand span{display:none!important}

/* Institutional image framing — keep subjects inside the visible crop */
body[data-page="inicio"] .v2-hero-media img{object-position:55% center}
body[data-page="hoo"] .v2-hero-media img{object-position:center center}
body[data-page="alejandra"] .v2-hero-media img{object-position:64% center}
body[data-page="integral"] .v2-hero-media img{object-position:center center}
body[data-page="servicios"] .v2-hero-media img{object-position:58% center}
body[data-page="proceso"] .v2-hero-media img{object-position:center center}
body[data-page="virtual"] .v2-hero-media img{object-position:58% center}
body[data-page="recursos"] .v2-hero-media img{object-position:center center}
body[data-page="contacto"] .v2-hero-media img{object-position:center center}

/* Supporting images are pre-cropped 4:3 to avoid accidental browser crops */
.v2-photo-card{height:auto;aspect-ratio:4/3;overflow:hidden;border-radius:12px;background:#efe8dc}
.v2-photo-card.tall{height:auto;aspect-ratio:4/3}
.v2-photo-card img{width:100%;height:100%;object-fit:cover;object-position:center;display:block}
.v2-service-grid.detail img,.v2-resource-grid img{
  width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;object-position:center;display:block
}

/* Brand palette derived from the supplied HŌŌ logos */
.v2-dark-section{background:#0d264c}
.v2-quote-card{background:#553358}
.v2-footer{background:#553358}
.v2-footer-brand{display:block}
.v2-footer-logo{display:block;width:112px;height:112px;object-fit:contain;margin-bottom:10px;border-radius:14px}
.v2-footer-brand p{max-width:260px;color:#eadfed}
.v2-button.gold{background:#d2b47c;color:#0d264c}
.v2-cta{background:#b4853c;border-color:#b4853c;color:#fff}
.v2-login{border-color:#b4853c;color:#0d264c}
html[data-theme="purple"] .v2-login{color:#f4ead7}
.v2-site{background:var(--v2-bg)}


/* ============================================================
   HŌŌ PUBLIC DESIGN V3.1 — CONTRASTE / LEGIBILIDAD
   ============================================================ */
.v2-dark-section,
.v2-dark-section h1,
.v2-dark-section h2,
.v2-dark-section h3,
.v2-dark-section h4,
.v2-dark-section p,
.v2-dark-section li,
.v2-dark-section strong,
.v2-dark-section small,
.v2-dark-section span:not(.light) {
  color:#ffffff !important;
}
.v2-dark-section .light,
.v2-dark-section .v2-eyebrow,
.v2-dark-section .v2-kicker {
  color:#e1bd6c !important;
}
.v2-dark-section .v2-button,
.v2-dark-section .v2-button.gold {
  color:#0d264c !important;
}
.v2-quote-card,
.v2-quote-card h1,
.v2-quote-card h2,
.v2-quote-card h3,
.v2-quote-card p,
.v2-quote-card strong {
  color:#ffffff !important;
}
.v2-footer,
.v2-footer p,
.v2-footer a,
.v2-footer button,
.v2-footer span,
.v2-footer strong {
  color:#f7eef7 !important;
}
.v2-footer b {
  color:#e1bd6c !important;
}
.v2-hero-copy h1,
.v2-hero-copy h2,
.v2-section-title,
.v2-copy h2,
.v2-copy h3 {
  color:#0d264c;
}
.v2-hero-copy em,
.v2-section-title em,
.v2-copy em {
  color:#b4853c;
}
body[data-page="alejandra"] .v2-hero-media img{
  object-position:68% center;
}


/* ============================================================
   HŌŌ PUBLIC DESIGN V3.2 — FACE-FREE ASSET INTEGRATION
   ============================================================ */

/* Hero images: preserve composition and avoid aggressive crop. */
.v2-hero-media{
  overflow:hidden;
  background:#f1eadf;
}
.v2-hero-media img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
}

/* Per-page framing tuned for the face-free asset pack. */
body[data-page="inicio"] .v2-hero-media img{object-position:center center;}
body[data-page="hoo"] .v2-hero-media img{object-position:center center;}
body[data-page="alejandra"] .v2-hero-media img{object-position:58% center;}
body[data-page="integral"] .v2-hero-media img{object-position:center center;}
body[data-page="servicios"] .v2-hero-media img{object-position:center center;}
body[data-page="proceso"] .v2-hero-media img{object-position:center center;}
body[data-page="virtual"] .v2-hero-media img{object-position:center center;}
body[data-page="recursos"] .v2-hero-media img{object-position:center center;}
body[data-page="contacto"] .v2-hero-media img{object-position:center center;}

/* Supporting image cards use the 4:3 source crop instead of browser over-cropping. */
.v2-photo-card,
.v2-service-grid.detail .v2-photo-card,
.v2-resource-grid .v2-photo-card{
  overflow:hidden;
}
.v2-photo-card img,
.v2-service-grid.detail img,
.v2-resource-grid img{
  width:100%;
  height:auto;
  aspect-ratio:4/3;
  object-fit:cover;
  object-position:center;
  display:block;
}


/* ============================================================
   HŌŌ PUBLIC DESIGN V3.3
   REVISIÓN DE TEMAS Y COLORES SEGÚN LOGOS INSTITUCIONALES
   ============================================================ */

/*
  PALETA PRINCIPAL
  Azul marino  #0D264C
  Dorado       #B4853C
  Violeta      #553358   (acento secundario, no fondo dominante)
  Crema        #F8F4EC
  Marfil       #FFFEFB
*/

:root{
  --hoo-navy:#0D264C;
  --hoo-navy-soft:#17385F;
  --hoo-gold:#B4853C;
  --hoo-gold-soft:#D8BC83;
  --hoo-purple:#553358;
  --hoo-purple-soft:#7A5A7D;
  --hoo-cream:#F8F4EC;
  --hoo-ivory:#FFFEFB;
  --hoo-text:#0D264C;
  --hoo-muted:#667085;
  --hoo-line:#DED5C4;

  --v2-bg:var(--hoo-cream);
  --v2-paper:var(--hoo-ivory);
  --v2-ink:var(--hoo-text);
  --v2-purple:var(--hoo-purple);
  --v2-gold:var(--hoo-gold);
  --v2-gold-dark:#8F6425;
  --v2-muted:var(--hoo-muted);
  --v2-line:var(--hoo-line);
}

/* Tema oscuro: sigue siendo institucional, pero prioriza azul marino.
   El violeta queda como acento secundario. */
html[data-theme="purple"]{
  --v2-bg:#0A1B35;
  --v2-paper:#10294D;
  --v2-ink:#F7F1E6;
  --v2-purple:#735477;
  --v2-gold:#D8BC83;
  --v2-gold-dark:#E7D09D;
  --v2-muted:#CDD5E2;
  --v2-line:#2D4A6D;
  --v2-shadow:0 18px 55px rgba(0,0,0,.30);
}

/* HEADER */
.v2-header{
  background:rgba(255,254,251,.97);
  border-bottom:1px solid rgba(180,133,60,.22);
}
html[data-theme="purple"] .v2-header{
  background:rgba(10,27,53,.96);
  border-bottom-color:rgba(216,188,131,.22);
}
.v2-nav-link{
  color:var(--v2-ink);
}
.v2-nav-link.active,
.v2-nav-link:hover{
  color:var(--hoo-navy);
}
html[data-theme="purple"] .v2-nav-link.active,
html[data-theme="purple"] .v2-nav-link:hover{
  color:#fff;
}
.v2-nav-link.active::after,
.v2-nav-link:hover::after{
  background:var(--hoo-gold);
}

/* BOTONES */
.v2-cta,
.v2-button.primary{
  background:var(--hoo-gold);
  border-color:var(--hoo-gold);
  color:#fff;
  box-shadow:0 8px 20px rgba(180,133,60,.12);
}
.v2-cta:hover,
.v2-button.primary:hover{
  background:#9D742F;
  border-color:#9D742F;
}
.v2-login,
.v2-button.outline{
  border-color:var(--hoo-gold);
  color:var(--hoo-navy);
  background:transparent;
}
.v2-login:hover,
.v2-button.outline:hover{
  background:#F5EEDF;
}
html[data-theme="purple"] .v2-login,
html[data-theme="purple"] .v2-button.outline{
  color:#F7F1E6;
  border-color:var(--hoo-gold-soft);
}
html[data-theme="purple"] .v2-login:hover,
html[data-theme="purple"] .v2-button.outline:hover{
  background:rgba(216,188,131,.10);
}
.v2-button.gold{
  background:var(--hoo-gold-soft);
  color:var(--hoo-navy);
}

/* HERO / CONTENIDO */
.v2-hero,
.v2-about-home,
.v2-final-cta,
.v2-pillars,
.v2-process,
.v2-platform-grid,
.v2-editorial,
.v2-faq,
.v2-contact{
  background:var(--v2-paper);
}
.v2-hero-copy h1,
.v2-hero-copy h2,
.v2-section-heading h2,
.v2-about-copy h2,
.v2-editorial h2,
.v2-final-cta h2,
.v2-contact h2{
  color:var(--v2-ink);
}
.v2-kicker,
.v2-section-heading .v2-kicker,
.v2-resource-grid article>span,
.v2-pillars span,
.v2-process span,
.v2-platform-grid span{
  color:var(--hoo-gold);
}

/* SECCIONES OSCURAS: azul marino unificado */
.v2-dark-section{
  background:var(--hoo-navy);
  color:#fff;
}
.v2-dark-section p{
  color:#DCE4EF !important;
}
.v2-dark-section .light,
.v2-dark-section .v2-eyebrow,
.v2-dark-section .v2-kicker{
  color:var(--hoo-gold-soft) !important;
}
.v2-digital-card{
  background:rgba(255,255,255,.055);
  border-color:rgba(216,188,131,.20);
}

/* El violeta queda como detalle editorial, no como bloque dominante */
.v2-quote-card{
  background:var(--hoo-navy);
  border-left:5px solid var(--hoo-purple);
  color:#fff;
}
.v2-quote-card::before{
  content:"";
  display:block;
  width:58px;
  height:3px;
  margin-bottom:18px;
  background:var(--hoo-gold);
}

/* BANDAS CREMA */
.v2-services-home,
.v2-band-quote,
.v2-contact-side,
.v2-symbol-card,
.v2-editorial blockquote,
.v2-note{
  background:#F4EBDD;
}
html[data-theme="purple"] .v2-services-home,
html[data-theme="purple"] .v2-band-quote,
html[data-theme="purple"] .v2-contact-side,
html[data-theme="purple"] .v2-symbol-card,
html[data-theme="purple"] .v2-editorial blockquote,
html[data-theme="purple"] .v2-note{
  background:#17385F;
}

/* TARJETAS */
.v2-service-grid.detail article,
.v2-resource-grid article,
.v2-faq details,
.v2-icon-list li{
  background:var(--v2-paper);
  border-color:var(--v2-line);
}
.v2-service-grid.detail article:hover,
.v2-resource-grid article:hover{
  box-shadow:0 12px 28px rgba(13,38,76,.08);
  border-color:rgba(180,133,60,.45);
}

/* FORMULARIOS */
.v2-form-grid input,
.v2-form-grid select,
.v2-form-grid textarea{
  background:var(--v2-paper);
  color:var(--v2-ink);
  border-color:var(--v2-line);
}
.v2-form-grid input:focus,
.v2-form-grid select:focus,
.v2-form-grid textarea:focus{
  outline:2px solid rgba(180,133,60,.24);
  border-color:var(--hoo-gold);
}
html[data-theme="purple"] .v2-form-grid input,
html[data-theme="purple"] .v2-form-grid select,
html[data-theme="purple"] .v2-form-grid textarea{
  background:#0F2443;
}

/* FOOTER:
   elimina el bloque violeta dominante y usa el mismo azul marino
   de las secciones oscuras. El violeta queda solo como línea/acento. */
.v2-footer{
  position:relative;
  background:var(--hoo-navy) !important;
  color:#fff;
}
.v2-footer::before{
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:0;
  height:4px;
  background:linear-gradient(
    90deg,
    var(--hoo-gold) 0%,
    var(--hoo-gold) 42%,
    var(--hoo-purple) 42%,
    var(--hoo-purple) 58%,
    var(--hoo-gold) 58%,
    var(--hoo-gold) 100%
  );
}
.v2-footer,
.v2-footer p,
.v2-footer a,
.v2-footer button,
.v2-footer span,
.v2-footer strong{
  color:#F4F6FA !important;
}
.v2-footer b{
  color:var(--hoo-gold-soft) !important;
}
.v2-footer-bottom{
  color:#BFCADB !important;
  border-top-color:rgba(216,188,131,.20);
}

/* Uso discreto del violeta institucional */
.v2-theme:hover{
  color:var(--hoo-purple);
}
.v2-symbol{
  color:var(--hoo-gold);
}
.v2-contact-data{
  border-top-color:rgba(85,51,88,.16);
}
.v2-alert{
  background:#FFF8EA;
  border-top-color:#E8D4A8;
}
html[data-theme="purple"] .v2-alert{
  background:#142B4D;
  border-top-color:#4A6282;
}
html[data-theme="purple"] .v2-alert p{
  color:#D6DEEA;
}

/* Accesibilidad: hover/focus consistente */
.v2-nav-link:focus-visible,
.v2-button:focus-visible,
.v2-login:focus-visible,
.v2-cta:focus-visible,
.v2-theme:focus-visible,
.v2-menu-button:focus-visible{
  outline:3px solid rgba(180,133,60,.35);
  outline-offset:3px;
}

/* ============================================================
   HOO V3.4 - MFA ACCOUNT UI HIDDEN
   MFA backend/support files are intentionally preserved.
   ============================================================ */
.mfa-security-card{
  display:none !important;
}
