/* Search pages reuse the homepage's artwork, type, glass buttons and menu.
   Normal document flow makes each reordered feature work without the film. */
.campaign-landing .story { height: auto; pointer-events: auto; }
.campaign-landing .language-toggle { display: none !important; }
.campaign-landing .headline-one {
  position: relative;
  inset: auto;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  min-height: 100svh;
  padding: 170px var(--gutter) 70px;
  isolation: isolate;
  overflow: hidden;
  transform: none;
}
.campaign-hero-image {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: -2;
}
.campaign-landing .headline-one::after {
  content: '';
  position: absolute;
  inset: 0;
  z-index: -1;
  background: linear-gradient(180deg, rgba(15,22,17,.08), rgba(15,22,17,.38) 30%, rgba(15,22,17,.9));
}
.campaign-landing .headline-one h1 { white-space: normal; text-wrap: balance; max-width: 22ch; }
.campaign-landing .hero-support { max-width: 57ch; margin-bottom: 0; font-size: clamp(21px, 1.8vw, 29px); }
.campaign-landing .hero-action {
  position: static;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 16px 26px;
  padding: 0;
  margin-top: 28px;
}
.campaign-landing .glass-cta { width: fit-content; min-width: 184px; }
.campaign-landing .header-start { min-width: 0; }
.campaign-text-link, .campaign-plan-note a {
  color: inherit;
  text-decoration: underline;
  text-underline-offset: 5px;
}
.campaign-text-link {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  font: 500 15px/1.5 -apple-system, BlinkMacSystemFont, 'Helvetica Neue', Arial, sans-serif;
}
.campaign-text-link:focus-visible, .campaign-plan-note a:focus-visible { outline: 2px solid white; outline-offset: 5px; }
.campaign-landing .campaign-trial, .campaign-landing .campaign-plan-note {
  max-width: 63ch;
  margin: 14px 0 0;
  font: 400 14px/1.6 -apple-system, BlinkMacSystemFont, 'Helvetica Neue', Arial, sans-serif;
  white-space: normal;
  text-wrap: pretty;
}
.campaign-landing .campaign-plan-note { color: #e3e4de; }
.campaign-landing .pos-scene, .campaign-landing .whatsapp-scene, .campaign-landing .sofia-scene {
  display: flex;
  align-items: center;
  height: auto;
  min-height: 100svh;
  visibility: visible;
  pointer-events: auto;
  padding: 120px var(--gutter);
}
.campaign-landing .pos-copy, .campaign-landing .whatsapp-copy, .campaign-landing .sofia-copy {
  position: relative;
  inset: auto;
  transform: none;
  width: 46%;
}
.campaign-landing .pos-copy, .campaign-landing .sofia-copy { margin-left: auto; }
.campaign-landing .pos-copy h2, .campaign-landing .whatsapp-copy h2, .campaign-landing .sofia-copy h2 {
  white-space: normal;
  text-wrap: balance;
}
.campaign-landing .pos-copy p, .campaign-landing .whatsapp-copy p { font-size: clamp(21px, 1.65vw, 28px); }
.campaign-landing .pos-copy .channel-labels { font-size: 16px; }
.campaign-landing .whatsapp-copy .campaign-plan-note { font-size: 14px; }
.campaign-landing .pos-scene::after, .campaign-landing .sofia-scene::after {
  background: linear-gradient(90deg, rgba(15,22,17,.05), rgba(15,22,17,.78));
}
.campaign-landing .whatsapp-scene::after { background: linear-gradient(90deg, rgba(15,22,17,.84), rgba(15,22,17,.05)); }
.campaign-landing .website-section { height: auto; }
.campaign-landing .website-stage {
  height: auto;
  min-height: 100svh;
  padding: 120px var(--gutter) 72px;
  text-align: center;
}
.campaign-landing .website-question, .campaign-landing .website-answer { position: relative; inset: auto; }
.campaign-landing .website-answer { margin-top: 18px; }
.campaign-landing .website-mac {
  position: relative;
  inset: auto;
  transform: none;
  width: min(74vw, 850px);
  margin: 48px auto 0;
}
.campaign-store-copy { max-width: 52ch; margin: 36px auto 0; font: 400 clamp(21px, 1.7vw, 28px)/1.4 var(--serif); text-wrap: pretty; }
.campaign-landing #footer-headline, .campaign-landing #footer-headline span { white-space: normal; text-wrap: balance; }
.campaign-landing .footer-content { gap: 16px; }
.campaign-landing .footer-legal { overflow: visible; }
.campaign-landing .footer-legal-row { flex: 1; flex-wrap: wrap; justify-content: center; white-space: normal; gap: 8px 20px; }
.campaign-skip { position: fixed; top: 8px; left: 8px; z-index: 50; padding: 12px; color: white; background: #24251e; transform: translateY(-150%); }
.campaign-skip:focus { transform: none; }
@media (max-width: 767px), (max-width: 1023px) and (orientation: portrait) {
  .campaign-landing .headline-one { padding: 180px var(--gutter) 46px; }
  .campaign-landing .headline-one h1 { font-size: clamp(37px, 10vw, 64px); }
  .campaign-landing .headline-one h1 span + span { margin-top: .12em; }
  .campaign-landing .hero-action { gap: 8px 20px; }
  .campaign-landing .pos-scene, .campaign-landing .whatsapp-scene, .campaign-landing .sofia-scene {
    align-items: flex-end;
    padding: 220px var(--gutter) 60px;
  }
  .campaign-landing .pos-copy, .campaign-landing .whatsapp-copy, .campaign-landing .sofia-copy { width: 100%; }
  .campaign-landing .pos-scene::after, .campaign-landing .whatsapp-scene::after, .campaign-landing .sofia-scene::after {
    background: linear-gradient(180deg, rgba(15,22,17,.05), rgba(15,22,17,.5) 30%, rgba(15,22,17,.94));
  }
  .campaign-landing .website-stage { min-height: 0; padding-block: 100px 80px; }
  .campaign-landing .website-mac { width: 100%; margin-top: 36px; }
  .campaign-landing .image-footer { padding-block: 130px 200px; }
}
@media (max-height: 500px) and (orientation: landscape) {
  .campaign-landing .headline-one { padding-block: 130px 40px; }
}
