
:root{--hn-ink:#071a2e;--hn-navy:#0d2943;--hn-ivory:#f7f4ed;--hn-white:#fffefb;--hn-gold:#c89a38;--hn-text:#394553;--hn-line:#ddd8ce}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{overflow-x:hidden}.wp-site-blocks{padding:0}.hn-site-header{position:sticky;top:0;z-index:100;background:rgba(255,254,251,.94);backdrop-filter:blur(14px);border-bottom:1px solid rgba(221,216,206,.65);transition:.25s}.hn-site-header.is-scrolled{box-shadow:0 10px 35px rgba(7,26,46,.08)}.admin-bar .hn-site-header{top:32px}
.hn-logo-mark{font-family:Georgia,serif;font-size:2rem;line-height:1;color:var(--hn-ink);letter-spacing:-.08em}.hn-eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:.76rem;font-weight:750;color:var(--hn-gold)}
.hn-hero{min-height:650px;position:relative;overflow:hidden}.hn-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,254,251,.98) 0%,rgba(255,254,251,.92) 44%,rgba(255,254,251,.1) 72%);pointer-events:none}.hn-hero>.wp-block-group__inner-container,.hn-hero>.wp-block-cover__inner-container{position:relative;z-index:2}.hn-hero h1{letter-spacing:-.035em;max-width:780px}.hn-gold{color:var(--hn-gold)}
.is-style-hn-card{background:var(--hn-white);border:1px solid var(--hn-line);padding:clamp(24px,3vw,40px);box-shadow:0 18px 60px rgba(7,26,46,.06);transition:transform .2s,border-color .2s,box-shadow .2s;height:100%}.is-style-hn-card:hover{transform:translateY(-4px);border-color:var(--hn-gold);box-shadow:0 24px 70px rgba(7,26,46,.11)}.is-style-hn-dark{background:var(--hn-ink);color:#fff;padding:clamp(32px,6vw,80px)}.is-style-hn-dark h1,.is-style-hn-dark h2,.is-style-hn-dark h3,.is-style-hn-dark a{color:#fff}.wp-block-button.is-style-hn-outline .wp-block-button__link{background:transparent;color:var(--hn-ink);border:1px solid var(--hn-ink)}
.hn-section{padding-top:clamp(58px,8vw,110px);padding-bottom:clamp(58px,8vw,110px)}.hn-tight{padding-top:28px;padding-bottom:28px}.hn-number{font-family:Georgia,serif;font-size:2.6rem;color:var(--hn-gold);line-height:1}.hn-service-grid .wp-block-post{border:1px solid var(--hn-line);padding:24px;background:#fff;min-height:220px}.hn-service-grid .wp-block-post-title{font-family:Georgia,serif;font-size:1.4rem;line-height:1.1}.hn-profile-card img{aspect-ratio:4/5;object-fit:cover}.hn-footer{background:var(--hn-ink);color:#fff}.hn-footer a,.hn-footer h2,.hn-footer h3{color:#fff}.hn-footer .wp-block-separator{border-color:rgba(255,255,255,.18)}
.hn-mobile-cta{display:none}.hn-source-box{border-left:4px solid var(--hn-gold);background:var(--hn-ivory);padding:18px 22px}.hn-updated{font-size:.84rem;color:#66717c}.hn-faq details{border-bottom:1px solid var(--hn-line);padding:18px 0}.hn-faq summary{font-weight:700;color:var(--hn-ink);cursor:pointer}.screen-reader-text:focus{clip:auto!important;width:auto!important;height:auto!important;top:8px;left:8px;padding:12px;background:#fff;z-index:99999}
@media(max-width:900px){.admin-bar .hn-site-header{top:46px}.hn-hero{min-height:570px;background-position:68% center!important}.hn-hero:after{background:linear-gradient(90deg,rgba(255,254,251,.98),rgba(255,254,251,.9) 67%,rgba(255,254,251,.35))}.hn-desktop-only{display:none!important}.hn-mobile-cta{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:120;background:var(--hn-ink);padding:8px;gap:8px}.hn-mobile-cta a{flex:1;text-align:center;background:var(--hn-gold);color:var(--hn-ink);padding:12px 8px;font-weight:800;font-size:.85rem}.hn-mobile-cta a:last-child{background:#fff}.hn-footer{padding-bottom:76px}}
@media(max-width:520px){.hn-hero h1{font-size:clamp(2.55rem,13vw,4rem)}.hn-section{padding-top:50px;padding-bottom:50px}.wp-block-buttons{gap:10px}.wp-block-button,.wp-block-button__link{width:100%;text-align:center}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

/* v2.2 — reconstrucción fiel al diseño original */
.hn-main-nav{flex:1;justify-content:center}.hn-main-nav .wp-block-navigation-item__content{white-space:nowrap}.hn-brand{min-width:max-content}.hn-trust-strip{padding:22px 0;border-top:1px solid var(--hn-line);border-bottom:1px solid var(--hn-line);background:#fff}.hn-trust-strip .wp-block-column{padding:0 18px;border-right:1px solid var(--hn-line)}.hn-trust-strip .wp-block-column:last-child{border-right:0}.hn-trust-strip p{font-size:.9rem;margin:0}.hn-lawyer-feature{padding-top:0!important;padding-bottom:0!important}.hn-lawyer-feature>.wp-block-columns{gap:0}.hn-lawyer-feature .wp-block-column{padding:clamp(30px,4vw,58px)}.hn-lawyer-feature .wp-block-column:has(.hn-feature-photo){padding:0}.hn-feature-photo,.hn-feature-photo img{height:100%;min-height:520px;width:100%;object-fit:cover;margin:0}.hn-process-list{padding-left:1.25rem}.hn-process-list li{margin-bottom:18px}.hn-service-cards .is-style-hn-card,.hn-six-grid .is-style-hn-card{min-height:100%}.hn-editorial-row{margin-top:52px;padding-top:46px;border-top:1px solid var(--hn-line)}.hn-seo-area>p.alignwide{max-width:1040px;margin-left:auto;margin-right:auto}.hn-content-hub,.hn-cases-faq{position:relative}.hn-cases-faq .is-style-hn-card{margin-bottom:18px}.hn-final-contact{margin-top:0!important;margin-bottom:0!important;padding:34px clamp(24px,5vw,64px)!important}.hn-final-contact .wp-block-button__link{min-width:245px;text-align:center}.hn-home-root .wp-block-columns{align-items:stretch}.hn-home-root h2{max-width:900px}.hn-home-root p{max-width:78ch}.hn-home-root .is-style-hn-card ul{padding-left:1.15rem}.hn-home-root .is-style-hn-card li{margin-bottom:8px}.hn-footer{margin-top:0}.hn-footer .wp-block-columns{gap:36px}.hn-footer p{font-size:.9rem}.hn-main-nav .wp-block-navigation__responsive-container.is-menu-open{background:var(--hn-white);color:var(--hn-ink);padding:28px}.hn-main-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content{gap:18px}.hn-site-header .wp-block-button__link{white-space:nowrap}
@media(max-width:1120px){.hn-main-nav{font-size:.82rem}.hn-main-nav .wp-block-navigation__container{gap:14px}.hn-site-header>.wp-block-group{gap:16px}}
@media(max-width:900px){.hn-main-nav{flex:0}.hn-trust-strip .wp-block-column{border-right:0;border-bottom:1px solid var(--hn-line);padding:14px 0}.hn-trust-strip .wp-block-column:last-child{border-bottom:0}.hn-lawyer-feature .wp-block-column{padding:36px 24px}.hn-feature-photo,.hn-feature-photo img{min-height:480px}.hn-footer .wp-block-columns{gap:20px}.hn-final-contact .wp-block-button__link{min-width:0}}

/* v2.8 — menú móvil estable e imágenes sin recorte */
.hn-hero-image,
.hn-feature-photo,
.hn-team-secondary-photo {
  overflow: hidden;
}
.hn-hero-image img {
  width: 100%;
  height: auto;
  display: block;
  object-fit: contain;
  object-position: center;
}
.hn-feature-photo,
.hn-feature-photo img {
  min-height: 0;
  height: auto;
}
.hn-feature-photo img {
  width: 100%;
  max-height: 720px;
  display: block;
  object-fit: contain;
  object-position: center top;
  background: var(--hn-ivory);
}
.hn-team-secondary-photo,
.hn-team-secondary-photo img {
  width: 100%;
  height: auto !important;
  min-height: 0 !important;
  max-height: none;
  object-fit: contain !important;
  object-position: center !important;
}
.hn-team-secondary-photo img {
  border-radius: 8px;
}
/* Clase opcional para quien prefiera un recorte editorial concreto. */
.hn-image-cover img {
  width: 100%;
  height: 100%;
  min-height: 520px;
  object-fit: cover !important;
  object-position: center top !important;
}

@media (max-width: 900px) {
  .hn-site-header > .wp-block-group {
    min-height: 68px;
    padding-left: 18px !important;
    padding-right: 18px !important;
    gap: 10px !important;
  }
  .hn-brand {
    flex: 1 1 auto;
    min-width: 0;
    max-width: calc(100% - 58px);
  }
  .hn-brand .wp-block-site-logo {
    flex: 0 0 auto;
  }
  .hn-brand .wp-block-site-title {
    min-width: 0;
    font-size: .9rem !important;
    line-height: 1.05;
    white-space: normal;
  }
  .hn-main-nav {
    flex: 0 0 auto;
    margin-left: auto;
  }
  .hn-main-nav .wp-block-navigation__responsive-container-open {
    display: flex !important;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    padding: 8px;
    border: 1px solid var(--hn-line);
    border-radius: 4px;
    color: var(--hn-ink);
    background: var(--hn-white);
  }
  .hn-main-nav .wp-block-navigation__responsive-container-open svg {
    width: 26px;
    height: 26px;
  }
  .hn-main-nav .wp-block-navigation__responsive-container {
    position: fixed !important;
    inset: 0 !important;
    width: 100vw !important;
    height: 100dvh !important;
    max-width: none !important;
    z-index: 999999 !important;
    overflow-y: auto;
    background: var(--hn-white) !important;
    color: var(--hn-ink) !important;
    padding: 0 !important;
  }
  .hn-main-nav .wp-block-navigation__responsive-container.is-menu-open {
    display: flex !important;
  }
  .hn-main-nav .wp-block-navigation__responsive-close {
    width: 100%;
    max-width: none;
    padding: 22px 22px 40px;
  }
  .hn-main-nav .wp-block-navigation__responsive-container-close {
    position: fixed;
    top: 18px;
    right: 18px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 46px;
    height: 46px;
    padding: 8px;
    border: 1px solid var(--hn-line);
    border-radius: 4px;
    color: var(--hn-ink);
    background: var(--hn-white);
    z-index: 1000000;
  }
  .admin-bar .hn-main-nav .wp-block-navigation__responsive-container-close {
    top: 60px;
  }
  .hn-main-nav .wp-block-navigation__responsive-container-content {
    min-height: calc(100dvh - 60px);
    padding: 88px 0 40px !important;
    align-items: stretch !important;
    justify-content: flex-start !important;
  }
  .hn-main-nav .wp-block-navigation__container {
    width: 100%;
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 0 !important;
  }
  .hn-main-nav .wp-block-navigation-item {
    width: 100%;
    border-bottom: 1px solid var(--hn-line);
  }
  .hn-main-nav .wp-block-navigation-item__content {
    display: block;
    width: 100%;
    padding: 18px 4px !important;
    font-family: var(--wp--preset--font-family--editorial, Georgia, serif);
    font-size: clamp(1.35rem, 6vw, 2rem);
    line-height: 1.15;
    color: var(--hn-ink) !important;
    white-space: normal !important;
  }
  .hn-lawyer-feature .wp-block-column:has(.hn-feature-photo) {
    padding: 22px !important;
  }
  .hn-feature-photo img,
  .hn-team-secondary-photo img {
    max-height: none;
  }
  .hn-team-lower .wp-block-columns {
    gap: 28px;
  }
}

@media (max-width: 520px) {
  .hn-brand .wp-block-site-title {
    font-size: .78rem !important;
  }
  .hn-brand .wp-block-site-logo img {
    max-width: 38px;
  }
  .hn-team-secondary-photo img,
  .hn-feature-photo img,
  .hn-hero-image img {
    width: 100%;
    height: auto !important;
    object-fit: contain !important;
  }
}
html.hn-menu-open, body.hn-menu-open { overflow: hidden !important; }


/* v2.9 — hero equilibrado, copy SEO y equipo definitivo */
.hn-hero-clean .hn-hero-grid{gap:clamp(32px,5vw,76px);align-items:center!important}
.hn-hero-clean .hn-hero-title{font-size:clamp(3.45rem,5.25vw,6.1rem);line-height:.98;max-width:760px;margin-bottom:28px}
.hn-hero-clean .hn-hero-image{max-width:680px;margin-left:auto}
.hn-hero-clean .hn-hero-image img{max-height:650px;width:100%;object-fit:contain;object-position:center}
.hn-hero-clean .wp-block-buttons{display:flex;flex-wrap:wrap;align-items:center;gap:12px}
.hn-hero-clean .wp-block-button{width:auto}
.hn-hero-clean .wp-block-button__link{width:auto;min-width:0;padding:16px 26px}
.hn-seo-copy{max-width:1040px}
.hn-seo-copy p{font-size:1.08rem;line-height:1.78;max-width:88ch}
.hn-team-lower .wp-block-columns{gap:clamp(32px,6vw,90px)}
.hn-team-lower .hn-team-secondary-photo{max-width:680px}
.hn-team-lower ul{padding-left:1.2rem}
.hn-team-lower li{margin-bottom:10px}
@media(max-width:900px){
  .hn-hero-clean .hn-hero-grid{gap:26px}
  .hn-hero-clean .hn-hero-title{font-size:clamp(3rem,11vw,4.8rem)}
  .hn-hero-clean .hn-hero-image{max-width:620px;margin:0 auto}
  .hn-hero-clean .hn-hero-image img{max-height:none}
  .hn-hero-clean .wp-block-button{width:100%}
  .hn-hero-clean .wp-block-button__link{width:100%;text-align:center}
}
