/* BEAM historical site — final stabilization layer.
   Keep the legacy visual identity, remove fragile floats and make each page self-contained. */

:root{--beam-purple:#532987;--beam-blue:#2196f3;--beam-red:#ce4267;--beam-border:#d7d7d7;--beam-text:#333;}
#pageMain{display:block;width:100%;clear:both;padding:14px 14px 4px;overflow:hidden;background:#fff;}
#pageMain::after{content:"";display:block;clear:both;}
#pageMain .heading{position:relative!important;left:auto!important;width:100%!important;max-width:100%!important;margin:0 0 14px!important;padding:10px 18px!important;line-height:1.18!important;font-family:Arial,Helvetica,sans-serif!important;font-size:28px!important;font-weight:600!important;background-position:right center!important;box-sizing:border-box!important;}
#pageMain h2.heading{font-size:24px!important;margin-top:18px!important;}
#pageMain p,#pageMain li{font-size:14px;line-height:1.48;}
#pageMain a{overflow-wrap:anywhere;}

/* Home hero: stable two-column banner instead of legacy fixed floats. */
#pageMain .homeHeroTable{width:100%!important;border-collapse:separate;border-spacing:10px 0;table-layout:fixed;margin:0 0 18px;}
#pageMain .homeHeroTable td{padding:0!important;vertical-align:top;border:0!important;overflow:hidden;}
#pageMain .homeHeroTable td:first-child{width:68%;}
#pageMain .homeHeroTable td:last-child{width:32%;}
#pageMain .homeHeroTable td:last-child img{display:block;width:100%!important;height:300px!important;object-fit:cover;object-position:center;}
#pageMain .rslides_container{float:none!important;left:auto!important;width:100%!important;height:300px!important;margin:0!important;overflow:hidden;}
#pageMain .rslides,#pageMain .rslides li{width:100%!important;height:300px!important;margin:0!important;}
#pageMain .rslides img{width:100%!important;height:300px!important;object-fit:cover;}
#pageMain .caption{box-sizing:border-box!important;width:100%!important;left:0!important;bottom:0!important;margin:0!important;padding:9px 12px!important;}

/* Main informational blocks. */
#pageMain .wideTeaser{box-sizing:border-box;clear:both;width:auto!important;max-width:none!important;margin:14px 0!important;overflow:hidden!important;}
#pageMain .wideTeaser.benefit{border:1px solid #cfd3d7!important;border-radius:3px;background:linear-gradient(#fff,#f5fbff)!important;padding:0!important;}
#pageMain .wideTeaser.Avantages{border:1px solid #dedede!important;border-radius:3px;background:#fff!important;padding:0!important;}
#pageMain .wideTeaser>.contentHolder{box-sizing:border-box!important;width:100%!important;padding:18px 20px!important;overflow:hidden;}
#pageMain .wideTeaser>.contentHolder>ul{margin:0!important;padding:0!important;list-style:none!important;}
#pageMain .wideTeaser>.contentHolder img[style*="float: right"],
#pageMain .wideTeaser>.contentHolder>ul>img[style*="float: right"]{float:right!important;max-width:32%!important;height:auto!important;margin:0 0 12px 22px!important;}
#pageMain .wideTeaser>.contentHolder iframe{float:right!important;max-width:48%!important;margin:0 0 12px 22px!important;border:0;}
#pageMain .wideTeaser h2:not(.heading){font-family:Arial,Helvetica,sans-serif!important;font-size:24px!important;line-height:1.15!important;margin:0 0 12px!important;}


/* Clearfix pseudo-elements become anonymous grid cells; remove them on grid containers. */
#pageMain .teaserWrapper.cf::before,#pageMain .teaserWrapper.cf::after,
#pageMain .meet.cf::before,#pageMain .meet.cf::after,
#pageMain .listPage>ul>li.cf::before,#pageMain .listPage>ul>li.cf::after{content:none!important;display:none!important;}

/* Legacy feature cards: always four clean columns on desktop. */
#pageMain .teaserWrapper.cf{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:14px!important;width:100%!important;margin:18px 0 24px!important;padding:0!important;overflow:visible!important;clear:both!important;}
#pageMain .teaserWrapper.cf>.fourCol.module{float:none!important;width:auto!important;min-width:0!important;margin:0!important;padding:0!important;height:auto!important;}
#pageMain .teaserWrapper.cf>.clear{display:none!important;}
#pageMain .teaserWrapper .articleTeaser{display:flex!important;flex-direction:column;height:100%!important;min-height:0!important;border:1px solid var(--beam-border)!important;border-radius:4px!important;background:#fff!important;box-shadow:0 1px 2px rgba(0,0,0,.05)!important;overflow:hidden!important;}
#pageMain .teaserWrapper .picHolder{float:none!important;display:flex!important;align-items:center;justify-content:center;width:100%!important;height:180px!important;margin:0!important;padding:8px!important;background:#fff!important;overflow:hidden!important;}
#pageMain .teaserWrapper .picHolder img{float:none!important;display:block!important;width:auto!important;height:auto!important;max-width:100%!important;max-height:164px!important;margin:auto!important;object-fit:contain!important;}
#pageMain .teaserWrapper .featuresText{flex:1;min-height:0!important;padding:10px 12px 14px!important;background:#fff!important;}
#pageMain .teaserWrapper .featuresText h3{font-family:Arial,Helvetica,sans-serif!important;font-size:15px!important;line-height:1.25!important;margin:0 0 8px!important;}
#pageMain .teaserWrapper .featuresText p{font-size:13px!important;line-height:1.42!important;margin:6px 0 0!important;}
#pageMain .teaserWrapper .buttonWrapper{margin:8px 10px 12px!important;text-align:center!important;}

/* Product-family rows. */
#pageMain .meet.cf{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:14px!important;clear:both!important;width:100%!important;margin:24px 0!important;padding:0!important;overflow:visible!important;}
#pageMain .meet.cf>.heading{grid-column:1/-1!important;margin:0!important;}
#pageMain .meet.cf>.twoCol{float:none!important;width:auto!important;min-width:0!important;min-height:0!important;margin:0!important;padding:12px!important;border:1px solid var(--beam-border)!important;border-radius:4px!important;background:#fff!important;text-align:center!important;}
#pageMain .meet.cf>.twoCol>a{display:block;text-decoration:none;}
#pageMain .meet.cf>.twoCol img{display:block!important;width:auto!important;height:180px!important;max-width:100%!important;object-fit:contain!important;margin:0 auto 8px!important;}
#pageMain .meet.cf>.twoCol h3{min-height:38px!important;margin:7px 0!important;font-family:Arial,Helvetica,sans-serif!important;font-size:14px!important;line-height:1.25!important;}
#pageMain .meet.cf>.twoCol .textWrapper{float:none!important;width:auto!important;min-height:82px!important;margin:0!important;padding:0!important;text-align:left!important;}
#pageMain .meet.cf>.twoCol .textWrapper p{font-size:12.5px!important;line-height:1.38!important;}
#pageMain .meet.cf>.twoCol .buttonWrapper{margin-top:8px!important;}

/* Intro lists such as Retraflex. */
#pageMain .listPage{width:100%!important;margin:0 0 18px!important;padding:0!important;background:none!important;}
#pageMain .listPage>ul{margin:0!important;padding:0!important;list-style:none!important;}
#pageMain .listPage>ul>li.cf{display:grid!important;grid-template-columns:minmax(0,1.6fr) minmax(280px,.8fr)!important;gap:22px!important;align-items:start!important;width:100%!important;margin:0!important;padding:20px!important;border:1px solid var(--beam-border)!important;border-radius:4px!important;background:#fff!important;}
#pageMain .listPage .nineCol.module,#pageMain .listPage .sixCol.module{float:none!important;width:auto!important;margin:0!important;}
#pageMain .listPage .imageHolder{width:100%!important;margin:0!important;text-align:center!important;}
#pageMain .listPage .imageHolder img{display:block!important;width:100%!important;max-width:360px!important;height:auto!important;margin:0 auto!important;}
#pageMain .listPage .textWrapper{width:auto!important;padding:0!important;}
#pageMain>img{display:block;max-width:100%!important;height:auto!important;margin:12px auto 20px!important;}
#pageMain>div[align="center"] iframe,#pageMain iframe[width="980"]{display:block;width:100%!important;max-width:960px!important;aspect-ratio:16/9;height:auto!important;margin:0 auto!important;}

/* Large legacy product dumps: readable four-column cards, not squeezed strips. */
#pageMain .legacy-products-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:14px!important;width:100%!important;margin:18px auto!important;padding:0!important;align-items:stretch!important;}
#pageMain .legacy-products-grid .products{display:flex!important;flex-direction:column!important;width:auto!important;min-width:0!important;margin:0!important;text-align:center!important;border:1px solid #d0d0d0!important;border-radius:4px!important;background:#fff!important;overflow:hidden!important;box-shadow:0 1px 2px rgba(0,0,0,.06)!important;}
#pageMain .legacy-products-grid .products .ref{box-sizing:border-box!important;width:100%!important;height:auto!important;min-height:44px!important;padding:5px 6px!important;border:0!important;border-bottom:1px solid #ddd!important;box-shadow:none!important;background:#f1f1f1!important;font-size:11px!important;line-height:1.35!important;}
#pageMain .legacy-products-grid .products>a{display:flex!important;flex-direction:column!important;flex:1!important;text-decoration:none!important;}
#pageMain .legacy-products-grid .products img{display:block!important;width:100%!important;height:190px!important;max-width:none!important;object-fit:contain!important;margin:0!important;padding:8px!important;border:0!important;box-shadow:none!important;background:#fff!important;}
#pageMain .legacy-products-grid .descriptionsproducts{box-sizing:border-box!important;display:flex!important;align-items:center;justify-content:center;flex:1!important;height:auto!important;min-height:58px!important;padding:8px!important;border:0!important;border-top:1px solid #ddd!important;box-shadow:none!important;background:#fafafa!important;font-size:12px!important;line-height:1.3!important;overflow:hidden!important;}

/* Footer must never become a grid/flex child of malformed legacy content. */
footer.shadow.footer{position:relative!important;display:block!important;clear:both!important;width:100%!important;margin:10px 0 0!important;padding:18px 20px!important;background:#fff!important;border-top:1px solid #ddd!important;}

@media (max-width:800px){
  #pageMain{padding:10px 10px 2px;}
  #pageMain .heading{font-size:23px!important;padding:9px 12px!important;}
  #pageMain h2.heading{font-size:20px!important;}
  #pageMain .homeHeroTable,#pageMain .homeHeroTable tbody,#pageMain .homeHeroTable tr,#pageMain .homeHeroTable td{display:block!important;width:100%!important;}
  #pageMain .homeHeroTable{border-spacing:0!important;}
  #pageMain .homeHeroTable td:last-child{display:none!important;}
  #pageMain .rslides_container,#pageMain .rslides,#pageMain .rslides li,#pageMain .rslides img{height:260px!important;}
  #pageMain .teaserWrapper.cf,#pageMain .meet.cf,#pageMain .legacy-products-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  #pageMain .listPage>ul>li.cf{grid-template-columns:1fr!important;padding:14px!important;}
  #pageMain .wideTeaser>.contentHolder img[style*="float: right"],#pageMain .wideTeaser>.contentHolder>ul>img[style*="float: right"],#pageMain .wideTeaser>.contentHolder iframe{float:none!important;display:block!important;max-width:100%!important;margin:10px auto 15px!important;}
}
@media (max-width:480px){
  #pageMain .teaserWrapper.cf,#pageMain .meet.cf,#pageMain .legacy-products-grid{grid-template-columns:1fr!important;}
  #pageMain .rslides_container,#pageMain .rslides,#pageMain .rslides li,#pageMain .rslides img{height:220px!important;}
  #pageMain .meet.cf>.twoCol img{height:210px!important;}
}

/* Download library rebuilt as a simple, stable grid. */
#pageMain .download-section{clear:both;margin:18px 0 28px;}
#pageMain .download-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;align-items:stretch;}
#pageMain .download-card{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;min-width:0;padding:12px;border:1px solid #d8d8d8;border-radius:4px;background:#fff;text-decoration:none!important;color:#0666ad!important;box-shadow:0 1px 2px rgba(0,0,0,.05);}
#pageMain .download-card:hover{border-color:#9bbede;box-shadow:0 2px 6px rgba(0,0,0,.08);}
#pageMain .download-card img{display:block;width:100%;height:250px;object-fit:contain;margin:0 auto 10px;}
#pageMain .download-card span{display:block;text-align:center;font-size:14px;font-weight:bold;line-height:1.3;}
#pageMain .download-card.is-static{color:#333!important;}
@media(max-width:800px){#pageMain .download-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:480px){#pageMain .download-grid{grid-template-columns:1fr;}}

/* Last inherited-width cleanup from the original 2010-era stylesheet. */
nav.mainNav{margin-left:0!important;padding-top:0!important;}
#pageMain .content{width:100%!important;max-width:100%!important;padding:12px 0!important;}
@media(max-width:760px){
  nav.mainNav,nav.mainNav ul.mainMenu{margin-left:0!important;width:100%!important;max-width:100%!important;}
  #pageMain{width:100%!important;max-width:100%!important;overflow:hidden!important;}
}
