/* v81 — fix home Ontario map clipping + Spanish header language-selector collision */

/* Home hero: keep the Ontario map visually present but fully inside the hero on ES/EN. */
.home-page .home-hero,
.home-page .home-hero-copy{
  overflow:visible !important;
}
.home-page .home-ontario-map{
  display:block !important;
  position:relative !important;
  right:auto !important;
  bottom:auto !important;
  width:clamp(285px, 27vw, 335px) !important;
  max-height:clamp(270px, 33vh, 350px) !important;
  height:auto !important;
  object-fit:contain !important;
  margin:20px auto 0 !important;
  transform:none !important;
}
@media (min-width:1181px){
  .home-page .home-hero-copy{
    top:19.5% !important;
    width:min(680px,44vw) !important;
  }
  .home-page .home-cta-row{
    margin-top:28px !important;
  }
}
@media (min-width:1600px){
  .home-page .home-ontario-map{
    width:clamp(315px, 23vw, 365px) !important;
    max-height:365px !important;
  }
}
@media (max-width:1180px){
  .home-page .home-ontario-map{
    width:min(295px, 46vw) !important;
    max-height:330px !important;
    margin-top:20px !important;
  }
}
@media (max-width:860px){
  .home-page .home-hero{
    min-height:1120px !important;
  }
  .home-page .home-hero-copy{
    padding-bottom:520px !important;
  }
  .home-page .home-ontario-map{
    width:min(245px, 66vw) !important;
    max-height:275px !important;
    margin-top:22px !important;
  }
}
@media (max-width:430px){
  .home-page .home-hero{
    min-height:1110px !important;
  }
  .home-page .home-ontario-map{
    width:min(218px, 66vw) !important;
    max-height:248px !important;
  }
}

/* Spanish desktop header: prevent the full language selector from colliding with nav items. */
@media (min-width:981px){
  html[lang="es"] .site-header,
  html[lang="es"] .home-site-header,
  html[lang="es"] body.info-page .site-header,
  html[lang="es"] .faq-page .site-header,
  html[lang="es"] .has-standard-layout .site-header{
    width:min(1780px, calc(100vw - 72px)) !important;
    max-width:min(1780px, calc(100vw - 72px)) !important;
    padding-left:26px !important;
    padding-right:18px !important;
    gap:12px !important;
  }
  html[lang="es"] .site-header .brand,
  html[lang="es"] .home-site-header .brand,
  html[lang="es"] .site-header .home-brand,
  html[lang="es"] body.info-page .site-header .brand,
  html[lang="es"] .faq-page .site-header .brand,
  html[lang="es"] .has-standard-layout .site-header .brand{
    flex:0 1 clamp(330px, 27vw, 520px) !important;
    width:clamp(330px, 27vw, 520px) !important;
    min-width:260px !important;
    max-width:520px !important;
  }
  html[lang="es"] .site-header .brand img,
  html[lang="es"] .home-site-header .brand img,
  html[lang="es"] .site-header .home-brand img,
  html[lang="es"] body.info-page .site-header .brand img,
  html[lang="es"] .faq-page .site-header .brand img,
  html[lang="es"] .has-standard-layout .site-header .brand img{
    width:clamp(300px, 25vw, 455px) !important;
    max-height:70px !important;
  }
  html[lang="es"] .site-header .main-nav,
  html[lang="es"] .home-site-header .main-nav,
  html[lang="es"] .home-page .main-nav,
  html[lang="es"] body.info-page .site-header .main-nav,
  html[lang="es"] .faq-page .site-header .main-nav,
  html[lang="es"] .has-standard-layout .site-header .main-nav{
    flex:1 1 auto !important;
    min-width:0 !important;
    margin-left:0 !important;
    margin-right:0 !important;
    justify-content:flex-end !important;
    gap:clamp(1px, .32vw, 7px) !important;
    font-size:clamp(11px, .72vw, 13px) !important;
    overflow:visible !important;
  }
  html[lang="es"] .site-header .main-nav > a,
  html[lang="es"] .site-header .nav-dropdown-trigger,
  html[lang="es"] .home-site-header .main-nav > a,
  html[lang="es"] .home-site-header .nav-dropdown-trigger,
  html[lang="es"] .home-page .home-site-header .main-nav > a,
  html[lang="es"] .home-page .home-site-header .nav-dropdown-trigger,
  html[lang="es"] body.info-page .site-header .main-nav > a,
  html[lang="es"] body.info-page .site-header .nav-dropdown-trigger,
  html[lang="es"] .faq-page .site-header .main-nav > a,
  html[lang="es"] .faq-page .site-header .nav-dropdown-trigger,
  html[lang="es"] .has-standard-layout .site-header .main-nav > a,
  html[lang="es"] .has-standard-layout .site-header .nav-dropdown-trigger{
    padding:12px clamp(4px, .34vw, 7px) !important;
  }
  html[lang="es"] .language-switcher-full{
    flex:0 0 auto !important;
    margin-left:0 !important;
    transform:none !important;
    z-index:20 !important;
  }
  html[lang="es"] .language-switcher-full .lang-option{
    height:32px !important;
    padding:0 9px !important;
    gap:5px !important;
    font-size:12px !important;
  }
  html[lang="es"] .language-switcher-full .lang-flag{
    font-size:15px !important;
  }
  html[lang="es"] .site-header .header-actions,
  html[lang="es"] .home-site-header .header-actions,
  html[lang="es"] body.info-page .site-header .header-actions,
  html[lang="es"] .faq-page .site-header .header-actions,
  html[lang="es"] .has-standard-layout .site-header .header-actions{
    flex:0 0 auto !important;
    gap:10px !important;
  }
  html[lang="es"] .site-header .book-now-btn,
  html[lang="es"] .home-site-header .book-now-btn,
  html[lang="es"] .site-header .home-book-btn,
  html[lang="es"] .home-site-header .home-book-btn,
  html[lang="es"] .site-header .apply-top,
  html[lang="es"] .home-site-header .apply-top,
  html[lang="es"] .site-header .home-work-btn,
  html[lang="es"] .home-site-header .home-work-btn{
    min-width:106px !important;
    height:52px !important;
    padding-left:16px !important;
    padding-right:16px !important;
    font-size:13px !important;
  }
}

@media (min-width:981px) and (max-width:1380px){
  html[lang="es"] .site-header,
  html[lang="es"] .home-site-header,
  html[lang="es"] body.info-page .site-header,
  html[lang="es"] .faq-page .site-header,
  html[lang="es"] .has-standard-layout .site-header{
    width:min(1320px, calc(100vw - 34px)) !important;
    max-width:min(1320px, calc(100vw - 34px)) !important;
    padding-left:18px !important;
    padding-right:12px !important;
    gap:8px !important;
  }
  html[lang="es"] .site-header .brand,
  html[lang="es"] .home-site-header .brand,
  html[lang="es"] .site-header .home-brand,
  html[lang="es"] body.info-page .site-header .brand,
  html[lang="es"] .faq-page .site-header .brand,
  html[lang="es"] .has-standard-layout .site-header .brand{
    flex-basis:clamp(250px, 22vw, 315px) !important;
    width:clamp(250px, 22vw, 315px) !important;
    min-width:230px !important;
  }
  html[lang="es"] .site-header .brand img,
  html[lang="es"] .home-site-header .brand img,
  html[lang="es"] .site-header .home-brand img,
  html[lang="es"] body.info-page .site-header .brand img,
  html[lang="es"] .faq-page .site-header .brand img,
  html[lang="es"] .has-standard-layout .site-header .brand img{
    width:clamp(235px, 21vw, 300px) !important;
    max-height:58px !important;
  }
  html[lang="es"] .site-header .main-nav,
  html[lang="es"] .home-site-header .main-nav,
  html[lang="es"] .home-page .main-nav,
  html[lang="es"] body.info-page .site-header .main-nav,
  html[lang="es"] .faq-page .site-header .main-nav,
  html[lang="es"] .has-standard-layout .site-header .main-nav{
    gap:0 !important;
    font-size:11px !important;
  }
  html[lang="es"] .site-header .main-nav > a,
  html[lang="es"] .site-header .nav-dropdown-trigger,
  html[lang="es"] .home-site-header .main-nav > a,
  html[lang="es"] .home-site-header .nav-dropdown-trigger{
    padding-left:3px !important;
    padding-right:3px !important;
  }
  html[lang="es"] .language-switcher-full .lang-option{
    font-size:11px !important;
    height:30px !important;
    padding:0 7px !important;
  }
  html[lang="es"] .language-switcher-full .lang-flag{
    font-size:13px !important;
  }
  html[lang="es"] .site-header .book-now-btn,
  html[lang="es"] .home-site-header .book-now-btn,
  html[lang="es"] .site-header .home-book-btn,
  html[lang="es"] .home-site-header .home-book-btn,
  html[lang="es"] .site-header .apply-top,
  html[lang="es"] .home-site-header .apply-top,
  html[lang="es"] .site-header .home-work-btn,
  html[lang="es"] .home-site-header .home-work-btn{
    min-width:88px !important;
    height:48px !important;
    padding-left:12px !important;
    padding-right:12px !important;
    font-size:12px !important;
  }
}
