
/* The White Loft: mobile and tablet compatibility layer */
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{overflow-x:hidden}img,video,iframe{max-width:100%;height:auto}button,a{touch-action:manipulation}.mobile-menu-toggle{display:none}.mobile-nav-backdrop{display:none}
@media(max-width:1100px){
  header{min-height:76px!important;padding:8px 4%!important;display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:space-between!important;gap:12px!important}
  .logo-image,.logo{flex:0 0 auto!important}.logo-image img,.logo img{height:58px!important;width:auto!important;max-width:150px!important;object-fit:contain!important}
  .header-right{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:flex-end!important;gap:9px!important;min-width:0!important}
  .mobile-menu-toggle{display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;padding:0;border:1px solid #d4af37;background:#fff;color:#111;font-size:24px;line-height:1;cursor:pointer;z-index:1003}
  header nav{display:none!important;position:absolute!important;top:100%!important;left:0!important;right:0!important;width:100%!important;background:rgba(255,255,255,.99)!important;flex-direction:column!important;align-items:stretch!important;gap:0!important;padding:10px 5% 18px!important;box-shadow:0 14px 30px rgba(0,0,0,.16)!important;max-height:calc(100vh - 76px)!important;overflow-y:auto!important;z-index:1002!important}
  header nav.mobile-open{display:flex!important}
  header nav a{display:block!important;padding:14px 3px!important;border-bottom:1px solid #e8e4df!important;font-size:13px!important;line-height:1.2!important;text-align:left!important;white-space:normal!important}
  .language-switcher{display:flex!important;gap:5px!important;flex-wrap:nowrap!important;flex:0 0 auto!important}
  .language-switcher button{min-width:38px!important;min-height:40px!important;padding:7px 6px!important;font-size:11px!important}
  .hero{height:auto!important;min-height:620px!important;padding-left:5%!important;padding-right:5%!important}.hero-content{max-width:760px!important}
  .section{padding-left:6%!important;padding-right:6%!important}.about,.contact-container,.host-container,.host-section,.contact-section{grid-template-columns:1fr!important;gap:36px!important}
  .features,.gallery,.cards,.grid,.grid.four{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:20px!important}
  .about img,.contact-container img,.host-container img,.host-section img,.contact-section img{width:100%!important;max-height:620px!important;object-fit:cover!important}
}
@media(max-width:700px){
  header{min-height:70px!important;padding:7px 4%!important}.logo-image img,.logo img{height:52px!important;max-width:128px!important}
  .header-right{gap:6px!important}.mobile-menu-toggle{width:42px;height:42px;flex-basis:42px}.language-switcher button{min-width:33px!important;min-height:38px!important;padding:5px 4px!important;font-size:10px!important}
  header nav{max-height:calc(100vh - 70px)!important}
  .hero{min-height:560px!important;padding-top:105px!important;padding-bottom:48px!important;background-position:center!important}.hero-content{width:100%!important;margin:0 auto!important;padding-left:0!important;padding-right:0!important;text-align:center!important}
  .hero h1{font-size:clamp(42px,13vw,58px)!important;line-height:1!important;overflow-wrap:anywhere}.hero p{font-size:17px!important;line-height:1.55!important}.small-title,.hero .kicker{font-size:11px!important;letter-spacing:2px!important}
  .section{padding:58px 5%!important}.section-title,.section h2{font-size:clamp(34px,10vw,42px)!important;line-height:1.12!important}.intro,.section p{overflow-wrap:anywhere}
  .features,.gallery,.cards,.grid,.grid.four{grid-template-columns:1fr!important}.feature,.feature-card,.card{min-width:0!important}.gallery img,.gallery-item img,.card img{width:100%!important;height:auto!important;max-height:410px!important;object-fit:cover!important}
  .about,.contact-container,.host-container,.host-section,.contact-section{gap:28px!important}.about img,.contact-container img,.host-container img,.host-section img,.contact-section img{height:auto!important;max-height:470px!important;aspect-ratio:4/3!important}
  .btn,.airbnb-btn,.contact-button{display:block!important;width:100%!important;max-width:100%!important;text-align:center!important;padding:15px 18px!important;margin-left:0!important;margin-right:0!important}
  .rating{grid-template-columns:1fr!important;gap:25px!important;padding:45px 5%!important}.rating h2{font-size:36px!important}.footer,.site-footer{padding:44px 5%!important}.footer h2,.site-footer h2{font-size:32px!important;line-height:1.15!important}
  form,input,textarea,select{width:100%!important;max-width:100%!important}input,textarea,select,button{font-size:16px}
}
@media(max-width:390px){
  .language-switcher{gap:3px!important}.language-switcher button{min-width:29px!important;padding:4px 3px!important}.logo-image img,.logo img{max-width:108px!important;height:48px!important}
  .mobile-menu-toggle{width:39px;height:39px;flex-basis:39px;font-size:21px}.hero h1{font-size:40px!important}.section{padding-left:4.5%!important;padding-right:4.5%!important}
}
