/* Loaded only for the advertising variant by contact-view.js. */
html { scroll-behavior: smooth; scroll-padding-top: 100px; }
main { max-width: 1220px; padding: 28px 32px 64px; }
.contact-layout { grid-template-columns: minmax(0, 1.45fr) minmax(0, 1fr); gap: 32px; align-items: start; }
.contact-pitch { min-width: 0; position: relative; padding-top: 4px; }
.contact-pitch .eyebrow { display: inline-block; margin: 0 0 20px; padding: 4px 10px; background: #f7f7f7; border-radius: 3px; font-size: 13px; }
.contact-pitch h1 { font-size: clamp(40px,5vw,66px); font-weight: 800; line-height: 1.22; letter-spacing: -.045em; margin: 4px 0 20px; }
.contact-pitch h1 span { color: #404040; }
.contact-lead { font-size: 20px; line-height: 1.65; margin-bottom: 24px; max-width: 570px; }
.contact-benefits { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; margin: 26px 0 4px; padding: 0; list-style: none; }
.contact-benefits li { display: flex; align-items: center; gap: 9px; font-size: 14px; font-weight: 700; line-height: 1.6; color: #171717; }
.benefit-icon { display: grid; place-items: center; flex: 0 0 42px; height: 42px; border-radius: 50%; background: #404040; }
.benefit-icon img { width: 23px; height: 23px; filter: brightness(0) invert(1); }
.contact-brochure { margin: 0 -14px; perspective: 1200px; }
.contact-brochure img { display: block; width: 100%; height: auto; transform-origin: center; animation: brochure-entry 1s ease both; }
.contact-brochure figcaption { text-align: center; font-size: 11px; color: #404040; margin-top: -25px; position: relative; }
.contact-pitch > .contact-form-jump { display: none; }
.form-panel { padding: 26px 28px 20px; background: #f7f7f7; border-radius: 8px; }
.form-heading { text-align: center; margin-bottom: 12px; }
.form-heading h2 { font-size: 36px; line-height: 1.3; margin: 4px 0 20px; }
.form-heading p { font-size: 15px; color: #404040; font-weight: 700; margin: 0 0 8px; }
.visually-hidden { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.form-panel .choices { display: flex; gap: 7px; margin-top: 0; }
.form-panel .choices label { flex: 1; justify-content: center; padding: 7px 3px; gap: 4px; font-size: 11px; line-height: 1.4; border: 1px solid #ededed; background: white; }
.form-panel .choices label:has(input:checked) { background: #f7f7f7; border-color: #404040; }
.form-panel input[type=radio] { width: 13px; height: 13px; margin: 0; }
.form-panel input[type=checkbox] { width: 18px; height: 18px; margin: 0; }
.form-panel fieldset { margin-bottom: 12px; }
.form-panel form > label, #consultation-fields > label, #ad-audience-field > label { font-size: 15px; display: block; margin: 20px 0 8px; font-weight: 600; }
.form-panel input:not([type=radio]):not([type=checkbox]), .form-panel select, .form-panel textarea { min-height: 48px; padding: 10px 12px; border-color: #ededed; font-size: 14px; }
.form-panel input::placeholder { color: #404040; font-size: 12px; }
.form-panel .required,.form-panel .optional { font-size: 10px; padding: 2px 5px; }
.form-panel .help { font-size: 11px; }
.form-panel .consent { margin: 22px 0 !important; font-size: 11px; }
.form-panel .consent input { margin-top: 2px; }
.form-panel button[type=submit] { background: #404040; box-shadow: 0 5px 12px #40404024; min-height: 60px; font-size: 15px; padding-inline: 10px; }
.form-panel button[type=submit]:hover { background: #171717; }
#submit-help { text-align: center; margin-top: 12px; }
.consultation-link { margin-top: 24px; padding: 20px 4px 0; border-top: 1px solid #d4d4d4; border-radius: 0; background: transparent; color: #404040; font-size: 13px; text-decoration: underline; min-height: 0; }
.consultation-link:hover { background: transparent; color: #171717; }
#consultation-fields { animation: consultation-entry .2s ease; }
.brochure-contents { margin-top: 30px; padding: 36px 24px 24px; background: #f7f7f7; text-align: center; }
.brochure-contents .eyebrow { font-size: 12px; letter-spacing: .1em; margin-bottom: 5px; }
.brochure-contents h2 { margin: 0 0 24px; font-size: 30px; }
.brochure-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 18px; text-align: left; }
.brochure-grid article { background: white; border-radius: 8px; padding: 18px 16px 0; overflow: hidden; }
.brochure-number { float: left; font-size: 25px; color: #d4d4d4; font-weight: 700; line-height: 1.2; margin-right: 14px; }
.brochure-grid h3 { margin: 0 0 8px; font-size: 20px; }
.brochure-grid p { font-size: 14px; line-height: 1.7; padding-left: 42px; margin-bottom: 8px; min-height: 62px; }
.brochure-grid img { width: calc(100% + 32px); max-width: none; margin: 0 -16px; height: auto; display: block; }
.contact-form-jump { display: inline-block; margin-top: 24px; padding: 12px 22px; background: #404040; color: white; text-decoration: none; border-radius: 5px; font-weight: 700; }
.contact-motion-ready .brochure-grid article { opacity: 0; transform: translateY(25px); transition: opacity .6s ease, transform .6s ease; }
.contact-motion-ready .brochure-grid article.in-view { opacity: 1; transform: none; }
.contact-motion-ready .brochure-grid article:nth-child(2) { transition-delay: .1s; }
.contact-motion-ready .brochure-grid article:nth-child(3) { transition-delay: .2s; }
@keyframes brochure-entry { from { opacity: .2; transform: translateY(22px) rotateY(-8deg); } to { opacity: 1; transform: none; } }
@keyframes consultation-entry { from { opacity: .4; } to { opacity: 1; } }
@media(min-width:761px) and (prefers-reduced-motion:no-preference) {
  @supports(animation-timeline:view()) {
    .contact-brochure img { animation: brochure-scroll linear both; animation-timeline: view(); animation-range: entry 0% exit 100%; }
    @keyframes brochure-scroll { from { transform: rotateY(-5deg) translateY(8px); } to { transform: rotateY(5deg) translateY(-10px); } }
  }
}
@media(max-width:1000px) and (min-width:761px) {
  main { padding: 24px 24px 48px; }
  .contact-layout { gap: 20px; }
  .contact-pitch h1 { font-size: 40px; }
  .contact-lead { font-size: 16px; }
  .form-panel { padding: 20px 18px; }
  .form-heading h2 { font-size: 24px; }
  .benefit-icon { flex-basis: 32px; height: 32px; }
  .contact-benefits { gap: 8px; }
  .contact-benefits li { gap: 5px; font-size: 10px; }
  .form-panel .choices { flex-wrap: wrap; }
}
@media(max-width:760px) {
  main { padding: 24px 18px 50px; }
  .contact-layout { grid-template-columns: 1fr; gap: 28px; }
  .contact-pitch h1 { font-size: clamp(32px,8vw,48px); }
  .contact-lead { font-size: 16px; }
  .contact-benefits { gap: 8px; }
  .contact-benefits li { flex-direction: column; align-items: flex-start; font-size: 11px; }
  .contact-brochure { margin: 4px -6px; }
  .contact-brochure figcaption { margin-top: -10px; }
  .contact-pitch > .contact-form-jump { display: block; text-align: center; margin-top: 18px; }
  .form-panel { padding: 24px 18px; }
  .form-panel .choices label { font-size: 11px; }
  .brochure-contents { margin-top: 32px; padding: 28px 14px; }
  .brochure-contents h2 { font-size: 22px; }
  .brochure-grid { grid-template-columns: 1fr; }
  .brochure-grid p { min-height: 0; }
}
@media(prefers-reduced-motion:reduce) {
  html { scroll-behavior: auto; }
  .contact-brochure img, #consultation-fields { animation: none; }
  .contact-motion-ready .brochure-grid article { opacity: 1; transform: none; transition: none; }
}

.brochure-note { font-size: 11px; color: #404040; margin: 12px 0 0; }

.contact-pitch { isolation: isolate; }
.pitch-backdrop { position: absolute; z-index: -1; right: -30px; top: -28px; width: 40%; height: 390px; object-fit: cover; opacity: .55; clip-path: polygon(15% 0,100% 0,100% 100%); }
@media(max-width:760px) { .pitch-backdrop { height: 260px; right: -8px; opacity: .3; } }
.benefit-icon { width: 42px; min-width: 42px; }
@media(max-width:760px) { .form-heading h2 { font-size: 27px; } }

.contact-form-jump-early { display:inline-flex; align-items:center; justify-content:center; min-height:52px; font-size:16px; border-radius:10px; margin:12px 0 24px; }
#contact-form { scroll-margin-top:90px; }
@media(max-width:760px) {
 .contact-pitch > .contact-form-jump-early { margin:18px 0 24px; }
 .contact-pitch h1 { font-size:34px; line-height:1.5; }
 .form-panel { border-radius:16px; padding:24px 20px; }
 .form-panel label, .form-panel .choices label { font-size:15px; line-height:1.7; }
 .form-panel input:not([type=radio]):not([type=checkbox]), .form-panel textarea, .form-panel select { font-size:16px; min-height:48px; }
 .form-panel .help, .form-panel .consent { font-size:14px; line-height:1.8; }
 .consultation-link { min-height:44px; font-size:15px; }
}

@media(max-width:760px) {
 .form-panel .choices { display:grid; grid-template-columns:1fr; gap:8px; }
 .form-panel .choices label { justify-content:flex-start; min-height:48px; padding:12px; gap:10px; border-radius:10px; }
 .form-panel input[type=radio], .form-panel input[type=checkbox] { width:20px; height:20px; }
}
