/* TAXI TAI HA NOI P2 — GLOBAL 1280 CONTAINER SYNC
 * Purpose: every public Taxi/Local Logistics page shares one desktop content axis.
 * Full-bleed section backgrounds remain full width; only their inner content is constrained.
 */
:root{--taxi-p2-shell:1280px;--taxi-p2-gutter:24px}

/* Core Taxi shells + page-specific shells used by money/GEO/route/news/search/listing/shop pages. */
body.taxi-service-site :is(
  .txs-shell,.txs-vf-shell,.txs-page-intro-shell,.txf-wrap,
  .txp-shell,.txsp-container,.txseo-shell,.lgp-shell,.lgc-shell,
  .ct5-container,.ctcat-container,.dtx-container,.vpd-container,
  .w11-pro-container,.wt-page-container,.wt-market-container,.wt-detail-container,.wt-shop-container,
  .listing-page-container,.listing-index-container,.shop-index-container,
  .search-page-container,.search-page-shell,.news-page-container,.news-detail-container,
  .seo-page-container,.geo-landing-container,.service-cluster-container,
  .front-container,.site-container,.page-container,.posts-container,
  .gx-container,.gx-shell,.tnm-shell,.dtf-pro-container,.dt-news-wrap,.txnews-wrap,.wt-news-shell,.contact-wrap,.ua-shell,.home__container,.kc-container,.container-main
),
body.txs-body :is(.txs-shell,.txs-vf-shell,.txs-page-intro-shell,.txf-wrap){
  width:min(var(--taxi-p2-shell),calc(100% - 48px))!important;
  max-width:var(--taxi-p2-shell)!important;
  margin-left:auto!important;
  margin-right:auto!important;
  box-sizing:border-box!important;
}

/* Bootstrap content containers on Taxi public pages: same 1280 ceiling, keep their native gutters. */
body.taxi-service-site :is(.taxi-service-main,.txs-footer,.txs-header,.txs-quickbar) :is(.container,.container-sm,.container-md,.container-lg,.container-xl,.container-xxl){
  max-width:var(--taxi-p2-shell)!important;
}

/* Legacy pages with explicit 1120/1160/1180/1200/1220/1240 caps. */
body.taxi-service-site :is(
  .ct5-scrollbar-inner,.ct5-wide-related,.ct5-detail-banner-top,.ct5-detail-banner-bottom,
  .footer-merge-container,.wt-container,.wt2-container,.w2-container,.w2-commerce-container,
  .alogiare-container,.alogiare-footer-container,.authx-container,.dt-booking-lead__container,
  .alogiare-booking-oldstyle-container
){
  width:min(var(--taxi-p2-shell),calc(100% - 48px))!important;
  max-width:var(--taxi-p2-shell)!important;
  margin-left:auto!important;
  margin-right:auto!important;
  box-sizing:border-box!important;
}

/* Money/service pages built with inline Local Logistics shells. */
body.taxi-service-site .lgp-shell,
body.taxi-service-site .lgc-shell{
  width:min(var(--taxi-p2-shell),calc(100% - 48px))!important;
  max-width:var(--taxi-p2-shell)!important;
}

/* Listing/category/shop layouts are allowed to fill the new shell. */
body.taxi-service-site :is(.ct5-page,.ct5-listing-page,.ct5-shop-page)>.ct5-container,
body.taxi-service-site :is(.dtx-page,.ctcat-page)>.dtx-container,
body.taxi-service-site .ctcat-container{
  max-width:var(--taxi-p2-shell)!important;
}

/* Avoid a visually narrower footer than the page body. */
body.taxi-service-site footer :is(.container,.txs-shell,.txf-wrap,.w11-pro-container,.alogiare-footer-container),
body.txs-body footer :is(.txs-shell,.txf-wrap){
  max-width:var(--taxi-p2-shell)!important;
}

/* Tablet/mobile: retain safe edge gutters rather than forcing desktop width. */
@media(max-width:991.98px){
  :root{--taxi-p2-gutter:14px}
  body.taxi-service-site :is(
    .txs-shell,.txs-vf-shell,.txs-page-intro-shell,.txf-wrap,
    .txp-shell,.txsp-container,.txseo-shell,.lgp-shell,.lgc-shell,
    .ct5-container,.ctcat-container,.dtx-container,.vpd-container,
    .w11-pro-container,.wt-page-container,.wt-market-container,.wt-detail-container,.wt-shop-container,
    .listing-page-container,.listing-index-container,.shop-index-container,
    .search-page-container,.search-page-shell,.news-page-container,.news-detail-container,
    .seo-page-container,.geo-landing-container,.service-cluster-container,
    .front-container,.site-container,.page-container,.posts-container,
    .gx-container,.gx-shell,.tnm-shell,.dtf-pro-container,.dt-news-wrap,.txnews-wrap,.wt-news-shell,.contact-wrap,.ua-shell,.home__container,.kc-container,.container-main,
    .ct5-scrollbar-inner,.ct5-wide-related,.footer-merge-container
  ),
  body.txs-body :is(.txs-shell,.txs-vf-shell,.txs-page-intro-shell,.txf-wrap){
    width:calc(100% - 28px)!important;
    max-width:none!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
}

@media(max-width:575.98px){
  body.taxi-service-site :is(
    .txs-shell,.txs-vf-shell,.txs-page-intro-shell,.txf-wrap,
    .txp-shell,.txsp-container,.txseo-shell,.lgp-shell,.lgc-shell,
    .ct5-container,.ctcat-container,.dtx-container,.vpd-container,
    .w11-pro-container,.search-page-shell,.news-page-container,.news-detail-container,
    .seo-page-container,.geo-landing-container,.service-cluster-container
  ),
  body.txs-body :is(.txs-shell,.txs-vf-shell,.txs-page-intro-shell,.txf-wrap){
    width:calc(100% - 24px)!important;
  }
}
