/* A+ Mechanical - shared styles.
   The pages are a measured copy of the original Wix site: every block is absolutely placed
   (desktop measured at 1280px and 1920px wide, phones get the original's 320px mobile layout).
   Per-page placement lives in each page's <style>; header and footer placement in chrome.css. */

/* The site's own fonts, as uploaded to the original (Copperplate Gothic Bold, Roboto). */
@font-face { font-family: wfont_dab78a_3ae1736bba244ceca738e5c14f863a97; src: url(fonts/copperplate-bold.woff2) format("woff2"); font-display: swap; }
@font-face { font-family: wfont_088b96_fb8842a99ebd48c1b60d3ab189811e0f; src: url(fonts/roboto-regular.woff2) format("woff2"); font-display: swap; }

/* Wix theme: fonts and colours (font_N / color_N classes used by the text boxes) */
:root{--font_0:normal normal normal 60px/1.1em wfont_dab78a_3ae1736bba244ceca738e5c14f863a97,wf_3ae1736bba244ceca738e5c14,orig_copperplate_bold;--font_1:normal normal normal 16px/1.4em din-next-w01-light,sans-serif;--font_2:normal normal normal 40px/1.2em wfont_dab78a_3ae1736bba244ceca738e5c14f863a97,wf_3ae1736bba244ceca738e5c14,orig_copperplate_bold;--font_3:normal normal normal 30px/1.2em wfont_dab78a_3ae1736bba244ceca738e5c14f863a97,wf_3ae1736bba244ceca738e5c14,orig_copperplate_bold;--font_4:normal normal normal 25px/1.3em wfont_dab78a_3ae1736bba244ceca738e5c14f863a97,wf_3ae1736bba244ceca738e5c14,orig_copperplate_bold;--font_5:normal normal normal 20px/1.4em wfont_dab78a_3ae1736bba244ceca738e5c14f863a97,wf_3ae1736bba244ceca738e5c14,orig_copperplate_bold;--font_6:normal normal normal 16px/1.4em wfont_dab78a_3ae1736bba244ceca738e5c14f863a97,wf_3ae1736bba244ceca738e5c14,orig_copperplate_bold;--font_7:normal normal normal 20px/1.4em wfont_088b96_fb8842a99ebd48c1b60d3ab189811e0f,wf_fb8842a99ebd48c1b60d3ab18,orig_roboto_regular;--font_8:normal normal normal 16px/1.6em wfont_088b96_fb8842a99ebd48c1b60d3ab189811e0f,wf_fb8842a99ebd48c1b60d3ab18,orig_roboto_regular;--font_9:normal normal normal 14px/1.4em wfont_088b96_fb8842a99ebd48c1b60d3ab189811e0f,wf_fb8842a99ebd48c1b60d3ab18,orig_roboto_regular;--font_10:normal normal normal 12px/1.4em din-next-w01-light,sans-serif;
--color_0:255,255,255;--color_1:255,255,255;--color_2:0,0,0;--color_3:237,28,36;--color_4:0,136,203;--color_5:255,203,5;--color_6:114,114,114;--color_7:176,176,176;--color_8:255,255,255;--color_9:114,114,114;--color_10:176,176,176;--color_11:255,255,255;--color_12:232,230,230;--color_13:199,199,199;--color_14:89,89,89;--color_15:0,0,0;--color_16:229,240,254;--color_17:200,224,254;--color_18:4,56,112;--color_19:0,58,150;--color_20:0,29,75;--color_21:249,197,180;--color_22:243,167,143;--color_23:237,88,41;--color_24:158,59,27;--color_25:79,29,14;--color_26:210,172,247;--color_27:186,131,240;--color_28:128,21,232;--color_29:85,14,155;--color_30:43,7,77;--color_31:177,211,187;--color_32:127,168,139;--color_33:64,124,81;--color_34:43,83,54;--color_35:21,41,27;--color_36:255,255,255;--color_37:0,0,0;--color_38:232,230,230;--color_39:199,199,199;--color_40:89,89,89;--color_41:4,56,112;--color_42:200,14,35;--color_43:25,24,34;--color_44:255,255,255;--color_45:0,0,0;--color_46:0,0,0;--color_47:0,0,0;--color_48:4,56,112;--color_49:4,56,112;--color_50:255,255,255;--color_51:255,255,255;--color_52:4,56,112;--color_53:4,56,112;--color_54:199,199,199;--color_55:199,199,199;--color_56:255,255,255;--color_57:255,255,255;--color_58:4,56,112;--color_59:4,56,112;--color_60:4,56,112;--color_61:4,56,112;--color_62:255,255,255;--color_63:255,255,255;--color_64:199,199,199;--color_65:199,199,199;}
.backcolor_0{background-color:rgb(var(--color_0));}
.backcolor_1{background-color:rgb(var(--color_1));}
.backcolor_2{background-color:rgb(var(--color_2));}
.backcolor_3{background-color:rgb(var(--color_3));}
.backcolor_4{background-color:rgb(var(--color_4));}
.backcolor_5{background-color:rgb(var(--color_5));}
.backcolor_6{background-color:rgb(var(--color_6));}
.backcolor_7{background-color:rgb(var(--color_7));}
.backcolor_8{background-color:rgb(var(--color_8));}
.backcolor_9{background-color:rgb(var(--color_9));}
.backcolor_10{background-color:rgb(var(--color_10));}
.backcolor_11{background-color:rgb(var(--color_11));}
.backcolor_12{background-color:rgb(var(--color_12));}
.backcolor_13{background-color:rgb(var(--color_13));}
.backcolor_14{background-color:rgb(var(--color_14));}
.backcolor_15{background-color:rgb(var(--color_15));}
.backcolor_16{background-color:rgb(var(--color_16));}
.backcolor_17{background-color:rgb(var(--color_17));}
.backcolor_18{background-color:rgb(var(--color_18));}
.backcolor_19{background-color:rgb(var(--color_19));}
.backcolor_20{background-color:rgb(var(--color_20));}
.backcolor_21{background-color:rgb(var(--color_21));}
.backcolor_22{background-color:rgb(var(--color_22));}
.backcolor_23{background-color:rgb(var(--color_23));}
.backcolor_24{background-color:rgb(var(--color_24));}
.backcolor_25{background-color:rgb(var(--color_25));}
.backcolor_26{background-color:rgb(var(--color_26));}
.backcolor_27{background-color:rgb(var(--color_27));}
.backcolor_28{background-color:rgb(var(--color_28));}
.backcolor_29{background-color:rgb(var(--color_29));}
.backcolor_30{background-color:rgb(var(--color_30));}
.backcolor_31{background-color:rgb(var(--color_31));}
.backcolor_32{background-color:rgb(var(--color_32));}
.backcolor_33{background-color:rgb(var(--color_33));}
.backcolor_34{background-color:rgb(var(--color_34));}
.backcolor_35{background-color:rgb(var(--color_35));}
.backcolor_36{background-color:rgb(var(--color_36));}
.backcolor_37{background-color:rgb(var(--color_37));}
.backcolor_38{background-color:rgb(var(--color_38));}
.backcolor_39{background-color:rgb(var(--color_39));}
.backcolor_40{background-color:rgb(var(--color_40));}
.backcolor_41{background-color:rgb(var(--color_41));}
.backcolor_42{background-color:rgb(var(--color_42));}
.backcolor_43{background-color:rgb(var(--color_43));}
.backcolor_44{background-color:rgb(var(--color_44));}
.backcolor_45{background-color:rgb(var(--color_45));}
.backcolor_46{background-color:rgb(var(--color_46));}
.backcolor_47{background-color:rgb(var(--color_47));}
.backcolor_48{background-color:rgb(var(--color_48));}
.backcolor_49{background-color:rgb(var(--color_49));}
.backcolor_50{background-color:rgb(var(--color_50));}
.backcolor_51{background-color:rgb(var(--color_51));}
.backcolor_52{background-color:rgb(var(--color_52));}
.backcolor_53{background-color:rgb(var(--color_53));}
.backcolor_54{background-color:rgb(var(--color_54));}
.backcolor_55{background-color:rgb(var(--color_55));}
.backcolor_56{background-color:rgb(var(--color_56));}
.backcolor_57{background-color:rgb(var(--color_57));}
.backcolor_58{background-color:rgb(var(--color_58));}
.backcolor_59{background-color:rgb(var(--color_59));}
.backcolor_60{background-color:rgb(var(--color_60));}
.backcolor_61{background-color:rgb(var(--color_61));}
.backcolor_62{background-color:rgb(var(--color_62));}
.backcolor_63{background-color:rgb(var(--color_63));}
.backcolor_64{background-color:rgb(var(--color_64));}
.backcolor_65{background-color:rgb(var(--color_65));}
.color_0{color:rgb(var(--color_0));}
.color_1{color:rgb(var(--color_1));}
.color_2{color:rgb(var(--color_2));}
.color_3{color:rgb(var(--color_3));}
.color_4{color:rgb(var(--color_4));}
.color_5{color:rgb(var(--color_5));}
.color_6{color:rgb(var(--color_6));}
.color_7{color:rgb(var(--color_7));}
.color_8{color:rgb(var(--color_8));}
.color_9{color:rgb(var(--color_9));}
.color_10{color:rgb(var(--color_10));}
.color_11{color:rgb(var(--color_11));}
.color_12{color:rgb(var(--color_12));}
.color_13{color:rgb(var(--color_13));}
.color_14{color:rgb(var(--color_14));}
.color_15{color:rgb(var(--color_15));}
.color_16{color:rgb(var(--color_16));}
.color_17{color:rgb(var(--color_17));}
.color_18{color:rgb(var(--color_18));}
.color_19{color:rgb(var(--color_19));}
.color_20{color:rgb(var(--color_20));}
.color_21{color:rgb(var(--color_21));}
.color_22{color:rgb(var(--color_22));}
.color_23{color:rgb(var(--color_23));}
.color_24{color:rgb(var(--color_24));}
.color_25{color:rgb(var(--color_25));}
.color_26{color:rgb(var(--color_26));}
.color_27{color:rgb(var(--color_27));}
.color_28{color:rgb(var(--color_28));}
.color_29{color:rgb(var(--color_29));}
.color_30{color:rgb(var(--color_30));}
.color_31{color:rgb(var(--color_31));}
.color_32{color:rgb(var(--color_32));}
.color_33{color:rgb(var(--color_33));}
.color_34{color:rgb(var(--color_34));}
.color_35{color:rgb(var(--color_35));}
.color_36{color:rgb(var(--color_36));}
.color_37{color:rgb(var(--color_37));}
.color_38{color:rgb(var(--color_38));}
.color_39{color:rgb(var(--color_39));}
.color_40{color:rgb(var(--color_40));}
.color_41{color:rgb(var(--color_41));}
.color_42{color:rgb(var(--color_42));}
.color_43{color:rgb(var(--color_43));}
.color_44{color:rgb(var(--color_44));}
.color_45{color:rgb(var(--color_45));}
.color_46{color:rgb(var(--color_46));}
.color_47{color:rgb(var(--color_47));}
.color_48{color:rgb(var(--color_48));}
.color_49{color:rgb(var(--color_49));}
.color_50{color:rgb(var(--color_50));}
.color_51{color:rgb(var(--color_51));}
.color_52{color:rgb(var(--color_52));}
.color_53{color:rgb(var(--color_53));}
.color_54{color:rgb(var(--color_54));}
.color_55{color:rgb(var(--color_55));}
.color_56{color:rgb(var(--color_56));}
.color_57{color:rgb(var(--color_57));}
.color_58{color:rgb(var(--color_58));}
.color_59{color:rgb(var(--color_59));}
.color_60{color:rgb(var(--color_60));}
.color_61{color:rgb(var(--color_61));}
.color_62{color:rgb(var(--color_62));}
.color_63{color:rgb(var(--color_63));}
.color_64{color:rgb(var(--color_64));}
.color_65{color:rgb(var(--color_65));}
.font_0{font:var(--font_0);color:rgb(var(--color_45));letter-spacing:0em;}
.font_1{font:var(--font_1);color:rgb(var(--color_14));letter-spacing:0em;}
.font_2{font:var(--font_2);color:rgb(var(--color_45));letter-spacing:0em;}
.font_3{font:var(--font_3);color:rgb(var(--color_45));letter-spacing:0em;}
.font_4{font:var(--font_4);color:rgb(var(--color_46));letter-spacing:0em;}
.font_5{font:var(--font_5);color:rgb(var(--color_46));letter-spacing:0em;}
.font_6{font:var(--font_6);color:rgb(var(--color_46));letter-spacing:0em;}
.font_7{font:var(--font_7);color:rgb(var(--color_15));letter-spacing:0em;}
.font_8{font:var(--font_8);color:rgb(var(--color_15));letter-spacing:0em;}
.font_9{font:var(--font_9);color:rgb(var(--color_14));letter-spacing:0em;}
.font_10{font:var(--font_10);color:rgb(var(--color_14));letter-spacing:0em;}

:root {
  --ff-head: wfont_dab78a_3ae1736bba244ceca738e5c14f863a97, "Copperplate Gothic Bold", Copperplate, serif;
  --ff-body: wfont_088b96_fb8842a99ebd48c1b60d3ab189811e0f, Roboto, Arial, sans-serif;
  --red: rgb(200, 14, 35);
  --navy: rgb(4, 56, 112);
}

/* ---------------------------------------------------------------- page frame */
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body { margin: 0; min-width: 980px; background: #fff; color: #000; font: 16px/1.4 var(--ff-body); overflow-x: hidden; }
img, svg { display: block; }
a { color: inherit; text-decoration: none; }
.sec { position: relative; width: 100%; }
#SITE_HEADER { z-index: 20; }
#SITE_FOOTER { z-index: 1; }
main { display: block; }
.c { position: absolute; margin: 0; }
.m-only { display: none !important; }
.skip-link { position: absolute; left: 8px; top: -60px; z-index: 100; padding: 10px 16px; background: #fff; color: #000; font: 14px var(--ff-body); }
.skip-link:focus { top: 8px; }

/* section backgrounds */
.bg-fill, .bg-img { position: absolute; inset: 0; width: 100%; height: 100%; }
.bg-img { object-fit: cover; }
.pinned { clip-path: inset(0); }
.bg-pin { position: absolute; inset: 0; }
.bg-pin .bg-img { position: fixed; top: 0; left: 0; width: 100%; height: 100vh; height: 100lvh; object-fit: cover; }
.box { overflow: visible; }
.box img.fill { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }

/* rich text (the original's Wix text boxes) */
.rt { word-wrap: break-word; overflow-wrap: break-word; text-align: start; }
.rt :where(p, h1, h2, h3, h4, h5, h6, blockquote, div) { margin: 0; }
.rt :where(h1, h2, h3, h4, h5, h6) { font-weight: inherit; font-size: inherit; }
.rt a { color: inherit; text-decoration: none; }
.rt :where(ul, ol) { letter-spacing: normal; margin-inline: .5em 0; line-height: normal; padding-inline: 1.3em 0; }
.rt li { font-style: inherit; font-weight: inherit; line-height: inherit; letter-spacing: normal; }

/* images, icons, buttons */
.img img { width: 100%; height: 100%; object-fit: cover; }
.img a { display: block; width: 100%; height: 100%; }
.vec svg { width: 100%; height: 100%; }
.btn { display: flex; align-items: center; white-space: nowrap; text-decoration: none; cursor: pointer; transition: all .2s ease; }
.btn svg { position: absolute; transition: fill .2s ease; }
.btn span { transition: color .2s ease; }
.social img { width: 100%; height: 100%; }
.embed { border: 0; display: block; background: transparent; }

/* ---------------------------------------------------------------- header menu */
#site-nav { position: absolute; inset: 0; pointer-events: none; }
#nav { list-style: none; margin: 0; padding: 0; }
#nav > li { position: absolute; pointer-events: auto; }
#nav a { display: flex; align-items: center; justify-content: center; width: 100%; height: 100%; padding: 0 10px;
  font: 16px/1 var(--ff-head); letter-spacing: .05em; text-transform: uppercase; white-space: nowrap; color: #fff; text-decoration: none;
  transition: all 80ms linear; }
#nav a:hover, #nav a[aria-current="page"] { color: var(--red); }
.nav-toggle { display: none; }

/* ---------------------------------------------------------------- contact form (Wix Forms look) */
.wixform .ff label { position: absolute; white-space: nowrap; font: 16px/1.4 var(--ff-head); color: #000; }
.wixform .fbox { position: absolute; display: flex; align-items: center; background: rgba(4, 56, 112, .1); border: 1px solid var(--navy); border-radius: 5px; }
.wixform input, .wixform textarea { width: 100%; height: 100%; margin: 0; border: 0; background: transparent; color: #000;
  font: 16px/1.4 var(--ff-body); padding: 8px 12px; border-radius: 5px; outline-offset: -2px; }
.wixform textarea { resize: none; padding-top: 8px; }
.wixform input:focus, .wixform textarea:focus { outline: 2px solid var(--navy); }
.wixform .cc { position: absolute; left: 12px; top: 50%; transform: translateY(-50%); display: flex; align-items: center; gap: 2px; color: #000; pointer-events: none; }
.wixform .cc .globe { width: 18px; height: 18px; }
.wixform .cc .chev { width: 14px; height: 14px; fill: #000; }
.wixform .form-submit { position: absolute; margin: 0; border: 0; border-radius: 5px; background: var(--red); color: #fff; cursor: pointer;
  font: 16px/1 var(--ff-head); transition: background-color .2s ease; }
.wixform .form-submit:hover { background: var(--navy); }
.hp-field { position: absolute; left: -9999px; top: 0; width: 1px; height: 1px; overflow: hidden; }

/* ---------------------------------------------------------------- the original's mobile site (320px wide) */
@media (max-width: 750px) {
  body { min-width: 0; }
  .d-only { display: none !important; }
  .m-only { display: block !important; }
  .nav-toggle { display: block; left: 274px; top: 22px; width: 26px; height: 26px; padding: 0; border: 0; background: none; cursor: pointer; z-index: 60; }
  .nav-toggle span { position: absolute; height: 3px; border-radius: 1.5px; background: #fff; transition: all .2s ease; }
  .nav-toggle span:nth-child(1) { left: 0; top: 3px; width: 13px; }
  .nav-toggle span:nth-child(2) { left: 0; top: 12px; width: 26px; }
  .nav-toggle span:nth-child(3) { left: 13px; top: 21px; width: 13px; }
  .nav-open .nav-toggle { position: fixed; }
  .nav-open .nav-toggle span { background: var(--red); }
  .nav-open .nav-toggle span { left: -1.85px; top: 11.5px; width: 29.7px; }
  .nav-open .nav-toggle span:nth-child(1) { transform: rotate(45deg); }
  .nav-open .nav-toggle span:nth-child(2) { transform: rotate(-45deg); }
  .nav-open .nav-toggle span:nth-child(3) { opacity: 0; }
  #site-nav { display: none; position: fixed; inset: 0; z-index: 50; background: var(--navy); overflow-y: auto; pointer-events: auto; }
  .nav-open #site-nav { display: block; }
  .nav-open { overflow: hidden; }
  #site-nav #nav > li { position: relative; left: auto; top: auto; width: 240px; height: 66px; }
  #site-nav #nav a { justify-content: flex-start; padding: 0 0 0 20px; font-size: 20px; line-height: 66px; letter-spacing: normal; }
  main, #SITE_FOOTER { overflow-x: clip; }   /* the original clips the form boxes that run past the 320px page */
  .back-to-top { display: block; position: fixed; right: 20px; bottom: 20px; width: 44px; height: 44px; z-index: 30;
    opacity: 0; visibility: hidden; transition: visibility 0s .5s, opacity .5s; }
  .back-to-top.show { opacity: 1; visibility: visible; transition: visibility 0s, opacity .5s; }
  .back-to-top svg { width: 100%; height: 100%; }
}
@media (min-width: 751px) { .back-to-top { display: none; } }
