/* DOMUS mobile/responsive consolidation — 2026-09-11 */
*{box-sizing:border-box}html,body{max-width:100%;overflow-x:hidden}img,svg,video{max-width:100%;height:auto}
.mobile-nav-actions{display:none}
.modern-topbar-inner{display:grid!important;grid-template-columns:auto 1fr auto;align-items:center;gap:14px!important;min-height:38px!important}
.topbar-location{white-space:nowrap}.modern-topbar #office-live-status{justify-self:center}.topbar-links{display:flex;align-items:center;justify-content:flex-end;gap:16px;min-width:0}.modern-topbar .topbar-links a{margin-left:0!important;white-space:nowrap}
.weather-badge{padding:4px 8px!important;border-color:rgba(135,11,45,.12)!important;background:rgba(255,255,255,.72)!important;box-shadow:none!important;font-size:.68rem!important;opacity:.82;text-decoration:none;transition:opacity .2s ease}.weather-badge:hover{opacity:1}.weather-badge-icon{font-size:.82rem!important}.weather-badge strong{font-weight:650!important;color:#665d60!important}
.home-mosaic-logo{max-width:330px!important}.home-mosaic-logo-link{min-height:150px!important}
.team-photo-wrap img[src*="piedad-quesada"]{object-position:center 18%!important}

/* Compact seasonal badge: visible, but never sits on top of the mobile navigation. */
@media(max-width:900px){
  .season-corner{top:104px!important;right:8px!important;max-width:138px!important;min-height:44px!important;padding:5px 8px 5px 5px!important;border-radius:15px!important;gap:5px!important;border-width:1.5px!important;box-shadow:0 5px 14px rgba(0,0,0,.14)!important}
  .season-corner .season-symbol{flex:0 0 34px!important;width:34px!important;height:34px!important;font-size:27px!important}
  .season-corner .season-label{max-width:86px!important;font-size:9px!important;line-height:1.15!important}
}

/* Homepage navigation: only logo + hamburger remain in the header on phones/tablets. */
@media(max-width:1050px){
  .site-header .nav-wrapper{display:flex!important;align-items:center!important;flex-wrap:nowrap!important;min-height:70px!important;gap:10px!important}
  .site-header .logo{min-width:0!important}.site-header .brand-logo{width:min(205px,56vw)!important;max-height:56px!important}
  .site-header>.container .nav-actions,.site-header .nav-wrapper>.nav-actions{display:none!important}
  .site-header .menu-toggle{display:block!important;flex:0 0 44px!important;margin-left:auto!important;order:5!important}
  .site-header .main-nav{top:70px!important;max-height:calc(100dvh - 70px)!important;overflow-y:auto!important;padding:10px 18px 22px!important}
  .mobile-nav-actions{display:grid!important;grid-template-columns:1fr;gap:12px;padding:14px 0 2px;border-top:1px solid rgba(21,32,29,.08)}
  .mobile-language-switcher{display:grid;grid-template-columns:repeat(4,1fr);gap:7px}.mobile-language-switcher .lang-btn{min-height:40px;width:100%;border:1px solid rgba(135,11,45,.18);border-radius:8px;background:#fff}.mobile-nav-cta{width:100%;justify-content:center}
}

/* Subpage nav-actions are moved inside the hamburger menu by site-nav.js. */
@media(max-width:900px){
  .subpage-header .nav-wrapper{display:flex!important;align-items:center!important;flex-wrap:nowrap!important;gap:10px!important;min-height:70px!important}
  .subpage-header .brand-logo{width:min(190px,55vw)!important;max-height:54px!important}
  .subpage-header .menu-toggle{margin-left:auto!important;flex:0 0 44px!important}
  .subpage-header .main-nav{top:70px!important;max-height:calc(100dvh - 70px)!important;overflow:auto!important}
  .subpage-header .main-nav .nav-actions-mobile{display:flex!important;width:100%!important;margin:12px 0 0!important;padding-top:12px!important;border-top:1px solid rgba(135,11,45,.1)!important;flex-direction:column!important;gap:10px!important}
  .subpage-header .main-nav .service-lang-switch{display:grid!important;grid-template-columns:repeat(4,1fr)!important;width:100%!important;gap:7px!important;margin:0!important}
  .subpage-header .main-nav .service-lang-switch .lang-link{text-align:center!important;padding:9px 5px!important;font-size:11px!important}
  .subpage-header .main-nav .button-small{display:flex!important;width:100%!important;justify-content:center!important}
  .nie-topbar .container{display:flex!important;min-height:36px!important;padding:5px 12px!important;justify-content:center!important}.nie-topbar .container>span{display:none!important}.nie-topbar .container>div{display:flex!important;gap:10px!important;align-items:center!important;justify-content:center!important;flex-wrap:wrap!important}.nie-topbar a{margin:0!important;font-size:11px!important}
}

/* Top information bar without collisions. */
@media(max-width:760px){
  .modern-topbar-inner{display:grid!important;grid-template-columns:1fr auto auto!important;gap:7px!important;padding:4px 12px!important;min-height:40px!important;width:100%!important}
  .topbar-location,.topbar-email{display:none!important}.modern-topbar #office-live-status{justify-self:start!important;font-size:11px!important;min-width:0;white-space:normal!important;line-height:1.15}.topbar-links{display:contents!important}.modern-topbar .topbar-links a{font-size:11px!important;margin:0!important}.topbar-whatsapp{justify-self:end}
  .hero-meta-row{display:flex!important;align-items:center!important;flex-wrap:wrap!important;gap:8px!important}.weather-badge{order:2;margin-left:0!important;width:auto!important}.weather-badge strong{font-size:.66rem!important}
  .home-mosaic-card{padding:18px!important}.home-mosaic-logo-link{min-height:105px!important;padding:10px!important}.home-mosaic-logo{max-width:260px!important}
  .team-photo-wrap{min-height:0!important;aspect-ratio:1/1.04!important}.team-photo{width:100%!important;height:100%!important;object-fit:cover!important}
  .privacy-banner{left:10px!important;right:10px!important;bottom:10px!important;border-radius:16px!important;padding:14px!important;gap:12px!important;max-height:min(58dvh,420px)!important;overflow:auto!important}
  .privacy-banner strong{font-size:1rem!important}.privacy-banner p{font-size:.72rem!important;line-height:1.4!important}.privacy-banner-actions{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important}.privacy-banner-actions>*{width:100%!important;min-height:42px!important}.privacy-banner-actions .text-button{display:grid!important;place-items:center!important}
}
@media(max-width:390px){
  .modern-topbar-inner{grid-template-columns:1fr auto!important}.modern-topbar .topbar-whatsapp{display:none!important}.modern-topbar #office-live-status{font-size:10.5px!important}.modern-topbar .topbar-links a{font-size:10.5px!important}
  .site-header .brand-logo,.subpage-header .brand-logo{width:min(168px,52vw)!important}.site-header .main-nav,.subpage-header .main-nav{padding-left:14px!important;padding-right:14px!important}
  .season-corner{top:102px!important;max-width:112px!important}.season-corner .season-label{display:none!important}.season-corner .season-symbol{flex-basis:32px!important;width:32px!important;height:32px!important;font-size:26px!important}
  .privacy-banner-actions{grid-template-columns:1fr!important}
}
@media(max-width:330px){.modern-topbar .topbar-links a{font-size:10px!important}.site-header .brand-logo,.subpage-header .brand-logo{width:145px!important}}
