/* MFN public/mobile progressive disclosure. Desktop/tablet remain unchanged. */
.mfn-mobile-disclosure-toggle{display:none}

/* Login + Registration — shared WCAG-oriented auth controls. */
.mfn-public-login .mfn-auth-layout .um-form input[type=text],
.mfn-public-login .mfn-auth-layout .um-form input[type=email],
.mfn-public-login .mfn-auth-layout .um-form input[type=password],
.mfn-public-login .mfn-auth-layout .um-form input[type=tel],
.mfn-public-login .mfn-auth-layout .um-form textarea,
.mfn-public-login .mfn-auth-layout .um-form select,
.mfn-public-register .mfn-auth-layout .um-form input[type=text],
.mfn-public-register .mfn-auth-layout .um-form input[type=email],
.mfn-public-register .mfn-auth-layout .um-form input[type=password],
.mfn-public-register .mfn-auth-layout .um-form input[type=tel],
.mfn-public-register .mfn-auth-layout .um-form textarea,
.mfn-public-register .mfn-auth-layout .um-form select{border-color:var(--mfn-color-border,#667689)!important}
.mfn-public-login .mfn-auth-layout .um-form input:focus-visible,
.mfn-public-login .mfn-auth-layout .um-form textarea:focus-visible,
.mfn-public-login .mfn-auth-layout .um-form select:focus-visible,
.mfn-public-register .mfn-auth-layout .um-form input:focus-visible,
.mfn-public-register .mfn-auth-layout .um-form textarea:focus-visible,
.mfn-public-register .mfn-auth-layout .um-form select:focus-visible{outline:3px solid var(--mfn-color-focus,#6FCCDD)!important;outline-offset:2px!important;border-color:var(--mfn-color-focus,#6FCCDD)!important;box-shadow:none!important}
.mfn-public-login .mfn-auth-layout .um a:not(.um-button),
.mfn-public-login .mfn-auth-layout .um-link-alt,
.mfn-public-register .mfn-auth-layout .um a:not(.um-button),
.mfn-public-register .mfn-auth-layout .um-link-alt{text-decoration:underline!important;text-underline-offset:3px!important;text-decoration-thickness:1px!important}
.mfn-public-login .mfn-auth-layout .um-button,
.mfn-public-login .mfn-auth-layout input[type=submit].um-button,
.mfn-public-register .mfn-auth-layout .um-button,
.mfn-public-register .mfn-auth-layout input[type=submit].um-button{min-height:50px!important}
.mfn-public-login .mfn-auth-layout .um-button:focus-visible,
.mfn-public-login .mfn-auth-layout input[type=submit].um-button:focus-visible,
.mfn-public-register .mfn-auth-layout .um-button:focus-visible,
.mfn-public-register .mfn-auth-layout input[type=submit].um-button:focus-visible{outline:3px solid var(--mfn-color-focus,#6FCCDD)!important;outline-offset:3px!important}
.mfn-public-login .mfn-auth-layout .um-error,
.mfn-public-login .mfn-auth-layout .um-field-error,
.mfn-public-register .mfn-auth-layout .um-error,
.mfn-public-register .mfn-auth-layout .um-field-error{font-weight:600!important}
.mfn-auth-switch-mobile{display:none}

@media (max-width:767px){
  /* Request a Project: primary task first, supporting guide second. */
  .mfn-public-new-job .mfn-request-layout>.mfn-request-form-card{order:1!important}
  .mfn-public-new-job .mfn-request-layout>.mfn-request-guide{order:2!important}
  .mfn-public-new-job .mfn-request-guide{align-self:stretch!important;height:auto!important;min-height:0!important;padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important}

  /* My Account: account controls first, shortcuts second. */
  .mfn-public-my-account .mfn-account-layout>.mfn-account-card{order:1!important}
  .mfn-public-my-account .mfn-account-layout>.mfn-account-quick{order:2!important}
  .mfn-public-my-account .mfn-account-quick{height:auto!important;min-height:0!important;padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important}

  /* Disclosure shell */
  .mfn-mobile-disclosure-toggle{display:flex;width:100%;min-height:58px;align-items:center;justify-content:space-between;gap:14px;padding:14px 16px;border:1px solid var(--mfn-color-border,#667689);border-radius:12px;background:#121821;color:#f7f8fa;box-sizing:border-box;font-family:Montserrat,Arial,sans-serif;text-align:left;cursor:pointer}
  .mfn-mobile-disclosure-toggle:hover{border-color:#6fccdd;background:#171e29}
  .mfn-mobile-disclosure-toggle:focus-visible{outline:3px solid #6fccdd;outline-offset:3px}
  .mfn-mobile-disclosure-copy{display:flex;min-width:0;flex:1 1 auto;flex-direction:column;gap:3px}
  .mfn-mobile-disclosure-title{color:#f7f8fa;font-size:14px;font-weight:800;line-height:1.25;letter-spacing:.2px}
  .mfn-mobile-disclosure-meta{color:#aeb7c3;font-family:Roboto,Arial,sans-serif;font-size:12px;font-weight:400;line-height:1.35}
  .mfn-mobile-disclosure-icon{display:flex;flex:0 0 30px;width:30px;height:30px;align-items:center;justify-content:center;border-radius:8px;background:#0b1017;color:#6fccdd;font-size:20px;font-weight:700;line-height:1;transition:transform .18s ease,background .18s ease}
  .mfn-mobile-disclosure-toggle[aria-expanded="true"] .mfn-mobile-disclosure-icon{transform:rotate(45deg);background:#17232d}
  .mfn-mobile-disclosure-target[hidden]{display:none!important}

  /* Re-expanded content sits inside a compact card rather than recreating a tall desktop panel. */
  .mfn-public-new-job .mfn-request-guide.mfn-mobile-disclosure-open,
  .mfn-public-my-account .mfn-account-quick.mfn-mobile-disclosure-open{padding:16px!important;background:#0b1017!important;border:1px solid #27303d!important;border-radius:12px!important}
  .mfn-public-new-job .mfn-request-guide.mfn-mobile-disclosure-open>.mfn-mobile-disclosure-toggle,
  .mfn-public-my-account .mfn-account-quick.mfn-mobile-disclosure-open>.mfn-mobile-disclosure-toggle{margin-bottom:18px}

  /* Account calendar becomes one compact row until requested. */
  .mfn-public-my-account .mfn-account-calendar{padding-top:8px!important;padding-bottom:28px!important}
  .mfn-public-my-account .mfn-account-calendar>.mfn-mobile-disclosure-toggle{margin-bottom:0}
  .mfn-public-my-account .mfn-account-calendar.mfn-mobile-disclosure-open>.mfn-mobile-disclosure-toggle{margin-bottom:18px}

  /* Tighten mobile vertical rhythm without shrinking usable controls. */
  .mfn-public-new-job .mfn-request-layout{gap:18px!important;padding-top:24px!important;padding-bottom:38px!important}
  .mfn-public-new-job .mfn-request-form-card{padding:24px 18px 26px!important}
  .mfn-public-my-account .mfn-account-layout{gap:18px!important;padding-top:24px!important;padding-bottom:24px!important}
  .mfn-public-my-account .mfn-account-projects{padding-top:8px!important;padding-bottom:32px!important}

  /* Mobile field rhythm: preserve 44px+ targets while reducing dead space. */
  .mfncp-request-form{gap:14px!important}
  .mfncp-field{gap:7px!important}
  .mfncp-request-form textarea{min-height:150px!important}

  /* Login + Register: form first; supporting explanation becomes optional. */
  .mfn-public-login .mfn-auth-layout>.mfn-auth-form-card,
  .mfn-public-register .mfn-auth-layout>.mfn-auth-form-card{order:1!important}
  .mfn-public-login .mfn-auth-layout>.mfn-auth-info,
  .mfn-public-register .mfn-auth-layout>.mfn-auth-info{order:2!important;padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important}
  .mfn-public-login .mfn-auth-layout,
  .mfn-public-register .mfn-auth-layout{gap:18px!important;padding-top:24px!important;padding-bottom:34px!important;align-items:stretch!important}
  .mfn-public-login .mfn-auth-form-card,
  .mfn-public-register .mfn-auth-form-card{padding:24px 18px 26px!important;width:100%!important}
  .mfn-public-login .mfn-auth-info.mfn-mobile-disclosure-open,
  .mfn-public-register .mfn-auth-info.mfn-mobile-disclosure-open{padding:16px!important;background:#0b1017!important;border:1px solid #27303d!important;border-radius:12px!important}
  .mfn-public-login .mfn-auth-info.mfn-mobile-disclosure-open>.mfn-mobile-disclosure-toggle,
  .mfn-public-register .mfn-auth-info.mfn-mobile-disclosure-open>.mfn-mobile-disclosure-toggle{margin-bottom:18px}
  .mfn-public-login .mfn-auth-support-note,
  .mfn-public-register .mfn-auth-support-note{display:none!important}
  .mfn-auth-switch-mobile{display:block;margin-top:24px;padding-top:18px;border-top:1px solid #667689;color:#aeb7c3;font-family:Roboto,Arial,sans-serif;font-size:14px;line-height:1.55;text-align:center}
  .mfn-auth-switch-mobile a{display:inline-flex;min-height:44px;align-items:center;padding:0 4px;color:#6fccdd!important;font-family:Montserrat,Arial,sans-serif;font-weight:800;text-decoration:underline!important;text-underline-offset:3px}
  .mfn-auth-switch-mobile a:hover{color:#fff200!important}
  .mfn-auth-switch-mobile a:focus-visible{outline:3px solid #6fccdd;outline-offset:3px;border-radius:4px}
}
@media (prefers-reduced-motion:reduce){.mfn-mobile-disclosure-icon{transition:none!important}}


/* Password Reset — same accessible auth-control treatment as Login/Register. */
.mfn-public-password-reset .mfn-auth-reset-body .um input[type=text],
.mfn-public-password-reset .mfn-auth-reset-body .um input[type=email],
.mfn-public-password-reset .mfn-auth-reset-body .um input[type=password]{border-color:var(--mfn-color-border,#667689)!important}
.mfn-public-password-reset .mfn-auth-reset-body .um input:focus-visible{outline:3px solid var(--mfn-color-focus,#6FCCDD)!important;outline-offset:2px!important;border-color:var(--mfn-color-focus,#6FCCDD)!important;box-shadow:none!important}
.mfn-public-password-reset .mfn-auth-reset-body .um a:not(.um-button),
.mfn-public-password-reset .mfn-auth-reset-body .um-link-alt{text-decoration:underline!important;text-underline-offset:3px!important;text-decoration-thickness:1px!important}
.mfn-public-password-reset .mfn-auth-reset-body .um-button,
.mfn-public-password-reset .mfn-auth-reset-body input[type=submit].um-button{min-height:50px!important}
.mfn-public-password-reset .mfn-auth-reset-body .um-button:focus-visible,
.mfn-public-password-reset .mfn-auth-reset-body input[type=submit].um-button:focus-visible{outline:3px solid var(--mfn-color-focus,#6FCCDD)!important;outline-offset:3px!important}
.mfn-public-password-reset .mfn-auth-reset-body .um-field-error{background:var(--mfn-color-error,#A12E84)!important;color:var(--mfn-color-error-text,#F7F8FA)!important;font-weight:600!important}

/* Client Work — public portfolio index accessibility + mobile-length pass. */
.mfn-public-client-work .mfn-public-hero-kicker .elementor-heading-title,
.mfn-public-client-work .mfn-work-section-kicker .elementor-heading-title,
.mfn-public-client-work .mfn-work-card-kicker-magenta .elementor-heading-title{color:var(--mfn-color-magenta,#CB60B2)!important}
.mfn-public-client-work .mfn-work-card-link-magenta a{color:var(--mfn-color-magenta,#CB60B2)!important;text-decoration:underline!important;text-underline-offset:3px!important;text-decoration-thickness:1px!important}
.mfn-public-client-work .mfn-work-card-link-cyan a{color:#6FCCDD!important;text-decoration:underline!important;text-underline-offset:3px!important;text-decoration-thickness:1px!important}
.mfn-public-client-work .mfn-work-card-link a{text-decoration:underline!important;text-underline-offset:3px!important;text-decoration-thickness:1px!important}
.mfn-public-client-work .mfn-public-hero-secondary-action .elementor-button,
.mfn-public-client-work .mfn-work-section-action .elementor-button,
.mfn-public-client-work .mfn-public-login-action .elementor-button{border-color:var(--mfn-color-border,#667689)!important}
.mfn-public-client-work a:focus-visible,
.mfn-public-client-work button:focus-visible,
.mfn-public-client-work .elementor-button:focus-visible{outline:3px solid var(--mfn-color-focus,#6FCCDD)!important;outline-offset:3px!important}

@media (max-width:767px){
  /* Hero: keep portfolio CTA immediately visible; fold the secondary service explainer. */
  .mfn-public-client-work .mfn-public-hero{gap:16px!important;padding-top:34px!important;padding-bottom:38px!important}
  .mfn-public-client-work .mfn-public-hero-copy{padding-bottom:8px!important}
  .mfn-public-client-work .mfn-public-hero-title .elementor-heading-title{font-size:32px!important;line-height:1.05!important;letter-spacing:-1px!important}
  .mfn-public-client-work .mfn-public-hero-lead{margin-bottom:20px!important}
  .mfn-public-client-work .mfn-clientwork-services-summary{width:100%!important;min-height:0!important;padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important}
  .mfn-public-client-work .mfn-clientwork-services-summary.mfn-mobile-disclosure-open{padding:16px!important;background:#121821!important;border:1px solid #27303d!important;border-radius:12px!important}
  .mfn-public-client-work .mfn-clientwork-services-summary.mfn-mobile-disclosure-open>.mfn-mobile-disclosure-toggle{margin-bottom:18px}

  /* Featured projects are the page's primary content, so keep all five visible but reduce dead height. */
  .mfn-public-client-work .mfn-work-section{padding-top:42px!important;padding-bottom:48px!important}
  .mfn-public-client-work .mfn-work-section-head{padding-bottom:26px!important;gap:16px!important}
  .mfn-public-client-work .mfn-work-section-title .elementor-heading-title{font-size:27px!important;line-height:1.12!important}
  .mfn-public-client-work .mfn-work-grid{gap:16px!important}
  .mfn-public-client-work .mfn-work-card{min-height:0!important}
  .mfn-public-client-work .mfn-work-card-media{min-height:230px!important;height:230px!important}
  .mfn-public-client-work .mfn-work-card-media-compact{min-height:220px!important;height:220px!important}
  .mfn-public-client-work .mfn-work-card-image{height:230px!important;min-height:230px!important}
  .mfn-public-client-work .mfn-work-card-image-compact{height:220px!important;min-height:220px!important}
  .mfn-public-client-work .mfn-work-card-copy{padding:22px 20px 24px!important}
  .mfn-public-client-work .mfn-work-card .elementor-widget-text-editor{margin-bottom:12px!important}

  /* Bottom conversion: actions first; supporting sales copy is available on demand. */
  .mfn-public-client-work .mfn-public-conversion{gap:16px!important;padding-top:42px!important;padding-bottom:46px!important;align-items:stretch!important}
  .mfn-public-client-work .mfn-public-conversion-actions{order:1!important;padding:24px 18px 26px!important}
  .mfn-public-client-work .mfn-public-conversion-copy{order:2!important;width:100%!important;padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important}
  .mfn-public-client-work .mfn-public-conversion-copy.mfn-mobile-disclosure-open{padding:16px!important;background:#0b1017!important;border:1px solid #27303d!important;border-radius:12px!important}
  .mfn-public-client-work .mfn-public-conversion-copy.mfn-mobile-disclosure-open>.mfn-mobile-disclosure-toggle{margin-bottom:18px}
  .mfn-public-client-work .mfn-public-conversion-account-note{margin-top:18px!important;padding-top:18px!important}
}

/* Home — mobile funnel / accessibility pass. */
.mfn-public-home .mfn-home-service-index-magenta .elementor-heading-title,
.mfn-public-home .mfn-work-section-kicker .elementor-heading-title,
.mfn-public-home .mfn-work-card-kicker-magenta .elementor-heading-title{color:var(--mfn-color-magenta,#CB60B2)!important}
.mfn-public-home .mfn-work-card-link-magenta a{color:var(--mfn-color-magenta,#CB60B2)!important;text-decoration:underline!important;text-underline-offset:3px!important;text-decoration-thickness:1px!important}
.mfn-public-home .mfn-work-card-link a{text-decoration:underline!important;text-underline-offset:3px!important;text-decoration-thickness:1px!important}
.mfn-public-home .mfn-public-hero-secondary-action .elementor-button,
.mfn-public-home .mfn-work-section-action .elementor-button,
.mfn-public-home .mfn-public-login-action .elementor-button{border-color:var(--mfn-color-border,#667689)!important}
.mfn-public-home a:focus-visible,
.mfn-public-home button:focus-visible,
.mfn-public-home .elementor-button:focus-visible{outline:3px solid var(--mfn-color-focus,#6FCCDD)!important;outline-offset:3px!important}
.mfn-mobile-show-more{display:none}

@media (max-width:767px){
  /* Hero remains the primary landing experience; just trim excess vertical padding. */
  .mfn-public-home .mfn-public-hero{gap:18px!important;padding-top:36px!important;padding-bottom:40px!important}
  .mfn-public-home .mfn-public-hero-copy{padding-bottom:8px!important}
  .mfn-public-home .mfn-public-hero-title .elementor-heading-title{font-size:33px!important;line-height:1.05!important;letter-spacing:-1px!important}
  .mfn-public-home .mfn-public-hero-lead{margin-bottom:20px!important}
  .mfn-public-home .mfn-home-hero-media{padding:8px!important}

  /* What We Do: three full cards become three compact disclosures on phones. */
  .mfn-public-home .mfn-home-services{padding-top:42px!important;padding-bottom:46px!important}
  .mfn-public-home .mfn-home-services-head{padding-bottom:24px!important}
  .mfn-public-home .mfn-home-services-title .elementor-heading-title{font-size:27px!important;line-height:1.12!important}
  .mfn-public-home .mfn-home-services-grid{gap:12px!important}
  .mfn-public-home .mfn-home-service-card{min-height:0!important;padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important}
  .mfn-public-home .mfn-home-service-card.mfn-mobile-disclosure-open{padding:16px!important;background:#121821!important;border:1px solid #27303d!important;border-radius:12px!important}
  .mfn-public-home .mfn-home-service-card.mfn-mobile-disclosure-open>.mfn-mobile-disclosure-toggle{margin-bottom:16px}
  .mfn-public-home .mfn-home-service-index{margin-bottom:14px!important}

  /* Selected Client Work: show two strong examples first, with an explicit reveal for the rest. */
  .mfn-public-home .mfn-work-section{padding-top:42px!important;padding-bottom:48px!important}
  .mfn-public-home .mfn-work-section-head{padding-bottom:26px!important;gap:16px!important}
  .mfn-public-home .mfn-work-section-title .elementor-heading-title{font-size:27px!important;line-height:1.12!important}
  .mfn-public-home .mfn-work-grid{gap:16px!important}
  .mfn-public-home .mfn-work-card{min-height:0!important}
  .mfn-public-home .mfn-work-card-media{min-height:220px!important;height:220px!important}
  .mfn-public-home .mfn-work-card-media-compact{min-height:210px!important;height:210px!important}
  .mfn-public-home .mfn-work-card-image{height:220px!important;min-height:220px!important}
  .mfn-public-home .mfn-work-card-image-compact{height:210px!important;min-height:210px!important}
  .mfn-public-home .mfn-work-card-copy{padding:20px 18px 22px!important}
  .mfn-public-home .mfn-mobile-show-more{display:flex;width:100%;min-height:52px;align-items:center;justify-content:center;margin-top:4px;padding:12px 16px;border:1px solid var(--mfn-color-border,#667689);border-radius:10px;background:#121821;color:#f7f8fa;font-family:Montserrat,Arial,sans-serif;font-size:13px;font-weight:800;letter-spacing:.3px;cursor:pointer}
  .mfn-public-home .mfn-mobile-show-more:hover{border-color:#6fccdd;background:#171e29}
  .mfn-public-home .mfn-mobile-show-more:focus-visible{outline:3px solid #6fccdd;outline-offset:3px}

  /* Final conversion: actions first, supporting copy second and optional. */
  .mfn-public-home .mfn-public-conversion{gap:16px!important;padding-top:42px!important;padding-bottom:46px!important;align-items:stretch!important}
  .mfn-public-home .mfn-public-conversion-actions{order:1!important;padding:24px 18px 26px!important}
  .mfn-public-home .mfn-public-conversion-copy{order:2!important;width:100%!important;padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important}
  .mfn-public-home .mfn-public-conversion-copy.mfn-mobile-disclosure-open{padding:16px!important;background:#0b1017!important;border:1px solid #27303d!important;border-radius:12px!important}
  .mfn-public-home .mfn-public-conversion-copy.mfn-mobile-disclosure-open>.mfn-mobile-disclosure-toggle{margin-bottom:18px}
  .mfn-public-home .mfn-public-conversion-account-note{margin-top:18px!important;padding-top:18px!important}
}

/* Field Notes index/archive — shorter mobile reading queue without hiding access to the archive. */
@media (max-width:767px){
  .mfn-field-notes-index .mfn-field-notes-hero{padding-top:36px!important;padding-bottom:34px!important}
  .mfn-field-notes-index .mfn-field-notes-title .elementor-heading-title{font-size:30px!important;line-height:1.06!important;letter-spacing:-1px!important}
  .mfn-field-notes-index .mfn-field-notes-latest{padding-top:32px!important;padding-bottom:40px!important}
  .mfn-field-notes-index .mfn-field-notes-latest-head{margin-bottom:18px!important}
  .mfn-field-notes-index .mfn-field-notes-cta{padding-top:32px!important;padding-bottom:34px!important;gap:18px!important}
  .mfn-field-notes-index .mfn-fns-toolbar,
  .mfn-field-notes-archive .mfn-fns-toolbar{gap:12px!important;margin-bottom:16px!important}
  .mfn-field-notes-index .mfn-auto-grid,
  .mfn-field-notes-archive .mfn-auto-grid{gap:14px!important}
  .mfn-field-notes-index .mfn-mobile-show-more,
  .mfn-field-notes-archive .mfn-mobile-show-more{display:flex;width:100%;min-height:52px;align-items:center;justify-content:center;margin-top:2px;padding:12px 16px;border:1px solid var(--mfn-color-border,#667689);border-radius:10px;background:#121821;color:#f7f8fa;font-family:Montserrat,Arial,sans-serif;font-size:13px;font-weight:800;letter-spacing:.3px;cursor:pointer}
  .mfn-field-notes-index .mfn-mobile-show-more:hover,
  .mfn-field-notes-archive .mfn-mobile-show-more:hover{border-color:#6fccdd;background:#171e29}
  .mfn-field-notes-index .mfn-mobile-show-more:focus-visible,
  .mfn-field-notes-archive .mfn-mobile-show-more:focus-visible{outline:3px solid #6fccdd;outline-offset:3px}
}

