:root{--navy:#0b2230;--slate:#193a4b;--orange:#ec6a29;--cream:#f4f2ec;--line:#d5dde0;--text:#102432}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--text);font:16px/1.6 Arial,Helvetica,sans-serif}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.08}h1{font-size:clamp(2.7rem,6vw,5.7rem);letter-spacing:-.06em}h2{font-size:clamp(2.1rem,4vw,3.7rem);letter-spacing:-.045em}h3{font-size:1.25rem}.container{width:min(1120px,calc(100% - 42px));margin:auto}.skip-link{position:absolute;left:-9999px}.skip-link:focus{left:16px;top:16px;background:white;padding:8px;z-index:10}.header{height:74px;display:flex;align-items:center;background:#fff;position:sticky;top:0;z-index:5;border-bottom:1px solid #e4e8e9}.nav{width:min(1120px,calc(100% - 42px));display:flex;align-items:center;justify-content:space-between;gap:18px}.brand{display:flex;gap:10px;align-items:center;color:var(--navy);font-weight:bold;text-decoration:none}.brand b{background:var(--orange);color:#fff;letter-spacing:.12em;padding:4px 8px}.brand span{font-size:.82rem;max-width:120px;line-height:1.1}.menu{display:none;background:#fff;border:1px solid var(--navy);padding:8px 12px}nav{display:flex;align-items:center;gap:26px}nav a{color:var(--navy);text-decoration:none;font-size:.9rem;font-weight:bold}.nav-button,.button{background:var(--orange);color:#fff!important;padding:12px 18px;text-decoration:none;font-weight:bold;border:0;cursor:pointer}.hero{min-height:620px;display:grid;place-items:center;position:relative;color:#fff}.hero-image,.hero-overlay{position:absolute;inset:0}.hero-image{background:url('../images/cnc-machining.jpg') center/cover}.hero-overlay{background:linear-gradient(90deg,rgba(4,18,26,.86),rgba(4,18,26,.44),rgba(4,18,26,.12))}.hero-content{position:relative;max-width:1120px;width:100%}.hero-content>p:not(.eyebrow){font-size:1.2rem;max-width:560px;margin-bottom:32px}.eyebrow{font-size:.72rem;text-transform:uppercase;letter-spacing:.17em;font-weight:bold;color:var(--orange);margin-bottom:18px}.light{color:#ffd0b6}.section{padding:90px 0}.two-column{display:grid;grid-template-columns:1fr 1fr;gap:90px}.two-column>div:last-child p{font-size:1.08rem}.dark{background:var(--navy);color:#fff}.orange{color:#ff9e6d}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;margin-top:38px;background:#3a5664}.cards article{background:var(--navy);padding:29px;min-height:180px}.cards h3{margin-top:30px}.cards p{color:#c8d6dc;font-size:.92rem}.feature{display:grid;grid-template-columns:1fr 1fr;background:var(--cream);align-items:stretch}.feature img{width:100%;height:100%;min-height:360px;object-fit:cover}.feature div{padding:90px max(42px,calc((100vw - 1120px)/2));padding-left:70px}.feature p:not(.eyebrow){font-size:1.08rem}.text-link{color:var(--navy);font-weight:bold}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);margin-top:38px}.service-grid>div{background:#fff;padding:25px}.service-grid b{color:var(--orange);font-size:.85rem}.service-grid h3{margin-top:26px}.service-grid p{font-size:.93rem}.industries{padding:90px 0;background:#dfe9e8}.industries ul{list-style:none;margin:0;padding:0;border-top:1px solid #9daeb4}.industries li{padding:17px 0;border-bottom:1px solid #9daeb4;font-size:1.18rem;font-weight:bold}.contact{background:var(--navy);color:#fff;padding:88px 0}.contact-grid{display:grid;grid-template-columns:1fr .85fr;gap:90px}.contact p:not(.eyebrow){color:#c5d4d9;font-size:1.06rem}.details a{color:#fff;font-weight:bold}form{background:#fff;color:var(--text);padding:30px;border-top:4px solid var(--orange)}label{display:block;font-size:.82rem;font-weight:bold;margin-bottom:12px}input,textarea{display:block;width:100%;border:1px solid #b9c5c9;padding:10px;margin-top:5px;font:inherit}.trap{display:none}.form-message{margin:14px 0 0!important;font-size:.9rem!important}.success{color:#236a47!important}.error{color:#a22d22!important}footer{background:#071923;color:#b8c8cf;padding:23px 0;font-size:.86rem}footer .container{display:flex;justify-content:space-between;gap:20px}footer a{color:#fff}@media(max-width:820px){.menu{display:block}nav{display:none;position:absolute;top:74px;left:0;right:0;background:white;padding:20px;flex-direction:column;align-items:stretch;border-bottom:1px solid #ddd}nav.open{display:flex}.hero{min-height:540px}.two-column,.contact-grid,.feature{grid-template-columns:1fr;gap:32px}.cards{grid-template-columns:1fr 1fr}.service-grid{grid-template-columns:1fr 1fr}.feature div{padding:65px 21px}.feature img{max-height:400px}.section,.industries,.contact{padding:65px 0}}@media(max-width:480px){.cards,.service-grid{grid-template-columns:1fr}.brand span{display:none}footer .container{display:block}footer a{display:block;margin-top:8px}}











/* HMT CNC - Mobile responsive improvements */
@media screen and (max-width: 768px) {
  html,
  body {
    width: 100%;
    max-width: 100%;
    overflow-x: hidden;
  }

  *,
  *::before,
  *::after {
    box-sizing: border-box;
  }

  img {
    max-width: 100%;
  }

  header,
  .header,
  .site-header,
  nav.navbar {
    max-width: 100%;
  }

  .container,
  .hero,
  .hero-content,
  .hero-inner,
  .hero-text {
    max-width: 100%;
  }

  .hero {
    min-height: 0;
    padding: 64px 16px 48px;
    background-position: center center;
    background-size: cover;
  }

  .hero h1 {
    font-size: clamp(32px, 8vw, 46px);
    line-height: 1.12;
    overflow-wrap: break-word;
  }

  .hero p {
    font-size: 18px;
    line-height: 1.6;
  }

  .hero-actions,
  .hero-buttons {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 12px;
  }

  .hero a,
  .hero .btn,
  .hero-actions a,
  .hero-buttons a {
    max-width: 100%;
    white-space: normal;
    text-align: center;
  }

  .menu,
  .menu-button {
    max-width: 100%;
  }

  section {
    scroll-margin-top: 80px;
  }
}

@media screen and (max-width: 420px) {
  .hero {
    padding: 48px 14px 36px;
  }

  .hero h1 {
    font-size: 32px;
  }

  .hero p {
    font-size: 16px;
  }
}

