/* OSL-Corsica — landing professionnels. Limité à la page CMS 22.
   Le contenu est éditable dans la CMS ; le formulaire utilise contactform. */
body#cms.cms-id-22 {
  --partner-ink: #3e4640;
  --partner-muted: #60655d;
  --partner-sand: #f5f1eb;
  --partner-paper: #fffdf9;
  --partner-coral: #7a5140;
  --partner-line: #ded8d0;
  --partner-gutter: clamp(22px, 5vw, 80px);
  color: var(--partner-ink);
  background: #fff;
}
#cms.cms-id-22 #wrapper { padding: 18px 0 0; background: #fff; }
#cms.cms-id-22 #wrapper > .container,
#cms.cms-id-22 #content-wrapper,
#cms.cms-id-22 #main,
#cms.cms-id-22 #content {
  float: none; width: 100%; max-width: none; margin: 0; padding: 0;
  border: 0; border-radius: 0; background: #fff; box-shadow: none;
}
#cms.cms-id-22 #wrapper > .container > .row { margin: 0; }
#cms.cms-id-22 #main > .page-footer:empty { display: none; }
#cms.cms-id-22 #main > .page-footer { margin: 0; }
#cms.cms-id-22 #left-column,
#cms.cms-id-22 #right-column { display: none; }
#cms.cms-id-22 .oslpartner,
#cms.cms-id-22 .oslpartner *,
#cms.cms-id-22 .oslpartner *::before,
#cms.cms-id-22 .oslpartner *::after { box-sizing: border-box; }
#cms.cms-id-22 .oslpartner {
  margin: 0; padding: 0; color: var(--partner-ink); background: #fff;
  font: 400 15px/1.8 Arial, Helvetica, sans-serif;
  text-align: left;
}
#cms.cms-id-22 .oslpartner .container {
  width: 100%; max-width: 1440px; margin-inline: auto; padding-inline: var(--partner-gutter);
}
#cms.cms-id-22 .oslpartner .row { display: flex; flex-wrap: wrap; margin-inline: -16px; }
#cms.cms-id-22 .oslpartner .row > [class*="col-"] { min-width: 0; padding-inline: 16px; }
#cms.cms-id-22 .oslpartner h1,
#cms.cms-id-22 .oslpartner h2,
#cms.cms-id-22 .oslpartner h3 {
  color: inherit; font-family: Georgia, "Times New Roman", serif; font-weight: 400;
  text-transform: none; letter-spacing: -.025em; text-align: left;
}
#cms.cms-id-22 .oslpartner h2 { margin: 0 0 22px; font-size: clamp(30px, 2.8vw, 42px); line-height: 1.15; }
#cms.cms-id-22 .oslpartner h3 { margin: 0 0 16px; font-size: clamp(23px, 2.1vw, 28px); line-height: 1.25; }
#cms.cms-id-22 .oslpartner p { color: inherit; font-size: inherit; line-height: inherit; text-align: left; }
#cms.cms-id-22 .oslpartner a { color: inherit; text-decoration: none; }
#cms.cms-id-22 .oslpartner a:focus-visible,
#cms.cms-id-22 .oslpartner button:focus-visible { outline: 2px solid var(--partner-coral); outline-offset: 5px; }
#cms.cms-id-22 .oslpartner .btn {
  display: inline-flex; align-items: center; justify-content: center; gap: 18px;
  min-height: 50px; max-width: 100%; padding: 15px 22px;
  border: 1px solid transparent; border-radius: 0; box-shadow: none;
  font: 600 11px/1.5 Arial, Helvetica, sans-serif; text-transform: uppercase;
  letter-spacing: .1em; white-space: normal; text-align: center;
  transition: background-color .25s ease, color .25s ease, border-color .25s ease;
}
#cms.cms-id-22 .oslpartner .btn::after { content: '↗'; flex: 0 0 auto; font-size: 19px; font-weight: 400; line-height: 1; }
#cms.cms-id-22 .oslpartner .btn-primary { color: #fffdf9; background: var(--partner-coral); border-color: var(--partner-coral); }
#cms.cms-id-22 .oslpartner .btn-primary:hover { color: #fff; background: #614032; border-color: #614032; }
#cms.cms-id-22 .oslpartner .btn-outline-light { color: var(--partner-ink); border: 0; border-bottom: 1px solid #aaa396; padding-inline: 0; background: transparent; }
#cms.cms-id-22 .oslpartner .btn-outline-light:hover { color: var(--partner-coral); border-color: var(--partner-coral); }
#cms.cms-id-22 .oslpartner .btn-light { color: var(--partner-ink); background: var(--partner-paper); }
#cms.cms-id-22 .oslpartner .btn-light:hover { background: var(--partner-sand); }

/* Même composition que les catégories : photographie pleine largeur, texte superposé. */
#cms.cms-id-22 .oslpartner-content { position: relative; }
#cms.cms-id-22 .oslpartner-hero {
  position: relative; isolation: isolate; display: flex; flex-direction: column;
  min-height: calc(100vh - var(--partner-top, 220px));
  min-height: calc(100svh - var(--partner-top, 220px));
  margin: 0; padding: 0; color: #fff; background: #354039;
  border-radius: 0; overflow: hidden;
}
#cms.cms-id-22 .oslpartner-hero__media { position: absolute; z-index: 0; inset: 0; overflow: hidden; }
#cms.cms-id-22 .oslpartner-hero__media img {
  display: block; width: 100%; height: 100%; object-fit: cover; object-position: 65% 56%;
}
#cms.cms-id-22 .oslpartner-hero::after {
  content: ''; position: absolute; z-index: 1; inset: 0; pointer-events: none;
  background: linear-gradient(90deg, rgba(19,29,23,.82), rgba(19,29,23,.68) 36%, rgba(19,29,23,.12) 78%), linear-gradient(0deg, rgba(19,29,23,.32), transparent 30%);
}
#cms.cms-id-22 .oslpartner-hero__overlay { display: none; }
#cms.cms-id-22 .oslpartner .oslpartner-hero__inner {
  position: relative; z-index: 2; display: flex; flex: 1 0 auto; align-items: center;
  width: 100%; max-width: none; padding: 86px max(32px, calc((100vw - 1420px) / 2)) 56px;
}
#cms.cms-id-22 .oslpartner-hero__content { width: min(720px, 62vw); max-width: 100%; padding: 0; }
#cms.cms-id-22 .oslpartner .oslpartner-kicker {
  display: block; margin: 0 0 20px; padding: 0; border: 0; border-radius: 0;
  color: var(--partner-coral); background: transparent; font: 600 10px/1.5 Arial, Helvetica, sans-serif;
  letter-spacing: .18em; text-transform: uppercase;
}
#cms.cms-id-22 .oslpartner-hero .oslpartner-kicker { color: #fff; font-weight: 400; }
#cms.cms-id-22 .oslpartner-title { margin: 0 0 24px; font-size: clamp(34px, 3.7vw, 58px); line-height: 1.08; }
#cms.cms-id-22 .oslpartner-hero .oslpartner-subtitle { max-width: 600px; margin: 0 0 30px; color: #fff; font-size: 15px; }
#cms.cms-id-22 .oslpartner-ctaRow { display: flex; flex-wrap: wrap; align-items: center; gap: 14px 28px; margin: 0; }
#cms.cms-id-22 .oslpartner-hero .btn-primary { color: var(--partner-ink); background: #fffdf9; border-color: #fffdf9; }
#cms.cms-id-22 .oslpartner-hero .btn-primary:hover { background: #e4dcd1; border-color: #e4dcd1; }
#cms.cms-id-22 .oslpartner-hero .btn-outline-light { color: #fff; border-color: rgba(255,255,255,.55); }
#cms.cms-id-22 .oslpartner-hero .btn-outline-light:hover { border-color: #fff; }
#cms.cms-id-22 .oslpartner-hero a:focus-visible { outline-color: #fff; }
#cms.cms-id-22 .oslpartner-badges {
  display: grid; grid-template-columns: 1fr 1fr; gap: 9px 22px; max-width: 570px;
  margin: 30px 0 0; padding: 22px 0 0; border-top: 1px solid rgba(255,255,255,.26); list-style: none;
}
#cms.cms-id-22 .oslpartner-badges li { margin: 0; padding: 0; border: 0; background: transparent; color: #fff; font-size: 11px; line-height: 1.6; text-align: left; }
#cms.cms-id-22 .oslpartner-badges li::before { content: '·'; margin-right: 8px; }
#cms.cms-id-22 .oslpartner-hero__visual { display: none !important; }
#cms.cms-id-22 .oslpartner-breadcrumb {
  position: absolute; z-index: 3; inset: 0 0 auto; margin: 0;
  padding: 15px max(32px, calc((100vw - 1420px) / 2)); color: #fff;
  background: linear-gradient(180deg, rgba(19,29,23,.56), rgba(19,29,23,.08));
  font: 400 13px/1.55 Arial, Helvetica, sans-serif; letter-spacing: .02em;
}
#cms.cms-id-22 .oslpartner-breadcrumb ol { display: flex; flex-wrap: wrap; gap: 4px 0; margin: 0; padding: 0; list-style: none; }
#cms.cms-id-22 .oslpartner-breadcrumb li { margin: 0; padding: 0; }
#cms.cms-id-22 .oslpartner-breadcrumb li + li::before { content: '/'; margin: 0 10px; opacity: .65; }
#cms.cms-id-22 .oslpartner-breadcrumb a,
#cms.cms-id-22 .oslpartner-breadcrumb span { color: inherit; font: inherit; overflow-wrap: anywhere; }
#cms.cms-id-22 .oslpartner-breadcrumb a:hover { text-decoration: underline; text-underline-offset: 3px; }
#cms.cms-id-22 .oslpartner-breadcrumb a:focus-visible { outline-color: #fff; }

/* Bénéfices, profils et accompagnement. */
#cms.cms-id-22 .oslpartner-section { padding-block: clamp(68px, 7vw, 108px); }
#cms.cms-id-22 .oslpartner-section__head { max-width: 780px; margin: 0 0 52px; text-align: left; }
#cms.cms-id-22 .oslpartner-lead { max-width: 660px; margin: 0 0 28px; color: var(--partner-muted); font-size: 16px !important; }
#cms.cms-id-22 .oslpartner-section--alt { background: var(--partner-sand); }
#cms.cms-id-22 .oslpartner-cards { counter-reset: osl-benefit; }
#cms.cms-id-22 .oslpartner-cards > div { display: flex; }
#cms.cms-id-22 .oslpartner-card {
  counter-increment: osl-benefit; width: 100%; height: auto; margin: 0; padding: 28px 24px 0 0;
  background: transparent; border: 0; border-top: 1px solid var(--partner-line); border-radius: 0; box-shadow: none;
}
#cms.cms-id-22 .oslpartner-card::before { content: counter(osl-benefit, decimal-leading-zero); display: block; margin-bottom: 24px; color: var(--partner-coral); font-size: 11px; letter-spacing: .15em; }
#cms.cms-id-22 .oslpartner-card p { margin: 0; color: var(--partner-muted); }
#cms.cms-id-22 .oslpartner-list { margin: 28px 0; padding: 0; list-style: none; }
#cms.cms-id-22 .oslpartner-list li { margin: 0; padding: 12px 0; border-bottom: 1px solid rgba(62,70,64,.16); }
#cms.cms-id-22 .oslpartner-miniCta { display: flex; flex-wrap: wrap; align-items: center; gap: 18px; margin-top: 32px; }
#cms.cms-id-22 .oslpartner-note { max-width: 180px; color: var(--partner-muted); font-size: 11px; line-height: 1.6; }
#cms.cms-id-22 .oslpartner-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; align-items: start; max-width: 570px; margin: 0 0 0 auto; padding-left: 32px; }
#cms.cms-id-22 .oslpartner-grid img { display: block; width: 100%; height: auto; max-width: 290px; aspect-ratio: 290/280; object-fit: cover; border-radius: 0; box-shadow: none; }
#cms.cms-id-22 .oslpartner-grid img:nth-child(2) { margin-top: 70px; }
#cms.cms-id-22 .oslpartner-checks { margin: 0 36px 28px 0; padding: 0; list-style: none; }
#cms.cms-id-22 .oslpartner-checks li { position: relative; margin: 0; padding: 22px 0 22px 28px; border-bottom: 1px solid var(--partner-line); }
#cms.cms-id-22 .oslpartner-checks li::before { content: '✓'; position: absolute; top: 23px; left: 0; color: var(--partner-coral); font-size: 13px; }
#cms.cms-id-22 .oslpartner-highlight { margin: 30px 36px 0 0; padding: 0; border: 0; background: transparent; color: var(--partner-muted); font-size: 14px; }
#cms.cms-id-22 .oslpartner-packVisual {
  position: relative; display: flex; align-items: end; min-height: 425px; height: auto; padding: 34px;
  background: url('../img/category-main/corail.jpg') center / cover no-repeat !important;
  border: 0; border-radius: 0; overflow: hidden;
}
#cms.cms-id-22 .oslpartner-packVisual__overlay { position: absolute; inset: 0; background: linear-gradient(180deg,transparent 12%,rgba(30,34,29,.8)); }
#cms.cms-id-22 .oslpartner-packVisual__content { position: relative; inset: auto; z-index: 1; padding: 0; color: #fff; }
#cms.cms-id-22 .oslpartner-packTag { margin: 0 0 12px; padding: 0; border: 0; border-radius: 0; background: none; color: #fff; font-size: 11px !important; font-weight: 600; letter-spacing: .17em; text-transform: uppercase; }
#cms.cms-id-22 .oslpartner-packText { margin: 0 0 25px; font: 400 29px/1.25 Georgia,serif !important; }
#cms.cms-id-22 .oslpartner-steps { margin-top: 0; }
#cms.cms-id-22 .oslpartner-step { height: 100%; padding: 26px 24px 0 0; background: none; border: 0; border-top: 1px solid rgba(62,70,64,.24); border-radius: 0; box-shadow: none; }
#cms.cms-id-22 .oslpartner-step__n { display: block; width: auto; height: auto; margin: 0 0 20px; padding: 0; border: 0; border-radius: 0; background: transparent; color: var(--partner-coral); font: 400 45px/1 Georgia,serif; }
#cms.cms-id-22 .oslpartner-step p { color: var(--partner-muted); }

/* Conversion : le formulaire original, avec tous ses champs et retours serveur. */
#cms.cms-id-22 #devenir-partenaire-form,
#cms.cms-id-22 #pourquoi { scroll-margin-top: 170px; }
#cms.cms-id-22 .oslpartner-formAside { position: sticky; top: 170px; padding: 0 35px 0 0; }
#cms.cms-id-22 .oslpartner-asideCard { margin-top: 35px; padding: 26px 0; background: transparent; border: 0; border-top: 1px solid var(--partner-line); border-radius: 0; box-shadow: none; }
#cms.cms-id-22 .oslpartner-asideTitle { margin-bottom: 18px; font-family: Georgia,serif; font-size: 23px !important; }
#cms.cms-id-22 .oslpartner-asideLine { margin-bottom: 8px; font-size: 13px !important; }
#cms.cms-id-22 .oslpartner-asideLine a { text-decoration: underline; text-underline-offset: 4px; }
#cms.cms-id-22 .oslpartner-asideHint { margin-top: 20px; color: var(--partner-muted); font-size: 12px !important; }
#cms.cms-id-22 .oslpartner-form { padding: 34px; background: #f7f5f1; border: 0; border-radius: 0; box-shadow: none; }
#cms.cms-id-22 .oslpartner-form .row { margin-inline: -10px; }
#cms.cms-id-22 .oslpartner-form .row > [class*="col-"] { padding-inline: 10px; }
#cms.cms-id-22 .oslpartner-form .form-group { margin-bottom: 22px; }
#cms.cms-id-22 .oslpartner-form label { display: block; margin-bottom: 8px; color: var(--partner-ink); font-size: 12px; font-weight: 500; line-height: 1.6; }
#cms.cms-id-22 .oslpartner-form .form-control { width: 100%; min-height: 50px; height: auto; margin: 0; padding: 13px 12px; color: var(--partner-ink); background: #fff; border: 1px solid #ded8d0; border-bottom-color: #a99c8d; border-radius: 0; box-shadow: none; font: 400 16px/1.5 Arial,sans-serif; }
#cms.cms-id-22 .oslpartner-form .form-control:focus { outline: 2px solid var(--partner-coral); outline-offset: 1px; border-color: var(--partner-coral); }
#cms.cms-id-22 .oslpartner-form textarea { min-height: 150px; resize: vertical; }
#cms.cms-id-22 .oslpartner-consent { position: relative; display: flex; align-items: start; gap: 12px; padding: 0; }
#cms.cms-id-22 .oslpartner-consent input { position: static; flex: 0 0 18px; width: 18px; height: 18px; margin: 2px 0 0; opacity: 1; accent-color: var(--partner-coral); }
#cms.cms-id-22 .oslpartner-consent label { flex: 1; margin: 0; font-size: 12px; }
#cms.cms-id-22 .oslpartner-formActions { display: block; }
#cms.cms-id-22 .oslpartner-formActions button,
#cms.cms-id-22 .oslpartner-formActions input[type=submit] { width: 100%; }
#cms.cms-id-22 .oslpartner-formSmall { margin: 16px 0 0; color: var(--partner-muted); font-size: 11px !important; text-align: center; }
#cms.cms-id-22 .oslpartner-hp { position: absolute !important; width: 1px !important; height: 1px !important; margin: -1px !important; padding: 0 !important; border: 0 !important; overflow: hidden !important; clip: rect(0,0,0,0); clip-path: inset(50%); white-space: nowrap; }
#cms.cms-id-22 .oslpartner .alert { margin: 0 0 25px; border-radius: 0; }

#cms.cms-id-22 .oslpartner-finalCta { margin: 0; padding: 68px var(--partner-gutter); color: #fffdf9; background: var(--partner-ink) !important; text-align: center; }
#cms.cms-id-22 .oslpartner-finalCta__overlay { display: none; }
#cms.cms-id-22 .oslpartner .oslpartner-finalCta__inner { max-width: 810px; margin: auto; padding: 0; }
#cms.cms-id-22 .oslpartner-finalCta h2 { color: inherit; text-align: center; }
#cms.cms-id-22 .oslpartner-finalCta p { max-width: 670px; margin: 0 auto 28px; color: #e4dcd1; text-align: center; }
#cms.cms-id-22 .oslpartner-stickyCta { display: none; }
#cms.cms-id-22 .oslpartner [hidden] { display: none !important; }

@media (min-width: 992px) {
  #cms.cms-id-22 .oslpartner .col-lg-5 { flex: 0 0 41.666667%; width: 41.666667%; max-width: 41.666667%; }
  #cms.cms-id-22 .oslpartner .col-lg-6 { flex: 0 0 50%; width: 50%; max-width: 50%; }
  #cms.cms-id-22 .oslpartner .col-lg-7 { flex: 0 0 58.333333%; width: 58.333333%; max-width: 58.333333%; }
}
@media (min-width: 768px) {
  #cms.cms-id-22 .oslpartner .col-md-4 { flex: 0 0 33.333333%; width: 33.333333%; max-width: 33.333333%; }
  #cms.cms-id-22 .oslpartner .col-md-6 { flex: 0 0 50%; width: 50%; max-width: 50%; }
}
@media (max-width: 991px) {
  #cms.cms-id-22 .oslpartner .row > [class*="col-lg-"] { flex: 0 0 100%; width: 100%; max-width: 100%; }
  #cms.cms-id-22 .oslpartner-grid { margin: 40px auto 0; padding: 0; }
  #cms.cms-id-22 .oslpartner-packVisual { margin-top: 34px; min-height: 400px; }
  #cms.cms-id-22 .oslpartner-checks,
  #cms.cms-id-22 .oslpartner-highlight { margin-right: 0; }
  #cms.cms-id-22 .oslpartner-formAside { position: static; padding: 0; }
  #cms.cms-id-22 .oslpartner-form { margin-top: 12px; }
  #cms.cms-id-22 .oslpartner-stickyCta.is-ready { position: fixed; z-index: 900; inset: auto 0 0; display: block; padding: 10px 20px calc(10px + env(safe-area-inset-bottom, 0px)); background: rgba(255,253,249,.98); border-top: 1px solid var(--partner-line); box-shadow: 0 -5px 25px rgba(62,70,64,.05); }
  #cms.cms-id-22 .oslpartner-stickyCta .btn { width: 100%; min-height: 44px; margin: 0; padding-block: 11px; }
}
@media (max-width: 767px) {
  #cms.cms-id-22 #wrapper { padding-top: 12px; }
  #cms.cms-id-22 .oslpartner-ctaRow { gap: 10px 22px; }
  #cms.cms-id-22 .oslpartner-badges { margin-top: 24px; }
  #cms.cms-id-22 .oslpartner-section__head { margin-bottom: 36px; }
  #cms.cms-id-22 .oslpartner .row > [class*="col-md-"] { flex: 0 0 100%; width: 100%; max-width: 100%; }
  #cms.cms-id-22 .oslpartner-cards,
  #cms.cms-id-22 .oslpartner-steps { row-gap: 34px; }
  #cms.cms-id-22 .oslpartner-card,
  #cms.cms-id-22 .oslpartner-step { padding-right: 0; }
  #cms.cms-id-22 .oslpartner-card::before { margin-bottom: 15px; }
  #cms.cms-id-22 .oslpartner-grid { gap: 12px; }
  #cms.cms-id-22 .oslpartner-grid img:nth-child(2) { margin-top: 40px; }
  #cms.cms-id-22 .oslpartner-packVisual { padding: 25px; }
  #cms.cms-id-22 .oslpartner-form { padding: 24px 18px; }
  #cms.cms-id-22 .oslpartner-finalCta { padding-block: 58px; }
  #cms.cms-id-22 #devenir-partenaire-form,
  #cms.cms-id-22 #pourquoi { scroll-margin-top: 130px; }
}
@media (prefers-reduced-motion: reduce) {
  #cms.cms-id-22 .oslpartner *,
  #cms.cms-id-22 .oslpartner *::before,
  #cms.cms-id-22 .oslpartner *::after { scroll-behavior: auto !important; transition: none !important; }
}

/* CMS 22 : contenu, questions pratiques et formulaire natif. */
#cms.cms-id-22 .oslpartner-content { margin: 0; padding: 0; }
#cms.cms-id-22 .oslpartner-faq { border-top: 1px solid var(--partner-line); }
#cms.cms-id-22 .oslpartner-faq > div { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.15fr); gap: clamp(24px, 5vw, 72px); padding: 30px 0; border-bottom: 1px solid var(--partner-line); }
#cms.cms-id-22 .oslpartner-faq h3 { margin-bottom: 10px; font-size: 24px; }
#cms.cms-id-22 .oslpartner-faq p { max-width: 850px; margin: 0; color: var(--partner-muted); }
#cms.cms-id-22 .oslpartner-form-help { margin-bottom: 25px; color: var(--partner-muted); font-size: 13px !important; }
#cms.cms-id-22 .oslpartner-form .alert { padding: 18px; line-height: 1.6; }
#cms.cms-id-22 .oslpartner-form .alert ul { margin: 0; padding-left: 18px; }
#cms.cms-id-22 .oslpartner-form .alert-danger { color: #842f26; background: #fff2ef; }
#cms.cms-id-22 .oslpartner-form .alert-success { color: #2f5741; background: #edf6ef; }
#cms.cms-id-22 .oslpartner-form .form-control[type=file] { padding: 10px; font-size: 13px; }
#cms.cms-id-22 .oslpartner-form .psgdpr_consent_message { font-size: 12px; line-height: 1.6; }
#cms.cms-id-22 .oslpartner-form .psgdpr_consent_message input[type=checkbox] { position: static; width: 18px; height: 18px; opacity: 1; margin-right: 7px; }
#cms.cms-id-22 .oslpartner-privacy { margin: 18px 0 0; color: var(--partner-muted); font-size: 11px !important; }
#cms.cms-id-22 .oslpartner-privacy a { text-decoration: underline; text-underline-offset: 3px; }

/* Newsletter : même composant, même palette et même formulaire natif que l’accueil. */
#cms.cms-id-22 .osl-home-newsletter {
  --osl-home-ink: #3e4640; --osl-home-muted: #60655d; --osl-home-coral: #7a5140;
  --osl-home-terracotta-soft: #caa290; --osl-home-line: #ddd2c4;
  margin: 0; color: var(--osl-home-ink); font-family: Arial, Helvetica, sans-serif;
}
#cms.cms-id-22 .osl-home-newsletter,
#cms.cms-id-22 .osl-home-newsletter *,
#cms.cms-id-22 .osl-home-newsletter *::before,
#cms.cms-id-22 .osl-home-newsletter *::after { box-sizing: border-box; }
#cms.cms-id-22 .osl-home-newsletter[hidden] { display: none; }
#cms.cms-id-22 .osl-home-newsletter .osl-home-section-title {
  margin: 0; color: var(--osl-home-ink); font-family: Georgia, 'Times New Roman', serif;
  font-size: clamp(1.9rem, 2.4vw, 2.75rem); font-weight: 400; line-height: 1.08;
  letter-spacing: -.03em; text-transform: none; text-align: left;
}
#cms.cms-id-22 .osl-home-newsletter .osl-home-eyebrow {
  margin: 0 0 1rem; color: var(--osl-home-coral); font: 800 .65rem/1.3 Arial, Helvetica, sans-serif;
  letter-spacing: .2em; text-transform: uppercase; text-align: left;
}
#cms.cms-id-22 .osl-home-newsletter a { color: inherit; text-decoration: none; }
#cms.cms-id-22 .osl-home-newsletter input:focus-visible { outline: 2px solid #3e4640; outline-offset: 4px; }
#cms.cms-id-22 .osl-home-newsletter__native .psgdpr_consent_message { text-align: left; }

@media (max-width: 1050px) {
  #cms.cms-id-22 .osl-home-newsletter { gap: 3.5rem; }
}
@media (max-width: 991px) {
  #cms.cms-id-22 .oslpartner-hero__content { width: min(660px, 82vw); }
}
@media (max-width: 767px) {
  #cms.cms-id-22 .oslpartner .oslpartner-hero__inner { padding: 76px 20px 34px; }
  #cms.cms-id-22 .oslpartner-hero__content { width: 100%; }
  #cms.cms-id-22 .oslpartner-hero__media img { object-position: 64% 50%; }
  #cms.cms-id-22 .oslpartner-hero::after { background: linear-gradient(90deg, rgba(19,29,23,.74), rgba(19,29,23,.54)), linear-gradient(0deg, rgba(19,29,23,.4), transparent 65%); }
  #cms.cms-id-22 .oslpartner-title { font-size: clamp(30px, 7.4vw, 42px); }
  #cms.cms-id-22 .oslpartner-hero .oslpartner-subtitle { font-size: 13px; line-height: 1.7; }
  #cms.cms-id-22 .oslpartner-hero .oslpartner-kicker { font-size: 9px; letter-spacing: .12em; }
  #cms.cms-id-22 .oslpartner-hero .btn { font-size: 10px; padding: 13px 16px; }
  #cms.cms-id-22 .oslpartner-hero .btn-outline-light { padding-inline: 0; }
  #cms.cms-id-22 .oslpartner-badges { font-size: 10px; gap: 10px 14px; }
  #cms.cms-id-22 .oslpartner-breadcrumb { padding: 13px 20px; font-size: 12px; }
  #cms.cms-id-22 .oslpartner-faq > div { grid-template-columns: 1fr; gap: 4px; padding: 25px 0; }
  #cms.cms-id-22 .oslpartner-faq h3 { font-size: 22px; }
}
@media (max-width: 680px) {
  #cms.cms-id-22 .osl-home-newsletter { grid-template-columns: 1fr; padding: 4.5rem 1.25rem; gap: 3rem; }
  #cms.cms-id-22 .osl-home-newsletter .osl-home-section-title { font-size: 2rem; }
}
@media (prefers-reduced-motion: reduce) {
  #cms.cms-id-22 .osl-home-newsletter *,
  #cms.cms-id-22 .osl-home-newsletter *::before,
  #cms.cms-id-22 .osl-home-newsletter *::after { transition: none !important; }
}
