/* =========================================================
   MNH V15 — VISUAL PRESENTATION STANDARD
   Principle: Show the product clearly first, then strengthen
   it with aesthetics. Additive layer; V14/V13 masters remain.
   ========================================================= */

/* 1) Use-case cards: image is a clear, separate information layer. */
.market-path-grid{gap:20px}
.market-path-card{
  display:flex;
  flex-direction:column;
  min-height:0;
  overflow:hidden;
  border:1px solid var(--line);
  border-radius:24px;
  background:#fff!important;
  box-shadow:0 12px 32px rgba(6,28,52,.06);
}
.market-path-card:after{display:none!important}
.market-path-media{
  display:block;
  width:100%;
  aspect-ratio:4/3;
  background-color:#f1f5f8;
  background-repeat:no-repeat;
  background-position:center;
  background-size:contain;
}
.market-path-copy{
  position:static;
  display:flex;
  flex:1;
  flex-direction:column;
  padding:22px 22px 24px;
  color:var(--ink);
  background:#fff;
}
.market-path-copy .eyebrow{color:#b57b21}
.market-path-copy h3{color:var(--ink);font-size:23px}
.market-path-copy p{color:var(--muted);font-size:13.5px;line-height:1.5}
.market-path-link{margin-top:auto;color:#9d6817;border-bottom-color:rgba(157,104,23,.35)}

/* 2) Home model cards: product first, copy second. */
.ag-home-activity-card,
.ag-home-activity-card:nth-child(5){
  grid-template-columns:1fr!important;
  min-height:0!important;
}
.ag-home-activity-image{
  min-height:320px!important;
  background-color:#f1f5f8!important;
  background-size:contain!important;
  background-repeat:no-repeat!important;
  background-position:center!important;
}
.ag-home-activity-image:after{background:linear-gradient(180deg,rgba(3,20,38,0),rgba(3,20,38,.08))!important}
.ag-home-activity-copy{min-height:220px;padding:25px 28px 28px!important}

/* 3) Home use-case/project cards: image area must not be subordinate to copy. */
.ag-home-project-card-clean{
  grid-template-columns:1fr!important;
  min-height:0!important;
}
.ag-home-project-image-clean{
  min-height:300px!important;
  background-size:cover!important;
  background-position:center!important;
}
.ag-home-project-copy-clean{min-height:210px;padding:25px 28px 28px!important}

/* 4) Model catalogue: full product silhouettes, no narrow half-crops. */
.model-card-premium{
  grid-template-columns:1fr!important;
  min-height:0!important;
}
.model-card-media{
  min-height:360px!important;
  background-color:#f1f5f8!important;
  background-size:contain!important;
  background-repeat:no-repeat!important;
  background-position:center!important;
}
.model-card-copy{min-height:220px;padding:28px 30px 30px!important}

/* 5) Model galleries: primary stage shows the complete source image. */
.inner-page .gallery-shell{background:#f1f5f8}
.inner-page .gallery-stage{background:#f1f5f8}
.inner-page .gallery-stage>img{
  object-fit:contain!important;
  object-position:center!important;
  background:#f1f5f8;
}
.inner-page .gallery-stage:after{background:linear-gradient(180deg,rgba(3,20,38,0) 70%,rgba(3,20,38,.18) 100%)!important}
.inner-page .gallery-caption{background:linear-gradient(180deg,rgba(6,28,52,0),rgba(6,28,52,.56))}

/* 6) Editorial/supporting visuals may still use controlled cover crops. */
.page-hero-media,.image-banner,.project-confidence-visual,.why-hero,.work-model-banner{background-size:cover}

/* 7) Responsive: preserve product readability rather than aggressive cropping. */
@media(max-width:1100px){
  .market-path-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ag-home-activity-image,.model-card-media{min-height:300px!important}
}
@media(max-width:720px){
  .market-path-grid{grid-template-columns:1fr}
  .market-path-media{aspect-ratio:16/11}
  .ag-home-activity-image,.model-card-media{min-height:260px!important}
  .ag-home-project-image-clean{min-height:260px!important}
  .ag-home-activity-copy,.ag-home-project-copy-clean,.model-card-copy{min-height:0!important}
}

/* =========================================================
   V16 HOME REFINEMENT — approved homepage corrections
   2026-08-19
   ========================================================= */

/* A. Home category cards: full-cell image, controlled crop, no empty bands. */
.market-path-media{
  background-size:cover!important;
  background-position:center!important;
}
.market-path-card:nth-child(1) .market-path-media{background-position:center 56%!important}
.market-path-card:nth-child(2) .market-path-media{background-position:center 48%!important}
.market-path-card:nth-child(3) .market-path-media{background-position:center 52%!important}
.market-path-card:nth-child(4) .market-path-media{background-position:center 52%!important}

/* B. Europe Project Check: center market codes in circles and strengthen them. */
.eu-check-route .eu-check-code{
  display:grid!important;
  place-items:center!important;
  width:42px!important;
  height:42px!important;
  margin:0!important;
  padding:0!important;
  border:1px solid rgba(239,198,109,.58)!important;
  border-radius:50%!important;
  color:var(--gold2)!important;
  font-size:13px!important;
  line-height:1!important;
  font-weight:900!important;
  letter-spacing:.045em!important;
}

/* C. Home page mobile navigation: icon only; accessible label stays hidden. */
.ag-menu-toggle{
  display:none;
  width:46px;
  height:42px;
  padding:9px 10px;
  margin:0;
  border:0;
  border-radius:10px;
  background:transparent;
  color:#fff;
  appearance:none;
  -webkit-appearance:none;
  cursor:pointer;
}
.ag-menu-toggle>span:not(.screen-reader-text){
  display:block!important;
  width:24px!important;
  height:2px!important;
  margin:5px auto!important;
  padding:0!important;
  background:#fff!important;
  border:0!important;
  border-radius:2px!important;
}
.screen-reader-text{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  padding:0!important;
  margin:-1px!important;
  overflow:hidden!important;
  clip:rect(0,0,0,0)!important;
  clip-path:inset(50%)!important;
  white-space:nowrap!important;
  border:0!important;
}

@media(max-width:900px){
  .ag-menu-toggle{display:block!important}
  .site-header .header-inner{grid-template-columns:minmax(0,1fr) auto!important}
  .site-header .main-nav.mobile-open{
    display:flex!important;
    position:absolute!important;
    top:100%!important;
    left:0!important;
    right:0!important;
    z-index:1300!important;
    flex-direction:column!important;
    align-items:stretch!important;
    gap:0!important;
    padding:14px 22px 18px!important;
    background:#061c34!important;
    border-top:1px solid rgba(255,255,255,.10)!important;
    box-shadow:0 18px 35px rgba(2,16,31,.25)!important;
    white-space:normal!important;
  }
  .site-header .main-nav.mobile-open>a,
  .site-header .main-nav.mobile-open .nav-parent{
    padding:12px 0!important;
  }

  /* Europe panel must stack and stay inside the viewport. */
  .eu-check-panel{
    grid-template-columns:minmax(0,1fr)!important;
    gap:0!important;
    width:100%!important;
    max-width:100%!important;
    overflow:hidden!important;
  }
  .eu-check-copy{
    min-width:0!important;
    padding:28px 24px!important;
  }
  .eu-check-routes{
    min-width:0!important;
    width:100%!important;
    max-width:100%!important;
    padding:22px 24px!important;
    box-sizing:border-box!important;
  }
  .eu-check-route{
    grid-template-columns:46px minmax(0,1fr)!important;
    gap:14px!important;
  }
  .eu-check-route>div{min-width:0!important}
  .eu-check-route strong,
  .eu-check-route>div>span{
    white-space:normal!important;
    overflow-wrap:anywhere!important;
  }
}

@media(max-width:620px){
  .market-path-media{aspect-ratio:4/3!important}
  .eu-check{overflow:hidden!important}
  .eu-check .container{width:calc(100% - 28px)!important}
  .eu-check-copy{padding:24px 18px!important}
  .eu-check-actions{display:grid!important;grid-template-columns:1fr!important}
  .eu-check-actions .btn{width:100%!important}
  .eu-check-routes{padding:18px!important}
  .eu-check-route{grid-template-columns:44px minmax(0,1fr)!important;gap:12px!important}
  .eu-check-route .eu-check-code{width:40px!important;height:40px!important;font-size:12.5px!important}
}
