/* P12 Mobile App UI — public presentation only. Desktop (>767px) intentionally untouched. */
.air-mobile-appbar,.air-mobile-tabbar,.air-mobile-menu-backdrop,.air-mobile-profile-cta{display:none}

@media (max-width:767px){
  :root{
    --app-bg:#f4f5f2;
    --app-surface:#fff;
    --app-ink:#17211e;
    --app-muted:#727d78;
    --app-line:#e5e9e5;
    --app-accent:#8b6c3e;
    --app-green:#0c7958;
    --app-radius:24px;
    --app-shadow:0 18px 50px rgba(25,34,31,.08);
    --app-tabbar-h:72px;
  }
  html{background:var(--app-bg);scroll-padding-top:82px}
  html.air-mobile-lock,html.air-mobile-lock body{overflow:hidden!important}
  body.tg-air{background:var(--app-bg);font-size:15px;line-height:1.55;padding-bottom:calc(var(--app-tabbar-h) + env(safe-area-inset-bottom) + 12px);-webkit-tap-highlight-color:transparent;overscroll-behavior-y:none}
  body.tg-air::before{content:"";position:fixed;left:0;right:0;top:0;height:env(safe-area-inset-top);background:rgba(248,248,246,.96);z-index:1400;pointer-events:none}
  body.tg-air a,body.tg-air button{touch-action:manipulation}
  .air-shell,.air-shell-narrow{width:calc(100% - 24px);max-width:none}
  .air-main{min-height:72vh}
  .air-kicker{font-size:10px;letter-spacing:.11em}.air-kicker:before{width:14px}

  /* Native-like app bar */
  .air-header{position:sticky;top:0;background:rgba(248,248,246,.94);border-bottom:1px solid rgba(225,230,225,.8);backdrop-filter:blur(22px) saturate(150%);-webkit-backdrop-filter:blur(22px) saturate(150%);box-shadow:none}
  .air-header.is-scrolled{box-shadow:0 8px 26px rgba(25,34,31,.06)}
  .air-header-row{display:none!important}
  .air-mobile-appbar{height:66px;padding:0 12px;display:flex;align-items:center;justify-content:space-between;gap:12px}
  .air-mobile-brand{min-width:0;display:flex;align-items:center;gap:10px}
  .air-mobile-brand-mark{width:42px;height:42px;border-radius:14px;display:grid;place-items:center;overflow:hidden;background:#fff;border:1px solid var(--app-line);box-shadow:0 7px 18px rgba(25,34,31,.06);flex:0 0 42px}
  .air-mobile-brand-mark img{width:100%;height:100%;object-fit:contain}
  .air-mobile-brand-copy{min-width:0;display:flex;flex-direction:column;line-height:1.06;gap:4px}
  .air-mobile-brand-copy small{font-size:10px;color:var(--app-muted);font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:180px}
  .air-mobile-brand-copy strong{font-size:15px;font-weight:850;letter-spacing:-.02em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:190px}
  .air-mobile-appbar-actions{display:flex;align-items:center;gap:7px}
  .air-mobile-icon-button{width:42px;height:42px;border-radius:14px;border:1px solid var(--app-line);background:#fff;color:var(--app-ink);display:grid;place-items:center;box-shadow:0 6px 18px rgba(25,34,31,.045)}
  .air-mobile-icon-button svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
  .air-mobile-icon-button:active{transform:scale(.96);background:#f5f6f4}

  /* Full-screen mobile search */
  .air-search-panel{position:fixed;z-index:1500;inset:0;top:0;padding:calc(env(safe-area-inset-top) + 14px) 0 calc(env(safe-area-inset-bottom) + 24px);background:rgba(246,247,244,.98);border:0;box-shadow:none;overflow:auto}
  .air-search-inner{width:calc(100% - 24px);max-width:none}
  .air-search-top{margin-bottom:16px;min-height:48px}
  .air-search-top small{font-size:11px}.air-search-top strong{font-size:19px;letter-spacing:-.02em}
  .air-search-close{width:42px;height:42px;border-radius:14px;font-size:27px;background:#fff}
  .air-search-field{position:sticky;top:0;z-index:2;padding:7px 7px 7px 14px;border-radius:18px;box-shadow:0 12px 35px rgba(25,34,31,.06)}
  .air-search-field input{min-width:0;font-size:16px}
  .air-search-field button{min-height:42px;border-radius:13px;padding:0 15px}
  .air-search-results{margin-top:12px;border:0;background:transparent;box-shadow:none;max-height:none;overflow:visible;display:grid;gap:8px}
  .air-search-results a{grid-template-columns:52px minmax(0,1fr);gap:2px 10px;padding:14px;border:1px solid var(--app-line);border-radius:17px;background:#fff}
  .air-search-results a>span{grid-row:1/3;font-size:9px;align-self:center;padding:6px 7px;border-radius:9px;background:#f0f2ef;text-align:center}
  .air-search-results a>strong{font-size:14px;line-height:1.25}.air-search-results a>small{grid-column:2;font-size:11px;text-align:left}

  /* Menu becomes a bottom sheet */
  .air-nav{display:flex!important;position:fixed!important;z-index:1600;left:10px!important;right:10px!important;top:auto!important;bottom:calc(var(--app-tabbar-h) + env(safe-area-inset-bottom) + 10px);transform:translateY(calc(100% + 120px));opacity:0;pointer-events:none;flex-direction:column;align-items:stretch;gap:3px!important;background:#fff;border:1px solid var(--app-line);border-radius:27px;padding:10px!important;box-shadow:0 30px 90px rgba(16,24,21,.22);transition:transform .26s cubic-bezier(.2,.8,.2,1),opacity .2s ease}
  .air-nav.air-mobile-open{transform:translateY(0);opacity:1;pointer-events:auto}
  .air-nav>a{min-height:50px;display:flex;align-items:center;padding:0 15px!important;border-radius:16px!important;font-size:15px!important;font-weight:750!important;background:transparent}
  .air-nav>a:active{background:#f1f3f0}
  .air-mobile-menu-backdrop{display:block;position:fixed;z-index:1550;inset:0;background:rgba(11,17,15,.38);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px)}
  .air-mobile-menu-backdrop[hidden]{display:none!important}

  /* App hero */
  .air-hero{padding:16px 0 6px;background:transparent}
  .air-hero-grid{display:flex;flex-direction:column;gap:14px}
  .air-hero-copy{background:linear-gradient(145deg,#fff 0%,#f7f5f0 100%);border:1px solid var(--app-line);border-radius:28px;padding:24px 20px 18px;box-shadow:0 14px 40px rgba(25,34,31,.055)}
  .air-hero-copy h1{font-size:clamp(34px,10.8vw,48px);line-height:.99;letter-spacing:-.048em;margin:12px 0 13px;max-width:100%}
  .air-hero-lead{font-size:15px;line-height:1.62;color:var(--app-muted);margin-bottom:18px}
  .air-hero-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}
  .air-hero-actions .air-button{min-height:47px;padding:0 12px;font-size:12px;border-radius:15px;white-space:normal;text-align:center;line-height:1.2}
  .air-hero-proof{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-top:17px}
  .air-hero-proof span{min-width:0;padding:11px 8px;border-radius:16px;background:rgba(255,255,255,.75);border:1px solid rgba(225,229,224,.85)}
  .air-hero-proof strong{font-size:20px;letter-spacing:-.03em}.air-hero-proof small{font-size:9px;line-height:1.25;color:var(--app-muted)}
  .air-discovery-card{border-radius:24px;padding:16px;background:#18211f;color:#fff;border:0;box-shadow:0 18px 45px rgba(20,29,26,.14)}
  .air-discovery-top{flex-direction:row;align-items:center}.air-discovery-top span{font-size:14px}.air-discovery-top small{font-size:10px;color:#b7c0bc}
  .air-discovery-field{background:#fff;border:0;border-radius:16px;padding-left:13px}.air-discovery-field input{font-size:15px}.air-discovery-field button{border-radius:12px;min-height:40px;padding:0 14px}
  .air-discovery-note{margin-top:10px;color:#c5ceca;font-size:10px}.air-discovery-results{background:#fff;color:var(--app-ink);border-radius:16px;max-height:300px}

  /* Section rhythm */
  .air-section{padding-top:38px;padding-bottom:38px}
  .air-section-tint{background:#eef1ed;border-block:1px solid #e4e8e3}
  .air-section-heading{margin-bottom:16px;gap:9px}
  .air-section-heading>div{min-width:0}.air-section-heading h2{font-size:28px;line-height:1.05;letter-spacing:-.04em;margin:7px 0 5px}.air-section-heading p{font-size:12px;line-height:1.55;margin:0;color:var(--app-muted)}
  .air-count-pill{min-height:31px;padding:0 10px;font-size:11px}
  .air-more-row{margin-top:14px}.air-more-row .air-button{width:100%;min-height:48px;border-radius:16px}

  /* Profile feed — large visual cards */
  .air-profile-grid,.air-profile-grid-compact{display:grid;grid-template-columns:1fr;gap:14px}
  .air-profile-card{display:block;min-height:0;border-radius:26px;border:1px solid var(--app-line);overflow:hidden;background:#fff;box-shadow:0 12px 36px rgba(25,34,31,.055);transform:none!important}
  .air-profile-card.is-air-hidden{display:none}
  .air-profile-media{display:block;position:relative;width:100%;height:auto;aspect-ratio:4/5;background:#e9ece8;overflow:hidden}
  .air-profile-media img{width:100%;height:100%;object-fit:cover;transform:none!important}
  .air-profile-media:after{content:"";position:absolute;left:0;right:0;bottom:0;height:28%;background:linear-gradient(transparent,rgba(16,22,20,.2));pointer-events:none}
  .air-profile-badge{top:12px;left:12px;z-index:2;border-radius:12px;padding:7px 9px;font-size:9px;backdrop-filter:blur(8px)}
  .air-profile-open{display:flex!important;position:absolute;z-index:2;right:12px;bottom:12px;left:auto;top:auto;min-height:36px;align-items:center;gap:5px;padding:0 11px;border-radius:12px;background:rgba(255,255,255,.9);color:var(--app-ink);font-size:10px;font-weight:800;backdrop-filter:blur(10px);opacity:1;transform:none}
  .air-profile-body{padding:16px 16px 15px}
  .air-profile-title-row{align-items:flex-start}.air-profile-title-row>div{min-width:0}.air-profile-location{font-size:10px;letter-spacing:.01em;margin:0 0 3px;color:var(--app-muted)}
  .air-profile-body h3{font-size:23px;line-height:1.05;letter-spacing:-.035em;margin:0}.air-status-dot{width:9px;height:9px;margin-top:5px;box-shadow:0 0 0 5px rgba(15,122,90,.09)}
  .air-profile-desc{font-size:12px;line-height:1.55;color:var(--app-muted);margin:10px 0 0;min-height:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
  .air-profile-actions{display:grid;grid-template-columns:.7fr 1.3fr;gap:8px;margin-top:14px}
  .air-profile-actions .air-button{display:flex!important;min-height:45px;border-radius:14px;font-size:12px;padding:0 10px}
  .air-profile-actions .air-button-soft{background:#f1f3f0}.air-profile-actions .air-button-whatsapp{background:var(--app-green)}

  /* App-like location strip */
  .tg-air-route-home .air-location-grid{display:flex;overflow-x:auto;gap:10px;margin-inline:-12px;padding:0 12px 8px;scroll-snap-type:x proximity;scrollbar-width:none}
  .tg-air-route-home .air-location-grid::-webkit-scrollbar{display:none}
  .tg-air-route-home .air-location-card{flex:0 0 158px;min-height:104px;scroll-snap-align:start;border-radius:20px;padding:15px}
  .air-location-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
  .air-location-card{min-height:96px;padding:14px;border-radius:19px;box-shadow:none}.air-location-card span{font-size:15px;line-height:1.12}.air-location-card small{font-size:10px}.air-location-card b{font-size:15px}

  /* Article feed */
  .air-article-grid{display:grid;grid-template-columns:1fr;gap:10px}
  .air-article-card{min-height:0;padding:19px;border-radius:21px;box-shadow:none}.air-article-card>span{font-size:9px}.air-article-card h3{font-size:19px;line-height:1.15;letter-spacing:-.025em;margin:7px 0 9px}.air-article-card p{font-size:12px;line-height:1.55;margin:0 0 11px}.air-text-link{font-size:12px}

  /* Page / location surfaces */
  .air-page-hero{padding:14px 0 5px;background:transparent}
  .air-page-hero-inner{background:#fff;border:1px solid var(--app-line);border-radius:27px;padding:23px 18px;box-shadow:0 12px 36px rgba(25,34,31,.05)}
  .air-page-hero h1{font-size:36px;line-height:1;letter-spacing:-.045em;margin:11px 0 12px}.air-page-hero p{font-size:14px;line-height:1.62;margin:0;color:var(--app-muted)}
  .air-page-meta{gap:6px;margin-top:16px}.air-page-meta span{min-height:31px;padding:0 10px;border-radius:11px;font-size:10px;background:#f0f2ef}
  .air-breadcrumb{margin:15px 0 12px;gap:6px;font-size:10px;overflow:auto;white-space:nowrap;flex-wrap:nowrap;scrollbar-width:none}.air-breadcrumb::-webkit-scrollbar{display:none}
  .air-breadcrumb-hero{margin-top:0}
  .air-seo-block,.air-prose-panel{border-radius:23px;padding:20px}.air-seo-block h2{font-size:25px}
  .air-district-groups{grid-template-columns:1fr;gap:10px}.air-district-group{padding:18px;border-radius:21px}.air-district-group h3{font-size:20px}.air-district-group nav a{font-size:12px;padding:12px 0}
  .air-faq-list{gap:8px}.air-faq-item{border-radius:17px}.air-faq-item summary{padding:16px;font-size:13px}.air-faq-item>div{padding:0 16px 16px;font-size:12px}
  .air-sibling-links{display:flex;overflow-x:auto;flex-wrap:nowrap;margin-inline:-12px;padding:0 12px 7px;scrollbar-width:none}.air-sibling-links::-webkit-scrollbar{display:none}.air-sibling-links a{flex:0 0 auto;border-radius:14px;min-height:38px;font-size:11px}

  /* Profile detail: full-bleed gallery + bottom action */
  .air-profile-page{padding-bottom:32px}.air-profile-page>.air-breadcrumb{width:calc(100% - 4px);margin-inline:auto}
  .air-profile-detail-grid{display:block}.air-profile-gallery-wrap{margin:0 -12px 14px}.air-profile-main-photo{border:0;border-radius:0 0 30px 30px;aspect-ratio:4/5;max-height:none}.air-profile-main-photo img{width:100%;height:100%;object-fit:cover}
  .air-profile-thumbs{display:flex;overflow-x:auto;gap:8px;padding:9px 12px 2px;margin:0;scroll-snap-type:x proximity;scrollbar-width:none}.air-profile-thumbs::-webkit-scrollbar{display:none}.air-profile-thumbs a{flex:0 0 76px;aspect-ratio:1;border-radius:16px;scroll-snap-align:start}
  .air-profile-info{position:static;padding:18px;border-radius:24px;border:1px solid var(--app-line);box-shadow:0 10px 32px rgba(25,34,31,.045)}
  .air-profile-info h1{font-size:39px;line-height:.98;letter-spacing:-.05em;margin-bottom:11px}.air-profile-lead{font-size:14px;line-height:1.6}.air-profile-copy{font-size:13px}.air-profile-badge-static{margin-bottom:14px}.air-profile-quick{margin:16px 0;gap:6px}.air-profile-quick span{min-height:30px;font-size:9px;border-radius:11px}
  .air-profile-info>.air-button-whatsapp{display:none}
  .air-mobile-profile-cta{display:flex;position:fixed;z-index:1320;left:10px;right:10px;bottom:calc(var(--app-tabbar-h) + env(safe-area-inset-bottom) + 9px);min-height:64px;align-items:center;justify-content:space-between;gap:12px;padding:9px 9px 9px 14px;border:1px solid rgba(226,230,226,.9);border-radius:21px;background:rgba(255,255,255,.94);box-shadow:0 18px 50px rgba(16,24,21,.18);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
  .air-mobile-profile-cta>div{min-width:0;display:grid;gap:2px}.air-mobile-profile-cta small{font-size:9px;color:var(--app-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.air-mobile-profile-cta strong{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:180px}.air-mobile-profile-cta>a{flex:0 0 auto;min-height:45px;display:flex;align-items:center;padding:0 18px;border-radius:14px;background:var(--app-green);color:#fff!important;font-size:12px;font-weight:850}

  /* Editorial reading */
  .air-article-page{padding-bottom:36px}.air-article-header{padding:16px 0 23px}.air-article-header h1{font-size:36px;line-height:1.03;letter-spacing:-.045em;margin:11px 0 13px}.air-article-header>p{font-size:15px;line-height:1.65}.air-article-date{font-size:10px;margin-top:16px}
  .air-prose{font-size:16px;line-height:1.82;padding-top:25px;color:#34403b}.air-prose h2{font-size:26px;margin:38px 0 13px}.air-prose h3{font-size:21px;margin:30px 0 11px}.air-prose p{margin-bottom:18px}.air-prose blockquote{margin:22px 0;padding:18px;border-radius:0 15px 15px 0}.air-prose table{display:block;overflow-x:auto;white-space:nowrap;font-size:12px}.air-prose img{border-radius:18px;margin:20px auto}

  /* Compact web footer; tabbar is primary navigation */
  .air-footer{margin-top:20px;padding:28px 0 calc(24px + env(safe-area-inset-bottom));background:#18211f}
  .air-footer-grid{display:none}.air-footer-bottom{display:flex;flex-direction:column;align-items:center;text-align:center;gap:4px;margin:0;padding:0;border:0;font-size:9px;color:#9aa6a1}

  /* Fixed bottom app navigation */
  .air-mobile-tabbar{position:fixed;z-index:1300;left:8px;right:8px;bottom:max(8px,env(safe-area-inset-bottom));height:var(--app-tabbar-h);display:grid;grid-template-columns:1fr 1fr 1.1fr 1fr 1fr;align-items:center;padding:5px 6px;border:1px solid rgba(225,230,225,.9);border-radius:24px;background:rgba(255,255,255,.94);box-shadow:0 18px 50px rgba(16,24,21,.16);backdrop-filter:blur(20px) saturate(145%);-webkit-backdrop-filter:blur(20px) saturate(145%)}
  .air-mobile-tab{height:58px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;color:#7a8580!important;font-size:9px;font-weight:750;border-radius:17px}
  .air-mobile-tab svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.air-mobile-tab.is-active{color:var(--app-ink)!important;background:#f0f2ef}.air-mobile-tab:active{transform:scale(.96)}
  .air-mobile-search-tab{height:62px;border:0;background:transparent;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:1px;color:var(--app-ink);margin-top:-23px;padding:0}
  .air-mobile-search-tab>span{width:50px;height:50px;border-radius:18px;background:var(--app-ink);color:#fff;display:grid;place-items:center;box-shadow:0 12px 28px rgba(23,33,30,.23)}.air-mobile-search-tab svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round}.air-mobile-search-tab b{font-size:9px;line-height:1;font-weight:800}.air-mobile-search-tab:active>span{transform:scale(.95)}

  /* Empty / 404 */
  .air-empty{border-radius:22px;padding:24px}.air-404{padding:25px 0 44px}.air-404-card{padding:36px 20px;border-radius:26px}.air-404-card h1{font-size:36px}

  /* Motion */
  .air-app-reveal{opacity:0;transform:translateY(10px);transition:opacity .36s ease,transform .36s ease}.air-app-reveal.is-visible{opacity:1;transform:none}
}

@media (max-width:374px){
  .air-mobile-brand-copy strong{max-width:150px}.air-mobile-brand-copy small{max-width:145px}
  .air-mobile-icon-button{width:39px;height:39px}.air-mobile-appbar{padding-inline:9px}
  .air-hero-copy{padding-inline:17px}.air-hero-copy h1{font-size:34px}.air-hero-actions{grid-template-columns:1fr}
  .air-profile-body h3{font-size:21px}.air-mobile-profile-cta strong{max-width:140px}
  .air-mobile-tabbar{left:5px;right:5px}.air-mobile-tab{font-size:8px}
}

@media (max-width:767px) and (orientation:landscape){
  .air-mobile-appbar{height:58px}.air-profile-media{aspect-ratio:16/10}.air-profile-main-photo{aspect-ratio:16/10}.air-mobile-tabbar{height:64px;--app-tabbar-h:64px}.air-mobile-tab{height:52px}.air-mobile-search-tab{margin-top:-18px}
}

@media (max-width:767px) and (prefers-reduced-motion:reduce){
  .air-nav,.air-app-reveal{transition:none!important}.air-app-reveal{opacity:1;transform:none}
}
