/* Tidewater newsletter sign-up (added 2026-10-30). See newsletter.js and build/build.py (CC_*). */
html.tsi-nl-lock{overflow:hidden}
.tsi-nl-vh{position:absolute;inline-size:1px;block-size:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* pop-up */
.tsi-nl-modal{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:15px;background:rgba(0,0,0,.7);overflow:auto}
.tsi-nl-modal[hidden]{display:none}
.tsi-nl-box{position:relative;inline-size:min(500px,100%);max-block-size:calc(100vh - 30px);overflow:auto;margin:auto;color:#fff;text-align:center;
  background-color:#115468;background-size:cover;background-position:center;box-shadow:0 8px 20px rgba(0,0,0,.5);padding:2.6rem 1.25rem 1.4rem}
.tsi-nl-box::before{content:"";position:absolute;inset:0;background:rgba(16,28,34,.28);pointer-events:none}
.tsi-nl-box > *{position:relative}
.tsi-nl-box.bg-shipyard{background-image:url('popup-shipyard.png')}
.tsi-nl-box.bg-industries{background-image:url('popup-industries.png')}
.tsi-nl-x{position:absolute;inset-block-start:.35rem;inset-inline-end:.45rem;inline-size:2.5rem;block-size:2.5rem;border:0;background:transparent;color:#fff;
  font:400 2rem/1 system-ui,sans-serif;cursor:pointer;z-index:2}
.tsi-nl-x:hover,.tsi-nl-x:focus-visible{color:#D6D7C8;outline:2px solid #fff;outline-offset:-4px}
.tsi-nl-title{font-family:'Space Grotesk',system-ui,sans-serif;text-transform:none;font-size:clamp(1.6rem,5vw,2.1rem);line-height:1.15;margin:0 0 .6rem;text-shadow:0 2px 6px rgba(0,0,0,.45)}
.tsi-nl-sub{font-size:clamp(1rem,3.4vw,1.25rem);line-height:1.35;max-inline-size:24rem;margin:0 auto 1rem;text-shadow:0 2px 6px rgba(0,0,0,.45)}
.tsi-nl-free{font-size:.8rem;margin-block-start:.8rem;text-shadow:0 1px 4px rgba(0,0,0,.5)}
.tsi-nl-done .tsi-nl-title,.tsi-nl-done .tsi-nl-sub,.tsi-nl-done .tsi-nl-free{display:none}

/* the Constant Contact form, inside either host */
.tsi-nl div.ctct-form-embed div.ctct-form-defaults{background:transparent!important;padding:0!important;border:0!important;box-shadow:none!important}
.tsi-nl div.ctct-form-embed form.ctct-form-custom{text-align:start}
.tsi-nl div.ctct-form-embed .ctct-form-header,.tsi-nl div.ctct-form-embed .ctct-form-text{color:#fff!important;text-align:center}
.tsi-nl div.ctct-form-embed .ctct-form-success{min-block-size:0!important}
.tsi-nl .ctct-form-lists,.tsi-nl .ctct-form-footer,
.tsi-nl [id^="custom_field_string_job_seeker_field"],.tsi-nl [id^="custom_field_string_industrial_company_field"]{display:none!important}
.tsi-nl div.ctct-form-embed form.ctct-form-custom .ctct-form-field > label.ctct-form-label{position:absolute!important;inline-size:1px!important;block-size:1px!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;white-space:nowrap!important;margin:0!important;padding:0!important}
.tsi-nl div.ctct-form-embed form.ctct-form-custom .ctct-form-field{margin:0 0 .6rem!important}
.tsi-nl div.ctct-form-embed form.ctct-form-custom input.ctct-form-element{block-size:46px;border-radius:0!important;font-size:1rem!important;margin:0!important;font-family:'Encode Sans',system-ui,sans-serif!important}
.tsi-nl .tsi-nl-line{display:flex;gap:.5rem;align-items:flex-start}
.tsi-nl .tsi-nl-line > .ctct-form-field{flex:1 1 auto;margin:0!important}
.tsi-nl div.ctct-form-embed form.ctct-form-custom .tsi-nl-line button.ctct-form-button{flex:0 0 auto;inline-size:auto!important;min-inline-size:9rem;block-size:46px;margin:0!important;border-radius:0!important;
  font-size:1.05rem!important;letter-spacing:.04em;padding:0 1.1rem!important}
.tsi-nl div.ctct-form-embed form.ctct-form-custom .ctct-form-errorMessage{color:#FFE066!important;font-weight:700;text-shadow:0 1px 4px rgba(0,0,0,.6);margin-block-end:.25rem}
.tsi-nl #gdpr_text,.tsi-nl [id^="gdpr_text"]{margin-block-start:.6rem}
.tsi-nl div.ctct-form-embed form.ctct-form-custom .ctct-gdpr-text{color:rgba(255,255,255,.85)!important;font-size:.68rem!important;line-height:1.35!important;text-align:start}
.tsi-nl div.ctct-form-embed form.ctct-form-custom .ctct-gdpr-text a{color:#fff!important}
.tsi-nl-choice{border:0;margin:0 0 .7rem;padding:0;display:flex;flex-wrap:wrap;gap:.3rem 1.1rem;align-items:center;justify-content:center;font-size:.95rem}
.tsi-nl-choice legend{inline-size:100%;text-align:center;margin-block-end:.3rem;font-size:.95rem}
.tsi-nl-choice label{display:inline-flex;gap:.4rem;align-items:center;cursor:pointer}
.tsi-nl-choice input{inline-size:1.1rem;block-size:1.1rem;accent-color:#5194a8;margin:0}
@media (max-width:520px){
  .tsi-nl .tsi-nl-line{flex-direction:column;align-items:stretch}
  .tsi-nl div.ctct-form-embed form.ctct-form-custom .tsi-nl-line button.ctct-form-button{inline-size:100%!important}
}

/* footer block */
.tsi-nl-foot{display:grid;grid-template-columns:minmax(14rem,1fr) minmax(18rem,1.4fr);gap:1rem 2.5rem;align-items:start;border-block-end:1px solid var(--line,#D6D7C8);padding-block-end:1.6rem;margin-block-end:1.6rem}
.tsi-nl-foot-h{font-family:'Space Grotesk',system-ui,sans-serif;text-transform:uppercase;font-size:1.1rem;line-height:1.2;margin:0 0 .4rem}
.tsi-nl-foot-copy p{font-size:.85rem;color:var(--on-dark-dim,#D6D7C8)}
.tsi-nl-foot .tsi-nl-choice{justify-content:flex-start;font-size:.85rem}
.tsi-nl-foot .tsi-nl-choice legend{text-align:start;font-size:.85rem}
@media (max-width:760px){.tsi-nl-foot{grid-template-columns:1fr}}
.tsi-nl div.ctct-form-embed form.ctct-form-custom .tsi-nl-choice,
.tsi-nl div.ctct-form-embed form.ctct-form-custom .tsi-nl-choice legend,
.tsi-nl div.ctct-form-embed form.ctct-form-custom .tsi-nl-choice label{color:#fff!important;font-family:'Encode Sans',system-ui,sans-serif!important;text-shadow:0 1px 4px rgba(0,0,0,.55)}
.tsi-nl-foot div.ctct-form-embed form.ctct-form-custom .tsi-nl-choice,
.tsi-nl-foot div.ctct-form-embed form.ctct-form-custom .tsi-nl-choice legend,
.tsi-nl-foot div.ctct-form-embed form.ctct-form-custom .tsi-nl-choice label{color:var(--on-dark,#F4F6F3)!important;text-shadow:none}

/* Subscribe button. Constant Contact injects #5194a8 (3.41:1 on white) and a lighter
   hover. --panel #3B6A91 is the nearest brand color at 5.74:1. Hover and active use
   --band-dark #115468 (8.43:1). !important beats the widget's form-specific rules. */
.tsi-nl .ctct-form-button,
.tsi-nl .ctct-form-button:hover,
.tsi-nl .ctct-form-button:focus,
.tsi-nl .ctct-form-button:focus-visible,
.tsi-nl .ctct-form-button:active,
.tsi-nl .ctct-form-button:disabled,
.tsi-nl .ctct-form-button[disabled]{
  background-color:#3B6A91!important;
  background-image:none!important;
  color:#fff!important;
  border-color:#3B6A91!important;
  opacity:1!important;
}
.tsi-nl .ctct-form-button:hover,
.tsi-nl .ctct-form-button:focus,
.tsi-nl .ctct-form-button:focus-visible,
.tsi-nl .ctct-form-button:active{
  background-color:#115468!important;
  border-color:#115468!important;
}
