.strategy-section { background: #fff; }
.strategy-layout { display: grid; gap: 56px; align-items: center; }
.strategy-layout.has-video { grid-template-columns: minmax(0, 1.2fr) minmax(0, .8fr); }
.strategy-copy { max-width: 740px; }
.strategy-copy h2 { margin: 18px 0 28px; font-family: var(--serif); font-size: 48px; line-height: 1.12; }
.strategy-copy > p:not(.section-kicker) { max-width: 620px; line-height: 1.7; }
.strategy-copy .strategy-lead { font-size: 22px; color: var(--ink); }
.strategy-copy .primary-cta { margin-top: 22px; }
.strategy-copy .strategy-availability { font-size: 13px; color: #506369; margin-top: 14px; }
.strategy-media { width: 100%; max-width: 390px; aspect-ratio: 840 / 1494; justify-self: center; background: #07171c; }
.strategy-media video { display: block; width: 100%; height: 100%; object-fit: contain; }
.strategy-section button:disabled { opacity: .58; cursor: not-allowed; }
.strategy-dialog { width: min(640px, calc(100% - 32px)); max-height: calc(100dvh - 32px); padding: 0; border: 0; border-radius: 8px; color: #102d32; background: #fff; overflow: auto; }
.strategy-dialog::backdrop { background: rgb(3 20 24 / 72%); }
.strategy-dialog-header { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; padding: 26px; border-bottom: 1px solid #dce3e1; }
.strategy-dialog-header .section-kicker { margin: 0 0 8px; font-size: 11px; }
.strategy-dialog h2 { margin: 0; font-family: var(--serif); font-size: 28px; line-height: 1.2; }
.strategy-close { display: grid; place-items: center; width: 44px; height: 44px; flex: 0 0 44px; border: 1px solid #dce3e1; background: #fff; cursor: pointer; }
#strategy-form, .strategy-success { padding: 26px; }
.strategy-form-intro { margin-top: 0; font-size: 14px; }
.strategy-fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.strategy-fields label { display: grid; gap: 8px; min-width: 0; font-size: 13px; }
.strategy-full { grid-column: 1 / -1; }
.strategy-fields input, .strategy-fields select { box-sizing: border-box; width: 100%; min-width: 0; min-height: 46px; padding: 10px 12px; border: 1px solid #9dadad; border-radius: 0; font: inherit; font-size: 16px; background: #fff; color: #102d32; }
.strategy-consents { display: grid; gap: 16px; margin: 24px 0; }
.strategy-consents label { display: flex; align-items: flex-start; gap: 10px; font-size: 13px; line-height: 1.55; cursor: pointer; }
.strategy-consents input { width: 18px; height: 18px; margin: 2px 0 0; flex: 0 0 18px; accent-color: #224c45; }
.strategy-privacy { font-size: 12px; line-height: 1.65; }
.strategy-privacy summary { cursor: pointer; }
.strategy-submit { margin-top: 24px; width: 100%; justify-content: center; }
.strategy-submit:disabled { opacity: .6; cursor: wait; }
.strategy-dialog :focus-visible { outline: 2px solid #98711a; outline-offset: 3px; }
#strategy-feedback { font-size: 14px; color: #923526; }
.strategy-honeypot { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
.strategy-success > svg { width: 36px; height: 36px; color: #286251; }
.strategy-success h3 { font-size: 24px; margin-bottom: 12px; }
.strategy-success p { line-height: 1.65; }
.strategy-success a { margin-top: 12px; }
.strategy-dialog [hidden], .strategy-section [hidden] { display: none; }
@media (max-width: 760px) {
  .strategy-layout.has-video { grid-template-columns: minmax(0, 1fr); gap: 32px; }
  .strategy-copy h2 { font-size: 36px; }
  .strategy-copy .strategy-lead { font-size: 19px; }
  .strategy-dialog-header, #strategy-form, .strategy-success { padding: 20px; }
  .strategy-fields { grid-template-columns: minmax(0, 1fr); }
  .strategy-dialog h2 { font-size: 24px; }
}
