/* ICM Industries SA - shared additions (menu, footer, contact buttons, contact page, homepage sections)
   All class names start with "icm-" so nothing here touches the existing page styles. */

.icm-bar{background:#002266;color:#fff;font:15px/1.4 Arial,Helvetica,sans-serif;position:relative;z-index:50;text-align:left}
.icm-bar a{color:#fff;text-decoration:none}
.icm-bar-in{max-width:1200px;margin:0 auto;padding:8px 14px;display:flex;flex-wrap:wrap;align-items:center;gap:6px 18px}
.icm-brand{font-weight:700;font-size:17px;letter-spacing:.2px}
.icm-bar nav{display:flex;flex-wrap:wrap;align-items:center;gap:4px 14px;flex:1 1 320px}
.icm-bar nav a{padding:4px 2px;border-bottom:2px solid transparent}
.icm-bar nav a:hover,.icm-bar nav a:focus{border-color:#fff;text-decoration:none}
.icm-tel a{font-weight:700;white-space:nowrap}
.icm-bar a.icm-cta{background:#cc3300;padding:6px 12px;border-radius:4px;border:0;font-weight:700}
.icm-bar a.icm-cta:hover{background:#a82a00}
.icm-crumbs{background:#eef1f7;color:#334;font:13px/1.4 Arial,Helvetica,sans-serif;padding:6px 14px;text-align:left}
.icm-crumbs a{color:#000099}
.icm-crumbs span{margin:0 5px;color:#667}

.icm-foot{background:#002266;color:#dfe6f5;font:14px/1.6 Arial,Helvetica,sans-serif;margin-top:40px;padding:28px 14px 22px;text-align:left}
.icm-foot a{color:#fff;text-decoration:underline}
.icm-foot-in{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:22px}
.icm-foot h2{color:#fff;font:700 15px/1.3 Arial,Helvetica,sans-serif;margin:0 0 8px;padding:0;border:0;background:none}
.icm-foot ul{list-style:none;margin:0;padding:0}
.icm-foot li{margin:3px 0}
.icm-foot p{margin:0 0 6px;color:#dfe6f5}
.icm-foot-copy{max-width:1200px;margin:18px auto 0;padding-top:12px;border-top:1px solid #3a5088;font-size:13px;color:#b9c6e6}

.icm-float{position:fixed;right:14px;bottom:14px;display:flex;flex-direction:column;gap:8px;z-index:60;font-family:Arial,Helvetica,sans-serif}
.icm-float a{display:block;padding:11px 16px;border-radius:26px;color:#fff;font-weight:700;font-size:15px;text-decoration:none;text-align:center;box-shadow:0 2px 8px rgba(0,0,0,.3)}
.icm-wa{background:#0b7a43}
.icm-quote{background:#cc3300}
.icm-float a:hover,.icm-float a:focus{filter:brightness(1.12);text-decoration:none}

/* Contact page */
.icm-page{margin:0;background:#f4f6fb}
.icm-contact *,.icm-legal *,.icm-form *{box-sizing:border-box}
.icm-contact{max-width:1100px;margin:0 auto;padding:22px 14px 10px;font:16px/1.6 Arial,Helvetica,sans-serif;color:#1d2433;text-align:left}
.icm-contact h1{font:700 28px/1.25 Arial,Helvetica,sans-serif;color:#002266;margin:0 0 6px}
.icm-contact .icm-lead{margin:0 0 18px;color:#44506a}
.icm-grid{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,2fr);gap:22px;align-items:start}
.icm-card{background:#fff;border:1px solid #d9dfec;border-radius:10px;padding:20px}
.icm-card h2{font:700 19px/1.3 Arial,Helvetica,sans-serif;color:#002266;margin:0 0 12px}
.icm-form label{display:block;font-weight:700;font-size:14px;margin:12px 0 4px}
.icm-form .icm-opt{font-weight:400;color:#667}
.icm-form input[type=text],.icm-form input[type=email],.icm-form input[type=tel],.icm-form select,.icm-form textarea{width:100%;padding:10px 11px;border:1px solid #9aa6bf;border-radius:6px;font:16px Arial,Helvetica,sans-serif;background:#fff;color:#1d2433}
.icm-form textarea{min-height:130px;resize:vertical}
.icm-form input:focus,.icm-form select:focus,.icm-form textarea:focus{outline:3px solid #9db4ff;border-color:#000099}
.icm-row{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}
.icm-check{display:flex;gap:9px;align-items:flex-start;margin-top:14px;font-size:14px}
.icm-check input{margin-top:4px;width:18px;height:18px;flex:none}
.icm-check label{display:inline;font-weight:400;margin:0}
.icm-btn{display:inline-block;margin-top:16px;background:#cc3300;color:#fff;border:0;border-radius:6px;padding:12px 26px;font:700 17px Arial,Helvetica,sans-serif;cursor:pointer}
.icm-btn:hover,.icm-btn:focus{background:#a82a00}
.icm-btn[disabled]{opacity:.65;cursor:wait}
.icm-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.icm-note{font-size:13px;color:#556;margin:10px 0 0}
.icm-details p{margin:0 0 10px}
.icm-details a{color:#000099}
.icm-chip{display:inline-block;margin:4px 6px 4px 0;padding:9px 14px;border-radius:22px;color:#fff!important;font-weight:700;text-decoration:none!important}
.icm-chip.wa{background:#0b7a43}
.icm-chip.tel{background:#002266}
.icm-chip.mail{background:#555f7a}
.icm-map{margin-top:18px;border:1px solid #d9dfec;border-radius:10px;overflow:hidden;background:#fff}
.icm-map iframe{display:block;width:100%;height:320px;border:0}
.icm-map p{margin:0;padding:8px 12px;font-size:13px}
.icm-thanks{max-width:640px;margin:40px auto;text-align:center}
.icm-legal{max-width:820px;margin:0 auto;padding:22px 14px;font:16px/1.7 Arial,Helvetica,sans-serif;color:#1d2433;text-align:left}
.icm-legal h1{font:700 28px/1.25 Arial,Helvetica,sans-serif;color:#002266}
.icm-legal h2{font:700 19px/1.3 Arial,Helvetica,sans-serif;color:#002266;margin:22px 0 6px}

/* Homepage sections */
.icm-home{max-width:1100px;margin:30px auto 0;padding:0 14px;font:16px/1.6 Arial,Helvetica,sans-serif;color:#1d2433;text-align:left}
.icm-home h2{font:700 24px/1.3 Arial,Helvetica,sans-serif;color:#002266;margin:0 0 14px;text-align:center}
.icm-why{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin-bottom:34px}
.icm-why div{background:#fff;border:1px solid #d9dfec;border-top:4px solid #cc3300;border-radius:8px;padding:14px 16px}
.icm-why strong{display:block;color:#002266;margin-bottom:4px}
.icm-steps{counter-reset:s;list-style:none;margin:0 0 20px;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px}
.icm-steps li{counter-increment:s;background:#fff;border:1px solid #d9dfec;border-radius:8px;padding:14px 16px 14px 52px;position:relative}
.icm-steps li::before{content:counter(s);position:absolute;left:14px;top:12px;width:28px;height:28px;border-radius:50%;background:#002266;color:#fff;font-weight:700;text-align:center;line-height:28px}
.icm-cta-band{background:#002266;color:#fff;border-radius:10px;padding:22px;text-align:center;margin-bottom:10px}
.icm-cta-band a{display:inline-block;margin:6px 5px 0;padding:11px 20px;border-radius:6px;font-weight:700;color:#fff;text-decoration:none}
.icm-cta-band .a{background:#cc3300}
.icm-cta-band .b{background:#0b7a43}

@media (max-width:760px){
  .icm-grid{grid-template-columns:1fr}
  .icm-row{grid-template-columns:1fr}
  .icm-contact h1,.icm-legal h1{font-size:23px}
  .icm-float{left:0;right:0;bottom:0;flex-direction:row;gap:0}
  .icm-float a{flex:1;border-radius:0;padding:14px 8px;box-shadow:none}
  .icm-foot{padding-bottom:78px}
  /* homepage category table stacks on phones */
  table.product-table,table.product-table tbody,table.product-table tr,table.product-table td{display:block;width:100%!important}
  table.product-table td{box-sizing:border-box}
}
@media print{.icm-bar,.icm-crumbs,.icm-float,.icm-foot{display:none!important}}

/* Phone-friendly fixes for older pages */
@media (max-width:760px){
  img,video,iframe{max-width:100%!important;height:auto}
  img{height:auto!important}
  table{max-width:100%}
  body{overflow-wrap:break-word;word-wrap:break-word}
  pre,code{white-space:pre-wrap}
}

@media (max-width:760px){
  [style*="width"]{max-width:100%!important}
  div[style*="height"],section[style*="height"]{height:auto!important}
  .icm-stack,.icm-stack>tbody,.icm-stack>thead,.icm-stack>tbody>tr,.icm-stack>tr,.icm-stack>tbody>tr>td,.icm-stack>tbody>tr>th,.icm-stack>tr>td,.icm-stack>tr>th{display:block;width:100%!important;box-sizing:border-box}
  .icm-stack{border-spacing:0;height:auto!important}
  .icm-stack>tbody>tr>td,.icm-stack>tr>td{height:auto!important;padding-left:0;padding-right:0}
  .icm-scroll{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}
}

@media (max-width:760px){
  div[style*="width"],section[style*="width"],article[style*="width"]{width:auto!important}
  article,section,aside,main,li,a{min-width:0;max-width:100%}
}

@media (max-width:760px){html,body{overflow-x:hidden}}

/* Search box */
.icm-search{position:relative;flex:0 1 230px;min-width:150px}
.icm-search input{width:100%;box-sizing:border-box;padding:7px 10px;border:0;border-radius:4px;font:14px Arial,Helvetica,sans-serif;color:#1d2433;background:#fff}
.icm-search input:focus{outline:3px solid #9db4ff}
.icm-res{position:absolute;left:0;right:0;top:calc(100% + 4px);min-width:280px;background:#fff;color:#1d2433;border:1px solid #9aa6bf;border-radius:6px;box-shadow:0 6px 18px rgba(0,0,0,.25);z-index:90;max-height:70vh;overflow:auto;text-align:left}
.icm-res a{display:block;padding:9px 12px;color:#1d2433!important;text-decoration:none;border-bottom:1px solid #eef0f6;font:14px/1.35 Arial,Helvetica,sans-serif}
.icm-res a:hover,.icm-res a.on{background:#eef1f7}
.icm-res small{display:block;color:#667;font-size:12px}
.icm-res p{margin:0;padding:10px 12px;font:14px Arial,Helvetica,sans-serif;color:#556}
a.icm-quote-inline{display:inline-block;margin:10px 0;padding:10px 18px;background:#cc3300;color:#fff!important;border-radius:6px;font:700 15px Arial,Helvetica,sans-serif;text-decoration:none!important}
a.icm-quote-inline:hover{background:#a82a00}
@media (max-width:760px){.icm-search{flex:1 1 100%}.icm-res{min-width:0}}
@media print{.icm-search,a.icm-quote-inline{display:none!important}}
