/* ============================ TOP HEADER ============================ */
.mn-topbar { min-height: 40px; background: #F8F8F8; border-bottom: 1px solid #DDE2E4; }
.mn-topbar__inner { min-height: 40px; display: flex; align-items: center; justify-content: flex-end; }
.mn-topbar__items { display: flex; align-items: center; justify-content: flex-end; gap: 0; flex-wrap: wrap; }
.mn-topbar__item { display: inline-flex; align-items: center; gap: 8px; font-size: 12px; color: #303A43; line-height: 1.2; padding: 0 20px; border-left: 1px solid #DDE2E4; min-height: 18px; text-decoration: none; }
.mn-topbar__item:first-child { border-left: 0; }
.mn-topbar__item:last-child { padding-right: 0; }
.mn-topbar__item .mn-icon { width: 16px; height: 16px; color: #E28A4A; stroke-width: 2; flex: 0 0 auto; }
a.mn-topbar__item { transition: color .2s ease; }
a.mn-topbar__item:hover { color: #975321; }
a.mn-topbar__item:focus-visible { outline: 2px solid #E28A4A; outline-offset: 3px; border-radius: 2px; }
.mn-topbar__social { gap: 8px; padding-inline: 14px; }
.mn-topbar__social .mn-icon { width: 17px; height: 17px; }
.mn-topbar__social--inactive { cursor: default; }

/* ========================== NAVIGATION ============================ */
.mn-header { background: #fff; position: relative; z-index: 60; border-bottom: 1px solid rgba(25,43,56,.07); }
.mn-header__inner { min-height: 102px; display: flex; align-items: center; justify-content: space-between; gap: 38px; }
.mn-brand { display: inline-flex; align-items: center; gap: 13px; flex: none; color: var(--mn-blue); }
.mn-brand__mark { width: 77px; height: 52px; }
.mn-brand__words { display: flex; flex-direction: column; line-height: 1; }
.mn-brand__words strong { font-size: clamp(24px,2.3vw,36px); font-weight: 850; letter-spacing: .08em; line-height: 1.05; }
.mn-brand__words small { font-size: 8px; font-weight: 750; letter-spacimng: .38em; margin-top: 5px; }
.mn-brand__custom { width: auto; max-width: 225px; max-height: 54px; object-fit: contain; }
.mn-navigation { margin-left: auto; }
.mn-nav-list { display: flex; gap: clamp(24px,2.7vw,48px); padding: 0; margin: 0; list-style: none; align-items: center; }
.mn-nav-list > li { position: relative; }
.mn-nav-list a { display: inline-flex; padding: 9px 0; font-size: 15px; font-weight: 650; color: var(--mn-blue); position: relative; white-space: nowrap; }
.mn-nav-list a:hover, .mn-nav-list a.is-active, .mn-nav-list .current-menu-item > a { color: #B86128; }
.mn-nav-list a.is-active::after, .mn-nav-list .current-menu-item > a::after { content: ''; position: absolute; left: 0; right: 0; bottom: 3px; height: 2px; background: var(--mn-orange); }
.mn-nav-list .sub-menu { display: none; position: absolute; top: 100%; left: -16px; min-width: 220px; background: white; box-shadow: 0 14px 28px rgba(16,34,48,.12); border-radius: 5px; padding: 10px 18px; margin: 0; list-style: none; }
.mn-nav-list li:hover > .sub-menu, .mn-nav-list li:focus-within > .sub-menu { display: block; }
.mn-nav-list .sub-menu a { font-size: 14px; }
.mn-header__cta { padding-inline: 25px; min-width: 158px; flex: none; }
.mn-menu-toggle { display: none; border: none; background: none; color: var(--mn-blue); padding: 8px; }
.mn-menu-toggle__close { display: none; }

/* ============================= HERO ================================ */
.mn-hero { position: relative; background: var(--mn-blue); color: var(--mn-text-on-dark); isolation: isolate; }
.mn-hero__slides { position: relative; height: clamp(640px, 49.5vw, 705px); min-height: 640px; }
.mn-hero__slide { position: absolute; inset: 0; opacity: 0; visibility: hidden; transition: opacity .75s ease, visibility .75s; }
.mn-hero__slide.is-active { opacity: 1; visibility: visible; z-index: 1; }
.mn-hero__photo { position: absolute; inset: 0; z-index: -3; background: linear-gradient(110deg, #192b38 0%, #263948 52%, #556774 100%); overflow: hidden; }
.mn-hero__photo img { width: 100%; height: 100%; object-fit: cover; object-position: center center; }
.mn-hero__photo-pending { width: 100%; height: 100%; position: relative; background: linear-gradient(116deg,#192b38 18%,#314352 63%,#495b67 100%); }
.mn-hero__photo-pending::after { content:''; position:absolute; right: 11%; top:-20%; height:140%; width:24%; transform:rotate(16deg); border-inline: 1px solid rgba(255,255,255,.07); background:rgba(255,255,255,.02); }
.mn-hero__photo-pending span { position: absolute; bottom: 27%; right: 8%; padding: 13px 18px; border: 1px dashed rgba(255,255,255,.4); border-radius: 4px; font-size: 13px; color: #e1e8eb; }
.mn-hero__shade { pointer-events: none; position: absolute; inset: 0; z-index: -2; background: linear-gradient(90deg,rgba(12,35,49,.99) 0%,rgba(17,39,53,.98) 25%,rgba(25,43,56,.87) 42%,rgba(25,43,56,.30) 62%,rgba(25,43,56,.02) 100%); }
.mn-hero__content-wrap { height: 100%; position: relative; display: flex; align-items: center; padding-top: 35px; padding-bottom: 105px; }
.mn-hero__content { width: min(660px, 55%); padding-top: 10px; }
.mn-hero__eyebrow { display: flex; align-items: center; gap: 20px; letter-spacing: .28em; text-transform: uppercase; font-size: 12px; font-weight: 650; margin: 0 0 28px; color: #e6eef2; }
.mn-hero__rule { display: inline-block; height: 3px; width: 46px; background: var(--mn-orange); flex: none; }
.mn-hero__title { font-size: clamp(40px,4.1vw,64px); line-height: 1.06; letter-spacing: -.035em; font-weight: 850; margin: 0 0 26px; text-wrap: balance; }
.mn-hero__title span, .mn-hero__title em { display: block; font-style: normal; }
.mn-hero__title em { color: var(--mn-orange); }
.mn-hero__slide[data-slide-index="2"] .mn-hero__title { font-size: clamp(39px, 3.6vw, 55px); }
.mn-hero__description { max-width: 590px; font-size: clamp(15px, 1.2vw, 18px); line-height: 1.62; color: #d9e1e6; margin: 0 0 33px; }
.mn-hero__actions { display: flex; flex-wrap: wrap; gap: 18px; }
.mn-hero__actions .mn-btn--primary { min-width: 242px; }
.mn-hero__actions .mn-btn--outline { min-width: 196px; }

/* ========================== SLIDER CONTROL ========================= */
.mn-hero__controls { z-index: 12; position: absolute; left: 0; right: 0; bottom: 0; min-height: 88px; background: linear-gradient(90deg, transparent 0%,rgba(13,37,52,.0) 34%,rgba(13,37,52,.80) 52%,rgba(13,37,52,.76) 100%); }
.mn-hero__controls-inner { display: flex; align-items: center; justify-content: flex-end; gap: 14px; min-height: 88px; }
.mn-slider-arrow { display:flex; align-items:center; justify-content:center; width:50px; height:50px; flex:none; border:1.5px solid rgba(255,255,255,.91); border-radius:50%; background:transparent; color:#fff; transition:background .2s ease; }
.mn-slider-arrow .mn-icon { height: 24px; width: 24px; }
.mn-slider-arrow:hover { background: rgba(255,255,255,.16); }
.mn-slider-tabs { display: flex; align-items: stretch; }
.mn-slider-tab { position: relative; display:flex; align-items:center; text-align:left; gap:14px; padding:10px 18px; min-width:174px; color:rgba(236,241,245,.60); background:transparent; border:0; border-left:1px solid rgba(233,241,244,.42); transition:color .2s ease; }
.mn-slider-tab__num { font-size:36px; line-height:1; font-weight:800; letter-spacing:-.06em; }
.mn-slider-tab__name { max-width:110px; font-size:12px; line-height:1.4; font-weight:650; }
.mn-slider-tab.is-active { color:#f2f6f8; }
.mn-slider-tab.is-active .mn-slider-tab__num { color:var(--mn-orange); }
.mn-slider-tab__progress { position:absolute; height:3px; bottom:0; left:18px; right:18px; background:transparent; }
.mn-slider-tab.is-active .mn-slider-tab__progress { background:var(--mn-orange); }
.mn-slider-tab:hover { color:#fff; }
.mn-slider-pause { font-size:11px; background:transparent; color:#e9eef0; border:0; padding:4px; opacity:.74; }
.mn-slider-pause:hover { opacity:1; text-decoration: underline; }

/* ====================== FOUR SPECIALTIES =========================== */
.mn-services-strip { background: #f6f8f9; border-top:1px solid #e4eaed; border-bottom: 1px solid #e6ecee; }
.mn-services-strip__grid { min-height: 132px; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); align-items:center; }
.mn-services-strip__item { min-height:65px; display:flex; align-items:center; gap:18px; padding:8px 26px; border-left:1px solid #d5dee3; }
.mn-services-strip__item:first-child { padding-left:0; border-left:0; }
.mn-services-strip__item:last-child { padding-right:0; }
.mn-services-strip__item > .mn-icon { width:49px; height:49px; stroke-width:1.25; color:#25394a; }
.mn-services-strip__item h2 { font-size:14px; font-weight:800; line-height:1.4; margin:0 0 4px; color:var(--mn-blue); }
.mn-services-strip__item p { font-size:12px; line-height:1.55; margin:0; color:#667783; }

/* ===================== SUBPAGES AND FOOTER ========================= */
.mn-inner-page { min-height: 47vh; background:#fff; }
.mn-inner-page__content { padding-block:clamp(72px,8vw,120px); }
.mn-inner-page__title { color:var(--mn-blue); font-size:clamp(32px,4vw,54px); line-height:1.15; margin:0 0 28px; }
.mn-wp-content { max-width:940px; color:var(--mn-graphite); }
.mn-wp-content p { line-height:1.8; }
.mn-entry { margin-bottom:50px; }
.mn-footer { background:var(--mn-blue); color:var(--mn-white); }
.mn-footer__inner { min-height:175px; display:grid; grid-template-columns:1.5fr 1fr auto; align-items:center; gap:45px; padding-block:34px; }
.mn-footer strong { font-size:22px; letter-spacing:.07em; }
.mn-footer p { color:#b9c7cf; font-size:13px; margin:4px 0 0; max-width:370px; }
.mn-footer__links { display:flex; flex-wrap:wrap; gap:15px; font-size:13px; }
.mn-footer__links a:hover { color:var(--mn-orange); }
.mn-footer small { font-size:11px; color:#b9c7cf; }

.mn-home-content { padding-block: 68px; }

/* =================== BLOCK 02: CORPORATE INTRO ===================== */
.mn-about { position:relative; overflow:hidden; background:#F5F6F4; padding-block:clamp(96px,8vw,120px); }
.mn-about__grid { display:grid; grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr); align-items:center; gap:clamp(64px,5.6vw,80px); }
.mn-about__visual { position:relative; min-height:620px; isolation:isolate; }
.mn-about__decor { position:absolute; pointer-events:none; }
.mn-about__decor--panel { z-index:-2; width:56%; height:73%; right:4%; top:5%; border-radius:8px; background:#E9ECEC; }
.mn-about__decor--line { z-index:-1; width:46%; height:65%; right:8%; bottom:3%; border:2px solid #E28A4A; border-radius:10px; }
.mn-about__photo { position:absolute; overflow:hidden; margin:0; background:#DDE2E4; }
.mn-about__photo img { width:100%; height:100%; object-fit:cover; display:block; }
.mn-about__photo--main { z-index:1; inset:0 auto auto 0; width:82%; height:94%; border-radius:9px; }
.mn-about__photo--main img { object-position:52% center; }
.mn-about__photo--detail { z-index:2; width:46%; height:57%; right:0; bottom:0; border:5px solid #F5F6F4; border-radius:14px; }
.mn-about__photo--detail img { object-position:34% center; }
.mn-about__content { max-width:610px; }
.mn-about__eyebrow { display:flex; align-items:center; gap:24px; margin:0 0 29px; color:#192B38; font-size:13px; line-height:1.2; font-weight:650; letter-spacing:.30em; text-transform:uppercase; }
.mn-about__eyebrow > span { width:60px; height:3px; flex:none; background:#E28A4A; }
.mn-about__title { margin:0 0 34px; color:#192B38; font-size:clamp(42px,3.45vw,48px); line-height:1.08; letter-spacing:-.035em; font-weight:850; text-wrap:balance; }
.mn-about__copy { color:#303A43; font-size:17px; line-height:1.78; }
.mn-about__copy p { margin:0; }
.mn-about__copy p + p { margin-top:24px; }
.mn-about__cta { display:inline-flex; align-items:center; justify-content:space-between; gap:34px; width:min(315px,100%); margin-top:38px; padding:0 0 12px; border-bottom:2px solid #E28A4A; color:#D96F25; font-size:18px; line-height:1.3; font-weight:800; text-decoration:none; transition:color .2s ease,border-color .2s ease,gap .2s ease; }
.mn-about__cta .mn-icon { width:22px; height:22px; flex:none; }
.mn-about__cta:hover { color:#AD511C; border-color:#AD511C; gap:42px; }
.mn-about__cta:focus-visible { outline:3px solid rgba(226,138,74,.45); outline-offset:6px; border-radius:2px; }


/* =================== BLOCK 03: SERVICE CARDS ====================== */
.mn-service-cards { background:#FFFFFF; padding-block:clamp(96px,8vw,120px); }
.mn-service-cards__header { display:grid; grid-template-columns:minmax(0,1.05fr) minmax(360px,.75fr); align-items:end; gap:clamp(56px,7vw,108px); margin-bottom:48px; }
.mn-service-cards__heading { max-width:720px; }
.mn-service-cards__eyebrow { display:flex; align-items:center; gap:20px; margin:0 0 22px; color:#192B38; font-size:13px; line-height:1.2; font-weight:650; letter-spacing:.28em; text-transform:uppercase; }
.mn-service-cards__eyebrow > span { width:60px; height:3px; flex:none; background:#E28A4A; }
.mn-service-cards__title { margin:0; color:#192B38; font-size:clamp(42px,3.45vw,48px); line-height:1.08; letter-spacing:-.035em; font-weight:850; text-wrap:balance; }
.mn-service-cards__intro { margin:0 0 3px; color:#303A43; font-size:17px; line-height:1.72; }
.mn-service-cards__grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:30px; }
.mn-service-card { display:flex; min-width:0; flex-direction:column; overflow:hidden; background:#FFFFFF; border:1px solid rgba(25,43,56,.17); border-radius:10px; transition:border-color .22s ease,transform .22s ease; }
.mn-service-card__media { height:clamp(250px,20vw,285px); overflow:hidden; background:#DDE2E4; }
.mn-service-card__media img { display:block; width:100%; height:100%; object-fit:cover; transition:transform .35s ease; }
.mn-service-card__body { display:flex; flex:1; flex-direction:column; align-items:flex-start; padding:27px 34px 33px; }
.mn-service-card__title { margin:0 0 16px; color:#192B38; font-size:24px; line-height:1.25; letter-spacing:-.02em; font-weight:820; }
.mn-service-card__description { margin:0 0 28px; color:#4A5660; font-size:16px; line-height:1.68; }
.mn-service-card__link { display:inline-flex; align-items:center; gap:17px; margin-top:auto; color:#D96F25; font-size:16px; line-height:1.35; font-weight:650; text-decoration:none; transition:color .2s ease,gap .2s ease; }
.mn-service-card__link .mn-icon { width:21px; height:21px; flex:none; }
.mn-service-card:hover { border-color:rgba(226,138,74,.55); transform:translateY(-2px); }
.mn-service-card:hover .mn-service-card__media img { transform:scale(1.025); }
.mn-service-card__link:hover { color:#AD511C; gap:23px; }
.mn-service-card__link:focus-visible { outline:3px solid rgba(226,138,74,.45); outline-offset:6px; border-radius:2px; }


/* Iconos definitivos de especialidades del Hero — 2026-10-14 */
.mn-services-strip__item {
    gap: 20px;
}

.mn-services-strip__icon {
    display: grid;
    place-items: center;
    flex: 0 0 64px;
    width: 64px;
    height: 64px;
}

.mn-services-strip__icon img {
    display: block;
    width: 64px;
    height: 64px;
    object-fit: contain;
    mix-blend-mode: multiply;
}


/* ==================== STICKY HEADER DINAMICO ==================== */
:root {
    --mn-admin-offset: 0px;
    --mn-sticky-header-height: 88px;
}

html {
    scroll-padding-top: calc(var(--mn-admin-offset) + 96px);
}

.mn-header {
    position: sticky;
    top: var(--mn-admin-offset);
    z-index: 60;
    transition: box-shadow 280ms ease;
}

.mn-header__inner,
.mn-brand__mark,
.mn-brand__words strong,
.mn-brand__words small,
.mn-brand__custom {
    transition: min-height 280ms ease, width 280ms ease, height 280ms ease,
        max-width 280ms ease, max-height 280ms ease, font-size 280ms ease,
        letter-spacing 280ms ease, margin 280ms ease;
}

.mn-header.is-sticky {
    box-shadow: 0 3px 14px rgba(25, 43, 56, .07);
}

.mn-header.is-sticky .mn-header__inner {
    min-height: var(--mn-sticky-header-height);
}

.mn-header.is-sticky .mn-brand__mark {
    width: 65px;
    height: 44px;
}

.mn-header.is-sticky .mn-brand__words strong {
    font-size: clamp(22px, 1.95vw, 31px);
}

.mn-header.is-sticky .mn-brand__words small {
    margin-top: 4px;
    font-size: 7px;
    letter-spacing: .34em;
}

.mn-header.is-sticky .mn-brand__custom {
    max-width: 191.25px;
    max-height: 45.75px;
}

@media (prefers-reduced-motion: reduce) {
    .mn-header,
    .mn-header__inner,
    .mn-brand__mark,
    .mn-brand__words strong,
    .mn-brand__words small,
    .mn-brand__custom {
        transition-duration: 0.01ms;
    }
}


/* ============ MINARQ HEADER BALANCE 2026-10-20 ============ */
@media (min-width: 1021px) {
  .mn-header__inner {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
    align-items: center;
    column-gap: clamp(28px, 3vw, 44px);
  }

  .mn-brand { justify-self: start; }
  .mn-navigation { margin-left: 0; justify-self: center; }
  .mn-header__cta { justify-self: end; }
  .mn-nav-list { gap: clamp(40px, 3.2vw, 48px); }
}

@media (min-width: 701px) {
  .mn-topbar__inner { display: block; }
  .mn-topbar__spacer { display: none; }
  .mn-topbar__items {
    display: grid;
    grid-template-columns: max-content max-content minmax(24px, 1fr) max-content max-content;
    align-items: center;
    column-gap: clamp(14px, 2vw, 28px);
    width: 100%;
    flex-wrap: nowrap;
  }

  .mn-topbar__item { padding: 0; border-left: 0; }
  .mn-topbar__items > .mn-topbar__item:nth-child(3) { grid-column: 1; }
  .mn-topbar__items > .mn-topbar__item:nth-child(4) { grid-column: 2; }
  .mn-topbar__items > .mn-topbar__item:nth-child(1) { grid-column: 4; }
  .mn-topbar__items > .mn-topbar__item:nth-child(2) { grid-column: 5; }
}

@media (max-width: 700px) {
  .mn-topbar__spacer { display: none; }
  .mn-topbar__items {
    display: grid;
    grid-template-columns: repeat(2, max-content);
    grid-auto-rows: auto;
    justify-content: center;
    column-gap: 16px;
    row-gap: 4px;
    width: 100%;
  }

  .mn-topbar__item,
  .mn-topbar__social { padding-inline: 0; border-left: 0; }
  .mn-topbar__items > .mn-topbar__item:nth-child(3) { grid-column: 1; grid-row: 1; }
  .mn-topbar__items > .mn-topbar__item:nth-child(4) { grid-column: 2; grid-row: 1; }
  .mn-topbar__items > .mn-topbar__item:nth-child(1) { grid-column: 1; grid-row: 2; }
  .mn-topbar__items > .mn-topbar__item:nth-child(2) { grid-column: 2; grid-row: 2; }
}


/* Top Header: keep both groups on one shared desktop row */
@media (min-width: 701px) {
  .mn-topbar__items > .mn-topbar__item { grid-row: 1; }
}


/* ========== TOP HEADER SCALE REFINEMENT 2026-10-20 ========== */
@media (min-width: 701px) {
  .mn-topbar {
    height: 44px;
    min-height: 44px;
    box-sizing: border-box;
  }
  .mn-topbar .mn-topbar__inner,
  .mn-topbar .mn-topbar__items { min-height: 43px; }
  .mn-topbar .mn-topbar__items { column-gap: clamp(22px, 2vw, 28px); }
  .mn-topbar .mn-topbar__item { min-height: 24px; gap: 8px; font-size: 13px; font-weight: 500; line-height: 1.25; }
  .mn-topbar .mn-topbar__item .mn-icon,
  .mn-topbar .mn-topbar__social .mn-icon { width: 16px; height: 16px; }
}
@media (max-width: 700px) {
  .mn-topbar { min-height: 52px; }
  .mn-topbar .mn-topbar__inner { min-height: 52px; padding-block: 5px; }
  .mn-topbar .mn-topbar__items { grid-auto-rows: 18px; column-gap: 20px; row-gap: 5px; }
  .mn-topbar .mn-topbar__item { min-height: 18px; gap: 7px; font-size: 12px; font-weight: 500; line-height: 1.2; }
  .mn-topbar .mn-topbar__item .mn-icon,
  .mn-topbar .mn-topbar__social .mn-icon { width: 15px; height: 15px; }
}


/* ========== MAIN NAV POSITION REFINEMENT 2026-10-20 ========== */
@media (min-width: 1200px) {
  .mn-header .mn-navigation {
    transform: translateX(24px);
  }
}
