/* ALO Giá Rẻ - common runtime for eight genuinely separate industry shop templates */
.industry-template{width:min(var(--industry-container,1280px),100%);margin-inline:auto;display:grid;gap:var(--industry-gap,18px);color:var(--industry-text,#0f172a)}
.industry-template,.industry-template *{box-sizing:border-box}.industry-template a{text-decoration:none}.industry-template img{max-width:100%}
.industry-template__anchor{display:block;position:relative;top:-126px;visibility:hidden}
.industry-template__affiliate{min-width:0}
.industry-template__panel{background:var(--industry-card,#fff);border:1px solid var(--industry-border,#dbe4ef);border-radius:var(--industry-radius,18px)}
.industry-template__section-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:16px}
.industry-template__section-head>div>span{display:block;margin-bottom:4px;color:var(--industry-primary);font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.industry-template__section-head h2{margin:0;color:var(--industry-heading);font-size:24px;line-height:1.25}.industry-template__section-head p{margin:7px 0 0;color:#64748b;line-height:1.6}
.industry-template__section-head>small{color:#64748b;font-weight:800;white-space:nowrap}
.industry-template__empty{padding:24px;border:1px dashed var(--industry-border);border-radius:14px;text-align:center;color:#64748b;background:#f8fafc}
.industry-template__button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:10px 17px;border:1px solid transparent;border-radius:12px;font-size:13px;font-weight:900;transition:.2s ease}
.industry-template__button:hover{transform:translateY(-1px);filter:brightness(.98)}
.industry-template__button--primary{background:var(--industry-primary);color:var(--industry-button-text,#fff)}
.industry-template__button--secondary{background:var(--industry-secondary);color:#fff}
.industry-template__button--light{background:#fff;color:var(--industry-secondary);border-color:var(--industry-border)}
.industry-template__button--zalo{background:#0877e8;color:#fff}
.industry-template__tabs{position:sticky;top:0;z-index:60;display:flex;gap:4px;overflow-x:auto;scrollbar-width:none;background:var(--industry-card,#fff);border:1px solid var(--industry-border);box-shadow:0 10px 28px rgba(15,23,42,.07)}
.industry-template__tabs::-webkit-scrollbar{display:none}.industry-template__tabs a{display:flex;align-items:center;gap:7px;min-height:48px;padding:10px 15px;color:#475569;font-size:12px;font-weight:850;white-space:nowrap;border-bottom:3px solid transparent}
.industry-template__tabs a:hover,.industry-template__tabs a.is-active{color:var(--industry-primary);border-bottom-color:var(--industry-primary);background:color-mix(in srgb,var(--industry-primary) 7%,white)}
.industry-template__listing-image{display:block;position:relative;overflow:hidden;background:#eef2f7}.industry-template__listing-image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.industry-template__listing-card:hover .industry-template__listing-image img{transform:scale(1.035)}
.industry-template__listing-title{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;color:#172033;font-weight:850;line-height:1.42}.industry-template__listing-price{color:#e11d48;font-weight:950}.industry-template__listing-meta{display:flex;align-items:center;gap:6px;color:#64748b;font-size:12px}
.industry-template__faq{display:grid;gap:10px}.industry-template__faq details{background:var(--industry-card,#fff);border:1px solid var(--industry-border);border-radius:13px;padding:14px 15px}.industry-template__faq summary{display:flex;justify-content:space-between;gap:16px;cursor:pointer;list-style:none;color:var(--industry-heading);font-weight:850}.industry-template__faq summary::-webkit-details-marker{display:none}.industry-template__faq p{margin:10px 0 0;color:#64748b;line-height:1.65}
.industry-template__contact-card{background:linear-gradient(145deg,var(--industry-secondary),color-mix(in srgb,var(--industry-secondary) 74%,var(--industry-primary)));color:#fff}.industry-template__contact-card h2,.industry-template__contact-card h3{color:#fff}.industry-template__contact-card p{color:rgba(255,255,255,.76);line-height:1.6}.industry-template__contact-actions{display:grid;gap:8px}.industry-template__contact-actions .industry-template__button{width:100%}
.industry-template__bottom-cta{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 22px;border-radius:var(--industry-radius);background:var(--industry-secondary);color:#fff}.industry-template__bottom-cta h3{margin:0;color:#fff;font-size:20px}.industry-template__bottom-cta p{margin:5px 0 0;color:rgba(255,255,255,.7)}.industry-template__bottom-actions{display:flex;gap:8px;flex-wrap:wrap}
.industry-template .ct5-shop-media-editor{z-index:8}.industry-template .industry-media-cover-editor{position:absolute;right:16px;bottom:16px;display:flex;align-items:center;gap:8px;padding:9px;border-radius:14px;background:rgba(255,255,255,.9);box-shadow:0 12px 30px rgba(15,23,42,.18);backdrop-filter:blur(10px)}.industry-template .industry-media-cover-editor label{display:flex;align-items:center;gap:7px;padding:9px 12px;border-radius:10px;background:#0f172a;color:#fff;font-size:12px;font-weight:900;cursor:pointer}.industry-template .industry-media-cover-editor input[type=file]{display:none}.industry-template .industry-media-cover-editor input[type=range]{width:120px;accent-color:var(--industry-primary)}
.industry-template .industry-media-logo-editor{position:absolute;right:-3px;bottom:-3px}.industry-template .industry-media-logo-editor label{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#0f172a;color:#fff;cursor:pointer;box-shadow:0 5px 14px rgba(15,23,42,.25)}.industry-template .industry-media-logo-editor input{display:none}
.industry-template__review-wrap .ct5-panel,.industry-template__about-wrap .ct5-panel{margin:0;border:0;box-shadow:none;background:transparent;padding:0}.industry-template__review-wrap .ct5-section-head h2,.industry-template__about-wrap .ct5-section-head h2{color:var(--industry-heading)}
@media(max-width:1000px){.industry-template__bottom-cta{align-items:flex-start;flex-direction:column}.industry-template__bottom-actions{width:100%}}
@media(max-width:767px){.industry-template{gap:12px}.industry-template__anchor{top:-108px}.industry-template__tabs{top:0;border-radius:12px}.industry-template__tabs a{min-height:44px;padding:9px 12px;font-size:11px}.industry-template__section-head{gap:10px;margin-bottom:12px}.industry-template__section-head h2{font-size:20px}.industry-template__section-head>small{display:none}.industry-template__button{min-height:40px;padding:8px 12px;font-size:11px}.industry-template__bottom-cta{display:none}.industry-template .industry-media-cover-editor{left:10px;right:10px;bottom:10px;justify-content:space-between}.industry-template .industry-media-cover-editor input[type=range]{width:90px}}

/* PATCH UX8: source order is the design contract for the eight composite templates. */
.industry-template[data-industry-structure="locked"] [data-shop-layout-block]{order:initial!important}
.industry-template[data-industry-structure="locked"]>*{min-width:0}
.industry-template[data-industry-structure="locked"] :is(main,aside,section,article,div,nav){min-width:0}
.industry-template[data-industry-structure="locked"] :is(h1,h2,h3,h4,p,strong,small,a,span){overflow-wrap:anywhere}
.industry-template[data-industry-structure="locked"] [id^="industry-shop-"]{scroll-margin-top:78px}
.industry-template[data-industry-structure="locked"] :is([class*="__grid"],[class*="-grid"],[class*="__list"]){min-width:0}
.industry-template[data-industry-structure="locked"] :is([class*="__grid"],[class*="-grid"],[class*="__list"])>*{min-width:0}
.industry-template[data-industry-structure="locked"] .industry-template__tabs{scroll-snap-type:x proximity;overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch}
.industry-template[data-industry-structure="locked"] .industry-template__tabs a{scroll-snap-align:start}
.industry-template[data-industry-structure="locked"] .industry-template__button:focus-visible,
.industry-template[data-industry-structure="locked"] a:focus-visible{outline:3px solid color-mix(in srgb,var(--industry-primary) 45%,transparent);outline-offset:2px}
@media(max-width:1050px){
  .industry-template[data-industry-structure="locked"]{padding-inline:12px}
  .industry-template[data-industry-structure="locked"] :is([class$="-body"],[class$="-content"],[class$="-layout"],[class$="-lower"],[class$="-grid"]){max-width:100%}
}
@media(max-width:767px){
  .industry-template[data-industry-structure="locked"]{padding-inline:8px;gap:12px}
  .industry-template[data-industry-structure="locked"] .industry-template__tabs{margin-inline:-8px;padding-inline:8px;border-left:0;border-right:0;border-radius:0}
  .industry-template[data-industry-structure="locked"] .industry-template__tabs a{min-height:46px}
  .industry-template[data-industry-structure="locked"] :is(h1){font-size:clamp(27px,8vw,34px);line-height:1.13}
  .industry-template[data-industry-structure="locked"] :is(h2){line-height:1.22}
  .industry-template[data-industry-structure="locked"] .industry-template__section-head{align-items:flex-start}
  .industry-template[data-industry-structure="locked"] .industry-template__button{min-height:44px}
  .industry-template[data-industry-structure="locked"] :is(.service-hero__actions,.product-header__actions,.food-hero__actions,.health-hero__actions,.travel-hero__actions,.portfolio-hero__copy>div){flex-wrap:wrap}
  .industry-template[data-industry-structure="locked"] :is(.service-hero__actions,.food-hero__actions,.health-hero__actions,.travel-hero__actions,.portfolio-hero__copy>div)>.industry-template__button{flex:1 1 135px}
  .industry-template[data-industry-structure="locked"] :is(.service-layout__side,.property-body>aside,.food-content-grid>aside,.health-body>aside,.travel-content>aside,.education-bottom-grid>aside,.portfolio-lower>aside){position:static!important}
}
@media(max-width:390px){
  .industry-template[data-industry-structure="locked"]{padding-inline:6px}
  .industry-template[data-industry-structure="locked"] .industry-template__tabs{margin-inline:-6px;padding-inline:6px}
  .industry-template[data-industry-structure="locked"] :is(.product-grid,.food-featured__grid,.travel-offers__grid,.education-course-grid){grid-template-columns:1fr!important}
  .industry-template[data-industry-structure="locked"] :is(.service-categories__grid,.product-category-strip,.food-menu-strip,.health-specialties>div:last-child,.travel-amenities__grid,.education-categories>div:last-child,.portfolio-services>div:last-child){grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(prefers-reduced-motion:reduce){
  .industry-template[data-industry-structure="locked"] *,
  .industry-template[data-industry-structure="locked"] *::before,
  .industry-template[data-industry-structure="locked"] *::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}
}

/* ALOVN 037 - sticky tab chuyên ngành dùng cùng cơ chế portal/scrollspy với taxi_shop. */
.industry-sticky-tabs__marker{display:block;width:100%;height:0;min-height:0;pointer-events:none}
.industry-sticky-tabs__marker.is-active{width:100%}
.industry-template .industry-sticky-tabs{
  display:flex;
  align-items:stretch;
  min-width:0;
  padding:0 10px;
  overflow:visible;
}
.industry-sticky-tabs__brand,
.industry-sticky-tabs__contact{display:none}
.industry-sticky-tabs__links{
  display:flex;
  align-items:stretch;
  flex:1 1 auto;
  min-width:0;
  overflow-x:auto;
  overflow-y:hidden;
  scrollbar-width:none;
  scroll-snap-type:x proximity;
  overscroll-behavior-inline:contain;
  -webkit-overflow-scrolling:touch;
}
.industry-sticky-tabs__links::-webkit-scrollbar,
.industry-sticky-tabs__contact::-webkit-scrollbar{display:none}
.industry-sticky-tabs__links>a{
  flex:0 0 auto;
  scroll-snap-align:start;
}
.industry-sticky-tabs__links>a>span{display:inline}

body>.industry-sticky-tabs.is-fixed-portal{
  display:grid!important;
  grid-template-columns:minmax(210px,270px) minmax(0,1fr) minmax(250px,340px);
  align-items:center;
  gap:12px;
  min-height:64px;
  padding:7px max(12px,calc((100vw - var(--industry-container,1280px))/2 + 12px));
  border:0;
  border-bottom:1px solid var(--industry-border,#dbe4ef);
  border-radius:0!important;
  background:var(--industry-card,#fff);
  box-shadow:0 12px 28px rgba(15,23,42,.14);
  overflow:visible!important;
}
body>.industry-sticky-tabs.is-fixed-portal .industry-sticky-tabs__brand{
  display:flex;
  align-items:center;
  gap:9px;
  min-width:0;
}
body>.industry-sticky-tabs.is-fixed-portal .industry-sticky-tabs__logo{
  display:grid;
  place-items:center;
  width:44px;
  height:44px;
  flex:0 0 44px;
  overflow:hidden;
  border:2px solid color-mix(in srgb,var(--industry-primary) 32%,white);
  border-radius:12px;
  background:#fff;
}
body>.industry-sticky-tabs.is-fixed-portal .industry-sticky-tabs__logo img{
  width:100%;
  height:100%;
  object-fit:cover;
}
body>.industry-sticky-tabs.is-fixed-portal .industry-sticky-tabs__summary{
  display:block;
  min-width:0;
  overflow:hidden;
}
body>.industry-sticky-tabs.is-fixed-portal .industry-sticky-tabs__summary>strong{
  display:flex;
  align-items:center;
  gap:5px;
  min-width:0;
  color:var(--industry-heading,#1e293b);
  font-size:12px;
  line-height:1.2;
}
body>.industry-sticky-tabs.is-fixed-portal .industry-sticky-tabs__summary>strong span{
  display:block;
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
body>.industry-sticky-tabs.is-fixed-portal .industry-sticky-tabs__summary>strong i{color:var(--industry-primary);font-size:12px}
body>.industry-sticky-tabs.is-fixed-portal .industry-sticky-tabs__summary small{
  display:flex;
  align-items:center;
  gap:4px;
  min-width:0;
  margin-top:4px;
  color:#64748b;
  font-size:9px;
  white-space:nowrap;
}
body>.industry-sticky-tabs.is-fixed-portal .industry-sticky-tabs__summary small b{color:var(--industry-heading,#1e293b)}
body>.industry-sticky-tabs.is-fixed-portal .industry-sticky-tabs__summary small em{color:#f59e0b;font-style:normal;letter-spacing:.2px}
body>.industry-sticky-tabs.is-fixed-portal .industry-sticky-tabs__links{
  width:100%;
  min-width:0;
  border-inline:1px solid #eef2f7;
}
body>.industry-sticky-tabs.is-fixed-portal .industry-sticky-tabs__links>a{
  min-height:48px;
  padding:10px 11px 8px;
  font-size:10px;
}
body>.industry-sticky-tabs.is-fixed-portal .industry-sticky-tabs__contact{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:5px;
  min-width:0;
}
body>.industry-sticky-tabs.is-fixed-portal .industry-sticky-tabs__contact>a{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:4px;
  min-width:0;
  min-height:38px;
  padding:6px 5px;
  border-radius:8px;
  color:#fff;
  font-size:8.5px;
  font-weight:900;
  white-space:nowrap;
  overflow:hidden;
}
body>.industry-sticky-tabs.is-fixed-portal .industry-sticky-tabs__contact>a span{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
}
body>.industry-sticky-tabs.is-fixed-portal .industry-sticky-tabs__contact>a svg,
body>.industry-sticky-tabs.is-fixed-portal .industry-sticky-tabs__contact>a i{width:13px;height:13px;flex:0 0 13px}
body>.industry-sticky-tabs.is-fixed-portal .industry-sticky-tabs__contact .is-zalo{background:#0068ff}
body>.industry-sticky-tabs.is-fixed-portal .industry-sticky-tabs__contact .is-call{background:#22c55e}
body>.industry-sticky-tabs.is-fixed-portal .industry-sticky-tabs__contact .is-messenger{background:linear-gradient(135deg,#00b2ff 0%,#006aff 52%,#7b2ff7 100%)}
body>.industry-sticky-tabs.is-fixed-portal .industry-sticky-tabs__contact .is-facebook{background:#1877f2}

@media(max-width:1050px){
  body>.industry-sticky-tabs.is-fixed-portal{
    grid-template-columns:minmax(170px,220px) minmax(0,1fr) minmax(170px,210px);
    gap:8px;
    padding-inline:10px;
  }
  body>.industry-sticky-tabs.is-fixed-portal .industry-sticky-tabs__contact>a span{display:none}
}

@media(max-width:767.98px){
  .industry-template .industry-sticky-tabs{padding-inline:8px}
  body>.industry-sticky-tabs.is-fixed-portal{
    grid-template-columns:minmax(0,60%) minmax(0,40%);
    grid-template-areas:"industry-brand industry-contact" "industry-links industry-links";
    gap:5px;
    min-height:0;
    padding:6px 8px 0;
  }
  body>.industry-sticky-tabs.is-fixed-portal .industry-sticky-tabs__brand{
    grid-area:industry-brand;
    min-width:0;
    overflow:hidden;
  }
  body>.industry-sticky-tabs.is-fixed-portal .industry-sticky-tabs__logo{
    width:38px;
    height:38px;
    flex-basis:38px;
    border-radius:10px;
  }
  body>.industry-sticky-tabs.is-fixed-portal .industry-sticky-tabs__summary>strong{font-size:10.5px}
  body>.industry-sticky-tabs.is-fixed-portal .industry-sticky-tabs__summary small{font-size:8px}
  body>.industry-sticky-tabs.is-fixed-portal .industry-sticky-tabs__summary small span{display:none}
  body>.industry-sticky-tabs.is-fixed-portal .industry-sticky-tabs__contact{
    grid-area:industry-contact;
    display:grid;
    grid-template-columns:none;
    grid-auto-flow:column;
    grid-auto-columns:calc((100% - 3px)/2);
    gap:3px;
    width:100%;
    min-width:0;
    overflow-x:auto;
    overflow-y:hidden;
    scroll-snap-type:x mandatory;
    overscroll-behavior-x:contain;
    scrollbar-width:none;
    -webkit-overflow-scrolling:touch;
  }
  body>.industry-sticky-tabs.is-fixed-portal .industry-sticky-tabs__contact>a{
    width:100%;
    min-height:31px;
    padding:4px 2px;
    border-radius:6px;
    font-size:clamp(7px,1.85vw,8px);
    scroll-snap-align:start;
    scroll-snap-stop:always;
  }
  body>.industry-sticky-tabs.is-fixed-portal .industry-sticky-tabs__contact>a span{display:inline}
  body>.industry-sticky-tabs.is-fixed-portal .industry-sticky-tabs__contact>a svg,
  body>.industry-sticky-tabs.is-fixed-portal .industry-sticky-tabs__contact>a i{width:11px;height:11px;flex-basis:11px}
  body>.industry-sticky-tabs.is-fixed-portal .industry-sticky-tabs__links{
    grid-area:industry-links;
    width:calc(100% + 16px);
    margin:0 -8px;
    padding:0 8px;
    border:0;
    border-top:1px solid #edf1f6;
    background:#fff;
  }
  body>.industry-sticky-tabs.is-fixed-portal .industry-sticky-tabs__links>a{
    min-height:39px;
    padding:10px 9px 8px;
    font-size:10px;
  }
}

@media(max-width:350px){
  body>.industry-sticky-tabs.is-fixed-portal{grid-template-columns:minmax(0,62%) minmax(0,38%);padding-inline:6px}
  body>.industry-sticky-tabs.is-fixed-portal .industry-sticky-tabs__summary small em{display:none}
  body>.industry-sticky-tabs.is-fixed-portal .industry-sticky-tabs__contact>a span{font-size:7px}
}
.industry-template[data-industry-structure="locked"] .industry-template__anchor{
  height:0;
  top:0;
  scroll-margin-top:110px;
}
