/* Premo — site styles. Page layout lives in inline styles exported from the design canvas. */
@font-face{font-family:'Code Pro';src:url(../fonts/code-pro-bold.woff2) format('woff2');font-weight:700;font-display:swap}
body{margin:0;background:#001456}
a{color:#FFFFFF}a:hover{color:#C9D5FF}
.pm-hero{background-color:#001456;background-image:linear-gradient(90deg, rgba(0,20,86,0.96) 0%, rgba(0,20,86,0.85) 40%, rgba(0,20,86,0.2) 75%, rgba(0,20,86,0.05) 100%), linear-gradient(0deg, rgba(0,20,86,1) 0%, rgba(0,20,86,0) 22%), linear-gradient(rgba(0,20,86,0.2), rgba(0,20,86,0.2)), url(../img/hero-curved-aluminium.jpg);background-blend-mode:normal, normal, normal, luminosity;background-size:cover;background-position:center 45%}
.pm-photo{background-color:#001456;background-image:linear-gradient(0deg, rgba(0,20,86,0.2), rgba(0,20,86,0.2)), url(../img/press-brake-operator.jpg);background-blend-mode:normal, luminosity;background-size:cover;background-position:28% center}
.pm-band{background-color:#001456;background-image:linear-gradient(90deg, rgba(0,20,86,0.96) 0%, rgba(0,20,86,0.8) 50%, rgba(0,20,86,0.3) 100%), linear-gradient(rgba(0,20,86,0.2), rgba(0,20,86,0.2)), url(../img/factory-floor.jpg);background-blend-mode:normal, normal, luminosity;background-size:cover;background-position:center 55%}
.pm-hold{background-color:#001456;background-image:linear-gradient(90deg, rgba(0,20,86,0.95) 0%, rgba(0,20,86,0.75) 45%, rgba(0,20,86,0.15) 80%), linear-gradient(0deg, rgba(0,20,86,1) 0%, rgba(0,20,86,0) 30%), linear-gradient(rgba(0,20,86,0.2), rgba(0,20,86,0.2)), url(../img/cnc-machining-centre.jpg);background-blend-mode:normal, normal, normal, luminosity;background-size:cover;background-position:center}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
img,iframe{max-width:100%}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #8FA8FF;outline-offset:2px}
.pm-form input,.pm-form select,.pm-form textarea{width:100%;box-sizing:border-box}
.pm-form button[type=submit]:hover{background:#0B2266 !important}
.pm-form .pm-invalid{border-color:#B3261E !important}
.pm-form.is-sending button[type=submit]{opacity:.7;cursor:progress}
.pm-hp{position:absolute !important;left:-10000px !important;width:1px;height:1px;overflow:hidden}

/* About: product tabs */
.pm-tab{min-height:56px;padding:0 28px;background:transparent;border:0;margin-bottom:-1px;color:#B8C2E0;font-family:inherit;font-size:17px;font-weight:500;cursor:pointer;border-bottom:3px solid transparent}
.pm-tab[aria-selected="true"]{color:#FFFFFF;font-weight:600;border-bottom-color:#8FA8FF}
.pm-tab:hover{color:#FFFFFF}
.pm-panel{display:flex;flex-wrap:wrap;gap:40px 72px;padding-top:48px}
.pm-panel[hidden]{display:none}

/* Projects: filter + cards */
.pm-filter{min-height:44px;padding:0 20px;border:1px solid #8790AE;background:#FFFFFF;color:#001456;font:inherit;font-size:15px;font-weight:500;cursor:pointer}
.pm-filter[aria-pressed="true"]{border-color:#001456;background:#001456;color:#FFFFFF;font-weight:600}
.pm-card{padding:0;text-align:left;background:#FFFFFF;color:#001456;font:inherit;cursor:pointer;display:flex;flex-direction:column;border:2px solid transparent}
.pm-card:hover{border-color:#8790AE}
.pm-card[aria-pressed="true"]{border-color:#001456}
.pm-card[hidden],#pm-detail[hidden]{display:none !important}

/* Phone widths */
@media (max-width:640px){
  section > div[style*="max-width: 1280px"],header > div,footer > div,body > div > div > div[style*="max-width: 1280px"]{padding-left:16px !important;padding-right:16px !important}
  section > div[style*="padding: 112px"]{padding-top:72px !important;padding-bottom:72px !important}
  [style*="grid-template-columns: repeat(2, minmax(0, 1fr))"]{grid-template-columns:1fr !important}
  [style*="grid-template-columns: repeat(auto-fit, minmax(340px"]{grid-template-columns:1fr !important}
  [style*="flex: 1 1 520px"],[style*="flex: 1 1 480px"],[style*="flex: 1 1 460px"],[style*="flex: 1 1 420px"],[style*="flex: 1 1 400px"],[style*="flex: 1 1 380px"]{flex-basis:100% !important;min-width:0}
  .pm-form{padding:24px !important}
  .pm-form > *{grid-column:1 / -1 !important}
  #capability [style*="padding: 96px 56px"]{padding:56px 16px !important}
  .pm-photo{min-height:360px !important}
  .pm-tab{padding:0 16px;font-size:16px}
  [style*="min-height: 780px"]{min-height:560px !important}
  h1{font-size:min(2.6rem, 9vw) !important}
  h1,h2{overflow-wrap:break-word}
}
