/* V23: HARTSTAND exclusively exhibition stands. All carousels are local; the document never pans sideways. */
:root{--v23-accent:#CDE64D}
.v23-swipe-hint{display:none}
@media(min-width:901px){
 .balanced-home-grid,.balanced-services-columns{display:block}
 .balanced-home-group{display:block}
 .balanced-home-top{min-height:0;padding:25px 31px}
 .balanced-home-rows{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:none}
 .balanced-home-row{border-bottom:0;border-right:1px solid #dbe1dc;padding:28px 24px}
 .balanced-home-row:last-child{border-right:0}
 .balanced-service-stack{grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:none;align-items:stretch}
 .balanced-service-photo{aspect-ratio:16/9}
 .balanced-service-content{padding:23px 24px}
 .balanced-svc-group-heading{min-height:0}
}
/* Preserve the approved vertical-page lock, but allow swiping within controlled rails. */
@media(max-width:900px){
 html,body{overflow-x:hidden!important;max-width:100%;overscroll-behavior-x:none;touch-action:auto!important}
 @supports(overflow:clip){html,body{overflow-x:clip!important}}
 .balanced-home-services{padding:36px 0 40px}
 .balanced-home-heading{margin-bottom:19px}
 .balanced-home-heading h2{font-size:clamp(30px,7.8vw,44px);margin:10px 0}
 .balanced-home-heading>p{font-size:15px;line-height:1.55}
 .balanced-home-grid{display:block}
 .balanced-home-group{border:0;background:transparent}
 .balanced-home-top{padding:20px 22px;min-height:0}
 .balanced-home-top h3{font-size:24px;margin:9px 0 6px}
 .balanced-home-top p{font-size:15px;line-height:1.5}
 .balanced-home-rows{
  display:flex!important;flex-wrap:nowrap;gap:12px;align-items:stretch;grid-template-columns:none;grid-template-rows:none;
  overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;
  scroll-padding-inline:2px;padding:13px 3px 14px;scrollbar-width:thin;scrollbar-color:#b9d83a transparent;
  overscroll-behavior-inline:contain;touch-action:pan-x pan-y pinch-zoom;
 }
 .balanced-home-row{flex:0 0 min(80vw,380px);min-width:0;display:flex;flex-direction:column;scroll-snap-align:start;
  padding:21px 19px;gap:9px;border:1px solid #d9e1da;background:#fff;min-height:205px}
 .balanced-home-n{font-size:12px}
 .balanced-home-copy strong{font-size:20px;line-height:1.18}
 .balanced-home-copy small{font-size:14px;line-height:1.55;margin-top:8px}
 .v23-swipe-hint{display:flex;gap:7px;align-items:center;margin:5px 0 2px;color:#5a6761;font:600 12px/1.4 Inter,Arial,sans-serif;letter-spacing:.01em}
 .v23-swipe-hint::before{content:'';width:21px;height:3px;background:#b8d83e;flex:none}
 .balanced-home-foot{padding-top:14px;margin-top:13px;gap:6px}
 .balanced-home-foot p{font-size:15px}
 .balanced-home-foot .balanced-foot-link{font-size:14px}
 .balanced-service-catalog{padding:40px 0 46px}
 .balanced-catalog-intro{margin-bottom:15px}
 .balanced-catalog-intro h2{font-size:clamp(30px,8vw,46px);margin:8px 0}
 .balanced-catalog-intro p{font-size:15px;line-height:1.5}
 .balanced-services-columns{display:block}
 .balanced-svc-group-heading{padding:22px 22px 20px;min-height:0}
 .balanced-svc-group-heading h2{margin:8px 0 6px;font-size:25px}
 .balanced-svc-group-heading p{font-size:14px}
 .balanced-service-stack{display:flex!important;grid-template-columns:none;grid-template-rows:none;flex-wrap:nowrap;align-items:stretch;gap:12px;
   padding:5px 2px 14px;margin-top:0;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;
   scrollbar-width:thin;scrollbar-color:#b9d83a transparent;scroll-padding-inline:2px;
   overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch;touch-action:pan-x pan-y pinch-zoom}
 .balanced-service{display:flex!important;flex:0 0 min(82vw,390px);min-width:0;scroll-snap-align:start;flex-direction:column}
 .balanced-service-photo{aspect-ratio:16/8!important;min-height:0!important;height:auto!important}
 .balanced-service-content{padding:19px 19px 21px;min-height:0}
 .balanced-service h3{font-size:22px;margin:11px 0 9px}
 .balanced-service p{font-size:14px;line-height:1.56;margin-bottom:10px}
 .balanced-service ul{margin-bottom:12px}
 .balanced-service li{font-size:13px;line-height:1.48;padding:7px 0 7px 12px}
 .balanced-service li:before{top:14px}
 .balanced-service-cta{font-size:14px}
 .svc-page-intro{padding:39px 0 31px!important}
 .svc-lead-grid{gap:13px}
 .svc-lead-grid .heading{font-size:clamp(31px,7.8vw,46px);margin:6px 0 11px}
 .svc-lead-grid p{font-size:15px}
 .svc-steps{padding-top:48px!important;padding-bottom:45px!important}
 .about10-hero{padding-top:96px;padding-bottom:25px}
 .about10-hero-wrap{gap:16px}
 .about10-hero-art{height:210px}
 .about10-hero h1{font-size:clamp(43px,10vw,58px);margin:14px 0}
 .about10-story{padding:45px 0}
 .about10-story h2,.about10-method h2,.about10-contact h2{font-size:clamp(34px,8.7vw,45px)}
 .about10-method{padding:44px 0}
 .about10-method-items.v23-about-rail{display:flex!important;gap:12px;grid-template-columns:none;flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;
  scroll-snap-type:x mandatory;scroll-padding-inline:2px;margin-top:12px;padding:0 2px 14px;scrollbar-width:thin;scrollbar-color:#b9d83a transparent;
  overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch;touch-action:pan-x pan-y pinch-zoom}
 .about10-method-items.v23-about-rail article{flex:0 0 min(79vw,365px);min-width:0;scroll-snap-align:start;padding:23px 21px;min-height:195px}
 .about10-method-items.v23-about-rail h3{font-size:24px;margin:14px 0 8px}
 .about10-contact{padding:44px 0}
 .about10-contact-grid{gap:17px}
 .quote-hero{padding-bottom:26px!important}
 .quote-v18-section{padding-top:35px!important;padding-bottom:42px!important}
 .quote-v18-head{margin-bottom:12px!important}
 .quote-v18-head h2{font-size:clamp(27px,8vw,40px)}
 .quote-v18-side{padding:22px!important}
 .balanced-quote-group{padding:12px;margin:12px 0}
 .balanced-choice-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px}
 .balanced-choice-grid .service-choice{padding:12px 9px;font-size:13px;line-height:1.45;min-height:70px;overflow-wrap:anywhere}
 .quote-fields{gap:13px!important}
 .quote-stage h3{margin-bottom:11px!important}
 .quote-section .quote-stage{padding-bottom:0!important}
 .contact12-hero{padding-bottom:37px!important}
 .contact12-quote{padding-top:35px!important;padding-bottom:35px!important}
}
@media(max-width:400px){
 .balanced-home-row{flex-basis:80vw;padding:17px}
 .balanced-service{flex-basis:83vw}
 .balanced-service-content{padding:16px}
 .balanced-choice-grid .service-choice{font-size:12px}
 .about10-method-items.v23-about-rail article{flex-basis:81vw}
}
@media(prefers-reduced-motion:reduce){.balanced-home-rows,.balanced-service-stack,.v23-about-rail{scroll-behavior:auto}}
/* Additional compact rails: workflow and company credentials. */
@media(max-width:900px){
 .svc-steps-grid{display:flex!important;grid-template-columns:none;flex-wrap:nowrap;gap:12px;
   overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scroll-padding-inline:2px;padding:5px 2px 13px;
   scrollbar-width:thin;scrollbar-color:#b9d83a transparent;overscroll-behavior-inline:contain;
   -webkit-overflow-scrolling:touch;touch-action:pan-x pan-y pinch-zoom}
 .svc-steps-grid article{flex:0 0 min(77vw,340px);min-width:0;scroll-snap-align:start;padding:22px 20px;min-height:180px}
 .svc-steps-grid article h3{font-size:22px}
 .svc-steps-grid article p{font-size:14px;line-height:1.55}
 .about10-credentials-grid{display:flex!important;flex-wrap:nowrap;grid-template-columns:none;
   overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scroll-padding-inline:3px;
   scrollbar-width:thin;scrollbar-color:#263523 transparent;overscroll-behavior-inline:contain;
   -webkit-overflow-scrolling:touch;touch-action:pan-x pan-y pinch-zoom}
 .about10-credentials-grid .about10-proof,.about10-credentials-grid .about10-proof:first-child,
 .about10-credentials-grid .about10-proof:last-child{display:flex;flex:0 0 min(60vw,255px);scroll-snap-align:start;
   border:0;border-right:1px solid rgba(20,29,18,.18);padding:19px 16px;min-width:0;grid-column:auto}
 .about10-proof strong{font-size:clamp(22px,5.5vw,29px)}
}
