/* Static inner pages: contact, about, policy */
body.contact-page,
body.about-page,
body.policy-page {
  background: #454545;
}

.visually-hidden {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

body.contact-page .contact-intro {
  color: #7EB7CE !important;
}

body.contact-page .contact-email-icon {
  width: 24px !important;
  height: 18px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: linear-gradient(#fff, #fff) center 13px / 20px 2px no-repeat !important;
  box-sizing: border-box !important;
  position: relative !important;
}

body.contact-page .contact-email-icon::before,
body.contact-page .contact-email-icon::after {
  content: '' !important;
  position: absolute !important;
  top: 5px !important;
  width: 13px !important;
  height: 2px !important;
  background: #fff !important;
  border: 0 !important;
  border-radius: 999px !important;
}

body.contact-page .contact-email-icon::before {
  left: 2px !important;
  transform: rotate(32deg) !important;
  transform-origin: left center !important;
}

body.contact-page .contact-email-icon::after {
  right: 2px !important;
  transform: rotate(-32deg) !important;
  transform-origin: right center !important;
}

body.contact-page .contact-page-section {
  padding-left: max(56px, calc((100vw - 1100px) / 2)) !important;
  padding-right: max(56px, calc((100vw - 1100px) / 2)) !important;
}

body.contact-page .contact-wrap {
  width: min(1240px, 100%) !important;
  max-width: 1240px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  grid-template-columns: minmax(320px, 430px) minmax(560px, 650px) !important;
  justify-content: space-between !important;
  gap: clamp(70px, 7vw, 130px) !important;
}

body.contact-page .contact-info-panel {
  justify-self: start !important;
  max-width: 410px !important;
}

body.contact-page .contact-form-card {
  justify-self: end !important;
  width: 650px !important;
  max-width: 650px !important;
}

body.contact-page .contact-form-card small {
  max-width: none !important;
  white-space: nowrap !important;
}

@media (max-width: 900px) {
  body.contact-page .contact-page-section {
    padding-left: 28px !important;
    padding-right: 28px !important;
  }

  body.contact-page .contact-wrap {
    width: min(620px, 100%) !important;
    grid-template-columns: 1fr !important;
    justify-content: stretch !important;
    gap: 34px !important;
  }

  body.contact-page .contact-info-panel,
  body.contact-page .contact-form-card {
    justify-self: stretch !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  body.contact-page .contact-form-card small {
    white-space: normal !important;
  }
}

body.contact-page .contact-page-section {
  padding-left: max(56px, calc((100vw - 1100px) / 2)) !important;
  padding-right: max(56px, calc((100vw - 1100px) / 2)) !important;
}

body.contact-page .contact-wrap {
  width: min(1100px, 100%) !important;
  max-width: 1100px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  grid-template-columns: minmax(320px, 410px) minmax(480px, 520px) !important;
  justify-content: space-between !important;
  gap: clamp(60px, 7vw, 120px) !important;
}

body.contact-page .contact-info-panel {
  justify-self: start !important;
  max-width: 410px !important;
}

body.contact-page .contact-form-card {
  justify-self: end !important;
  width: 520px !important;
  max-width: 520px !important;
}

@media (max-width: 900px) {
  body.contact-page .contact-page-section {
    padding-left: 28px !important;
    padding-right: 28px !important;
  }

  body.contact-page .contact-wrap {
    width: min(620px, 100%) !important;
    grid-template-columns: 1fr !important;
    justify-content: stretch !important;
    gap: 34px !important;
  }

  body.contact-page .contact-info-panel,
  body.contact-page .contact-form-card {
    justify-self: stretch !important;
    width: 100% !important;
    max-width: 100% !important;
  }
}

body.contact-page .contact-email-spacer {
  width: 24px !important;
  height: 18px !important;
  border: 0 !important;
  background: transparent !important;
}

body.contact-page .contact-email-spacer::before,
body.contact-page .contact-email-spacer::after {
  content: none !important;
}

body.contact-page .contact-page-section {
  padding-left: max(56px, calc((100vw - 1100px) / 2)) !important;
  padding-right: max(56px, calc((100vw - 1100px) / 2)) !important;
}

body.contact-page .contact-wrap {
  width: min(1100px, 100%) !important;
  max-width: 1100px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  grid-template-columns: minmax(320px, 410px) minmax(480px, 520px) !important;
  justify-content: space-between !important;
  gap: clamp(60px, 7vw, 120px) !important;
}

body.contact-page .contact-info-panel {
  justify-self: start !important;
  max-width: 410px !important;
}

body.contact-page .contact-form-card {
  justify-self: end !important;
  width: 520px !important;
  max-width: 520px !important;
}

@media (max-width: 900px) {
  body.contact-page .contact-page-section {
    padding-left: 28px !important;
    padding-right: 28px !important;
  }

  body.contact-page .contact-wrap {
    width: min(620px, 100%) !important;
    grid-template-columns: 1fr !important;
    justify-content: stretch !important;
    gap: 34px !important;
  }

  body.contact-page .contact-info-panel,
  body.contact-page .contact-form-card {
    justify-self: stretch !important;
    width: 100% !important;
    max-width: 100% !important;
  }
}

.contact-page-section {
  min-height: 655px;
  padding: 96px max(70px, calc((100vw - var(--content-width)) / 2 + 112px)) 82px;
  color: #fff;
  background: #003E57;
}

.contact-wrap {
  max-width: 1060px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: minmax(300px, 430px) minmax(420px, 558px);
  gap: 88px;
  align-items: center;
}

.contact-info-panel h1 {
  margin: 0 0 22px;
  color: #fff;
  font-size: 37px;
  line-height: 1;
  font-weight: 600;
  letter-spacing: .3px;
}

.contact-intro {
  max-width: 382px;
  margin: 0 0 72px;
  color: rgba(255,255,255,.58);
  font-size: 15px;
  line-height: 1.35;
  letter-spacing: .25px;
}

.contact-lines {
  display: grid;
  gap: 27px;
}

.contact-lines p {
  margin: 0;
  display: grid;
  grid-template-columns: 32px auto;
  align-items: center;
  color: rgba(255,255,255,.78);
  font-size: 13px;
  line-height: 1.15;
  letter-spacing: .25px;
}

.contact-lines strong {
  color: #fff;
  font-weight: 600;
}

.contact-lines a {
  color: #fff;
  font-weight: 600;
}

.contact-icon {
  width: 22px;
  height: 22px;
  display: inline-grid;
  place-items: center;
  color: #fff;
  font-size: 24px;
  line-height: 1;
  transform: rotate(-35deg);
}

.contact-icon.email {
  border: 2px solid #fff;
  font-size: 0;
  transform: none;
}

.contact-icon.email::before {
  content: '';
  width: 12px;
  height: 8px;
  border-left: 2px solid #fff;
  border-bottom: 2px solid #fff;
  transform: translateY(-2px) rotate(-45deg);
}

.contact-form-card {
  padding: 36px 49px 40px;
  color: #000;
  background: #fff;
  border-radius: 8px;
  box-shadow: 0 18px 42px rgba(0,0,0,.16);
}

.contact-form-card h2 {
  margin: 0 0 19px;
  color: #000;
  font-size: 36px;
  line-height: 1.08;
  font-weight: 400;
  letter-spacing: .1px;
}

.contact-form-card > p {
  margin: 0 0 22px;
  color: #333;
  font-size: 14px;
  letter-spacing: .2px;
}

.contact-form-card form {
  display: grid;
  gap: 9px;
}

.contact-form-row,
.contact-phone-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
}

.contact-phone-row {
  grid-template-columns: 58px 1fr;
}

.contact-form-card input,
.contact-form-card textarea {
  width: 100%;
  border: 1.5px solid #0C6682;
  border-radius: 4px;
  color: #333;
  background: #fff;
  font-family: var(--body);
  font-size: 13px;
  line-height: 1;
  letter-spacing: .15px;
}

.contact-form-card input {
  height: 32px;
  padding: 0 14px;
}

.contact-form-card input::placeholder,
.contact-form-card textarea::placeholder {
  color: #a0a8ac;
}

.message-wrap {
  position: relative;
  display: block;
}

.contact-form-card textarea {
  height: 150px;
  padding: 13px 14px 28px;
  resize: none;
  line-height: 1.35;
}

.message-wrap span {
  position: absolute;
  right: 15px;
  bottom: 10px;
  color: #a0a8ac;
  font-size: 12px;
  letter-spacing: 0;
}

.contact-form-card button {
  width: 198px;
  height: 36px;
  margin-top: 17px;
  border: 0;
  border-radius: 3px;
  color: #fff;
  background: #7EB7CE;
  font-size: 11px;
  line-height: 1;
  font-weight: 600;
  text-transform: uppercase;
  cursor: pointer;
}

.contact-form-card small {
  display: block;
  margin-top: 23px;
  color: #111;
  font-size: 10px;
  line-height: 1.35;
  letter-spacing: .05px;
}

.contact-form-card small a {
  font-weight: 600;
}

.page-hero {
  position: relative;
  min-height: 209px;
  display: flex;
  align-items: center;
  overflow: hidden;
  color: #fff;
  background: #0B4C5E;
}

.page-hero::before {
  content: '';
  position: absolute;
  inset: 0 auto 0 0;
  width: 47%;
  z-index: 2;
  background: linear-gradient(90deg, #073848 0%, rgba(7,56,72,.94) 48%, rgba(7,56,72,0) 100%);
}

.page-hero-copy {
  position: relative;
  z-index: 3;
  width: min(480px, 50%);
  margin-left: max(70px, calc((100vw - var(--content-width)) / 2 + 65px));
}

.page-hero h1 {
  margin: 0 0 10px;
  color: #fff;
  font-size: 46px;
  line-height: .98;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 1px;
}

.page-hero p {
  margin: 0;
  color: rgba(255,255,255,.88);
  font-size: 14px;
  line-height: 1.14;
  letter-spacing: .45px;
}

.about-hero {
  background:
    linear-gradient(90deg, rgba(7,56,72,.92) 0%, rgba(7,56,72,.68) 28%, rgba(7,56,72,0) 48%),
    url('../figma/2698513e52e4dc3fc995f66caf7cbadbbfd92c07.jpg') center 42% / cover no-repeat;
}

.policy-hero {
  background:
    linear-gradient(90deg, rgba(7,56,72,.96) 0%, rgba(7,56,72,.78) 28%, rgba(7,56,72,0) 47%),
    url('../figma/17599b776e156c7cfb7d4aead01afe7f748ea7b5.png') right center / 64% auto no-repeat,
    #0B4C5E;
}

.about-content-section {
  padding: 68px max(70px, calc((100vw - var(--content-width)) / 2 + 72px)) 78px;
  background: #fff;
}

.about-row {
  max-width: 1090px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 72px;
  align-items: center;
}

.about-row + .about-row {
  margin-top: 58px;
}

.about-image {
  margin: 0;
  overflow: hidden;
  border-radius: 44px;
}

.about-image img {
  width: 100%;
  height: 300px;
  object-fit: cover;
}

.about-work-image {
  width: 285px;
  justify-self: center;
  border-radius: 44px;
}

.about-work-image img {
  height: 300px;
}

.about-copy h2 {
  margin: 0 0 38px;
  color: #000;
  font-size: 30px;
  line-height: 1;
  font-weight: 600;
  letter-spacing: .2px;
}

.about-copy h2 em {
  display: block;
  font-style: italic;
  font-weight: 500;
}

.about-copy p {
  margin: 0 0 17px;
  color: #111;
  font-size: 12px;
  line-height: 1.35;
  letter-spacing: .2px;
}

.about-copy-left {
  padding-left: 80px;
}

.policy-content-section {
  padding: 42px 70px 68px;
  background: #fff;
}

.policy-content {
  max-width: 770px;
  margin: 0 auto;
  color: #111;
}

.policy-content h2 {
  margin: 0 0 31px;
  font-size: 20px;
  line-height: 1;
  font-weight: 400;
  letter-spacing: .3px;
}

.policy-note {
  margin: -14px 0 30px;
  color: #333;
  font-size: 14px;
  line-height: 1.55;
  letter-spacing: 0;
}

.policy-content h3 {
  position: relative;
  margin: 28px 0 10px;
  padding-left: 28px;
  font-size: 13px;
  line-height: 1.2;
  font-weight: 600;
  letter-spacing: .2px;
}

.policy-content h3::before {
  content: '';
  position: absolute;
  left: 0;
  top: 4px;
  width: 18px;
  height: 12px;
  background: url('../rsc/terms-and-conditions/point-arrow.png') center / contain no-repeat;
}

.policy-content ul {
  margin: 0;
  padding-left: 18px;
}

.policy-content li {
  margin: 0 0 11px;
  color: #222;
  font-size: 11px;
  line-height: 1.38;
  letter-spacing: .18px;
}

.policy-content li::marker {
  font-size: 8px;
}

.terms-content a {
  color: #003E57;
  font-weight: 600;
  text-decoration: underline;
  text-underline-offset: 3px;
}

.policy-page .terms-content {
  max-width: 820px !important;
}

.terms-content h3 {
  padding-left: 0 !important;
}

.terms-content h3::before {
  content: none !important;
}

.terms-page .terms-hero,
.hired-page .hired-hero {
  min-height: 0 !important;
  display: block !important;
  width: 100% !important;
  aspect-ratio: 1920 / 389;
  background: #103f4d !important;
}

.terms-page .terms-hero::before,
.hired-page .hired-hero::before {
  content: none !important;
}

.policy-banner-picture,
.policy-banner-image {
  width: 100%;
  height: 100%;
  display: block;
}

.policy-banner-image {
  object-fit: cover;
  object-position: center;
}

.terms-page .policy-content-section {
  padding-top: 50px !important;
}

.terms-page .terms-content {
  max-width: 1000px !important;
}

.terms-frame-image {
  width: 100%;
  height: auto;
  display: block;
}

.terms-content .terms-frame-image ~ :not(.visually-hidden) {
  display: none !important;
}

@media (max-width: 900px) {
  .contact-page-section {
    padding: 58px 30px 62px;
  }

  .contact-wrap,
  .about-row {
    grid-template-columns: 1fr;
    gap: 38px;
  }

  .contact-info-panel,
  .contact-form-card,
  .about-row,
  .policy-content {
    max-width: 620px;
    margin-left: auto;
    margin-right: auto;
  }

  .about-copy-left {
    padding-left: 0;
  }
}

@media (max-width: 520px) {
  .contact-page-section {
    padding: 31px 28px 40px;
    background: #003E57;
  }

  .contact-wrap {
    gap: 31px;
  }

  .contact-info-panel h1 {
    font-size: 24px;
    margin-bottom: 15px;
  }

  .contact-intro {
    margin-bottom: 33px;
    font-size: 11px;
    line-height: 1.18;
  }

  .contact-lines {
    gap: 18px;
  }

  .contact-lines p {
    grid-template-columns: 26px auto;
    font-size: 10px;
  }

  .contact-icon {
    width: 18px;
    height: 18px;
    font-size: 20px;
  }

  .contact-form-card {
    padding: 27px 14px 28px;
    border-radius: 6px;
  }

  .contact-form-card h2 {
    font-size: 29px;
    line-height: 1.05;
    margin-bottom: 17px;
  }

  .contact-form-card > p {
    margin-bottom: 18px;
    font-size: 12px;
  }

  .contact-form-row {
    gap: 7px;
  }

  .contact-phone-row {
    grid-template-columns: 46px 1fr;
    gap: 7px;
  }

  .contact-form-card input {
    height: 28px;
    padding: 0 9px;
    font-size: 10px;
  }

  .contact-form-card textarea {
    height: 123px;
    padding: 10px 9px 24px;
    font-size: 10px;
  }

  .contact-form-card button {
    width: 142px;
    height: 29px;
    margin-top: 14px;
    font-size: 9px;
  }

  .contact-form-card small {
    margin-top: 17px;
    font-size: 8px;
  }

  .page-hero {
    min-height: 126px;
  }

  .page-hero-copy {
    width: calc(100% - 52px);
    margin-left: 28px;
  }

  .page-hero h1 {
    font-size: 29px;
  }

  .page-hero p {
    font-size: 10px;
  }

  .about-hero {
    min-height: 150px;
    background-position: center center;
  }

  .policy-hero {
    min-height: 150px;
    background-size: auto 100%;
    background-position: right center;
  }

  .about-content-section {
    padding: 43px 28px 54px;
  }

  .about-row {
    gap: 28px;
  }

  .about-row + .about-row {
    margin-top: 42px;
  }

  .about-image,
  .about-work-image {
    width: 100%;
    border-radius: 26px;
  }

  .about-image img,
  .about-work-image img {
    height: 222px;
  }

  .about-copy h2 {
    margin-bottom: 21px;
    font-size: 25px;
  }

  .about-copy p {
    font-size: 11px;
    line-height: 1.4;
  }

  .about-row-bottom .about-image {
    order: -1;
  }

  .policy-content-section {
    padding: 35px 28px 52px;
  }

  .policy-content h2 {
    font-size: 17px;
    margin-bottom: 25px;
  }

  .policy-content h3 {
    margin-top: 24px;
    font-size: 12px;
  }

  .policy-content li {
    font-size: 10px;
    line-height: 1.45;
  }
}

@media (max-width: 780px) {
  .terms-page .terms-hero {
    aspect-ratio: 414 / 472;
  }

  .hired-page .hired-hero {
    aspect-ratio: 414 / 240;
  }

  .hired-banner-image {
    object-fit: cover;
    object-position: left center;
  }

  .terms-page .policy-content-section {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }
}

@media (max-width: 520px) {
  .terms-page .terms-hero {
    aspect-ratio: 414 / 472;
  }

  .hired-page .hired-hero {
    aspect-ratio: 414 / 235;
  }

  .hired-banner-image {
    object-position: 7% center;
  }
}



/* Final inner-page visual QA refinements */
.contact-page .page-shell,
.about-page .page-shell,
.policy-page .page-shell {
  font-size: 15px;
  letter-spacing: 0;
}

.contact-page-section,
.contact-page-section *,
.about-page main,
.about-page main *,
.policy-page main,
.policy-page main * {
  letter-spacing: normal;
}

.contact-page-section {
  min-height: 610px;
  padding: 78px max(70px, calc((100vw - var(--content-width)) / 2 + 112px)) 66px;
}

.contact-wrap {
  max-width: 1048px;
  grid-template-columns: minmax(300px, 410px) minmax(410px, 540px);
  gap: 86px;
}

.contact-info-panel h1 {
  margin-bottom: 20px;
  font-size: 35px;
}

.contact-intro {
  max-width: 370px;
  margin-bottom: 58px;
  font-size: 14px;
  line-height: 1.25;
  letter-spacing: .1px;
}

.contact-lines {
  gap: 24px;
}

.contact-lines p {
  grid-template-columns: 30px minmax(0, 1fr);
  gap: 0;
  align-items: center;
  font-size: 12px;
  line-height: 1.1;
}

.contact-lines p > span:last-child {
  display: flex;
  align-items: baseline;
  gap: 4px;
  min-width: 0;
  white-space: nowrap;
}

.contact-lines strong,
.contact-lines a {
  font-size: 12px;
  line-height: 1;
  letter-spacing: 0;
}

.contact-icon {
  width: 21px;
  height: 21px;
  display: inline-block;
  transform: none;
}

.contact-phone-icon {
  width: 20px;
  height: 20px;
  object-fit: contain;
}

.contact-email-icon {
  position: relative;
  width: 21px;
  height: 16px;
  border: 2px solid #fff;
  box-sizing: border-box;
}

.contact-email-icon::before,
.contact-email-icon::after {
  content: '';
  position: absolute;
  top: 1px;
  width: 10px;
  height: 10px;
  border-bottom: 2px solid #fff;
}

.contact-email-icon::before {
  left: 1px;
  transform: rotate(38deg);
  transform-origin: left bottom;
}

.contact-email-icon::after {
  right: 1px;
  transform: rotate(-38deg);
  transform-origin: right bottom;
}

.contact-form-card {
  padding: 34px 46px 36px;
  border-radius: 8px;
}

.contact-form-card h2 {
  margin-bottom: 14px;
  font-size: 34px;
  line-height: 1.08;
}

.contact-form-card > p {
  margin-bottom: 18px;
  font-size: 13px;
}

.contact-form-card form {
  gap: 8px;
}

.contact-form-card input,
.contact-form-card textarea {
  font-size: 12px;
  letter-spacing: 0;
}

.contact-form-card input {
  height: 30px;
  padding: 0 12px;
}

.contact-form-card textarea {
  height: 132px;
  padding: 12px 12px 26px;
}

.contact-form-card button {
  width: 190px;
  height: 34px;
  margin-top: 14px;
  font-size: 10px;
  letter-spacing: 0;
}

.contact-form-card small {
  margin-top: 20px;
  font-size: 9px;
  letter-spacing: 0;
}

.policy-content h3::before {
  content: '>';
  top: 0;
  font-size: 13px;
  font-weight: 600;
}

.about-content-section {
  padding-top: 60px;
  padding-bottom: 70px;
}

.about-copy p {
  font-size: 13px;
  line-height: 1.38;
}

@media (max-width: 520px) {
  .contact-page-section {
    min-height: auto;
    padding: 29px 28px 40px;
  }

  .contact-info-panel h1 {
    font-size: 24px;
  }

  .contact-intro {
    max-width: 290px;
    margin-bottom: 31px;
    font-size: 10px;
    line-height: 1.18;
  }

  .contact-lines p {
    grid-template-columns: 24px minmax(0, 1fr);
  }

  .contact-lines p > span:last-child {
    white-space: normal;
  }

  .contact-lines strong,
  .contact-lines a {
    font-size: 10px;
  }

  .contact-form-card h2 {
    font-size: 28px;
  }

  .about-content-section {
    padding-top: 42px;
    padding-bottom: 54px;
  }
}


/* About page supplied image refinements */
.about-hero {
  min-height: 230px;
  background:
    linear-gradient(90deg, rgba(7,56,72,.42) 0%, rgba(7,56,72,.12) 36%, rgba(7,56,72,0) 54%),
    url('../about/about-hero-event-background.webp') center center / cover no-repeat;
}

.about-page .page-hero-copy {
  margin-left: max(72px, calc((100vw - var(--content-width)) / 2 + 82px));
}

.about-page .page-hero h1 {
  font-size: 54px;
  line-height: .95;
  letter-spacing: 1.2px;
}

.about-page .page-hero p {
  font-size: 17px;
  line-height: 1.05;
  letter-spacing: .2px;
}

.about-team-image,
.about-work-image {
  background: transparent;
  overflow: visible;
}

.about-team-image img,
.about-work-image img {
  display: block;
  width: 100%;
  height: auto;
  object-fit: contain;
}

.about-team-image {
  border-radius: 0;
}

.about-work-image {
  width: 330px;
  border-radius: 0;
}

.about-row-top {
  grid-template-columns: minmax(420px, 560px) minmax(350px, 1fr);
}

.about-row-bottom {
  grid-template-columns: minmax(360px, 1fr) minmax(300px, 380px);
}

@media (max-width: 520px) {
  .about-hero {
    min-height: 165px;
    background-position: 58% center;
  }

  .about-page .page-hero-copy {
    margin-left: 28px;
    width: 70%;
  }

  .about-page .page-hero h1 {
    font-size: 31px;
  }

  .about-page .page-hero p {
    font-size: 11px;
  }

  .about-row-top,
  .about-row-bottom {
    grid-template-columns: 1fr;
  }

  .about-work-image {
    width: 100%;
  }
}


/* About page desktop layout match */
.about-page .site-header,
.contact-page .site-header,
.policy-page .site-header {
  height: 47px;
  grid-template-columns: 240px 1fr 260px;
  gap: 22px;
  padding-left: max(28px, calc((100vw - var(--content-width)) / 2 + 118px));
  padding-right: max(28px, calc((100vw - var(--content-width)) / 2 + 118px));
}

.about-page .brand img,
.contact-page .brand img,
.policy-page .brand img {
  width: 191px;
}

.about-page .main-nav,
.contact-page .main-nav,
.policy-page .main-nav {
  gap: 22px;
  font-size: 10px;
  letter-spacing: .35px;
}

.about-page .phone-link,
.contact-page .phone-link,
.policy-page .phone-link {
  font-size: 10px;
  letter-spacing: .3px;
}

.about-page .header-cta,
.contact-page .header-cta,
.policy-page .header-cta {
  min-height: 27px;
  padding-inline: 12px;
  border-radius: 5px;
  font-size: 10px;
  letter-spacing: .35px;
}

.about-page .page-hero {
  min-height: 242px;
}

.about-page .page-hero::before {
  display: none;
}

.about-page .page-hero-copy {
  width: 520px;
  margin-left: max(72px, calc((100vw - var(--content-width)) / 2 + 64px));
  transform: translateY(-2px);
}

.about-page .page-hero h1 {
  margin-bottom: 16px;
  font-size: 48px;
  line-height: .92;
  letter-spacing: 1px;
}

.about-page .page-hero p {
  font-size: 17px;
  line-height: .98;
  letter-spacing: .15px;
}

.about-content-section {
  padding: 62px max(64px, calc((100vw - var(--content-width)) / 2 + 64px)) 70px;
}

.about-row {
  max-width: 1010px;
  gap: 54px;
}

.about-row-top {
  grid-template-columns: 530px 1fr;
  align-items: center;
}

.about-team-image img {
  width: 530px;
}

.about-copy h2 {
  margin-bottom: 32px;
  font-size: 28px;
  line-height: .95;
  letter-spacing: .15px;
}

.about-copy h2 em {
  font-size: 27px;
  line-height: .95;
}

.about-copy p {
  margin-bottom: 15px;
  font-size: 12px;
  line-height: 1.26;
  letter-spacing: 0;
}

.about-copy-right {
  max-width: 430px;
}

@media (max-width: 900px) {
  .about-page .site-header,
  .contact-page .site-header,
  .policy-page .site-header {
    height: 82px;
    padding: 0 18px;
    grid-template-columns: 1fr auto auto;
  }

  .about-page .brand img,
  .contact-page .brand img,
  .policy-page .brand img {
    width: auto;
  }

  .about-page .brand-logo-desktop,
  .contact-page .brand-logo-desktop,
  .policy-page .brand-logo-desktop {
    display: none;
  }

  .about-page .brand-logo-mobile,
  .contact-page .brand-logo-mobile,
  .policy-page .brand-logo-mobile {
    display: block;
    width: 170px;
  }

  .about-page .main-nav,
  .contact-page .main-nav,
  .policy-page .main-nav,
  .about-page .phone-link,
  .contact-page .phone-link,
  .policy-page .phone-link,
  .about-page .header-cta-text,
  .contact-page .header-cta-text,
  .policy-page .header-cta-text {
    display: none;
  }

  .about-page .header-actions,
  .contact-page .header-actions,
  .policy-page .header-actions {
    gap: 10px;
  }

  .about-page .header-cta,
  .contact-page .header-cta,
  .policy-page .header-cta {
    min-width: 36px;
    min-height: 36px;
    padding: 0;
    justify-content: center;
  }

  .about-page .header-cta-mobile,
  .contact-page .header-cta-mobile,
  .policy-page .header-cta-mobile,
  .about-page .mobile-menu-button,
  .contact-page .mobile-menu-button,
  .policy-page .mobile-menu-button {
    display: block;
  }

  .about-row-top {
    grid-template-columns: 1fr;
  }

  .about-team-image img {
    width: 100%;
  }
}


/* About page exact hero/text cleanup */
.about-hero::before {
  display: block !important;
  width: 58% !important;
  z-index: 2 !important;
  background: linear-gradient(90deg, #073B4B 0%, #073B4B 36%, rgba(7,59,75,.92) 48%, rgba(7,59,75,.42) 72%, rgba(7,59,75,0) 100%) !important;
}

.about-page .page-hero-copy {
  z-index: 3 !important;
}

.about-copy,
.about-copy * {
  letter-spacing: 0 !important;
}

.about-copy h2 {
  font-size: 27px !important;
  line-height: .96 !important;
}

.about-copy h2 em {
  font-size: 26px !important;
}

.about-copy p {
  max-width: 430px;
  font-size: 12px !important;
  line-height: 1.24 !important;
  font-weight: 400 !important;
}

.about-row-top {
  gap: 58px;
}


/* Inner-page Figma header/content alignment */
@media (min-width: 901px) {
  .about-page .site-header,
  .contact-page .site-header,
  .policy-page .site-header {
    padding-left: max(92px, calc((100vw - var(--content-width)) / 2 + 92px));
    padding-right: max(92px, calc((100vw - var(--content-width)) / 2 + 92px));
    grid-template-columns: 220px 1fr 245px;
  }

  .about-page .brand img,
  .contact-page .brand img,
  .policy-page .brand img {
    width: 177px;
  }

  .about-page .header-cta,
  .contact-page .header-cta,
  .policy-page .header-cta {
    min-width: 95px;
    min-height: 27px;
    padding-inline: 9px;
  }

  .about-page .header-actions,
  .contact-page .header-actions,
  .policy-page .header-actions {
    gap: 15px;
  }

  .about-row-top {
    gap: 30px;
  }
}


/* Inner-page header text lock */
.about-page .main-nav,
.contact-page .main-nav,
.policy-page .main-nav,
.about-page .main-nav a,
.contact-page .main-nav a,
.policy-page .main-nav a {
  text-transform: none !important;
  font-size: 10px !important;
  font-weight: 500 !important;
  letter-spacing: .15px !important;
  line-height: 1 !important;
}

.about-page .main-nav a,
.contact-page .main-nav a,
.policy-page .main-nav a {
  min-height: 47px !important;
}

.about-page .header-cta,
.contact-page .header-cta,
.policy-page .header-cta {
  font-size: 10px !important;
  font-weight: 600 !important;
  letter-spacing: .25px !important;
  text-transform: uppercase !important;
  min-width: 95px !important;
  min-height: 27px !important;
  border-radius: 5px !important;
}

.about-page .phone-link,
.contact-page .phone-link,
.policy-page .phone-link {
  font-size: 10px !important;
  font-weight: 400 !important;
  letter-spacing: .25px !important;
}

.about-page .site-header,
.contact-page .site-header,
.policy-page .site-header {
  height: 47px !important;
  grid-template-columns: 220px minmax(0, 1fr) 245px !important;
  gap: 18px !important;
  padding-left: max(92px, calc((100vw - var(--content-width)) / 2 + 92px)) !important;
  padding-right: max(92px, calc((100vw - var(--content-width)) / 2 + 92px)) !important;
}

.about-page .brand img.brand-logo-desktop,
.contact-page .brand img.brand-logo-desktop,
.policy-page .brand img.brand-logo-desktop {
  width: 177px !important;
}

.about-page .header-actions,
.contact-page .header-actions,
.policy-page .header-actions {
  min-width: 245px !important;
  gap: 15px !important;
}

@media (max-width: 900px) {
  .about-page .site-header,
  .contact-page .site-header,
  .policy-page .site-header {
    height: 82px !important;
    grid-template-columns: 1fr auto auto !important;
    padding-left: 18px !important;
    padding-right: 18px !important;
  }

  .about-page .main-nav,
  .contact-page .main-nav,
  .policy-page .main-nav {
    display: none !important;
  }
}


/* Shared header parity: inner pages must match Home */
@media (min-width: 981px) {
  .about-page .site-header,
  .contact-page .site-header,
  .policy-page .site-header {
    height: 56px !important;
    min-height: 56px !important;
    display: grid !important;
    grid-template-columns: 245px minmax(0, 1fr) max-content !important;
    gap: 28px !important;
    align-items: center !important;
    padding-left: max(36px, calc((100vw - var(--content-width)) / 2)) !important;
    padding-right: max(36px, calc((100vw - var(--content-width)) / 2)) !important;
    background: #000 !important;
  }

  .about-page .brand img.brand-logo-desktop,
  .contact-page .brand img.brand-logo-desktop,
  .policy-page .brand img.brand-logo-desktop {
    width: 227px !important;
    height: auto !important;
  }

  .about-page .main-nav,
  .contact-page .main-nav,
  .policy-page .main-nav {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 31px !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    text-transform: none !important;
    letter-spacing: 1.2px !important;
    white-space: nowrap !important;
  }

  .about-page .main-nav a,
  .contact-page .main-nav a,
  .policy-page .main-nav a {
    min-height: 56px !important;
    display: inline-flex !important;
    align-items: center !important;
    line-height: 1 !important;
    font-size: inherit !important;
    font-weight: inherit !important;
    letter-spacing: inherit !important;
    text-transform: inherit !important;
  }

  .about-page .header-actions,
  .contact-page .header-actions,
  .policy-page .header-actions {
    min-width: 368px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 24px !important;
    white-space: nowrap !important;
  }

  .about-page .phone-link,
  .contact-page .phone-link,
  .policy-page .phone-link {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    color: #fff !important;
    font-size: 13px !important;
    font-weight: 400 !important;
    letter-spacing: 1px !important;
    line-height: 1 !important;
  }

  .about-page .header-cta,
  .contact-page .header-cta,
  .policy-page .header-cta {
    min-width: 156px !important;
    min-height: 36px !important;
    height: 36px !important;
    padding: 0 14px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    color: #000 !important;
    background: #fff !important;
    border-radius: 7px !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    letter-spacing: 1px !important;
    text-transform: uppercase !important;
    line-height: 1 !important;
  }

  .about-page .header-cta-text,
  .contact-page .header-cta-text,
  .policy-page .header-cta-text {
    display: inline !important;
  }
}

@media (max-width: 1280px) and (min-width: 981px) {
  .about-page .site-header,
  .contact-page .site-header,
  .policy-page .site-header {
    grid-template-columns: 220px minmax(0, 1fr) max-content !important;
    gap: 18px !important;
    padding-left: 24px !important;
    padding-right: 24px !important;
  }

  .about-page .brand img.brand-logo-desktop,
  .contact-page .brand img.brand-logo-desktop,
  .policy-page .brand img.brand-logo-desktop {
    width: 220px !important;
  }

  .about-page .main-nav,
  .contact-page .main-nav,
  .policy-page .main-nav {
    gap: 18px !important;
    font-size: 11px !important;
  }

  .about-page .header-actions,
  .contact-page .header-actions,
  .policy-page .header-actions {
    min-width: 318px !important;
    gap: 14px !important;
  }

  .about-page .phone-link,
  .contact-page .phone-link,
  .policy-page .phone-link {
    font-size: 11px !important;
  }

  .about-page .header-cta,
  .contact-page .header-cta,
  .policy-page .header-cta {
    min-width: 142px !important;
    font-size: 11px !important;
  }
}


/* Body text standard: match hired-items-policy copy scale */
.about-page .about-copy p,
.contact-page .contact-intro,
.policy-page .policy-content li {
  font-family: var(--toc-body-copy-font, 'Instrument Sans', 'Poppins', Arial, sans-serif) !important;
  font-size: var(--toc-body-copy-size, 16px) !important;
  line-height: var(--toc-body-copy-line, 1.45) !important;
  font-weight: var(--toc-body-copy-weight, 400) !important;
  letter-spacing: var(--toc-body-copy-letter, 0) !important;
}

.about-page .about-copy p {
  max-width: 520px !important;
  margin-bottom: 18px !important;
}

.contact-page .contact-intro {
  max-width: 430px !important;
}

.policy-page .policy-content {
  max-width: 920px !important;
}

.policy-page .policy-content h2 {
  font-size: 24px !important;
}

.policy-page .policy-content h3 {
  font-family: var(--toc-body-copy-font, 'Instrument Sans', 'Poppins', Arial, sans-serif) !important;
  font-size: var(--toc-body-copy-size, 16px) !important;
  line-height: var(--toc-body-copy-line, 1.45) !important;
  letter-spacing: var(--toc-body-copy-letter, 0) !important;
}

/* Keep true microcopy compact. */
.contact-page .contact-lines strong,
.contact-page .contact-lines a,
.contact-page .contact-form-card input,
.contact-page .contact-form-card textarea,
.contact-page .contact-form-card small,
.footer-col a,
.footer-newsletter p,
.footer-newsletter input,
.footer-newsletter button,
.footer-small {
  letter-spacing: .25px;
}


/* Final header parity with Home page */
@media (min-width: 981px) {
  .about-page .site-header,
  .contact-page .site-header,
  .policy-page .site-header {
    height: 56px !important;
    min-height: 56px !important;
    grid-template-columns: 245px minmax(0, 1fr) max-content !important;
    gap: 28px !important;
    padding-left: max(36px, calc((100vw - var(--content-width)) / 2)) !important;
    padding-right: max(36px, calc((100vw - var(--content-width)) / 2)) !important;
  }

  .about-page .brand img.brand-logo-desktop,
  .contact-page .brand img.brand-logo-desktop,
  .policy-page .brand img.brand-logo-desktop {
    width: 244px !important;
  }

  .about-page .main-nav,
  .contact-page .main-nav,
  .policy-page .main-nav {
    gap: 31px !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    letter-spacing: 1.2px !important;
    text-transform: uppercase !important;
  }

  .about-page .main-nav a,
  .contact-page .main-nav a,
  .policy-page .main-nav a {
    min-height: 56px !important;
    font-size: inherit !important;
    font-weight: inherit !important;
    letter-spacing: inherit !important;
    text-transform: inherit !important;
  }

  .about-page .phone-link,
  .contact-page .phone-link,
  .policy-page .phone-link {
    font-size: 14px !important;
    font-weight: 600 !important;
    letter-spacing: 1px !important;
  }

  .about-page .header-cta,
  .contact-page .header-cta,
  .policy-page .header-cta {
    min-width: 156px !important;
    min-height: 36px !important;
    height: 36px !important;
    padding: 0 18px !important;
    border-radius: 7px !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    letter-spacing: 1px !important;
    text-transform: uppercase !important;
  }
}

@media (max-width: 1280px) and (min-width: 981px) {
  .about-page .site-header,
  .contact-page .site-header,
  .policy-page .site-header {
    grid-template-columns: 220px minmax(0, 1fr) max-content !important;
    gap: 18px !important;
    padding-left: 24px !important;
    padding-right: 24px !important;
  }

  .about-page .brand img.brand-logo-desktop,
  .contact-page .brand img.brand-logo-desktop,
  .policy-page .brand img.brand-logo-desktop {
    width: 220px !important;
  }

  .about-page .main-nav,
  .contact-page .main-nav,
  .policy-page .main-nav {
    gap: 18px !important;
    font-size: 11px !important;
  }

  .about-page .phone-link,
  .contact-page .phone-link,
  .policy-page .phone-link {
    font-size: 11px !important;
  }

  .about-page .header-cta,
  .contact-page .header-cta,
  .policy-page .header-cta {
    min-width: 142px !important;
    font-size: 11px !important;
  }
}


/* About page proportional spacing refinement */
.about-content-section {
  padding-top: 66px !important;
  padding-bottom: 78px !important;
}

.about-row {
  width: min(1120px, calc(100vw - 144px)) !important;
  max-width: 1120px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
  column-gap: 72px !important;
  align-items: center !important;
}

.about-row + .about-row {
  margin-top: 92px !important;
}

.about-row-top,
.about-row-bottom {
  gap: 72px !important;
}

.about-team-image,
.about-work-image {
  justify-self: center !important;
  align-self: center !important;
}

.about-team-image img {
  width: 100% !important;
  max-width: 520px !important;
}

.about-work-image {
  width: 100% !important;
  max-width: 360px !important;
}

.about-work-image img {
  width: 100% !important;
}

.about-copy {
  width: 100% !important;
  max-width: 520px !important;
  align-self: center !important;
}

.about-copy-right {
  justify-self: start !important;
}

.about-copy-left {
  justify-self: end !important;
  padding-left: 0 !important;
}

.about-copy h2 {
  margin-bottom: 32px !important;
}

.about-copy p {
  max-width: 520px !important;
  margin-bottom: 18px !important;
}

@media (max-width: 900px) {
  .about-content-section {
    padding: 44px 28px 58px !important;
  }

  .about-row {
    width: min(620px, 100%) !important;
    grid-template-columns: 1fr !important;
    row-gap: 32px !important;
  }

  .about-row + .about-row {
    margin-top: 58px !important;
  }

  .about-copy,
  .about-copy-left,
  .about-copy-right,
  .about-team-image,
  .about-work-image {
    justify-self: stretch !important;
    max-width: 100% !important;
  }
}


/* Final shared header polish: Figma handover spacing and supplied icons */
@media (min-width: 981px) {
  .site-header {
    height: 56px !important;
    min-height: 56px !important;
    grid-template-columns: 245px minmax(0, 1fr) max-content !important;
    gap: 28px !important;
    padding-left: max(36px, calc((100vw - var(--content-width)) / 2)) !important;
    padding-right: max(36px, calc((100vw - var(--content-width)) / 2)) !important;
  }

  .brand img.brand-logo-desktop {
    width: 244px !important;
  }

  .main-nav {
    justify-content: center !important;
    gap: 31px !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    letter-spacing: .15px !important;
    text-transform: none !important;
  }

  .main-nav a {
    min-height: 56px !important;
    display: inline-flex !important;
    align-items: center !important;
    font-size: inherit !important;
    font-weight: inherit !important;
    letter-spacing: inherit !important;
    text-transform: none !important;
  }

  .header-actions {
    min-width: 368px !important;
    display: flex !important;
    justify-content: flex-end !important;
    align-items: center !important;
    gap: 24px !important;
  }

  .phone-link {
    display: inline-flex !important;
    align-items: center !important;
    gap: 9px !important;
    color: #fff !important;
    font-size: 13px !important;
    line-height: 1 !important;
    font-weight: 500 !important;
    letter-spacing: .55px !important;
  }

  .phone-link::before {
    content: '' !important;
    width: 16px !important;
    height: 18px !important;
    margin: 0 !important;
    flex: 0 0 16px !important;
    background: url('../rsc/icons/header-phone.png') center/contain no-repeat !important;
  }

  .header-cta {
    min-width: 156px !important;
    min-height: 36px !important;
    height: 36px !important;
    padding: 0 17px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 10px !important;
    border-radius: 7px !important;
    color: #000 !important;
    background: #fff !important;
    font-size: 13px !important;
    line-height: 1 !important;
    font-weight: 600 !important;
    letter-spacing: .35px !important;
    text-transform: uppercase !important;
  }

  .header-cta::before {
    content: '' !important;
    width: 24px !important;
    height: 24px !important;
    flex: 0 0 24px !important;
    background: url('../rsc/icons/header-form-icon.png') center/contain no-repeat !important;
  }

  .header-cta-mobile {
    display: none !important;
  }
}

@media (max-width: 1280px) and (min-width: 981px) {
  .site-header {
    grid-template-columns: 220px minmax(0, 1fr) max-content !important;
    gap: 18px !important;
    padding-left: 24px !important;
    padding-right: 24px !important;
  }

  .brand img.brand-logo-desktop {
    width: 220px !important;
  }

  .main-nav {
    gap: 20px !important;
    font-size: 12px !important;
  }

  .header-actions {
    min-width: 318px !important;
    gap: 16px !important;
  }

  .phone-link {
    font-size: 12px !important;
  }

  .header-cta {
    min-width: 142px !important;
    font-size: 12px !important;
    gap: 8px !important;
  }
}


/* Final contact page refinement: Figma spacing and readable details */
.contact-page-section {
  min-height: 655px !important;
  padding-top: 96px !important;
  padding-bottom: 82px !important;
  background: #084B5D !important;
}

.contact-wrap {
  width: min(1060px, calc(100vw - 150px)) !important;
  max-width: 1060px !important;
  grid-template-columns: minmax(300px, 430px) minmax(420px, 558px) !important;
  gap: 88px !important;
  align-items: center !important;
}

.contact-info-panel h1 {
  margin-bottom: 22px !important;
  font-size: 37px !important;
  line-height: 1 !important;
  font-weight: 600 !important;
  letter-spacing: .1px !important;
}

.contact-page .contact-intro {
  max-width: 382px !important;
  margin-bottom: 72px !important;
  color: rgba(255,255,255,.58) !important;
  font-size: 17px !important;
  line-height: 1.28 !important;
  letter-spacing: .15px !important;
}

.contact-lines {
  gap: 27px !important;
}

.contact-lines p {
  grid-template-columns: 34px minmax(0, 1fr) !important;
  align-items: center !important;
  color: rgba(255,255,255,.78) !important;
  font-size: 14px !important;
  line-height: 1.15 !important;
  letter-spacing: .1px !important;
}

.contact-lines p > span:last-child {
  display: flex !important;
  align-items: baseline !important;
  gap: 5px !important;
  min-width: 0 !important;
}

.contact-lines strong {
  color: #fff !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  letter-spacing: .15px !important;
}

.contact-lines a {
  color: #fff !important;
  font-size: 14px !important;
  line-height: 1.15 !important;
  font-weight: 600 !important;
  letter-spacing: .05px !important;
}

.contact-icon {
  width: 24px !important;
  height: 24px !important;
  transform: none !important;
  object-fit: contain !important;
}

.contact-phone-icon {
  width: 22px !important;
  height: 22px !important;
  filter: brightness(0) invert(1) !important;
}

.contact-email-icon {
  width: 24px !important;
  height: 18px !important;
  border: 2px solid #fff !important;
  border-radius: 2px !important;
  position: relative !important;
  display: inline-block !important;
}

.contact-email-icon::before,
.contact-email-icon::after {
  content: '' !important;
  position: absolute !important;
  top: 3px !important;
  width: 13px !important;
  height: 2px !important;
  background: #fff !important;
  transform-origin: center !important;
}

.contact-email-icon::before {
  left: 0 !important;
  transform: rotate(35deg) !important;
}

.contact-email-icon::after {
  right: 0 !important;
  transform: rotate(-35deg) !important;
}

.contact-form-card {
  max-width: 558px !important;
  padding: 36px 49px 40px !important;
  border-radius: 8px !important;
}

.contact-form-card h2 {
  font-size: 36px !important;
  line-height: 1.08 !important;
  font-weight: 400 !important;
  letter-spacing: .05px !important;
}

.contact-form-card > p {
  font-size: 14px !important;
  line-height: 1.25 !important;
}

.contact-form-card input,
.contact-form-card textarea {
  font-size: 13px !important;
  letter-spacing: .1px !important;
}

.contact-form-card small {
  font-size: 10px !important;
  line-height: 1.35 !important;
}

@media (max-width: 900px) {
  .contact-page-section {
    padding: 31px 28px 40px !important;
  }

  .contact-wrap {
    width: min(620px, 100%) !important;
    grid-template-columns: 1fr !important;
    gap: 34px !important;
  }

  .contact-info-panel h1 {
    font-size: 28px !important;
  }

  .contact-page .contact-intro {
    margin-bottom: 30px !important;
    font-size: 13px !important;
    line-height: 1.25 !important;
  }

  .contact-lines p,
  .contact-lines strong,
  .contact-lines a {
    font-size: 12px !important;
  }
}


/* Absolute final header/contact/about overrides */
@media (min-width: 981px) {
  body .site-header {
    height: 56px !important;
    min-height: 56px !important;
    grid-template-columns: 245px minmax(0, 1fr) max-content !important;
    gap: 28px !important;
    padding-left: max(36px, calc((100vw - var(--content-width)) / 2)) !important;
    padding-right: max(36px, calc((100vw - var(--content-width)) / 2)) !important;
  }

  body .brand img.brand-logo-desktop {
    width: 244px !important;
  }

  body .main-nav,
  body .main-nav a,
  body.about-page .main-nav,
  body.about-page .main-nav a,
  body.contact-page .main-nav,
  body.contact-page .main-nav a,
  body.policy-page .main-nav,
  body.policy-page .main-nav a {
    font-size: 14px !important;
    line-height: 1 !important;
    font-weight: 500 !important;
    letter-spacing: .15px !important;
    text-transform: none !important;
  }

  body .main-nav {
    gap: 31px !important;
    justify-content: center !important;
  }

  body .main-nav a {
    min-height: 56px !important;
    display: inline-flex !important;
    align-items: center !important;
  }

  body .header-actions {
    min-width: 368px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 24px !important;
  }

  body .phone-link {
    display: inline-flex !important;
    align-items: center !important;
    gap: 9px !important;
    color: #fff !important;
    font-size: 13px !important;
    line-height: 1 !important;
    font-weight: 500 !important;
    letter-spacing: .55px !important;
  }

  body .phone-link::before {
    content: '' !important;
    width: 16px !important;
    height: 18px !important;
    margin: 0 !important;
    flex: 0 0 16px !important;
    background: url('../rsc/icons/header-phone.png') center/contain no-repeat !important;
  }

  body .header-cta {
    min-width: 156px !important;
    min-height: 36px !important;
    height: 36px !important;
    padding: 0 17px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 10px !important;
    border-radius: 7px !important;
    color: #000 !important;
    background: #fff !important;
    font-size: 13px !important;
    line-height: 1 !important;
    font-weight: 600 !important;
    letter-spacing: .35px !important;
    text-transform: uppercase !important;
  }

  body .header-cta::before {
    content: '' !important;
    width: 24px !important;
    height: 24px !important;
    flex: 0 0 24px !important;
    background: url('../rsc/icons/header-form-icon.png') center/contain no-repeat !important;
  }

  body .header-cta-mobile {
    display: none !important;
  }
}

@media (max-width: 1280px) and (min-width: 981px) {
  body .site-header {
    grid-template-columns: 220px minmax(0, 1fr) max-content !important;
    gap: 18px !important;
    padding-left: 24px !important;
    padding-right: 24px !important;
  }

  body .brand img.brand-logo-desktop {
    width: 220px !important;
  }

  body .main-nav,
  body .main-nav a {
    font-size: 12px !important;
  }

  body .main-nav {
    gap: 20px !important;
  }

  body .header-actions {
    min-width: 318px !important;
    gap: 16px !important;
  }

  body .phone-link,
  body .header-cta {
    font-size: 12px !important;
  }

  body .header-cta {
    min-width: 142px !important;
    gap: 8px !important;
  }
}

/* Contact page final detail tuning */
.contact-page-section {
  min-height: 655px !important;
  padding-top: 96px !important;
  padding-bottom: 82px !important;
  background: #084B5D !important;
}

.contact-wrap {
  width: min(1060px, calc(100vw - 150px)) !important;
  max-width: 1060px !important;
  grid-template-columns: minmax(300px, 430px) minmax(420px, 558px) !important;
  gap: 88px !important;
  align-items: center !important;
}

.contact-info-panel h1 {
  margin-bottom: 22px !important;
  font-size: 37px !important;
  line-height: 1 !important;
  font-weight: 600 !important;
  letter-spacing: .1px !important;
}

.contact-page .contact-intro {
  max-width: 382px !important;
  margin-bottom: 72px !important;
  color: rgba(255,255,255,.58) !important;
  font-size: 15px !important;
  line-height: 1.32 !important;
  letter-spacing: .2px !important;
}

.contact-lines {
  gap: 27px !important;
}

.contact-lines p {
  grid-template-columns: 34px minmax(0, 1fr) !important;
  align-items: center !important;
  color: rgba(255,255,255,.78) !important;
  font-size: 13px !important;
  line-height: 1.15 !important;
  letter-spacing: .08px !important;
}

.contact-lines p > span:last-child {
  display: flex !important;
  align-items: baseline !important;
  gap: 5px !important;
  min-width: 0 !important;
}

.contact-lines strong {
  color: #fff !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  letter-spacing: .05px !important;
}

.contact-lines a {
  color: rgba(255,255,255,.84) !important;
  font-size: 13px !important;
  line-height: 1.15 !important;
  font-weight: 400 !important;
  letter-spacing: .02px !important;
}

.contact-lines a[href^='tel'] {
  color: #fff !important;
  font-weight: 600 !important;
}

.contact-icon {
  width: 24px !important;
  height: 24px !important;
  transform: none !important;
  object-fit: contain !important;
}

.contact-phone-icon {
  width: 22px !important;
  height: 22px !important;
  filter: brightness(0) invert(1) !important;
}

.contact-email-icon {
  width: 24px !important;
  height: 18px !important;
  border: 2px solid #fff !important;
  border-radius: 2px !important;
  position: relative !important;
  display: inline-block !important;
}

.contact-email-icon::before,
.contact-email-icon::after {
  content: '' !important;
  position: absolute !important;
  top: 3px !important;
  width: 13px !important;
  height: 2px !important;
  background: #fff !important;
  transform-origin: center !important;
}

.contact-email-icon::before {
  left: 0 !important;
  transform: rotate(35deg) !important;
}

.contact-email-icon::after {
  right: 0 !important;
  transform: rotate(-35deg) !important;
}

.contact-form-card {
  max-width: 558px !important;
  padding: 36px 49px 40px !important;
  border-radius: 8px !important;
}

.contact-form-card h2 {
  font-size: 36px !important;
  line-height: 1.08 !important;
  font-weight: 400 !important;
  letter-spacing: .05px !important;
}

.contact-form-card > p,
.contact-form-card input,
.contact-form-card textarea {
  font-size: 13px !important;
  letter-spacing: .1px !important;
}

.contact-form-card small {
  font-size: 10px !important;
  line-height: 1.35 !important;
}

/* About page final proportional grid */
.about-content-section {
  padding-top: 66px !important;
  padding-bottom: 78px !important;
}

.about-row {
  width: min(1120px, calc(100vw - 144px)) !important;
  max-width: 1120px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
  column-gap: 72px !important;
  align-items: center !important;
}

.about-row + .about-row {
  margin-top: 84px !important;
}

.about-team-image,
.about-work-image {
  justify-self: center !important;
  align-self: center !important;
}

.about-team-image img {
  width: 100% !important;
  max-width: 520px !important;
}

.about-work-image {
  width: 100% !important;
  max-width: 360px !important;
}

.about-work-image img {
  width: 100% !important;
}

.about-copy {
  width: 100% !important;
  max-width: 520px !important;
  align-self: center !important;
}

.about-copy-right {
  justify-self: start !important;
}

.about-copy-left {
  justify-self: end !important;
  padding-left: 0 !important;
}

.about-copy h2 {
  margin-bottom: 32px !important;
}

.about-copy p {
  max-width: 520px !important;
  margin-bottom: 18px !important;
  font-family: var(--toc-body-copy-font, 'Instrument Sans', 'Poppins', Arial, sans-serif) !important;
  font-size: var(--toc-body-copy-size, 12px) !important;
  line-height: var(--toc-body-copy-line, 1.4) !important;
  letter-spacing: var(--toc-body-copy-letter, 0) !important;
}

@media (max-width: 900px) {
  .contact-page-section {
    padding: 31px 28px 40px !important;
  }

  .contact-wrap {
    width: min(620px, 100%) !important;
    grid-template-columns: 1fr !important;
    gap: 34px !important;
  }

  .contact-info-panel h1 {
    font-size: 28px !important;
  }

  .contact-page .contact-intro {
    margin-bottom: 30px !important;
    font-size: 13px !important;
    line-height: 1.25 !important;
  }

  .contact-lines p,
  .contact-lines strong,
  .contact-lines a {
    font-size: 12px !important;
  }

  .about-content-section {
    padding: 44px 28px 58px !important;
  }

  .about-row {
    width: min(620px, 100%) !important;
    grid-template-columns: 1fr !important;
    row-gap: 32px !important;
  }

  .about-row + .about-row {
    margin-top: 58px !important;
  }

  .about-copy,
  .about-copy-left,
  .about-copy-right,
  .about-team-image,
  .about-work-image {
    justify-self: stretch !important;
    max-width: 100% !important;
  }
}


/* Final mobile header lock */
@media (max-width: 980px) {
  body .site-header {
    height: 64px !important;
    min-height: 64px !important;
    padding: 0 28px !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 44px 44px !important;
    gap: 12px !important;
    align-items: center !important;
    justify-items: stretch !important;
    background: #000 !important;
  }

  body .brand {
    width: min(188px, calc(100vw - 160px)) !important;
    max-width: 188px !important;
    justify-self: start !important;
    align-self: center !important;
    display: flex !important;
    align-items: center !important;
  }

  body .brand img.brand-logo-desktop {
    display: none !important;
  }

  body .brand img.brand-logo-mobile {
    display: block !important;
    width: min(188px, calc(100vw - 160px)) !important;
    max-width: 188px !important;
    height: auto !important;
  }

  body .main-nav,
  body .phone-link {
    display: none !important;
  }

  body .header-actions {
    grid-column: 2 / 4 !important;
    min-width: 0 !important;
    width: 100px !important;
    display: grid !important;
    grid-template-columns: 44px 44px !important;
    gap: 12px !important;
    align-items: center !important;
    justify-content: end !important;
    justify-self: end !important;
  }

  body .header-actions::after {
    content: none !important;
    display: none !important;
  }

  body .header-cta {
    width: 44px !important;
    min-width: 44px !important;
    height: 44px !important;
    min-height: 44px !important;
    padding: 0 !important;
    border-radius: 8px !important;
    display: grid !important;
    place-items: center !important;
    background: #fff !important;
    font-size: 0 !important;
    line-height: 0 !important;
  }

  body .header-cta::before {
    content: none !important;
    display: none !important;
  }

  body .header-cta-text {
    display: none !important;
  }

  body .header-cta-mobile {
    display: block !important;
    width: 44px !important;
    height: 44px !important;
    object-fit: contain !important;
  }

  body .mobile-menu-button {
    display: grid !important;
    width: 44px !important;
    height: 44px !important;
    min-width: 44px !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    place-items: center !important;
  }

  body .mobile-menu-button img {
    display: block !important;
    width: 44px !important;
    height: 43px !important;
    object-fit: contain !important;
  }
}

@media (max-width: 360px) {
  body .site-header {
    padding-left: 18px !important;
    padding-right: 18px !important;
    grid-template-columns: minmax(0, 1fr) 40px 40px !important;
    gap: 9px !important;
  }

  body .brand,
  body .brand img.brand-logo-mobile {
    width: min(170px, calc(100vw - 122px)) !important;
  }

  body .header-actions {
    width: 89px !important;
    grid-template-columns: 40px 40px !important;
    gap: 9px !important;
  }

  body .header-cta,
  body .header-cta-mobile,
  body .mobile-menu-button {
    width: 40px !important;
    min-width: 40px !important;
    height: 40px !important;
    min-height: 40px !important;
  }

  body .mobile-menu-button img {
    width: 40px !important;
    height: 39px !important;
  }
}


/* Final cross-device hero/start-strip lock */
.chat-bubble {
  display: none !important;
}

.start-strip {
  min-height: 92px !important;
  padding-top: 22px !important;
  padding-bottom: 22px !important;
  padding-left: max(56px, calc((100vw - var(--content-width)) / 2 + 56px)) !important;
  padding-right: max(56px, calc((100vw - var(--content-width)) / 2 + 56px)) !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  align-items: center !important;
  gap: 30px !important;
  color: #000 !important;
  background: var(--blue) !important;
}

.start-strip h2 {
  max-width: none !important;
  margin: 0 !important;
  color: #000 !important;
  font-size: clamp(22px, 2vw, 26px) !important;
  line-height: 1.1 !important;
  font-weight: 600 !important;
  letter-spacing: .02em !important;
  text-align: left !important;
}

.start-strip h2 span {
  color: #0784cf !important;
}

.start-strip a {
  width: auto !important;
  min-width: 166px !important;
  min-height: 36px !important;
  padding: 0 24px !important;
  border-radius: 3px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: #fff !important;
  background: #000 !important;
  font-size: 12px !important;
  line-height: 1 !important;
  font-weight: 600 !important;
  letter-spacing: .6px !important;
  text-transform: uppercase !important;
}

.start-strip a::before {
  content: none !important;
}

@media (max-width: 980px) {
  .hero {
    height: clamp(460px, 67vw, 540px) !important;
    min-height: 460px !important;
  }

  .hero-card {
    transform: translateY(6px) !important;
  }

  .hero-card h1 {
    font-size: clamp(42px, 7.2vw, 58px) !important;
    line-height: .94 !important;
  }

  .hero-card p {
    margin-top: 18px !important;
    font-size: clamp(21px, 3.8vw, 26px) !important;
    line-height: 1.25 !important;
  }







  .start-strip {
    min-height: 92px !important;
    padding: 22px clamp(34px, 7vw, 80px) !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    gap: 24px !important;
    background: var(--blue) !important;
  }

  .start-strip h2 {
    font-size: clamp(21px, 3.7vw, 26px) !important;
  }
}

@media (max-width: 520px) {
  .hero {
    height: 460px !important;
    min-height: 460px !important;
  }



  .hero-card {
    transform: translateY(0) !important;
  }

  .hero-card h1 {
    font-size: 0 !important;
    line-height: .98 !important;
    font-weight: 600 !important;
  }

  .hero-card h1::before {
    content: 'Decor Hire' !important;
    display: block !important;
    font-size: 37px !important;
  }

  .hero-card h1::after {
    content: '& Styling' !important;
    display: block !important;
    font-size: 37px !important;
  }

  .hero-card p {
    margin-top: 14px !important;
    font-size: 21px !important;
  }

  .start-strip {
    min-height: 155px !important;
    padding: 32px 24px !important;
    grid-template-columns: 1fr !important;
    justify-items: center !important;
    gap: 22px !important;
    text-align: center !important;
    background: var(--blue) !important;
  }

  .start-strip h2 {
    max-width: 350px !important;
    font-size: 23px !important;
    line-height: 1.08 !important;
    text-align: center !important;
  }

  .start-strip a {
    width: min(226px, 100%) !important;
    min-width: 0 !important;
    min-height: 44px !important;
    border-radius: 7px !important;
    font-size: 0 !important;
  }

  .start-strip a::before {
    content: 'Event Pricing' !important;
    font-size: 13px !important;
  }
}


/* Final tablet hero note clearance */



/* Absolute final responsive header lock */
@media (max-width: 980px) {
  body .site-header,
  body.about-page .site-header,
  body.contact-page .site-header,
  body.policy-page .site-header {
    height: 64px !important;
    min-height: 64px !important;
    padding: 0 28px !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 44px 44px !important;
    gap: 12px !important;
    align-items: center !important;
    justify-items: stretch !important;
    background: #000 !important;
  }

  body .brand,
  body.about-page .brand,
  body.contact-page .brand,
  body.policy-page .brand {
    width: min(188px, calc(100vw - 160px)) !important;
    max-width: 188px !important;
    justify-self: start !important;
    display: flex !important;
    align-items: center !important;
  }

  body .brand img.brand-logo-desktop {
    display: none !important;
  }

  body .brand img.brand-logo-mobile {
    display: block !important;
    width: min(188px, calc(100vw - 160px)) !important;
    max-width: 188px !important;
    height: auto !important;
  }

  body .main-nav,
  body .phone-link {
    display: none !important;
  }

  body .header-actions,
  body.about-page .header-actions,
  body.contact-page .header-actions,
  body.policy-page .header-actions {
    grid-column: 2 / 4 !important;
    min-width: 100px !important;
    width: 100px !important;
    display: grid !important;
    grid-template-columns: 44px 44px !important;
    gap: 12px !important;
    align-items: center !important;
    justify-content: end !important;
    justify-self: end !important;
  }

  body .header-actions::after {
    content: none !important;
    display: none !important;
  }

  body .header-cta,
  body.about-page .header-cta,
  body.contact-page .header-cta,
  body.policy-page .header-cta {
    width: 44px !important;
    min-width: 44px !important;
    max-width: 44px !important;
    height: 44px !important;
    min-height: 44px !important;
    padding: 0 !important;
    border-radius: 8px !important;
    display: grid !important;
    place-items: center !important;
    background: #fff !important;
    font-size: 0 !important;
    line-height: 0 !important;
    overflow: hidden !important;
  }

  body .header-cta::before {
    content: none !important;
    display: none !important;
  }

  body .header-cta-text {
    display: none !important;
  }

  body .header-cta-mobile,
  body.about-page .header-cta-mobile,
  body.contact-page .header-cta-mobile,
  body.policy-page .header-cta-mobile {
    display: block !important;
    width: 44px !important;
    height: 44px !important;
    object-fit: contain !important;
  }

  body .mobile-menu-button,
  body.about-page .mobile-menu-button,
  body.contact-page .mobile-menu-button,
  body.policy-page .mobile-menu-button {
    display: grid !important;
    width: 44px !important;
    min-width: 44px !important;
    max-width: 44px !important;
    height: 44px !important;
    min-height: 44px !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    place-items: center !important;
    overflow: hidden !important;
  }

  body .mobile-menu-button img {
    display: block !important;
    width: 44px !important;
    height: 43px !important;
    object-fit: contain !important;
  }
}


/* Absolute final mobile menu dropdown */
@media (max-width: 980px) {
  body.menu-open {
    overflow: hidden !important;
  }

  body.menu-open .site-header {
    position: relative !important;
    z-index: 120 !important;
  }

  body.menu-open .main-nav,
  body.about-page.menu-open .main-nav,
  body.contact-page.menu-open .main-nav,
  body.policy-page.menu-open .main-nav {
    position: fixed !important;
    top: 64px !important;
    left: 0 !important;
    right: 0 !important;
    z-index: 110 !important;
    width: 100vw !important;
    min-height: 0 !important;
    padding: 18px 28px 22px !important;
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 0 !important;
    justify-content: stretch !important;
    align-items: stretch !important;
    background: rgba(0, 0, 0, .96) !important;
    border-top: 1px solid rgba(255,255,255,.12) !important;
    box-shadow: 0 18px 35px rgba(0,0,0,.24) !important;
  }

  body.menu-open .main-nav a,
  body.about-page.menu-open .main-nav a,
  body.contact-page.menu-open .main-nav a,
  body.policy-page.menu-open .main-nav a {
    min-height: 46px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    color: #fff !important;
    border-bottom: 1px solid rgba(255,255,255,.12) !important;
    font-size: 17px !important;
    line-height: 1 !important;
    font-weight: 600 !important;
    letter-spacing: .25px !important;
    text-transform: none !important;
  }

  body.menu-open .main-nav a:last-child {
    border-bottom: 0 !important;
  }

  body.menu-open::after {
    content: '' !important;
    position: fixed !important;
    inset: 64px 0 0 !important;
    z-index: 100 !important;
    background: rgba(0,0,0,.22) !important;
    pointer-events: none !important;
  }
}


/* Mobile menu visual cleanup */
@media (max-width: 980px) {
  body.menu-open .main-nav,
  body.about-page.menu-open .main-nav,
  body.contact-page.menu-open .main-nav,
  body.policy-page.menu-open .main-nav {
    background: #000 !important;
  }

  body.menu-open::after {
    background: rgba(0,0,0,.45) !important;
  }
}


/* About page Figma ratio match */
body.about-page .about-hero {
  width: 100% !important;
  height: calc(100vw * 389 / 1921) !important;
  min-height: 292px !important;
  max-height: 389px !important;
  display: flex !important;
  align-items: center !important;
  overflow: hidden !important;
  background:
    linear-gradient(90deg, rgba(7, 59, 75, .96) 0%, rgba(7, 59, 75, .9) 23%, rgba(7, 59, 75, .58) 39%, rgba(7, 59, 75, .08) 56%, rgba(7, 59, 75, 0) 68%),
    url('../about/about-hero-event-background.webp') center center / cover no-repeat !important;
}

body.about-page .about-hero::before {
  content: none !important;
  display: none !important;
}

body.about-page .page-hero-copy {
  width: min(520px, 37vw) !important;
  margin-left: max(86px, calc((100vw - var(--content-width)) / 2 + 92px)) !important;
  transform: translateY(0) !important;
}

body.about-page .page-hero h1 {
  margin: 0 0 20px !important;
  color: #fff !important;
  font-family: 'Instrument Sans', 'Poppins', Arial, sans-serif !important;
  font-size: clamp(48px, 3.15vw, 60px) !important;
  line-height: .9 !important;
  font-weight: 600 !important;
  letter-spacing: .8px !important;
  text-transform: uppercase !important;
}

body.about-page .page-hero p {
  max-width: 430px !important;
  margin: 0 !important;
  color: rgba(255,255,255,.94) !important;
  font-size: clamp(16px, 1.05vw, 20px) !important;
  line-height: 1.05 !important;
  font-weight: 500 !important;
  letter-spacing: .15px !important;
}

body.about-page .about-content-section {
  padding-top: clamp(66px, 4.4vw, 84px) !important;
  padding-bottom: clamp(78px, 5.4vw, 104px) !important;
}

body.about-page .about-row {
  width: min(1260px, calc(100vw - 180px)) !important;
  max-width: 1260px !important;
  column-gap: clamp(74px, 7vw, 136px) !important;
}

body.about-page .about-row + .about-row {
  margin-top: clamp(86px, 6.3vw, 120px) !important;
}

body.about-page .about-team-image img {
  max-width: 560px !important;
}

body.about-page .about-work-image {
  max-width: 390px !important;
}

body.about-page .about-copy {
  max-width: 560px !important;
}

body.about-page .about-copy h2 {
  margin: 0 0 34px !important;
  font-size: clamp(28px, 2.05vw, 39px) !important;
  line-height: .92 !important;
  font-weight: 600 !important;
  letter-spacing: 0 !important;
}

body.about-page .about-copy h2 em {
  font-weight: 500 !important;
}

body.about-page .about-copy p {
  max-width: 560px !important;
  margin-bottom: 20px !important;
  font-family: var(--toc-body-copy-font, 'Instrument Sans', 'Poppins', Arial, sans-serif) !important;
  font-size: var(--toc-body-copy-size, 16px) !important;
  line-height: var(--toc-body-copy-line, 1.45) !important;
  letter-spacing: var(--toc-body-copy-letter, 0) !important;
}

@media (max-width: 1180px) {
  body.about-page .about-hero {
    min-height: 244px !important;
    background-position: 55% center !important;
  }

  body.about-page .page-hero-copy {
    width: min(470px, 42vw) !important;
    margin-left: clamp(58px, 8vw, 96px) !important;
  }

  body.about-page .about-row {
    width: min(1000px, calc(100vw - 88px)) !important;
    column-gap: 60px !important;
  }
}

@media (max-width: 900px) {
  body.about-page .about-hero {
    height: clamp(236px, 46vw, 338px) !important;
    min-height: 236px !important;
    max-height: 338px !important;
    background-position: 57% center !important;
  }

  body.about-page .page-hero-copy {
    width: min(430px, 52vw) !important;
    margin-left: 42px !important;
  }

  body.about-page .page-hero h1 {
    margin-bottom: 14px !important;
    font-size: clamp(38px, 6vw, 50px) !important;
  }

  body.about-page .page-hero p {
    max-width: 340px !important;
    font-size: clamp(13px, 2.1vw, 17px) !important;
  }

  body.about-page .about-content-section {
    padding: 48px 28px 64px !important;
  }

  body.about-page .about-row {
    width: min(620px, 100%) !important;
    grid-template-columns: 1fr !important;
    row-gap: 32px !important;
  }

  body.about-page .about-row + .about-row {
    margin-top: 60px !important;
  }

  body.about-page .about-copy,
  body.about-page .about-copy-left,
  body.about-page .about-copy-right,
  body.about-page .about-team-image,
  body.about-page .about-work-image {
    justify-self: stretch !important;
    max-width: 100% !important;
  }
}

@media (max-width: 520px) {
  body.about-page .about-hero {
    height: 274px !important;
    min-height: 274px !important;
    max-height: none !important;
    align-items: end !important;
    padding-bottom: 28px !important;
    background:
      linear-gradient(180deg, rgba(7, 59, 75, .04) 0%, rgba(7, 59, 75, .15) 38%, rgba(7, 59, 75, .9) 100%),
      linear-gradient(90deg, rgba(7, 59, 75, .72) 0%, rgba(7, 59, 75, .18) 48%, rgba(7, 59, 75, 0) 100%),
      url('../about/about-hero-event-background.webp') 58% center / cover no-repeat !important;
  }

  body.about-page .page-hero-copy {
    width: calc(100% - 56px) !important;
    margin-left: 28px !important;
  }

  body.about-page .page-hero h1 {
    margin-bottom: 9px !important;
    font-size: 30px !important;
    line-height: .92 !important;
    letter-spacing: .25px !important;
  }

  body.about-page .page-hero p {
    max-width: 235px !important;
    font-size: 10px !important;
    line-height: 1.18 !important;
  }

  body.about-page .about-content-section {
    padding: 36px 28px 48px !important;
  }

  body.about-page .about-row {
    row-gap: 24px !important;
  }

  body.about-page .about-row + .about-row {
    margin-top: 46px !important;
  }

  body.about-page .about-row-bottom .about-image {
    order: -1 !important;
  }

  body.about-page .about-copy h2 {
    margin-bottom: 18px !important;
    font-size: 22px !important;
    line-height: .92 !important;
  }

  body.about-page .about-copy p {
    margin-bottom: 15px !important;
    font-size: 10px !important;
    line-height: 1.45 !important;
  }
}


body.contact-page .contact-page-section {
  min-height: auto !important;
  padding: clamp(64px, 6vw, 88px) clamp(36px, 7vw, 96px) clamp(68px, 6vw, 88px) !important;
  background: #003E57 !important;
}

body.contact-page .contact-wrap {
  width: min(1060px, calc(100vw - 96px)) !important;
  max-width: 1060px !important;
  grid-template-columns: minmax(280px, 410px) minmax(420px, 520px) !important;
  gap: clamp(54px, 6vw, 86px) !important;
  align-items: center !important;
}

body.contact-page .contact-info-panel h1 {
  margin: 0 0 22px !important;
  color: #fff !important;
  font-family: var(--sans) !important;
  font-size: clamp(30px, 2.35vw, 38px) !important;
  line-height: 1 !important;
  font-weight: 600 !important;
  letter-spacing: 0 !important;
  text-transform: uppercase !important;
}

body.contact-page .contact-intro {
  max-width: 370px !important;
  margin: 0 0 56px !important;
  color: rgba(255,255,255,.82) !important;
  font-family: var(--toc-body-copy-font, 'Instrument Sans', 'Poppins', Arial, sans-serif) !important;
  font-size: var(--toc-body-copy-size, 16px) !important;
  line-height: var(--toc-body-copy-line, 1.45) !important;
  font-weight: var(--toc-body-copy-weight, 400) !important;
  letter-spacing: var(--toc-body-copy-letter, 0) !important;
}

body.contact-page .contact-lines {
  gap: 24px !important;
}

body.contact-page .contact-lines p {
  grid-template-columns: 30px minmax(0, 1fr) !important;
  gap: 4px !important;
  color: rgba(255,255,255,.9) !important;
  font-size: var(--toc-body-copy-size, 16px) !important;
  line-height: var(--toc-body-copy-line, 1.45) !important;
  letter-spacing: 0 !important;
}

body.contact-page .contact-lines p > span:last-child {
  display: flex !important;
  align-items: baseline !important;
  gap: 5px !important;
  min-width: 0 !important;
}

body.contact-page .contact-lines strong,
body.contact-page .contact-lines a {
  color: #fff !important;
  font-size: var(--toc-body-copy-size, 16px) !important;
  line-height: var(--toc-body-copy-line, 1.45) !important;
  letter-spacing: 0 !important;
}

body.contact-page .contact-lines strong {
  font-weight: 400 !important;
}

body.contact-page .contact-lines a {
  font-weight: 400 !important;
}

body.contact-page .contact-form-card {
  max-width: 520px !important;
  padding: 34px 42px 38px !important;
  border-radius: 8px !important;
  box-shadow: 0 18px 44px rgba(0,0,0,.16) !important;
}

body.contact-page .contact-form-card h2 {
  margin: 0 0 12px !important;
  color: #000 !important;
  font-family: var(--sans) !important;
  font-size: clamp(28px, 2.05vw, 32px) !important;
  line-height: 1.08 !important;
  font-weight: 600 !important;
  letter-spacing: 0 !important;
}

body.contact-page .contact-form-card > p {
  margin: 0 0 18px !important;
  color: #222 !important;
}

body.contact-page .contact-form-card form {
  gap: 9px !important;
}

body.contact-page .contact-form-card input,
body.contact-page .contact-form-card textarea {
  border-color: #0c6682 !important;
  font-family: var(--toc-body-copy-font, 'Instrument Sans', 'Poppins', Arial, sans-serif) !important;
  font-size: var(--toc-body-copy-size, 16px) !important;
  line-height: var(--toc-body-copy-line, 1.45) !important;
  letter-spacing: 0 !important;
}

body.contact-page .contact-form-card input {
  height: 32px !important;
}

body.contact-page .contact-form-card textarea {
  height: 130px !important;
}

body.contact-page .contact-form-card button {
  width: 190px !important;
  height: 34px !important;
  margin-top: 14px !important;
}

body.contact-page .contact-form-card small {
  max-width: 430px !important;
  margin-top: 20px !important;
}

@media (max-width: 900px) {
  body.contact-page .contact-page-section {
    padding: 42px 28px 52px !important;
  }

  body.contact-page .contact-wrap {
    width: min(620px, 100%) !important;
    grid-template-columns: 1fr !important;
    gap: 34px !important;
  }

  body.contact-page .contact-intro {
    margin-bottom: 30px !important;
  }

  body.contact-page .contact-lines p > span:last-child {
    flex-wrap: wrap !important;
  }

  body.contact-page .contact-form-card {
    max-width: 100% !important;
    padding: 28px 20px 30px !important;
  }

  body.contact-page .contact-form-card h2 {
    font-size: 26px !important;
  }
}

@media (max-width: 520px) {
  body.contact-page .contact-page-section {
    padding: 30px 22px 42px !important;
  }

  body.contact-page .contact-info-panel h1 {
    font-size: 25px !important;
  }

  body.contact-page .contact-intro,
  body.contact-page .contact-lines p,
  body.contact-page .contact-lines strong,
  body.contact-page .contact-lines a,
  body.contact-page .contact-form-card input,
  body.contact-page .contact-form-card textarea {
    font-size: 10px !important;
    line-height: 1.45 !important;
  }

  body.contact-page .contact-form-row {
    grid-template-columns: 1fr !important;
  }

  body.contact-page .contact-form-card button {
    width: 100% !important;
  }

  body.policy-page .policy-content h3,
  body.policy-page .policy-content li {
    font-size: 10px !important;
    line-height: 1.45 !important;
    letter-spacing: var(--toc-body-copy-letter, 0) !important;
  }
}

body.contact-page .contact-intro {
  color: #7EB7CE !important;
}

body.contact-page .contact-email-icon {
  width: 24px !important;
  height: 18px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: linear-gradient(#fff, #fff) center 13px / 20px 2px no-repeat !important;
  box-sizing: border-box !important;
  position: relative !important;
}

body.contact-page .contact-email-icon::before,
body.contact-page .contact-email-icon::after {
  content: '' !important;
  position: absolute !important;
  top: 5px !important;
  width: 13px !important;
  height: 2px !important;
  background: #fff !important;
  border: 0 !important;
  border-radius: 999px !important;
}

body.contact-page .contact-email-icon::before {
  left: 2px !important;
  transform: rotate(32deg) !important;
  transform-origin: left center !important;
}

body.contact-page .contact-email-icon::after {
  right: 2px !important;
  transform: rotate(-32deg) !important;
  transform-origin: right center !important;
}

/* Staging 2: one fluid Contact layout, preserving the 1240px desktop frame. */
body.contact-page .contact-page-section {
  padding-left: max(48px, calc((100vw - var(--content-width)) / 2 + 48px)) !important;
  padding-right: max(48px, calc((100vw - var(--content-width)) / 2 + 48px)) !important;
}
body.contact-page .contact-wrap {
  width: min(1240px, 100%) !important;
  max-width: 1240px !important;
  margin-inline: auto !important;
  grid-template-columns: minmax(0, 430px) minmax(0, 650px) !important;
  justify-content: space-between !important;
  gap: clamp(32px, 7vw, 130px) !important;
}
body.contact-page .contact-info-panel,
body.contact-page .contact-form-card {
  min-width: 0 !important;
  max-width: 100% !important;
}
body.contact-page .contact-info-panel {
  justify-self: start !important;
}
body.contact-page .contact-form-card {
  justify-self: end !important;
  width: 100% !important;
  max-width: 650px !important;
}
body.contact-page .contact-form-card small {
  max-width: none !important;
  white-space: normal !important;
}
body.contact-page .contact-lines a {
  min-width: 0;
  overflow-wrap: anywhere;
}
/* 1.0.574: give the desktop enquiry form 60px more room without moving
 * its right edge or changing the existing tablet/mobile layout. */
@media (min-width: 1280px) {
  body.contact-page .contact-wrap {
    grid-template-columns: minmax(0, 370px) minmax(0, 710px) !important;
  }
  body.contact-page .contact-form-card {
    max-width: 710px !important;
  }
}
@media (max-width: 1099px) {
  body.contact-page .contact-page-section {
    padding-left: 28px !important;
    padding-right: 28px !important;
  }
  body.contact-page .contact-wrap {
    width: min(620px, 100%) !important;
    grid-template-columns: minmax(0, 1fr) !important;
    justify-content: stretch !important;
    gap: 34px !important;
  }
  body.contact-page .contact-info-panel,
  body.contact-page .contact-form-card {
    justify-self: stretch !important;
    width: 100% !important;
    max-width: 100% !important;
  }
  body.contact-page .contact-form-card {
    padding: 28px 20px 30px !important;
  }
  body.contact-page .contact-form-card h2 {
    font-size: 26px !important;
  }
}

body.contact-page .contact-lines {
  gap: 28px !important;
}

body.contact-page .contact-lines p {
  grid-template-columns: 30px minmax(0, 1fr) !important;
  gap: 16px !important;
  align-items: center !important;
}

body.contact-page .contact-lines .contact-icon {
  display: block !important;
  justify-self: center !important;
}

body.contact-page .contact-phone-icon {
  width: 24px !important;
  height: 24px !important;
  object-fit: contain !important;
}

body.contact-page .contact-email-icon-img {
  width: 27px !important;
  height: 22px !important;
  object-fit: contain !important;
}

body.contact-page .contact-lines p > span:last-child {
  display: flex !important;
  align-items: baseline !important;
  gap: 6px !important;
  flex-wrap: wrap !important;
  white-space: normal !important;
}

body.contact-page .contact-lines strong,
body.contact-page .contact-lines a {
  font-size: 18px !important;
  line-height: 1.2 !important;
}

body.contact-page .contact-lines a {
  font-weight: 400 !important;
}

body.contact-page .contact-lines p:nth-child(1) a,
body.contact-page .contact-lines p:nth-child(3) a,
body.contact-page .contact-lines p:nth-child(2) strong,
body.contact-page .contact-lines p:nth-child(4) strong {
  font-weight: 600 !important;
}

@media (max-width: 520px) {
  body.contact-page .contact-lines p {
    grid-template-columns: 28px minmax(0, 1fr) !important;
    gap: 12px !important;
  }

  body.contact-page .contact-phone-icon {
    width: 22px !important;
    height: 22px !important;
  }

  body.contact-page .contact-email-icon-img {
    width: 25px !important;
    height: 20px !important;
  }

  body.contact-page .contact-lines p > span:last-child {
    white-space: normal !important;
  }
}

/* Final inner-page section rhythm */
body.contact-page .contact-page-section,
body.about-page .about-content-section,
body.policy-page .policy-content-section {
  padding-top: 50px !important;
  padding-bottom: 50px !important;
}

@media (max-width: 520px) {
  body.contact-page .contact-page-section,
  body.about-page .about-content-section,
  body.policy-page .policy-content-section {
    padding-top: 50px !important;
    padding-bottom: 50px !important;
  }
}

/* Final CTA label fit */
.header-cta,
.contact-form-card button,
.footer-newsletter button {
  letter-spacing: 0 !important;
  white-space: nowrap !important;
}

/* Final supplied policy banners */
body.terms-page .terms-hero,
body.hired-page .hired-hero {
  min-height: 0 !important;
  width: 100% !important;
  aspect-ratio: 1920 / 389 !important;
  display: block !important;
  background: #103f4d !important;
}

body.terms-page .terms-hero::before,
body.hired-page .hired-hero::before {
  content: none !important;
}

body.terms-page .policy-banner-picture,
body.hired-page .policy-banner-picture,
body.terms-page .policy-banner-image,
body.hired-page .policy-banner-image {
  width: 100% !important;
  height: 100% !important;
  display: block !important;
}

body.terms-page .policy-banner-image,
body.hired-page .policy-banner-image {
  object-fit: cover !important;
  object-position: center !important;
}

body.terms-page .terms-content {
  max-width: 1000px !important;
}

body.terms-page .terms-frame-image {
  width: 100% !important;
  height: auto !important;
  display: block !important;
}

body.terms-page .terms-content .terms-frame-image ~ :not(.visually-hidden) {
  display: none !important;
}

@media (max-width: 780px) {
  body.terms-page .terms-hero {
    aspect-ratio: 414 / 472 !important;
  }

  body.hired-page .hired-hero {
    aspect-ratio: 414 / 240 !important;
  }

  body.hired-page .hired-banner-image {
    object-position: left center !important;
  }

  body.terms-page .policy-content-section {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }
}

@media (max-width: 520px) {
  body.hired-page .hired-hero {
    aspect-ratio: 414 / 235 !important;
  }

  body.hired-page .hired-banner-image {
    object-position: 7% center !important;
  }
}

/* Final Terms page: real text with section arrows */
body.terms-page .terms-frame-image {
  display: none !important;
}

body.terms-page .terms-content .terms-frame-image ~ :not(.visually-hidden),
body.terms-page .terms-content > :not(.terms-frame-image) {
  display: revert !important;
  visibility: visible !important;
  opacity: 1 !important;
}

body.terms-page .terms-content h2,
body.terms-page .terms-content p,
body.terms-page .terms-content ul {
  display: block !important;
}

body.terms-page .terms-content li {
  display: list-item !important;
}

body.terms-page .terms-content h3 {
  position: relative !important;
  display: block !important;
  padding-left: 28px !important;
}

body.terms-page .terms-content h3::before {
  content: '' !important;
  position: absolute !important;
  left: 0 !important;
  top: 50% !important;
  display: block !important;
  width: 18px !important;
  height: 12px !important;
  transform: translateY(-50%) !important;
  background: url('../rsc/terms-and-conditions/point-arrow.png') center / contain no-repeat !important;
}

/* Final shared inner-page hero title typography */
body.about-page .page-hero h1,
body.hired-page .policy-hero-copy h1,
body.terms-page .policy-hero-copy h1 {
  color: #fff !important;
  font-family: 'Instrument Sans', 'Poppins', Arial, sans-serif !important;
  font-size: clamp(52px, 4.9vw, 70px) !important;
  line-height: .94 !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  text-transform: uppercase !important;
}

@media (max-width: 520px) {
  body.about-page .page-hero h1,
  body.hired-page .policy-hero-copy h1,
  body.terms-page .policy-hero-copy h1 {
    font-size: clamp(36px, 10vw, 42px) !important;
    line-height: .94 !important;
  }
}

/* Final About hero subtitle typography */
body.about-page .page-hero p {
  max-width: 620px !important;
  font-family: var(--body) !important;
  font-size: 20px !important;
  line-height: 1.2 !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
}

/* Final hero heading weight */
body.about-page .page-hero h1,
body.previous-events-page .previous-events-hero-copy h1,
body.hired-page .policy-hero-copy h1,
body.terms-page .policy-hero-copy h1 {
  color: #fff !important;
  font-family: 'Instrument Sans', 'Poppins', Arial, sans-serif !important;
  font-size: clamp(52px, 4.9vw, 70px) !important;
  line-height: .94 !important;
  font-weight: 600 !important;
  letter-spacing: 0 !important;
  text-transform: uppercase !important;
}

/* Final Terms legal copy layout */
body.terms-page .terms-content {
  max-width: 900px !important;
}

body.terms-page .terms-content .terms-legal-list {
  display: block !important;
  margin: 0 0 22px !important;
  color: #222 !important;
  font-family: 'Instrument Sans', 'Poppins', Arial, sans-serif !important;
  font-size: 11px !important;
  line-height: 1.22 !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
}

body.terms-page .terms-content .terms-legal-list p {
  position: relative !important;
  display: block !important;
  margin: 0 0 13px !important;
  padding-left: 30px !important;
  color: inherit !important;
  font: inherit !important;
}

body.terms-page .terms-content .terms-legal-list p.terms-sub {
  margin-left: 32px !important;
  padding-left: 38px !important;
}

body.terms-page .terms-content .terms-number {
  position: absolute !important;
  left: 0 !important;
  top: 0 !important;
  min-width: 26px !important;
  font-weight: 600 !important;
}

@media (max-width: 640px) {
  body.terms-page .terms-content .terms-legal-list p.terms-sub {
    margin-left: 12px !important;
    padding-left: 36px !important;
  }
}

/* Final contact button match */
body.contact-page .contact-form-card button {
  box-sizing: border-box !important;
  width: 190px !important;
  min-width: 190px !important;
  min-height: 42px !important;
  height: 42px !important;
  padding: 0 24px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  justify-self: start !important;
  border: 0 !important;
  border-radius: 6px !important;
  color: #fff !important;
  background: #000 !important;
  font-family: 'Instrument Sans', 'Poppins', Arial, sans-serif !important;
  font-size: 16px !important;
  line-height: 1 !important;
  font-weight: 600 !important;
  letter-spacing: 0 !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  white-space: nowrap !important;
}

@media (max-width: 520px) {
  body.contact-page .contact-form-card button {
    width: 100% !important;
    min-width: 0 !important;
    max-width: calc(100vw - 44px) !important;
    padding: 0 18px !important;
  }
}

/* Final global header nav lock - active page must not resize the menu */
@media (min-width: 981px) {
  body.about-page .main-nav,
  body.contact-page .main-nav,
  body.policy-page .main-nav,
  body.terms-page .main-nav,
  body.previous-events-page .main-nav,
  body.quick-form-page .main-nav {
    width: 532px !important;
    min-width: 532px !important;
    max-width: 532px !important;
    height: 21px !important;
    min-height: 21px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 20px !important;
    overflow: visible !important;
  }

  body.about-page .main-nav a,
  body.contact-page .main-nav a,
  body.policy-page .main-nav a,
  body.terms-page .main-nav a,
  body.previous-events-page .main-nav a,
  body.quick-form-page .main-nav a,
  body.about-page .main-nav a[aria-current="page"],
  body.contact-page .main-nav a[aria-current="page"],
  body.policy-page .main-nav a[aria-current="page"],
  body.terms-page .main-nav a[aria-current="page"],
  body.previous-events-page .main-nav a[aria-current="page"],
  body.quick-form-page .main-nav a[aria-current="page"] {
    position: relative !important;
    box-sizing: border-box !important;
    height: 21px !important;
    min-height: 21px !important;
    padding: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #fff !important;
    background: transparent !important;
    font-family: 'TOC Instrument Sans', sans-serif !important;
    font-size: 18px !important;
    line-height: 20.4px !important;
    font-weight: 600 !important;
    letter-spacing: 0 !important;
    text-decoration: none !important;
    text-transform: none !important;
    overflow: visible !important;
  }

  body.about-page .main-nav a::before,
  body.contact-page .main-nav a::before,
  body.policy-page .main-nav a::before,
  body.terms-page .main-nav a::before,
  body.previous-events-page .main-nav a::before,
  body.quick-form-page .main-nav a::before {
    content: none !important;
    display: none !important;
  }

  body.about-page .main-nav a::after,
  body.contact-page .main-nav a::after,
  body.policy-page .main-nav a::after,
  body.terms-page .main-nav a::after,
  body.previous-events-page .main-nav a::after,
  body.quick-form-page .main-nav a::after {
    content: '' !important;
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    bottom: -7px !important;
    width: 100% !important;
    height: 2px !important;
    display: block !important;
    background: #7eb7ce !important;
    border: 0 !important;
    border-radius: 999px !important;
    opacity: 0 !important;
    transform: scaleX(0) !important;
    transform-origin: center !important;
    transition: opacity .18s ease, transform .18s ease !important;
    pointer-events: none !important;
  }

  body.about-page .main-nav a:hover::after,
  body.about-page .main-nav a:focus-visible::after,
  body.about-page .main-nav a[aria-current="page"]::after,
  body.contact-page .main-nav a:hover::after,
  body.contact-page .main-nav a:focus-visible::after,
  body.contact-page .main-nav a[aria-current="page"]::after,
  body.policy-page .main-nav a:hover::after,
  body.policy-page .main-nav a:focus-visible::after,
  body.policy-page .main-nav a[aria-current="page"]::after,
  body.terms-page .main-nav a:hover::after,
  body.terms-page .main-nav a:focus-visible::after,
  body.terms-page .main-nav a[aria-current="page"]::after,
  body.previous-events-page .main-nav a:hover::after,
  body.previous-events-page .main-nav a:focus-visible::after,
  body.previous-events-page .main-nav a[aria-current="page"]::after,
  body.quick-form-page .main-nav a:hover::after,
  body.quick-form-page .main-nav a:focus-visible::after,
  body.quick-form-page .main-nav a[aria-current="page"]::after {
    opacity: 1 !important;
    transform: scaleX(1) !important;
  }
}

/* Final About page Figma lock: banner, team image, and balanced content spacing. */
body.about-page .about-hero {
  height: 389px !important;
  min-height: 389px !important;
  max-height: 389px !important;
}

body.about-page .about-hero > .page-hero-copy,
body.about-page .about-hero .page-hero-copy {
  position: absolute !important;
  left: max(80px, calc((100vw - 1921px) / 2 + 152px)) !important;
  top: 99.5px !important;
  right: auto !important;
  bottom: auto !important;
  width: 566px !important;
  max-width: min(566px, calc(100vw - 160px)) !important;
  height: 156px !important;
  min-height: 156px !important;
  max-height: 156px !important;
  margin: 0 !important;
  padding: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
  transform: none !important;
}

body.about-page .about-hero .page-hero-copy h1,
body.about-page .page-hero h1 {
  width: 566px !important;
  max-width: 100% !important;
  height: 91px !important;
  min-height: 91px !important;
  max-height: 91px !important;
  margin: 0 0 15px !important;
  padding: 0 !important;
  color: #fff !important;
  font-family: 'Instrument Sans', 'Inter', Arial, sans-serif !important;
  font-size: 75px !important;
  line-height: 1 !important;
  font-weight: 600 !important;
  letter-spacing: 3px !important;
  text-transform: uppercase !important;
}

body.about-page .about-hero .page-hero-copy p,
body.about-page .page-hero p {
  width: 566px !important;
  max-width: 100% !important;
  height: 50px !important;
  min-height: 50px !important;
  max-height: 50px !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #fff !important;
  font-family: 'Instrument Sans', 'Inter', Arial, sans-serif !important;
  font-size: 25px !important;
  line-height: 1 !important;
  font-weight: 400 !important;
  letter-spacing: 1px !important;
  text-align: left !important;
}

body.about-page .about-content-section {
  padding-top: 84px !important;
  padding-bottom: 84px !important;
}

body.about-page .about-row + .about-row,
body.about-page .about-row-bottom {
  margin-top: 84px !important;
}

body.about-page .about-row.about-row-top,
body.about-page .about-row-top {
  width: min(1607px, calc(100vw - 64px)) !important;
  max-width: 1607px !important;
  min-height: 527px !important;
  margin: 0 auto !important;
  padding: 0 !important;
  display: grid !important;
  grid-template-columns: 791px 732px !important;
  column-gap: 84px !important;
  align-items: start !important;
  justify-content: center !important;
}

body.about-page .about-team-image {
  width: 791px !important;
  max-width: 791px !important;
  height: 527px !important;
  aspect-ratio: 791 / 527 !important;
  margin: 0 !important;
  border-radius: 0 !important;
  overflow: visible !important;
  background: transparent !important;
}

body.about-page .about-team-image img {
  width: 791px !important;
  max-width: none !important;
  height: 527px !important;
  display: block !important;
  object-fit: contain !important;
  object-position: center center !important;
  border-radius: 0 !important;
}

body.about-page .about-team-image::before,
body.about-page .about-team-image::after {
  display: none !important;
  content: none !important;
}

body.about-page .about-copy-right {
  width: 732px !important;
  max-width: 732px !important;
  height: 527px !important;
  min-height: 527px !important;
  margin: 0 !important;
  padding: 0 !important;
}

body.about-page .about-copy-right h2 {
  width: 732px !important;
  max-width: 732px !important;
  min-height: 99px !important;
  margin: 0 0 55px !important;
  padding: 0 !important;
  color: #000 !important;
  font-family: 'Instrument Sans', 'Inter', Arial, sans-serif !important;
  font-size: 45px !important;
  line-height: 1 !important;
  font-weight: 600 !important;
  letter-spacing: 2px !important;
}

body.about-page .about-copy-right h2 em {
  display: block !important;
  font-family: inherit !important;
  font-size: inherit !important;
  line-height: inherit !important;
  font-weight: 500 !important;
  font-style: italic !important;
  letter-spacing: 2px !important;
}

body.about-page .about-copy-right p {
  width: 732px !important;
  max-width: 732px !important;
  margin: 0 0 24px !important;
  padding: 0 !important;
  color: #000 !important;
  font-family: 'Inter', 'Instrument Sans', Arial, sans-serif !important;
  font-size: 20px !important;
  line-height: 1.2 !important;
  font-weight: 300 !important;
  letter-spacing: 0 !important;
}

body.about-page .about-copy-right p:last-child {
  margin-bottom: 0 !important;
}

@media (max-width: 1670px) and (min-width: 981px) {
  body.about-page .about-row.about-row-top,
  body.about-page .about-row-top {
    width: min(1360px, calc(100vw - 64px)) !important;
    grid-template-columns: minmax(0, 1.08fr) minmax(0, 1fr) !important;
    column-gap: 64px !important;
  }

  body.about-page .about-team-image,
  body.about-page .about-team-image img,
  body.about-page .about-copy-right,
  body.about-page .about-copy-right h2,
  body.about-page .about-copy-right p {
    width: 100% !important;
    max-width: none !important;
  }

  body.about-page .about-team-image,
  body.about-page .about-team-image img {
    height: auto !important;
  }
}

@media (max-width: 980px) {
  body.about-page .about-hero {
    height: 260px !important;
    min-height: 260px !important;
    max-height: 260px !important;
  }

  body.about-page .about-hero > .page-hero-copy,
  body.about-page .about-hero .page-hero-copy {
    left: 24px !important;
    top: 72px !important;
    width: min(566px, calc(100vw - 48px)) !important;
    max-width: calc(100vw - 48px) !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
  }

  body.about-page .about-hero .page-hero-copy h1,
  body.about-page .page-hero h1 {
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    margin-bottom: 12px !important;
    font-size: clamp(42px, 9vw, 75px) !important;
    letter-spacing: clamp(1px, .4vw, 3px) !important;
  }

  body.about-page .about-hero .page-hero-copy p,
  body.about-page .page-hero p {
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    font-size: clamp(16px, 4.7vw, 25px) !important;
    letter-spacing: .4px !important;
  }

  body.about-page .about-content-section {
    padding: 56px 24px !important;
  }

  body.about-page .about-row.about-row-top,
  body.about-page .about-row-top {
    width: min(520px, 100%) !important;
    min-height: 0 !important;
    grid-template-columns: 1fr !important;
    row-gap: 28px !important;
    column-gap: 0 !important;
  }

  body.about-page .about-team-image,
  body.about-page .about-team-image img,
  body.about-page .about-copy-right,
  body.about-page .about-copy-right h2,
  body.about-page .about-copy-right p {
    width: 100% !important;
    max-width: none !important;
  }

  body.about-page .about-team-image,
  body.about-page .about-team-image img,
  body.about-page .about-copy-right {
    height: auto !important;
    min-height: 0 !important;
  }
}

/* Final Terms & Conditions Figma content lock. */
body.terms-page .policy-content-section {
  padding: 39px 0 84px !important;
  background: #fff !important;
}

body.terms-page .terms-content {
  box-sizing: border-box !important;
  width: min(1197px, calc(100vw - 48px)) !important;
  max-width: 1197px !important;
  margin: 0 auto !important;
  padding: 0 !important;
  color: #000 !important;
}

body.terms-page .terms-content h2 {
  box-sizing: border-box !important;
  width: calc(100% - 56px) !important;
  height: 40px !important;
  margin: 0 0 39px 28px !important;
  padding: 0 !important;
  color: #000 !important;
  font-family: 'HvDTrial Brandon Grotesque', 'Brandon Grotesque', 'Arial Narrow', 'Aptos Narrow', 'Instrument Sans', Arial, sans-serif !important;
  font-size: 40.3px !important;
  line-height: 40px !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
}

body.terms-page .terms-content h3 {
  box-sizing: border-box !important;
  position: relative !important;
  width: calc(100% - 99px) !important;
  min-height: 26px !important;
  margin: 0 0 18px 30px !important;
  padding: 0 0 0 39px !important;
  color: #000 !important;
  font-family: 'Inter', 'Instrument Sans', Arial, sans-serif !important;
  font-size: 22px !important;
  line-height: 120% !important;
  font-weight: 600 !important;
  letter-spacing: 0 !important;
}

body.terms-page .terms-content h3:not(:first-of-type) {
  margin-top: 34px !important;
}

body.terms-page .terms-content h3::before {
  content: '' !important;
  position: absolute !important;
  left: 0 !important;
  top: 4px !important;
  width: 28px !important;
  height: 18px !important;
  transform: none !important;
  background: url('../rsc/terms-and-conditions/point-arrow.png') center / contain no-repeat !important;
}

body.terms-page .terms-content .terms-legal-list {
  box-sizing: border-box !important;
  display: block !important;
  width: calc(100% - 30px) !important;
  margin: 0 0 31px 30px !important;
  color: #000 !important;
  font-family: 'Inter', 'Instrument Sans', Arial, sans-serif !important;
  font-size: 20px !important;
  line-height: 120% !important;
  font-weight: 300 !important;
  letter-spacing: 0 !important;
}

body.terms-page .terms-content .terms-legal-list p {
  position: relative !important;
  display: block !important;
  margin: 0 0 24px !important;
  padding-left: 30px !important;
  color: inherit !important;
  font: inherit !important;
}

body.terms-page .terms-content .terms-legal-list p.terms-sub {
  margin-left: 52px !important;
  padding-left: 42px !important;
}

body.terms-page .terms-content .terms-number {
  position: absolute !important;
  left: 0 !important;
  top: 0 !important;
  min-width: 26px !important;
  font-weight: 600 !important;
}

@media (max-width: 760px) {
  body.terms-page .policy-content-section {
    padding: 34px 0 64px !important;
  }

  body.terms-page .terms-content {
    width: min(100% - 32px, 1197px) !important;
  }

  body.terms-page .terms-content h2 {
    width: 100% !important;
    height: auto !important;
    margin-left: 0 !important;
    font-size: 32px !important;
    line-height: 1 !important;
  }

  body.terms-page .terms-content h3,
  body.terms-page .terms-content .terms-legal-list {
    width: 100% !important;
    margin-left: 0 !important;
  }

  body.terms-page .terms-content .terms-legal-list {
    font-size: 16px !important;
  }

  body.terms-page .terms-content .terms-legal-list p.terms-sub {
    margin-left: 20px !important;
    padding-left: 38px !important;
  }
}

/* Final Hired Items Policy content lock: match Terms content typography and spacing. */
body.hired-page .policy-content-section {
  padding: 39px 0 84px !important;
  background: #fff !important;
}

body.hired-page .policy-content {
  box-sizing: border-box !important;
  width: min(1197px, calc(100vw - 48px)) !important;
  max-width: 1197px !important;
  margin: 0 auto !important;
  padding: 0 !important;
  color: #000 !important;
}

body.hired-page .policy-content h2 {
  box-sizing: border-box !important;
  width: calc(100% - 56px) !important;
  height: 40px !important;
  margin: 0 0 39px 28px !important;
  padding: 0 !important;
  color: #000 !important;
  font-family: 'HvDTrial Brandon Grotesque', 'Brandon Grotesque', 'Arial Narrow', 'Aptos Narrow', 'Instrument Sans', Arial, sans-serif !important;
  font-size: 40.3px !important;
  line-height: 40px !important;
  font-weight: 400 !important;
  font-stretch: normal !important;
  letter-spacing: 0 !important;
}

body.hired-page .policy-content h3 {
  box-sizing: border-box !important;
  position: relative !important;
  width: calc(100% - 99px) !important;
  min-height: 26px !important;
  margin: 0 0 18px 30px !important;
  padding: 0 0 0 39px !important;
  color: #000 !important;
  font-family: 'Inter', 'Instrument Sans', Arial, sans-serif !important;
  font-size: 22px !important;
  line-height: 120% !important;
  font-weight: 600 !important;
  letter-spacing: 0 !important;
}

body.hired-page .policy-content h3:not(:first-of-type) {
  margin-top: 34px !important;
}

body.hired-page .policy-content h3::before {
  content: '' !important;
  position: absolute !important;
  left: 0 !important;
  top: 4px !important;
  width: 28px !important;
  height: 18px !important;
  transform: none !important;
  background: url('../rsc/terms-and-conditions/point-arrow.png') center / contain no-repeat !important;
}

body.hired-page .policy-content ul {
  box-sizing: border-box !important;
  display: block !important;
  width: calc(100% - 30px) !important;
  margin: 0 0 31px 30px !important;
  padding-left: 28px !important;
  color: #000 !important;
  font-family: 'Inter', 'Instrument Sans', Arial, sans-serif !important;
  font-size: 20px !important;
  line-height: 120% !important;
  font-weight: 300 !important;
  letter-spacing: 0 !important;
}

body.hired-page .policy-content li {
  margin: 0 0 20px !important;
  color: inherit !important;
  font: inherit !important;
}

body.hired-page .policy-content li::marker {
  font-size: .72em !important;
}

@media (max-width: 760px) {
  body.hired-page .policy-content-section {
    padding: 34px 0 64px !important;
  }

  body.hired-page .policy-content {
    width: min(100% - 32px, 1197px) !important;
  }

  body.hired-page .policy-content h2 {
    width: 100% !important;
    height: auto !important;
    margin-left: 0 !important;
    font-size: 32px !important;
    line-height: 1 !important;
  }

  body.hired-page .policy-content h3,
  body.hired-page .policy-content ul {
    width: 100% !important;
    margin-left: 0 !important;
  }

  body.hired-page .policy-content ul {
    font-size: 16px !important;
  }
}

/* Final mobile menu lock for inner pages - 2026-06-23 */
@media (max-width: 520px) {
  body.menu-open {
    overflow: hidden !important;
  }

  body.menu-open .site-header {
    z-index: 130 !important;
  }

  body.menu-open .main-nav,
  body.about-page.menu-open .main-nav,
  body.contact-page.menu-open .main-nav,
  body.policy-page.menu-open .main-nav,
  body.terms-page.menu-open .main-nav,
  body.previous-events-page.menu-open .main-nav,
  body.quick-form-page.menu-open .main-nav,
  body.hired-page.menu-open .main-nav {
    box-sizing: border-box !important;
    position: fixed !important;
    top: 90px !important;
    right: 10px !important;
    bottom: auto !important;
    left: auto !important;
    z-index: 140 !important;
    width: min(266px, calc(100vw - 20px)) !important;
    min-width: 0 !important;
    max-width: min(266px, calc(100vw - 20px)) !important;
    height: 300px !important;
    min-height: 300px !important;
    max-height: 300px !important;
    margin: 0 !important;
    padding: 0 !important;
    display: grid !important;
    grid-template-columns: 1fr !important;
    grid-template-rows: 41px repeat(5, 41px) 1fr !important;
    align-items: stretch !important;
    align-content: start !important;
    justify-content: stretch !important;
    gap: 0 !important;
    color: #fff !important;
    background: #000 !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    overflow: hidden !important;
  }

  body.menu-open .main-nav::before,
  body.about-page.menu-open .main-nav::before,
  body.contact-page.menu-open .main-nav::before,
  body.policy-page.menu-open .main-nav::before,
  body.terms-page.menu-open .main-nav::before,
  body.previous-events-page.menu-open .main-nav::before,
  body.quick-form-page.menu-open .main-nav::before,
  body.hired-page.menu-open .main-nav::before {
    content: '\00d7' !important;
    box-sizing: border-box !important;
    width: 100% !important;
    height: 41px !important;
    min-height: 41px !important;
    padding: 0 0 0 10px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    color: #fff !important;
    background: transparent !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 32px !important;
    line-height: 29px !important;
    font-weight: 300 !important;
    letter-spacing: 0 !important;
    cursor: pointer !important;
  }

  body.menu-open .main-nav a,
  body.about-page.menu-open .main-nav a,
  body.contact-page.menu-open .main-nav a,
  body.policy-page.menu-open .main-nav a,
  body.terms-page.menu-open .main-nav a,
  body.previous-events-page.menu-open .main-nav a,
  body.quick-form-page.menu-open .main-nav a,
  body.hired-page.menu-open .main-nav a {
    box-sizing: border-box !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    height: 41px !important;
    min-height: 41px !important;
    max-height: 41px !important;
    margin: 0 !important;
    padding: 0 10px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    color: #fff !important;
    background: #000 !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    font-family: 'TOC Instrument Sans', sans-serif !important;
    font-size: 16px !important;
    line-height: 20.4px !important;
    font-weight: 600 !important;
    letter-spacing: 0 !important;
    text-align: left !important;
    text-decoration: none !important;
    text-transform: none !important;
    white-space: nowrap !important;
  }

  body.menu-open .main-nav a::before,
  body.menu-open .main-nav a::after,
  body.about-page.menu-open .main-nav a::before,
  body.about-page.menu-open .main-nav a::after,
  body.contact-page.menu-open .main-nav a::before,
  body.contact-page.menu-open .main-nav a::after,
  body.policy-page.menu-open .main-nav a::before,
  body.policy-page.menu-open .main-nav a::after,
  body.terms-page.menu-open .main-nav a::before,
  body.terms-page.menu-open .main-nav a::after,
  body.previous-events-page.menu-open .main-nav a::before,
  body.previous-events-page.menu-open .main-nav a::after,
  body.quick-form-page.menu-open .main-nav a::before,
  body.quick-form-page.menu-open .main-nav a::after,
  body.hired-page.menu-open .main-nav a::before,
  body.hired-page.menu-open .main-nav a::after {
    content: none !important;
    display: none !important;
  }

  body.menu-open .main-nav a:nth-child(1) { order: 1 !important; }
  body.menu-open .main-nav a:nth-child(3) { order: 2 !important; }
  body.menu-open .main-nav a:nth-child(4) { order: 3 !important; }
  body.menu-open .main-nav a:nth-child(5) { order: 4 !important; }
  body.menu-open .main-nav a:nth-child(2) { order: 5 !important; }

  body.home.menu-open .main-nav a:nth-child(1),
  body.menu-open .main-nav a[aria-current='page'],
  body.about-page.menu-open .main-nav a[aria-current='page'],
  body.contact-page.menu-open .main-nav a[aria-current='page'],
  body.policy-page.menu-open .main-nav a[aria-current='page'],
  body.terms-page.menu-open .main-nav a[aria-current='page'],
  body.previous-events-page.menu-open .main-nav a[aria-current='page'],
  body.quick-form-page.menu-open .main-nav a[aria-current='page'],
  body.hired-page.menu-open .main-nav a[aria-current='page'],
  body.menu-open .main-nav a:hover,
  body.menu-open .main-nav a:focus-visible,
  body.menu-open .main-nav a:active {
    box-sizing: border-box !important;
    width: 100% !important;
    height: 41px !important;
    min-height: 41px !important;
    max-height: 41px !important;
    padding: 0 10px !important;
    color: #000 !important;
    background: #fff !important;
    border: 0 !important;
    box-shadow: none !important;
    transform: none !important;
  }

  body.menu-open::after {
    inset: 90px 0 0 !important;
    z-index: 100 !important;
    background: rgba(0, 0, 0, .42) !important;
  }
}
/* Final compact mobile menu height lock - 2026-06-23 */
@media (max-width: 520px) {
  body.menu-open .main-nav,
  body.about-page.menu-open .main-nav,
  body.contact-page.menu-open .main-nav,
  body.policy-page.menu-open .main-nav,
  body.terms-page.menu-open .main-nav,
  body.previous-events-page.menu-open .main-nav,
  body.quick-form-page.menu-open .main-nav,
  body.hired-page.menu-open .main-nav {
    height: 246px !important;
    min-height: 246px !important;
    max-height: 246px !important;
    grid-template-rows: 41px repeat(5, 41px) !important;
    padding: 0 !important;
    overflow: hidden !important;
  }

  body.menu-open .main-nav::before,
  body.about-page.menu-open .main-nav::before,
  body.contact-page.menu-open .main-nav::before,
  body.policy-page.menu-open .main-nav::before,
  body.terms-page.menu-open .main-nav::before,
  body.previous-events-page.menu-open .main-nav::before,
  body.quick-form-page.menu-open .main-nav::before,
  body.hired-page.menu-open .main-nav::before,
  body.menu-open .main-nav a,
  body.about-page.menu-open .main-nav a,
  body.contact-page.menu-open .main-nav a,
  body.policy-page.menu-open .main-nav a,
  body.terms-page.menu-open .main-nav a,
  body.previous-events-page.menu-open .main-nav a,
  body.quick-form-page.menu-open .main-nav a,
  body.hired-page.menu-open .main-nav a {
    height: 41px !important;
    min-height: 41px !important;
    max-height: 41px !important;
  }
}
/* Final mobile menu position lock for inner pages - 2026-06-23 */
@media (max-width: 520px) {
  body.about-page.menu-open .main-nav,
  body.contact-page.menu-open .main-nav,
  body.policy-page.menu-open .main-nav,
  body.terms-page.menu-open .main-nav,
  body.previous-events-page.menu-open .main-nav,
  body.quick-form-page.menu-open .main-nav,
  body.hired-page.menu-open .main-nav {
    top: 64px !important;
    height: 246px !important;
    min-height: 246px !important;
    max-height: 246px !important;
    grid-template-rows: 41px repeat(5, 41px) !important;
    padding: 0 !important;
    overflow: hidden !important;
  }

  body.admin-bar.about-page.menu-open .main-nav,
  body.admin-bar.contact-page.menu-open .main-nav,
  body.admin-bar.policy-page.menu-open .main-nav,
  body.admin-bar.terms-page.menu-open .main-nav,
  body.admin-bar.previous-events-page.menu-open .main-nav,
  body.admin-bar.quick-form-page.menu-open .main-nav,
  body.admin-bar.hired-page.menu-open .main-nav {
    top: 110px !important;
  }
}
/* Canonical mobile menu lock - 2026-06-23 */
@media (max-width: 520px) {
  body.menu-open .site-header,
  body.admin-bar.menu-open .site-header {
    position: relative !important;
    z-index: 140 !important;
    overflow: visible !important;
  }

  body.menu-open .site-header .main-nav,
  body.admin-bar.menu-open .site-header .main-nav {
    box-sizing: border-box !important;
    position: absolute !important;
    top: 100% !important;
    right: 10px !important;
    bottom: auto !important;
    left: auto !important;
    z-index: 150 !important;
    width: min(266px, calc(100vw - 20px)) !important;
    min-width: 0 !important;
    max-width: min(266px, calc(100vw - 20px)) !important;
    height: 246px !important;
    min-height: 246px !important;
    max-height: 246px !important;
    margin: 0 !important;
    padding: 0 !important;
    display: grid !important;
    grid-template-columns: 1fr !important;
    grid-template-rows: 41px repeat(5, 41px) !important;
    align-items: stretch !important;
    align-content: start !important;
    justify-content: stretch !important;
    gap: 0 !important;
    color: #fff !important;
    background: #000 !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    overflow: hidden !important;
    transform: none !important;
  }

  body.menu-open .site-header .main-nav::before,
  body.admin-bar.menu-open .site-header .main-nav::before {
    content: '\00d7' !important;
    box-sizing: border-box !important;
    width: 100% !important;
    height: 41px !important;
    min-height: 41px !important;
    max-height: 41px !important;
    padding: 0 10px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    color: #fff !important;
    background: transparent !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 32px !important;
    line-height: 29px !important;
    font-weight: 300 !important;
    letter-spacing: 0 !important;
  }

  body.menu-open .site-header .main-nav a,
  body.admin-bar.menu-open .site-header .main-nav a {
    box-sizing: border-box !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    height: 41px !important;
    min-height: 41px !important;
    max-height: 41px !important;
    margin: 0 !important;
    padding: 0 10px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    color: #fff !important;
    background: #000 !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    font-family: 'TOC Instrument Sans', sans-serif !important;
    font-size: 16px !important;
    line-height: 20.4px !important;
    font-weight: 600 !important;
    letter-spacing: 0 !important;
    text-align: left !important;
    text-decoration: none !important;
    text-transform: none !important;
    white-space: nowrap !important;
    transform: none !important;
  }

  body.menu-open .site-header .main-nav a::before,
  body.menu-open .site-header .main-nav a::after,
  body.admin-bar.menu-open .site-header .main-nav a::before,
  body.admin-bar.menu-open .site-header .main-nav a::after {
    content: none !important;
    display: none !important;
  }

  body.menu-open .site-header .main-nav a:nth-child(1) { order: 1 !important; }
  body.menu-open .site-header .main-nav a:nth-child(3) { order: 2 !important; }
  body.menu-open .site-header .main-nav a:nth-child(4) { order: 3 !important; }
  body.menu-open .site-header .main-nav a:nth-child(5) { order: 4 !important; }
  body.menu-open .site-header .main-nav a:nth-child(2) { order: 5 !important; }

  body.home.menu-open .site-header .main-nav a:nth-child(1),
  body.menu-open .site-header .main-nav a[aria-current='page'],
  body.menu-open .site-header .main-nav a:hover,
  body.menu-open .site-header .main-nav a:focus-visible,
  body.menu-open .site-header .main-nav a:active,
  body.admin-bar.menu-open .site-header .main-nav a[aria-current='page'],
  body.admin-bar.menu-open .site-header .main-nav a:hover,
  body.admin-bar.menu-open .site-header .main-nav a:focus-visible,
  body.admin-bar.menu-open .site-header .main-nav a:active {
    color: #000 !important;
    background: #fff !important;
  }
}

/* Final mobile contact info lock - 414px Figma frame */
@media (max-width: 520px) {
  body.contact-page .contact-page-section {
    box-sizing: border-box !important;
    width: 100% !important;
    padding: 10px 0 40px !important;
    background: #003E57 !important;
    overflow-x: hidden !important;
  }

  body.contact-page .contact-wrap {
    box-sizing: border-box !important;
    width: min(349px, calc(100% - 65px)) !important;
    max-width: 349px !important;
    margin: 0 auto !important;
    display: grid !important;
    grid-template-columns: 1fr !important;
    align-items: start !important;
    justify-items: center !important;
    gap: 0 !important;
  }

  body.contact-page .contact-info-panel {
    box-sizing: border-box !important;
    width: 323px !important;
    max-width: 100% !important;
    min-height: 336.69px !important;
    margin: 0 auto !important;
    padding: 0 !important;
    display: block !important;
  }

  body.contact-page .contact-info-panel h1 {
    box-sizing: border-box !important;
    width: 323px !important;
    max-width: 100% !important;
    min-height: 39px !important;
    margin: 0 0 15px !important;
    color: #fff !important;
    font-family: 'Inter', 'Instrument Sans', Arial, sans-serif !important;
    font-size: 32.61px !important;
    line-height: 39px !important;
    font-weight: 600 !important;
    letter-spacing: 0 !important;
    text-align: left !important;
    text-transform: none !important;
  }

  body.contact-page .contact-intro {
    box-sizing: border-box !important;
    width: 323px !important;
    max-width: 323px !important;
    min-height: 76px !important;
    margin: 0 0 27px !important;
    color: #7EB7CE !important;
    font-family: 'Inter', 'Instrument Sans', Arial, sans-serif !important;
    font-size: 16px !important;
    line-height: 19px !important;
    font-weight: 400 !important;
    letter-spacing: 0 !important;
    text-align: left !important;
  }

  body.contact-page .contact-lines {
    box-sizing: border-box !important;
    width: 323px !important;
    max-width: 323px !important;
    min-height: 166.94px !important;
    margin: 0 !important;
    padding: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
  }

  body.contact-page .contact-lines p {
    box-sizing: border-box !important;
    width: 323px !important;
    max-width: 323px !important;
    min-height: 31.06px !important;
    margin: 0 !important;
    padding: 0 !important;
    display: grid !important;
    grid-template-columns: 31.06px minmax(0, 1fr) !important;
    gap: 11px !important;
    align-items: center !important;
    color: #F7DEDE !important;
    font-family: 'Inter', 'Instrument Sans', Arial, sans-serif !important;
    font-size: 16px !important;
    line-height: 19px !important;
    font-weight: 300 !important;
    letter-spacing: 0 !important;
  }

  body.contact-page .contact-lines p:nth-child(3) {
    margin-top: 19px !important;
  }

  body.contact-page .contact-lines p > span:last-child {
    min-width: 0 !important;
    display: flex !important;
    align-items: baseline !important;
    gap: 4px !important;
    flex-wrap: nowrap !important;
    white-space: nowrap !important;
  }

  body.contact-page .contact-lines strong,
  body.contact-page .contact-lines a {
    color: #F7DEDE !important;
    font-family: 'Inter', 'Instrument Sans', Arial, sans-serif !important;
    font-size: 16px !important;
    line-height: 19px !important;
    letter-spacing: 0 !important;
    text-decoration: none !important;
  }

  body.contact-page .contact-lines strong {
    font-weight: 600 !important;
  }

  body.contact-page .contact-lines a {
    font-weight: 300 !important;
  }

  body.contact-page .contact-lines a[href^='tel'],
  body.contact-page .contact-lines p:nth-child(1) a[href^='tel'],
  body.contact-page .contact-lines p:nth-child(3) a[href^='tel'] {
    font-weight: 600 !important;
  }

  body.contact-page .contact-lines p:nth-child(1) strong,
  body.contact-page .contact-lines p:nth-child(3) strong {
    font-weight: 300 !important;
  }

  body.contact-page .contact-lines p:nth-child(2) strong,
  body.contact-page .contact-lines p:nth-child(4) strong {
    font-weight: 600 !important;
  }

  body.contact-page .contact-icon {
    justify-self: start !important;
    align-self: center !important;
    display: block !important;
    object-fit: contain !important;
  }

  body.contact-page .contact-phone-icon {
    width: 31.06px !important;
    height: 31.06px !important;
  }

  body.contact-page .contact-email-icon-img {
    width: 31.06px !important;
    height: 23.5px !important;
  }

  body.contact-page .contact-form-card {
    margin-top: 50px !important;
  }
}

/* Final mobile contact form card lock - 414px Figma frame */
@media (max-width: 520px) {
  body.contact-page .contact-form-card {
    box-sizing: border-box !important;
    width: 349px !important;
    max-width: 349px !important;
    min-height: 756.72px !important;
    margin: 50px auto 0 !important;
    padding: 36px 15px 92px !important;
    border-radius: 6px !important;
    background: #fff !important;
    box-shadow: none !important;
  }

  body.contact-page .contact-form-card h2,
  body.contact-page .contact-form-card > p,
  body.contact-page .contact-form-card form,
  body.contact-page .contact-form-card small {
    box-sizing: border-box !important;
    width: 319px !important;
    max-width: 319px !important;
  }

  body.contact-page .contact-form-card h2 {
    margin: 0 0 18px !important;
    color: #000 !important;
    font-family: 'Inter', 'Instrument Sans', Arial, sans-serif !important;
    font-size: 40px !important;
    line-height: 46px !important;
    font-weight: 400 !important;
    letter-spacing: 0 !important;
    text-align: left !important;
  }

  body.contact-page .contact-form-card > p {
    margin: 0 0 27.32px !important;
    color: #000 !important;
    font-family: 'Inter', 'Instrument Sans', Arial, sans-serif !important;
    font-size: 16px !important;
    line-height: 19px !important;
    font-weight: 400 !important;
    letter-spacing: 0 !important;
  }

  body.contact-page .contact-form-card form {
    display: grid !important;
    grid-template-columns: 319px !important;
    gap: 9px !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  body.contact-page .contact-form-row,
  body.contact-page .contact-phone-row,
  body.contact-page .message-wrap {
    box-sizing: border-box !important;
    width: 319px !important;
    max-width: 319px !important;
  }

  body.contact-page .contact-form-row {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 9px !important;
  }

  body.contact-page .contact-phone-row {
    display: grid !important;
    grid-template-columns: 70px 1fr !important;
    gap: 9px !important;
  }

  body.contact-page .contact-form-card input,
  body.contact-page .contact-form-card textarea {
    box-sizing: border-box !important;
    border: 2px solid #0C6682 !important;
    border-radius: 5px !important;
    color: #111 !important;
    background: #fff !important;
    font-family: 'Inter', 'Instrument Sans', Arial, sans-serif !important;
    font-size: 16px !important;
    line-height: 19px !important;
    font-weight: 400 !important;
    letter-spacing: 0 !important;
  }

  body.contact-page .contact-form-card input {
    height: 40px !important;
    padding: 0 16px !important;
  }

  body.contact-page .contact-form-card input::placeholder,
  body.contact-page .contact-form-card textarea::placeholder {
    color: #B7B7B7 !important;
    opacity: 1 !important;
  }

  body.contact-page .contact-form-card textarea {
    width: 319px !important;
    height: 186.36px !important;
    padding: 13px 16px 32px !important;
    resize: none !important;
  }

  body.contact-page .message-wrap {
    position: relative !important;
    display: block !important;
    height: 186.36px !important;
  }

  body.contact-page .message-wrap span {
    right: 15px !important;
    bottom: 13px !important;
    color: #B7B7B7 !important;
    font-family: 'Inter', 'Instrument Sans', Arial, sans-serif !important;
    font-size: 16px !important;
    line-height: 19px !important;
    font-weight: 400 !important;
    letter-spacing: 0 !important;
  }

  body.contact-page .contact-form-card button {
    width: 240px !important;
    height: 40px !important;
    min-height: 40px !important;
    max-height: 40px !important;
    margin: 18.32px 0 0 !important;
    padding: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 0 !important;
    border: 0 !important;
    border-radius: 4px !important;
    color: #fff !important;
    background: #7EB7CE !important;
    font-family: 'Inter', 'Instrument Sans', Arial, sans-serif !important;
    font-size: 14px !important;
    line-height: 17px !important;
    font-weight: 600 !important;
    letter-spacing: 0 !important;
    text-transform: uppercase !important;
  }

  body.contact-page .contact-form-card small {
    width: 324px !important;
    max-width: 324px !important;
    margin: 13.66px 0 0 !important;
    color: #000 !important;
    font-family: 'Inter', 'Instrument Sans', Arial, sans-serif !important;
    font-size: 14px !important;
    line-height: 17px !important;
    font-weight: 400 !important;
    letter-spacing: 0 !important;
  }

  body.contact-page .contact-form-card small a {
    color: #000 !important;
    font-weight: 600 !important;
    text-decoration: none !important;
  }
}

/* Final mobile About page lock - 414px Figma frames */
@media (max-width: 520px) {
  body.about-page .about-hero {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 414px !important;
    height: 472px !important;
    min-height: 472px !important;
    max-height: 472px !important;
    margin: 0 auto !important;
    position: relative !important;
    overflow: hidden !important;
    background: url('../about/about-hero-mobile-banner.png') center center / 100% 100% no-repeat !important;
  }

  body.about-page .about-hero::before,
  body.about-page .about-hero::after {
    display: none !important;
    content: none !important;
  }

  body.about-page .about-hero > .page-hero-copy,
  body.about-page .about-hero .page-hero-copy {
    box-sizing: border-box !important;
    position: absolute !important;
    left: 25px !important;
    top: 296.5px !important;
    right: auto !important;
    bottom: auto !important;
    width: 322px !important;
    max-width: 322px !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 0 !important;
    display: block !important;
    transform: none !important;
  }

  body.about-page .about-hero .page-hero-copy h1,
  body.about-page .page-hero h1 {
    box-sizing: border-box !important;
    width: 322px !important;
    max-width: 322px !important;
    height: 45px !important;
    min-height: 45px !important;
    max-height: 45px !important;
    margin: 0 0 13px !important;
    padding: 0 !important;
    color: #fff !important;
    font-family: 'Inter', 'Instrument Sans', Arial, sans-serif !important;
    font-size: 45px !important;
    line-height: 45px !important;
    font-weight: 600 !important;
    letter-spacing: 0 !important;
    text-align: left !important;
    text-transform: uppercase !important;
    white-space: nowrap !important;
    overflow: visible !important;
  }

  body.about-page .about-hero .page-hero-copy p,
  body.about-page .page-hero p {
    box-sizing: border-box !important;
    width: 274px !important;
    max-width: 274px !important;
    height: 47px !important;
    min-height: 47px !important;
    max-height: 47px !important;
    margin: 0 !important;
    padding: 0 !important;
    color: #fff !important;
    font-family: 'Inter', 'Instrument Sans', Arial, sans-serif !important;
    font-size: 15px !important;
    line-height: 23.1px !important;
    font-weight: 300 !important;
    letter-spacing: 0 !important;
    text-align: left !important;
    text-transform: none !important;
    overflow: visible !important;
  }

  body.about-page .about-content-section {
    box-sizing: border-box !important;
    width: 100% !important;
    padding: 47px 0 60px !important;
    background: #fff !important;
    overflow: hidden !important;
  }

  body.about-page .about-row.about-row-top {
    box-sizing: border-box !important;
    width: 386px !important;
    max-width: calc(100% - 28px) !important;
    height: 1014px !important;
    min-height: 1014px !important;
    max-height: 1014px !important;
    margin: 0 auto !important;
    padding: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    justify-content: flex-start !important;
    gap: 50px !important;
  }

  body.about-page .about-row.about-row-top > .about-team-image {
    box-sizing: border-box !important;
    width: 386px !important;
    max-width: 100% !important;
    height: 437px !important;
    min-height: 437px !important;
    max-height: 437px !important;
    flex: 0 0 437px !important;
    margin: 0 !important;
    border-radius: 46px !important;
    line-height: 0 !important;
    overflow: hidden !important;
  }

  body.about-page .about-row.about-row-top > .about-team-image img {
    width: 100% !important;
    height: 437px !important;
    min-height: 437px !important;
    max-height: 437px !important;
    display: block !important;
    object-fit: cover !important;
    object-position: center center !important;
    border-radius: inherit !important;
  }

  body.about-page .about-copy-right {
    box-sizing: border-box !important;
    width: 386px !important;
    max-width: 100% !important;
    min-height: 527px !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  body.about-page .about-row.about-row-top .about-copy-right h2,
  body.about-page .about-row.about-row-top .about-copy-right h2:not(#toc-about-heading-lock) {
    width: 100% !important;
    max-width: 100% !important;
    height: 90px !important;
    min-height: 90px !important;
    margin: 0 0 55px !important;
    color: #000 !important;
    font-family: 'Instrument Sans', 'Inter', Arial, sans-serif !important;
    font-size: 45px !important;
    line-height: 45px !important;
    font-weight: 600 !important;
    letter-spacing: 2px !important;
    overflow: visible !important;
  }

  body.about-page .about-row.about-row-top .about-copy-right h2 em {
    display: block !important;
    color: #000 !important;
    font-family: 'Instrument Sans', 'Inter', Arial, sans-serif !important;
    font-size: 45px !important;
    line-height: 45px !important;
    font-style: italic !important;
    font-weight: 500 !important;
    letter-spacing: 2px !important;
  }

  body.about-page .about-row.about-row-top .about-copy-right p {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    color: #000 !important;
    font-family: 'Inter', 'Instrument Sans', Arial, sans-serif !important;
    font-size: 20px !important;
    line-height: 24px !important;
    font-weight: 300 !important;
    letter-spacing: 0 !important;
  }

  body.about-page .about-row.about-row-top .about-copy-right p + p {
    margin-top: 24px !important;
  }

  body.about-page .about-row.about-row-top .about-team-image,
  body.about-page .about-row.about-row-top .about-team-image img {
    border-radius: 46px !important;
  }

  body.about-page .about-row.about-row-bottom {
    box-sizing: border-box !important;
    width: 386px !important;
    max-width: calc(100% - 28px) !important;
    height: 872px !important;
    min-height: 872px !important;
    max-height: 872px !important;
    margin: 84px auto 0 !important;
    padding: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    justify-content: flex-start !important;
    gap: 50px !important;
  }

  body.about-page .about-row.about-row-bottom > .about-work-image {
    box-sizing: border-box !important;
    order: 1 !important;
    width: 386px !important;
    max-width: 100% !important;
    height: 437px !important;
    min-height: 437px !important;
    max-height: 437px !important;
    flex: 0 0 437px !important;
    margin: 0 !important;
    border-radius: 46px !important;
    line-height: 0 !important;
    overflow: hidden !important;
  }

  body.about-page .about-row.about-row-bottom > .about-work-image img {
    width: 100% !important;
    height: 437px !important;
    min-height: 437px !important;
    max-height: 437px !important;
    display: block !important;
    object-fit: cover !important;
    object-position: center center !important;
    border-radius: inherit !important;
  }

  body.about-page .about-row.about-row-bottom > .about-copy-left {
    box-sizing: border-box !important;
    order: 2 !important;
    width: 386px !important;
    max-width: 100% !important;
    min-height: 385px !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  body.about-page .about-row.about-row-bottom .about-copy-left h2,
  body.about-page .about-row.about-row-bottom .about-copy-left h2:not(#toc-about-heading-lock),
  body.about-page .about-row-bottom .about-copy-left h2:not(#toc-about-heading-lock) {
    width: 100% !important;
    max-width: 100% !important;
    height: 90px !important;
    min-height: 90px !important;
    margin: 0 0 55px !important;
    color: #000 !important;
    font-family: 'Instrument Sans', 'Inter', Arial, sans-serif !important;
    font-size: 45px !important;
    line-height: 45px !important;
    font-weight: 600 !important;
    letter-spacing: 2px !important;
    overflow: visible !important;
  }

  body.about-page .about-row.about-row-bottom .about-copy-left h2 em {
    display: block !important;
    color: #000 !important;
    font-family: 'Instrument Sans', 'Inter', Arial, sans-serif !important;
    font-size: 45px !important;
    line-height: 45px !important;
    font-style: italic !important;
    font-weight: 500 !important;
    letter-spacing: 2px !important;
  }

  body.about-page .about-row.about-row-bottom .about-copy-left p {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    color: #000 !important;
    font-family: 'Inter', 'Instrument Sans', Arial, sans-serif !important;
    font-size: 20px !important;
    line-height: 24px !important;
    font-weight: 300 !important;
    letter-spacing: 0 !important;
  }

  body.about-page .about-row.about-row-bottom .about-copy-left p + p {
    margin-top: 24px !important;
  }
}

/* About mobile image clip correction */
@media (max-width: 520px) {
  body.about-page .about-row.about-row-bottom > figure.about-work-image {
    box-sizing: border-box !important;
    width: 386px !important;
    max-width: 100% !important;
    height: 437px !important;
    min-height: 437px !important;
    max-height: 437px !important;
    border-radius: 46px !important;
    overflow: hidden !important;
    clip-path: inset(0 round 46px) !important;
    -webkit-mask-image: -webkit-radial-gradient(#fff, #000) !important;
    line-height: 0 !important;
    background: transparent !important;
    transform: translateZ(0) !important;
  }

  body.about-page .about-row.about-row-bottom > figure.about-work-image img {
    width: 100% !important;
    height: 437px !important;
    min-height: 437px !important;
    max-height: 437px !important;
    display: block !important;
    object-fit: cover !important;
    object-position: center center !important;
    border-radius: 0 !important;
    transform: scale(1.003) translateZ(0) !important;
    backface-visibility: hidden !important;
  }
}

/* About desktop SEO image proportion lock - 2026-06-25 */
@media (min-width: 981px) {
  body.about-page .about-row.about-row-top,
  body.about-page .about-row-top,
  body.about-page .about-row.about-row-bottom,
  body.about-page .about-row-bottom {
    width: min(1591px, calc(100vw - 64px)) !important;
    max-width: 1591px !important;
    grid-template-columns: minmax(0, 775px) minmax(0, 732px) !important;
    column-gap: clamp(48px, 4.4vw, 84px) !important;
  }

  body.about-page .about-row.about-row-bottom,
  body.about-page .about-row-bottom {
    grid-template-columns: minmax(0, 732px) minmax(0, 775px) !important;
  }

  body.about-page .about-row.about-row-bottom > .about-copy-left {
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
  }

  body.about-page .about-row.about-row-top > .about-team-image,
  body.about-page .about-row.about-row-bottom > .about-work-image,
  body.about-page .about-team-image,
  body.about-page .about-work-image {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 775px !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    aspect-ratio: 775 / 527 !important;
    margin: 0 !important;
    border-radius: 46px !important;
    overflow: hidden !important;
    line-height: 0 !important;
  }

  body.about-page .about-row.about-row-top > .about-team-image img,
  body.about-page .about-row.about-row-bottom > .about-work-image img,
  body.about-page .about-team-image img,
  body.about-page .about-work-image img {
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    display: block !important;
    object-fit: contain !important;
    object-position: center center !important;
    border-radius: inherit !important;
    transform: none !important;
  }
}

/* TOC v1.0.227: exact supplied mobile Hired Items Policy banner frame. */
@media (max-width: 780px) {
  body.hired-page .hired-hero {
    aspect-ratio: 414 / 472 !important;
    min-height: 0 !important;
  }

  body.hired-page .hired-banner-image {
    object-fit: cover !important;
    object-position: center center !important;
  }
}

/* TOC v1.0.228: mobile About rows must grow with live text. */
@media (max-width: 520px) {
  body.about-page .about-content-section {
    overflow: visible !important;
  }

  body.about-page .about-row.about-row-top,
  body.about-page .about-row.about-row-bottom {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
  }

  body.about-page .about-copy-right,
  body.about-page .about-copy-left {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
  }

  body.about-page .about-row.about-row-bottom {
    margin-top: 55px !important;
  }
}

/* TOC v1.0.232: Terms mobile hero uses supplied textless banner with live text. */
@media (max-width: 520px) {
  body.terms-page .terms-hero {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    max-width: 414px !important;
    aspect-ratio: 414 / 472 !important;
    min-height: 0 !important;
    margin: 0 auto !important;
    overflow: hidden !important;
    background: #0b4c5e !important;
  }

  body.terms-page .terms-hero .policy-banner-picture,
  body.terms-page .terms-hero .policy-banner-image {
    position: absolute !important;
    inset: 0 !important;
    display: block !important;
    width: 100% !important;
    height: 100% !important;
  }

  body.terms-page .terms-hero .policy-banner-image {
    object-fit: cover !important;
    object-position: center center !important;
  }

  body.terms-page .terms-hero .policy-hero-copy {
    position: absolute !important;
    z-index: 3 !important;
    top: 244px !important;
    left: 24px !important;
    width: 366px !important;
    max-width: calc(100% - 48px) !important;
    margin: 0 !important;
    color: #fff !important;
    text-decoration: none !important;
  }

  body.terms-page .terms-hero .policy-hero-copy h1 {
    width: 322px !important;
    max-width: 100% !important;
    margin: 0 0 16px !important;
    color: #fff !important;
    font-family: "Instrument Sans", "Poppins", Arial, sans-serif !important;
    font-size: 45px !important;
    line-height: 1 !important;
    font-weight: 600 !important;
    letter-spacing: 2.59px !important;
    text-transform: uppercase !important;
  }

  body.terms-page .terms-hero .policy-hero-copy p {
    width: 366px !important;
    max-width: 100% !important;
    margin: 0 !important;
    color: #fff !important;
    font-family: "Inter", Arial, sans-serif !important;
    font-size: 15px !important;
    line-height: 23.1px !important;
    font-weight: 300 !important;
    letter-spacing: 0 !important;
  }
}

/* TOC 1.0.233: locked 414px Terms mobile content spacing. */
@media (max-width: 520px) {
  body.terms-page .policy-content-section {
    padding: 40px 0 64px !important;
  }

  body.terms-page .policy-content.terms-content {
    width: min(370px, calc(100% - 44px)) !important;
    max-width: 370px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box !important;
  }

  body.terms-page .terms-content h2 {
    width: 100% !important;
    min-height: 40px !important;
    margin: 0 auto 40px !important;
    padding: 0 28px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    box-sizing: border-box !important;
    line-height: 1 !important;
  }

  body.terms-page .terms-content h3 {
    position: relative !important;
    width: 100% !important;
    min-height: 36px !important;
    margin: 0 0 20px !important;
    padding-left: 41px !important;
    display: flex !important;
    align-items: center !important;
    font-family: "Inter", Arial, sans-serif !important;
    font-size: 22px !important;
    line-height: 1.2 !important;
    font-weight: 600 !important;
    letter-spacing: 0 !important;
    color: #000 !important;
    box-sizing: border-box !important;
  }

  body.terms-page .terms-content h3::before {
    content: '' !important;
    position: absolute !important;
    left: 0 !important;
    top: 0 !important;
    width: 31px !important;
    height: 36px !important;
    background: url('../rsc/icons/terms-section-arrow.png') center / contain no-repeat !important;
  }

  body.terms-page .terms-legal-list {
    width: 100% !important;
    margin: 0 0 40px !important;
    padding: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 20px !important;
  }

  body.terms-page .terms-legal-list p {
    width: 100% !important;
    margin: 0 !important;
    display: grid !important;
    grid-template-columns: max-content minmax(0, 1fr) !important;
    column-gap: 10px !important;
    align-items: start !important;
    font-family: "Inter", Arial, sans-serif !important;
    font-size: 16px !important;
    line-height: 1.2 !important;
    font-weight: 300 !important;
    letter-spacing: 0 !important;
    color: #111 !important;
    box-sizing: border-box !important;
  }

  body.terms-page .terms-legal-list p.terms-sub {
    padding-left: 27px !important;
  }

  body.terms-page .terms-number {
    display: block !important;
    white-space: nowrap !important;
    font-weight: 600 !important;
  }
}

/* TOC 1.0.234: locked 414px Hired Items Policy mobile hero with live text. */
@media (max-width: 520px) {
  body.hired-page .hired-hero {
    position: relative !important;
    width: 100vw !important;
    max-width: 100vw !important;
    height: auto !important;
    min-height: 0 !important;
    aspect-ratio: 414 / 472 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    background: #103f4d !important;
  }

  body.hired-page .hired-hero::before {
    content: none !important;
  }

  body.hired-page .hired-hero .policy-banner-picture,
  body.hired-page .hired-hero .policy-banner-image {
    position: absolute !important;
    inset: 0 !important;
    display: block !important;
    width: 100% !important;
    height: 100% !important;
  }

  body.hired-page .hired-hero .hired-banner-image {
    object-fit: cover !important;
    object-position: center center !important;
  }

  body.hired-page .hired-hero .policy-hero-copy {
    position: absolute !important;
    z-index: 3 !important;
    top: 244px !important;
    left: 24px !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
    width: 366px !important;
    max-width: calc(100% - 48px) !important;
    margin: 0 !important;
    padding: 0 !important;
    transform: none !important;
    color: #fff !important;
    text-decoration: none !important;
  }

  body.hired-page .hired-hero .policy-hero-copy h1 {
    width: 322px !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    color: #fff !important;
    font-family: "Instrument Sans", "Poppins", Arial, sans-serif !important;
    font-size: 45px !important;
    line-height: 1 !important;
    font-weight: 600 !important;
    letter-spacing: 1px !important;
    text-transform: uppercase !important;
  }

  body.hired-page .hired-hero .policy-hero-copy p {
    width: 366px !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    color: #fff !important;
    font-family: "Inter", Arial, sans-serif !important;
    font-size: 18px !important;
    line-height: 23.1px !important;
    font-weight: 300 !important;
    letter-spacing: 0 !important;
  }
}

/* TOC 1.0.237: remove inherited mobile Hired hero overlay. */
@media (max-width: 520px) {
  body.hired-page .hired-hero::before,
  body.hired-page .hired-hero::after {
    content: none !important;
    display: none !important;
    background: none !important;
    opacity: 0 !important;
  }

  body.hired-page .hired-hero .policy-banner-picture,
  body.hired-page .hired-hero .hired-banner-image {
    z-index: 1 !important;
  }

  body.hired-page .hired-hero .policy-hero-copy {
    z-index: 3 !important;
  }
}

/* TOC 1.0.238: center Hired Items Policy mobile content heading. */
@media (max-width: 520px) {
  body.hired-page .policy-content h2 {
    box-sizing: border-box !important;
    width: 367px !important;
    max-width: 100% !important;
    height: 40px !important;
    min-height: 40px !important;
    margin: 0 auto 39px !important;
    padding: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
  }
}

/* TOC 1.0.239: lift Hired Items Policy mobile content heading slightly. */
@media (max-width: 520px) {
  body.hired-page .policy-content-section {
    padding-top: 24px !important;
  }
}

/* TOC 1.0.240: lock Hired Policy mobile content heading and section rows to Figma. */
@media (max-width: 520px) {
  body.hired-page .policy-content {
    box-sizing: border-box !important;
    width: 367px !important;
    max-width: calc(100vw - 32px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding: 0 !important;
  }

  body.hired-page .policy-content h2 {
    box-sizing: border-box !important;
    width: 367px !important;
    max-width: 100% !important;
    height: 40px !important;
    min-height: 40px !important;
    margin: 0 0 39px !important;
    padding: 0 28px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #000 !important;
    font-family: "HvDTrial Brandon Grotesque", "Brandon Grotesque", "Arial Narrow", "Aptos Narrow", "Instrument Sans", Arial, sans-serif !important;
    font-size: 40.3px !important;
    line-height: 1 !important;
    font-weight: 400 !important;
    letter-spacing: 0 !important;
    text-align: center !important;
    white-space: nowrap !important;
  }

  body.hired-page .policy-content h3 {
    box-sizing: border-box !important;
    position: relative !important;
    width: 367px !important;
    max-width: 100% !important;
    height: auto !important;
    min-height: 36px !important;
    margin: 0 0 20px !important;
    padding: 0 28px !important;
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    color: #000 !important;
    font-family: "Inter", "Instrument Sans", Arial, sans-serif !important;
    font-size: 22px !important;
    line-height: 1.2 !important;
    font-weight: 600 !important;
    letter-spacing: 0 !important;
  }

  body.hired-page .policy-content h3:not(:first-of-type) {
    margin-top: 20px !important;
  }

  body.hired-page .policy-content h3::before {
    content: "➢" !important;
    position: static !important;
    flex: 0 0 31px !important;
    width: 31px !important;
    height: 36px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #000 !important;
    background: none !important;
    font-family: "Inter", "Instrument Sans", Arial, sans-serif !important;
    font-size: 30px !important;
    line-height: 1.2 !important;
    font-weight: 300 !important;
    letter-spacing: 0 !important;
    transform: none !important;
  }
}

/* TOC 1.0.241: lock Hired Policy mobile body copy to Figma. */
@media (max-width: 520px) {
  body.hired-page .policy-content ul {
    box-sizing: border-box !important;
    width: 367px !important;
    max-width: 100% !important;
    margin: 0 0 31px !important;
    padding: 0 0 0 28px !important;
    color: #000 !important;
    font-family: "Inter", "Instrument Sans", Arial, sans-serif !important;
    font-size: 20px !important;
    line-height: 1.2 !important;
    font-weight: 300 !important;
    letter-spacing: 0 !important;
  }

  body.hired-page .policy-content li {
    margin: 0 0 20px !important;
    padding: 0 !important;
    color: inherit !important;
    font: inherit !important;
  }
}

/* TOC 1.0.242: tighten mobile gap below Hired Items Policy title. */
@media (max-width: 520px) {
  body.hired-page .policy-content h2 {
    margin-bottom: 18px !important;
  }
}

/* TOC 1.0.243: add inline arrow marker to mobile After-Hours item. */
@media (max-width: 520px) {
  body.hired-page .policy-content h3:last-of-type + ul li::before {
    content: "➢" !important;
    display: inline-block !important;
    margin: 0 8px 0 0 !important;
    color: #000 !important;
    font-family: "Inter", "Instrument Sans", Arial, sans-serif !important;
    font-size: 20px !important;
    line-height: 1 !important;
    font-weight: 300 !important;
    vertical-align: baseline !important;
  }
}

/* TOC 1.0.246: restore mobile policy hero heading position. */
@media (max-width: 520px) {
  body.hired-page .hired-hero .policy-hero-copy,
  body.terms-page .terms-hero .policy-hero-copy {
    top: 244px !important;
  }

  html body.terms-page .terms-hero .policy-hero-copy {
    inset: 244px auto auto 24px !important;
    top: 244px !important;
    left: 24px !important;
  }
}

/* TOC 1.0.247: lock Terms mobile content frame and section rows to Figma. */
@media (max-width: 520px) {
  body.terms-page .policy-content-section {
    padding: 40px 0 64px !important;
  }

  body.terms-page .policy-content.terms-content {
    box-sizing: border-box !important;
    width: 370px !important;
    max-width: calc(100vw - 44px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding: 0 !important;
  }

  body.terms-page .terms-content h2 {
    box-sizing: border-box !important;
    width: 370px !important;
    max-width: 100% !important;
    height: 40px !important;
    min-height: 40px !important;
    margin: 0 0 40px !important;
    padding: 0 28px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #000 !important;
    font-family: "HvDTrial Brandon Grotesque", "Brandon Grotesque", "Arial Narrow", "Aptos Narrow", "Instrument Sans", Arial, sans-serif !important;
    font-size: 40.3px !important;
    line-height: 1 !important;
    font-weight: 400 !important;
    letter-spacing: 0 !important;
    text-align: center !important;
    white-space: nowrap !important;
  }

  body.terms-page .terms-content h3 {
    box-sizing: border-box !important;
    position: relative !important;
    width: 370px !important;
    max-width: 100% !important;
    height: auto !important;
    min-height: 36px !important;
    margin: 0 0 20px !important;
    padding: 0 !important;
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    color: #000 !important;
    font-family: "Inter", "Instrument Sans", Arial, sans-serif !important;
    font-size: 22px !important;
    line-height: 1.2 !important;
    font-weight: 600 !important;
    letter-spacing: 0 !important;
  }

  body.terms-page .terms-content h3:not(:first-of-type) {
    margin-top: 40px !important;
  }

  body.terms-page .terms-content h3::before {
    content: "➢" !important;
    position: static !important;
    flex: 0 0 31px !important;
    width: 31px !important;
    height: 36px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #000 !important;
    background: none !important;
    font-family: "Inter", "Instrument Sans", Arial, sans-serif !important;
    font-size: 30px !important;
    line-height: 1.2 !important;
    font-weight: 300 !important;
    letter-spacing: 0 !important;
    transform: none !important;
  }

  body.terms-page .terms-legal-list {
    box-sizing: border-box !important;
    width: 370px !important;
    max-width: 100% !important;
    margin: 0 0 40px !important;
    padding: 0 !important;
  }

  html body.terms-page .terms-content h3 {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    min-height: 36px !important;
    padding: 0 !important;
  }

  html body.terms-page.policy-page main .policy-content.terms-content > h3 {
    box-sizing: border-box !important;
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    width: 370px !important;
    max-width: 100% !important;
    min-height: 36px !important;
    margin: 0 0 20px !important;
    padding: 0 !important;
  }
}

/* TOC 1.0.250: lock Terms mobile content column to Figma left offset. */
@media (max-width: 520px) {
  html body.terms-page .policy-content.terms-content {
    width: 370px !important;
    max-width: calc(100vw - 44px) !important;
    margin-left: 22px !important;
    margin-right: 0 !important;
  }
}

/* TOC 1.0.251: tighten Terms mobile legal number column. */
@media (max-width: 520px) {
  html body.terms-page .terms-content .terms-legal-list p {
    box-sizing: border-box !important;
    width: 370px !important;
    max-width: 100% !important;
    margin: 0 0 22px !important;
    padding: 0 !important;
    display: grid !important;
    grid-template-columns: 24px minmax(0, 1fr) !important;
    column-gap: 0 !important;
    align-items: start !important;
    color: #000 !important;
    font-family: "Inter", "Instrument Sans", Arial, sans-serif !important;
    font-size: 16px !important;
    line-height: 1.3 !important;
    font-weight: 300 !important;
    letter-spacing: 0 !important;
  }

  html body.terms-page .terms-content .terms-number {
    box-sizing: border-box !important;
    width: 24px !important;
    min-width: 24px !important;
    height: 19px !important;
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    color: #000 !important;
    font: inherit !important;
    font-weight: 600 !important;
    line-height: 19px !important;
    white-space: nowrap !important;
  }

  html body.terms-page .terms-content .terms-legal-list p.terms-sub {
    padding-left: 24px !important;
    grid-template-columns: 48px minmax(0, 1fr) !important;
  }
}

/* TOC 1.0.252: let long Terms clause numbers breathe without clipping copy. */
@media (max-width: 520px) {
  html body.terms-page .terms-content .terms-legal-list p.terms-sub {
    padding-left: 0 !important;
    grid-template-columns: max-content minmax(0, 1fr) !important;
    column-gap: 12px !important;
  }

  html body.terms-page .terms-content .terms-legal-list p.terms-sub .terms-number {
    width: auto !important;
    min-width: 0 !important;
  }
}

/* TOC 1.0.254: align Hired/Delivery mobile content shell with approved Terms mobile layout. */
@media (max-width: 520px) {
  html body.hired-page .policy-content-section {
    padding: 40px 0 64px !important;
    background: #fff !important;
  }

  html body.hired-page .policy-content {
    box-sizing: border-box !important;
    width: min(370px, calc(100% - 44px)) !important;
    max-width: 370px !important;
    margin: 0 auto !important;
    padding: 0 !important;
    color: #000 !important;
    overflow: visible !important;
  }

  html body.hired-page .policy-content h2 {
    box-sizing: border-box !important;
    width: 100% !important;
    min-height: 40px !important;
    height: auto !important;
    margin: 0 auto 40px !important;
    padding: 0 28px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    color: #000 !important;
    font-family: "HvDTrial Brandon Grotesque", "Brandon Grotesque", "Arial Narrow", "Aptos Narrow", "Instrument Sans", Arial, sans-serif !important;
    font-size: 40.3px !important;
    line-height: 1 !important;
    font-weight: 400 !important;
    letter-spacing: 0 !important;
    white-space: nowrap !important;
  }

  html body.hired-page .policy-content h3 {
    box-sizing: border-box !important;
    position: relative !important;
    width: 100% !important;
    min-height: 36px !important;
    margin: 0 0 20px !important;
    padding: 0 !important;
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    color: #000 !important;
    font-family: "Inter", "Instrument Sans", Arial, sans-serif !important;
    font-size: 22px !important;
    line-height: 1.2 !important;
    font-weight: 600 !important;
    letter-spacing: 0 !important;
  }

  html body.hired-page .policy-content h3:not(:first-of-type) {
    margin-top: 40px !important;
  }

  html body.hired-page .policy-content h3::before {
    content: "\27A2" !important;
    position: static !important;
    flex: 0 0 31px !important;
    width: 31px !important;
    height: 36px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #000 !important;
    background: none !important;
    font-family: "Inter", "Instrument Sans", Arial, sans-serif !important;
    font-size: 30px !important;
    line-height: 1.2 !important;
    font-weight: 300 !important;
    letter-spacing: 0 !important;
    transform: none !important;
  }

  html body.hired-page .policy-content ul {
    box-sizing: border-box !important;
    width: 100% !important;
    margin: 0 0 40px !important;
    padding-left: 24px !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 20px !important;
    color: #000 !important;
    font-family: "Inter", "Instrument Sans", Arial, sans-serif !important;
    font-size: 16px !important;
    line-height: 1.2 !important;
    font-weight: 300 !important;
    letter-spacing: 0 !important;
  }

  html body.hired-page .policy-content li {
    margin: 0 !important;
    padding-left: 7px !important;
    color: inherit !important;
    font: inherit !important;
  }

  html body.hired-page .policy-content li::marker {
    font-size: .72em !important;
  }

  html body.hired-page .policy-content h3:last-of-type + ul li::before {
    content: none !important;
    display: none !important;
  }
}
/* Final mobile hired/delivery content alignment: match approved Terms white section. */
@media (max-width: 520px) {
  body.hired-page .policy-content-section,
  body.delivery-page .policy-content-section,
  body.delivery-pick-up .policy-content-section,
  body.page-delivery-pick-up .policy-content-section,
  body.page-hired-items-policy .policy-content-section {
    padding: 40px 0 64px !important;
  }

  body.hired-page .policy-content,
  body.delivery-page .policy-content,
  body.delivery-pick-up .policy-content,
  body.page-delivery-pick-up .policy-content,
  body.page-hired-items-policy .policy-content {
    width: min(370px, calc(100% - 44px)) !important;
    max-width: 370px !important;
    margin: 0 auto !important;
    padding: 0 !important;
    box-sizing: border-box !important;
  }

  body.hired-page .policy-content h2,
  body.delivery-page .policy-content h2,
  body.delivery-pick-up .policy-content h2,
  body.page-delivery-pick-up .policy-content h2,
  body.page-hired-items-policy .policy-content h2 {
    min-height: 40px !important;
    margin: 0 auto 40px !important;
    padding: 0 28px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    box-sizing: border-box !important;
  }

  body.hired-page .policy-content h3,
  body.delivery-page .policy-content h3,
  body.delivery-pick-up .policy-content h3,
  body.page-delivery-pick-up .policy-content h3,
  body.page-hired-items-policy .policy-content h3 {
    min-height: 36px !important;
    margin: 0 0 20px !important;
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    text-align: left !important;
  }

  body.hired-page .policy-content h3::before,
  body.delivery-page .policy-content h3::before,
  body.delivery-pick-up .policy-content h3::before,
  body.page-delivery-pick-up .policy-content h3::before,
  body.page-hired-items-policy .policy-content h3::before {
    width: 31px !important;
    height: 36px !important;
    flex: 0 0 31px !important;
    margin: 0 !important;
    background-size: contain !important;
  }

  body.hired-page .policy-content p,
  body.delivery-page .policy-content p,
  body.delivery-pick-up .policy-content p,
  body.page-delivery-pick-up .policy-content p,
  body.page-hired-items-policy .policy-content p {
    margin: 0 0 20px !important;
  }

  body.hired-page .policy-content ul,
  body.hired-page .policy-content ol,
  body.delivery-page .policy-content ul,
  body.delivery-page .policy-content ol,
  body.delivery-pick-up .policy-content ul,
  body.delivery-pick-up .policy-content ol,
  body.page-delivery-pick-up .policy-content ul,
  body.page-delivery-pick-up .policy-content ol,
  body.page-hired-items-policy .policy-content ul,
  body.page-hired-items-policy .policy-content ol {
    margin: 0 0 20px !important;
    padding-left: 20px !important;
  }

  body.hired-page .policy-content li,
  body.delivery-page .policy-content li,
  body.delivery-pick-up .policy-content li,
  body.page-delivery-pick-up .policy-content li,
  body.page-hired-items-policy .policy-content li {
    margin: 0 0 20px !important;
    padding-left: 8px !important;
  }

  body.hired-page .policy-content li:last-child,
  body.delivery-page .policy-content li:last-child,
  body.delivery-pick-up .policy-content li:last-child,
  body.page-delivery-pick-up .policy-content li:last-child,
  body.page-hired-items-policy .policy-content li:last-child {
    margin-bottom: 0 !important;
  }
}

/* TOC v1.0.263: desktop policy hero banners use supplied textless artwork with live Figma-positioned headings. */
@media (min-width: 781px) {
  html body.hired-page .hired-hero,
  html body.terms-page .terms-hero {
    position: relative !important;
    width: 100% !important;
    height: 389px !important;
    min-height: 389px !important;
    aspect-ratio: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    background: #103f4d !important;
  }

  html body.hired-page .hired-hero::before,
  html body.hired-page .hired-hero::after,
  html body.terms-page .terms-hero::before,
  html body.terms-page .terms-hero::after {
    content: none !important;
    display: none !important;
  }

  html body.hired-page .hired-hero .policy-banner-picture,
  html body.hired-page .hired-hero .policy-banner-image,
  html body.terms-page .terms-hero .policy-banner-picture,
  html body.terms-page .terms-hero .policy-banner-image {
    position: absolute !important;
    inset: 0 !important;
    z-index: 1 !important;
    display: block !important;
    width: 100% !important;
    height: 100% !important;
  }

  html body.hired-page .hired-hero .policy-banner-image,
  html body.terms-page .terms-hero .policy-banner-image {
    object-fit: cover !important;
    object-position: center center !important;
  }

  html body.hired-page .hired-hero .policy-hero-copy,
  html body.terms-page .terms-hero .policy-hero-copy {
    position: absolute !important;
    z-index: 3 !important;
    top: 116.5px !important;
    left: clamp(72px, 14.73vw, 283px) !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 15px !important;
    width: 566px !important;
    max-width: calc(100% - 96px) !important;
    height: 155px !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 0 !important;
    color: #fff !important;
    text-decoration: none !important;
    transform: none !important;
    overflow: visible !important;
    clip: auto !important;
    clip-path: none !important;
    white-space: normal !important;
  }

  html body.terms-page .terms-hero .policy-hero-copy {
    top: 117px !important;
    left: clamp(72px, 14.57vw, 280px) !important;
  }

  html body.hired-page .hired-hero .policy-hero-copy h1,
  html body.terms-page .terms-hero .policy-hero-copy h1 {
    width: 566px !important;
    max-width: 100% !important;
    height: 120px !important;
    margin: 0 !important;
    padding: 0 !important;
    color: #fff !important;
    font-family: "Instrument Sans", "Poppins", Arial, sans-serif !important;
    font-size: 60px !important;
    line-height: 1 !important;
    font-weight: 600 !important;
    letter-spacing: 3px !important;
    text-transform: uppercase !important;
  }

  html body.hired-page .hired-hero .policy-hero-copy p,
  html body.terms-page .terms-hero .policy-hero-copy p {
    width: 566px !important;
    max-width: 100% !important;
    height: 20px !important;
    margin: 0 !important;
    padding: 0 !important;
    color: #fff !important;
    font-family: "Instrument Sans", "Poppins", Arial, sans-serif !important;
    font-size: 20px !important;
    line-height: 1 !important;
    font-weight: 400 !important;
    letter-spacing: 1px !important;
    text-transform: capitalize !important;
  }
}

@media (min-width: 781px) and (max-width: 1280px) {
  html body.hired-page .hired-hero .policy-hero-copy,
  html body.terms-page .terms-hero .policy-hero-copy {
    left: clamp(48px, 9vw, 116px) !important;
    max-width: calc(100% - 96px) !important;
  }

  html body.hired-page .hired-hero .policy-hero-copy h1,
  html body.terms-page .terms-hero .policy-hero-copy h1 {
    font-size: clamp(46px, 4.7vw, 60px) !important;
  }
}

@media (max-width: 780px) {
  html body.hired-page .hired-hero .policy-hero-copy,
  html body.terms-page .terms-hero .policy-hero-copy {
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
    clip: auto !important;
    clip-path: none !important;
    white-space: normal !important;
  }
}

/* TOC v1.0.380: breakpoint-only Terms corrections for client review devices. */
@media (max-width: 380px) {
  html body.terms-page.policy-page main .policy-content.terms-content > h2:not(#toc-terms-title-lock) {
    width: 100% !important;
    max-width: 100% !important;
    padding-right: 0 !important;
    padding-left: 0 !important;
    font-size: clamp(34px, 10.6vw, 40px) !important;
  }
}

@media (min-width: 521px) and (max-width: 1440px) {
  html body.terms-page.policy-page main .terms-content .terms-legal-list p.terms-sub {
    padding-left: 68px !important;
  }
}

/* Staging 2: content-driven About tablet rows between the approved end frames. */
@media (min-width: 521px) and (max-width: 1440px) {
  html body.about-page main section.about-content-section {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: none !important;
    padding: 48px clamp(24px, 4vw, 58px) 70px !important;
  }

  html body.about-page main section.about-content-section .about-row.about-row-top,
  html body.about-page main section.about-content-section .about-row.about-row-bottom {
    display: grid !important;
    grid-template-columns: minmax(0, 1.06fr) minmax(0, 1fr) !important;
    align-items: center !important;
    width: 100% !important;
    max-width: 1324px !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 auto !important;
    padding: 0 !important;
    gap: clamp(28px, 4vw, 58px) !important;
  }

  html body.about-page main section.about-content-section .about-row.about-row-top {
    margin-bottom: 58px !important;
  }

  html body.about-page main section.about-content-section .about-row.about-row-bottom {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1.06fr) !important;
  }

  html body.about-page main section.about-content-section .about-row > .about-image,
  html body.about-page main section.about-content-section .about-row > .about-copy {
    box-sizing: border-box !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 0 !important;
    align-self: center !important;
    order: initial !important;
  }

  html body.about-page main section.about-content-section .about-row .about-image picture,
  html body.about-page main section.about-content-section .about-row .about-image img {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    margin: 0 !important;
    object-fit: contain !important;
    border-radius: 0 !important;
  }

  html body.about-page main section.about-content-section .about-row:is(.about-row-top, .about-row-bottom) .about-copy:is(.about-copy-right, .about-copy-left) h2:not(#toc-about-heading-lock),
  html body.about-page main section.about-content-section .about-row:is(.about-row-top, .about-row-bottom) .about-copy:is(.about-copy-right, .about-copy-left) h2 em {
    width: 100% !important;
    max-width: none !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    font-size: clamp(32px, 3.125vw, 45px) !important;
    line-height: 1.1 !important;
    letter-spacing: 0 !important;
  }

  html body.about-page main section.about-content-section .about-row:is(.about-row-top, .about-row-bottom) .about-copy:is(.about-copy-right, .about-copy-left) h2:not(#toc-about-heading-lock) {
    margin: 0 0 clamp(24px, 2.8vw, 40px) !important;
  }

  html body.about-page main section.about-content-section .about-row:is(.about-row-top, .about-row-bottom) .about-copy:is(.about-copy-right, .about-copy-left) p {
    width: 100% !important;
    max-width: none !important;
    margin: 0 0 18px !important;
    font-size: 16px !important;
    line-height: 1.5 !important;
  }

  html body.about-page main section.about-content-section .about-row:is(.about-row-top, .about-row-bottom) .about-copy:is(.about-copy-right, .about-copy-left) p:last-child {
    margin-bottom: 0 !important;
  }
}

@media (min-width: 521px) and (max-width: 760px) {
  html body.about-page main section.about-content-section .about-row.about-row-top,
  html body.about-page main section.about-content-section .about-row.about-row-bottom {
    grid-template-columns: minmax(0, 1fr) !important;
    max-width: 560px !important;
    gap: 32px !important;
  }

  html body.about-page main section.about-content-section .about-row > .about-image {
    max-width: 386px !important;
    justify-self: center !important;
  }

  html body.about-page main section.about-content-section .about-row-bottom > .about-work-image {
    grid-row: 1 !important;
  }
}

/* Fit narrower phones without changing either approved 390/414px frame. */
@media (max-width: 389px) {
  html body.contact-page main .contact-page-section .contact-wrap {
    width: calc(100% - 40px) !important;
    max-width: 349px !important;
    grid-template-columns: minmax(0, 1fr) !important;
  }

  html body.contact-page main .contact-wrap .contact-info-panel,
  html body.contact-page main .contact-wrap .contact-info-panel h1,
  html body.contact-page main .contact-wrap .contact-intro,
  html body.contact-page main .contact-wrap .contact-lines,
  html body.contact-page main .contact-wrap .contact-lines p,
  html body.contact-page main .contact-wrap .contact-form-card,
  html body.contact-page main .contact-wrap .contact-form-card > *,
  html body.contact-page main .contact-wrap .contact-form-row,
  html body.contact-page main .contact-wrap .contact-phone-row,
  html body.contact-page main .contact-wrap .message-wrap,
  html body.contact-page main .contact-wrap .contact-form-card input,
  html body.contact-page main .contact-wrap .contact-form-card textarea {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
  }

  /* 1.0.570: keep the contact reference inline on narrower phones. */
  html body.contact-page main .contact-wrap .contact-info-panel {
    width: min(349px, calc(100vw - 40px)) !important;
    max-width: none !important;
    justify-self: center !important;
    margin-right: -20px !important;
    margin-left: -20px !important;
  }

  html body.contact-page main .contact-wrap .contact-lines {
    margin-right: 0 !important;
    margin-left: 0 !important;
  }

  html body.contact-page main .contact-wrap .contact-lines p > span:last-child {
    flex-wrap: nowrap !important;
    white-space: nowrap !important;
  }

  html body.contact-page main .contact-wrap .contact-lines p > span:last-child > strong,
  html body.contact-page main .contact-wrap .contact-lines p > span:last-child > a {
    flex: 0 0 auto !important;
    font-size: clamp(14px, 4.2vw, 16px) !important;
  }

  html body.contact-page main .contact-wrap .contact-form-card form {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  html body.contact-page main .contact-wrap .contact-form-row {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  html body.contact-page main .contact-wrap .contact-phone-row {
    grid-template-columns: 70px minmax(0, 1fr) !important;
  }

  html body.about-page main .about-hero .page-hero-copy {
    max-width: calc(100% - 50px) !important;
  }

  html body.about-page main .about-hero .page-hero-copy h1 {
    width: 100% !important;
    max-width: 100% !important;
  }
}
@media (max-width: 359px) {
  html body.contact-page main .contact-wrap .contact-info-panel .contact-lines p {
    grid-template-columns: 26px minmax(0, 1fr) !important;
    column-gap: 8px !important;
  }
  html body.contact-page main .contact-wrap .contact-info-panel .contact-lines .contact-icon {
    width: 26px !important;
    height: 26px !important;
  }
}
/* September 2026 Ticket 5: legal copy is unchanged; navigation and mobile fit only. */
html body.terms-page .terms-content > .terms-back-link {
  display: inline-flex !important;
  align-items: center;
  min-height: 44px;
  margin: 0 0 16px;
  padding: 0 18px;
  border: 1px solid currentColor;
  border-radius: 4px;
  color: #000;
  background: #fff;
  text-decoration: none;
}
.terms-page .terms-back-link:focus-visible { outline: 2px solid #0c6682; outline-offset: 3px; }
@media (max-width: 520px) {
  html body.terms-page .terms-hero .policy-hero-copy {
    left: 22px !important;
    right: 22px !important;
    width: auto !important;
    max-width: none !important;
    text-align: center !important;
  }
  html body.terms-page .terms-hero .policy-hero-copy h1 {
    width: 100% !important;
    max-width: none !important;
    font-size: clamp(30px, 11vw, 45px) !important;
    text-align: center !important;
  }
  html body.terms-page .terms-content > h2 {
    width: 100% !important;
    height: auto !important;
    white-space: normal !important;
    overflow-wrap: break-word;
    text-align: center !important;
  }
}

/* Contact reference correction: preserve supplied details and their letter case. */
html body.contact-page main .contact-info-panel h1 {
  text-transform: none !important;
  font-family: 'Inter', 'Instrument Sans', Arial, sans-serif !important;
  font-weight: 600 !important;
}

html body.contact-page main .contact-info-panel .contact-intro {
  color: #7eb7ce !important;
}

html body.contact-page main .contact-info-panel .contact-lines p,
html body.contact-page main .contact-info-panel .contact-lines strong,
html body.contact-page main .contact-info-panel .contact-lines a {
  font-family: 'Inter', 'Instrument Sans', Arial, sans-serif !important;
  text-transform: none !important;
  color: #fff !important;
}

html body.contact-page main .contact-info-panel .contact-lines strong {
  font-weight: 600 !important;
}

html body.contact-page main .contact-info-panel .contact-lines p:nth-child(odd) strong,
html body.contact-page main .contact-info-panel .contact-lines a[href^='mailto:'] {
  font-weight: 300 !important;
}

html body.contact-page main .contact-info-panel .contact-lines a[href^='tel:'] {
  font-weight: 600 !important;
}

html body.contact-page main .contact-info-panel .contact-lines p {
  grid-template-columns: 31.06px minmax(0, 1fr) !important;
  column-gap: 11px !important;
  min-height: 31.06px !important;
  margin: 0 !important;
}

html body.contact-page main .contact-info-panel .contact-lines {
  gap: 7.76px !important;
}

html body.contact-page main .contact-info-panel .contact-lines p:nth-child(3) {
  margin-top: 19.42px !important;
}

html body.contact-page main .contact-info-panel .contact-phone-icon {
  width: 31.06px !important;
  height: 31.06px !important;
  transform: none !important;
}

html body.contact-page main .contact-info-panel .contact-email-icon-img {
  width: 31.06px !important;
  height: 31.06px !important;
}

html body.contact-page main .contact-form-card h2:not(#toc-h2-size-lock) {
  text-transform: none !important;
  font-weight: 400 !important;
  font-size: 34px !important;
}

html body.contact-page main .contact-form-card small {
  white-space: normal !important;
  max-width: 100% !important;
}

html body.contact-page main .contact-form-card small a {
  font-weight: 600 !important;
}

html body.contact-page main .contact-form-card button[type='submit'] {
  width: 196px !important;
  min-width: 0 !important;
  height: 34px !important;
  min-height: 34px !important;
  border-radius: 4px !important;
  background: #7eb7ce !important;
  font-family: 'Inter', Arial, sans-serif !important;
  font-size: 12px !important;
  font-weight: 600 !important;
}

html body.contact-page main .contact-form-card button[type='submit']:hover,
html body.contact-page main .contact-form-card button[type='submit']:focus-visible {
  background: #000 !important;
}

html body.contact-page main .contact-form-card input,
html body.contact-page main .contact-form-card textarea {
  border: 2px solid #3f7e95 !important;
}

html body.contact-page main .contact-form-card input:hover,
html body.contact-page main .contact-form-card textarea:hover {
  border-color: #7eb7ce !important;
}

html body.contact-page main .contact-form-card input:focus,
html body.contact-page main .contact-form-card textarea:focus {
  border-color: #003e57 !important;
}

@media (max-width: 520px) {
  html body.contact-page main .contact-form-card {
    min-height: 0 !important;
    padding: 36px 15px !important;
    border-radius: 9.11px !important;
    box-shadow: 0 3.64px 3.64px rgba(0, 0, 0, .25) !important;
  }

  html body.contact-page main .contact-form-card h2:not(#toc-h2-size-lock) {
    font-size: 38.25px !important;
    line-height: 46px !important;
  }

  html body.contact-page main .contact-form-card button[type='submit'] {
    width: min(237.72px, 100%) !important;
    height: 40.99px !important;
    min-height: 40.99px !important;
    max-height: none !important;
    font-size: 14px !important;
  }
}

/* September Ticket 15: numbering matches the existing legal body face and weight. */
html body.terms-page .terms-content .terms-legal-list p .terms-number {
  font-family: inherit !important;
  font-weight: inherit !important;
}

/* Ticket 15 follow-up: long desktop clause numbers must not overlap copy.
 * Smaller breakpoints retain their existing, verified numbering layout. */
@media (min-width: 1441px) {
  html body.terms-page .terms-content .terms-legal-list p.terms-sub {
    display: grid !important;
    grid-template-columns: max-content minmax(0, 1fr) !important;
    column-gap: 12px !important;
    align-items: start !important;
    padding-left: 0 !important;
  }

  html body.terms-page .terms-content .terms-legal-list p.terms-sub .terms-number {
    position: static !important;
    width: auto !important;
    min-width: 30px !important;
    white-space: nowrap !important;
  }
}
