/* Frontend-only mobile UX improvements — 6 August 2026. */

.public-menu-toggle{display:none}

.five-step-grid article{background:#151630!important}
.five-step-grid article:nth-child(even){background:#1b1c3d!important}
@media (hover:hover) and (pointer:fine){
  .five-step-grid article:hover{background:var(--gocx-gradient)!important}
}
.five-step-grid article:focus-within{background:var(--gocx-gradient)!important}

.discovery-mobile-nav{display:none}
.assessment-step-label{display:inline-flex;align-items:center;gap:.45rem;font-weight:800}
.required-mark{color:#b42318;font-weight:900}
.optional-mark{color:var(--muted);font-size:.72rem;font-weight:700}
.mobile-progress-copy{display:none}
.review-completion-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 0 22px}
.review-completion-summary>div{padding:16px;border:1px solid var(--line);background:#fff}
.review-completion-summary strong{display:block;font-size:1.35rem;color:var(--navy)}
.review-completion-summary span{font-size:.76rem;color:var(--muted)}

/* Chrome's Desktop site option uses a desktop-sized layout viewport on a
   physical phone. The coarse-pointer/device-width alternatives keep the
   intended phone presentation active in that mode. */
@media(max-width:760px), (max-device-width:760px), (any-pointer:coarse) and (max-width:1100px) and (orientation:portrait){
  html.mobile-menu-open,body.mobile-menu-open{overflow:hidden}
  .site-header-wrap{position:sticky!important;top:0!important;padding:8px!important;background:rgba(255,255,255,.96)!important}
  .site-header{min-height:62px!important;border-radius:18px!important;padding:8px 10px!important;display:grid!important;grid-template-columns:minmax(0,1fr) auto auto!important;align-items:center!important;gap:8px!important}
  .site-header .brand-logo{width:150px!important;max-width:150px!important;height:auto!important}
  .public-menu-toggle{display:inline-flex!important;align-items:center;justify-content:center;gap:7px;min-width:48px;min-height:44px;padding:0 12px;border:1px solid rgba(255,255,255,.28);border-radius:999px;background:transparent;color:#fff;font-weight:850;cursor:pointer}
  .public-menu-toggle::before{content:"☰";font-size:1.15rem;line-height:1}
  .public-menu-toggle[aria-expanded="true"]::before{content:"×"}
  .public-nav{position:fixed!important;z-index:200;inset:76px 10px auto 10px;max-height:calc(100dvh - 92px);overflow:auto;margin:0!important;padding:14px!important;display:none!important;grid-template-columns:1fr!important;gap:10px!important;border:1px solid #ddd8f2;border-radius:20px;background:#fff;box-shadow:0 26px 70px rgba(2,5,20,.28)}
  .public-nav.mobile-open{display:grid!important}
  .public-nav .primary-links,.public-nav .session-actions{display:grid!important;grid-template-columns:1fr!important;gap:6px!important}
  .public-nav a{display:flex!important;align-items:center!important;min-height:46px;padding:10px 12px!important;border-radius:12px;color:#171933!important;font-size:.92rem!important}
  .public-nav .primary-links a:hover,.public-nav .primary-links a:focus-visible{background:#f4f0ff;color:#2a1760!important}
  .public-nav .session-actions{padding-top:10px;border-top:1px solid #ebe8f3}
  .public-nav .nav-cta{justify-content:center;color:#111329!important}
  .public-nav .workspace-link{display:flex!important;opacity:1!important}
  .site-header>.nav-cta{min-height:44px}
  .site-header .public-nav+.nav-cta{display:none}

  .participant-header{position:sticky;top:0;z-index:120;padding:7px 10px!important}
  .participant-header-inner{min-height:58px!important;padding:7px 10px!important;display:grid!important;grid-template-columns:auto minmax(0,1fr) auto!important;gap:8px!important;align-items:center!important}
  .participant-header .brand-logo{width:122px!important;height:auto!important}
  .participant-context span{display:none!important}
  .participant-context strong{font-size:.82rem!important;white-space:nowrap}
  .participant-actions{display:flex!important;gap:4px!important}
  .participant-actions a{display:none!important}
  .participant-actions a[href*="privacy"],.participant-actions a[href*="contact"]{display:inline-flex!important;align-items:center;min-height:40px;padding:6px 8px;font-size:.72rem}

  .web-hero.gocx-dark-hero{grid-template-columns:1fr!important;min-height:auto!important;padding:58px 20px 78px!important}
  .web-hero.gocx-dark-hero h1{font-size:clamp(2.35rem,11vw,3.2rem)!important}
  .hero-visual{display:none!important}
  .hero-lead{font-size:1.03rem!important;line-height:1.62!important}
  .hero-subline{font-size:.96rem!important}
  .hero-price{font-size:.9rem!important}
  .hero-actions{display:grid!important;grid-template-columns:1fr!important}
  .hero-actions .button{width:100%}
  .trust-strip,.five-step-grid,.footer-grid{grid-template-columns:1fr!important}
  .editorial-heading,.purpose-grid,.discovery-callout{grid-template-columns:1fr!important}
  .five-step-grid article{min-height:auto!important}
  .site-footer{padding:48px 22px 24px!important}
  .footer-bottom{flex-direction:column!important;align-items:flex-start!important}

  .discovery-mobile-nav{position:sticky;top:72px;z-index:85;display:flex!important;gap:7px;overflow:auto;padding:8px 12px;background:rgba(255,255,255,.96);border-bottom:1px solid #ebe8f3;scrollbar-width:none}
  .discovery-mobile-nav::-webkit-scrollbar{display:none}
  .discovery-mobile-nav a{flex:0 0 auto;min-height:40px;padding:9px 12px;border:1px solid #dcd6ee;border-radius:999px;background:#fff;color:#29234b;font-size:.76rem;font-weight:850}
  .discovery-section{scroll-margin-top:132px}
  .pricing-journey-hero{padding:56px 0 70px!important}
  .pricing-hero-grid,.partner-neutral-grid,.commercial-visibility-grid,.three-col,.discovery-only-card{grid-template-columns:1fr!important}
  .pricing-hero-grid{gap:22px!important}
  .discovery-route-grid{grid-template-columns:1fr!important;gap:10px!important}
  .discovery-hero h1{font-size:clamp(2.25rem,10vw,3.15rem)!important}
  .discovery-hero p{font-size:1rem!important;line-height:1.6!important}
  .pricing-control-strip{gap:8px!important}
  .pricing-control-strip span{min-height:42px!important;font-size:.78rem!important}
  .discovery-section{padding-top:50px!important;padding-bottom:20px!important}
  .discovery-route-grid li{padding:16px!important}
  .discovery-route-grid p,.commercial-visibility-grid p,.three-col p,.partner-neutral-grid p{font-size:.92rem!important;line-height:1.55!important}

  .decision-assurance-hero{padding:42px 18px 62px!important}
  .decision-hero-shell{grid-template-columns:1fr!important;gap:22px!important}
  .decision-hero-copy{max-width:none!important;margin:0!important;text-align:left!important}
  .decision-hero-kicker,.decision-hero-lead,.decision-role-callout,.decision-primary-cta{margin-inline:0!important}
  .decision-assurance-hero h1{font-size:clamp(2.35rem,11vw,3.45rem)!important}
  .decision-hero-lead{font-size:1.02rem!important;line-height:1.58!important}
  .decision-role-callout{grid-template-columns:46px 1fr!important;padding:12px!important}
  .decision-role-icon{width:42px!important;height:42px!important}
  .decision-role-callout p{font-size:.92rem!important}
  .decision-primary-cta{width:100%;min-width:0!important;min-height:50px;margin-top:4px!important}
  .decision-hero-meta{font-size:.86rem!important;justify-content:flex-start!important}
  .decision-wheel-panel{margin-top:0!important}
  .decision-wheel{position:relative!important;width:100%!important;min-height:0!important;aspect-ratio:auto!important;padding:12px!important;display:grid!important;grid-template-columns:1fr!important;gap:8px!important;border-radius:20px!important;background:linear-gradient(145deg,#0b0f2e,#211044)!important;filter:none!important}
  .decision-wheel-ring{display:none!important}
  .decision-wheel-core{position:relative!important;left:auto!important;top:auto!important;width:116px!important;margin:0 auto 2px!important;transform:none!important}
  .decision-wheel-step{position:relative!important;left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;width:auto!important;height:auto!important;min-height:0!important;padding:0!important;border-radius:14px!important;clip-path:none!important;transform:none!important}
  .decision-step-content{display:grid!important;grid-template-columns:38px 1fr;grid-template-areas:"icon title" "icon strong" "desc desc";column-gap:10px;align-items:center;padding:13px!important;text-align:left!important;transform:none!important}
  .decision-step-icon{grid-area:icon;width:34px!important;height:34px!important}
  .decision-wheel-step h2{grid-area:title;margin:0!important;font-size:.92rem!important}
  .decision-wheel-step strong{grid-area:strong;font-size:.78rem!important}
  .decision-wheel-step p{grid-area:desc;margin:7px 0 0!important;font-size:.78rem!important;line-height:1.4!important}
  .assessment-journey{display:grid!important;grid-template-columns:1fr!important;margin-top:-24px!important;gap:9px!important}
  .assessment-journey article{padding:14px!important;grid-template-columns:32px 1fr!important;gap:10px!important}
  .assessment-journey article>span{width:30px!important;height:30px!important}
  .assessment-journey p{font-size:.9rem!important;line-height:1.5!important}
  .assessment-start-card{margin-top:24px!important;padding:20px!important;border-radius:18px!important}
  .form-intro h2{font-size:1.8rem!important}
  .form-grid{grid-template-columns:1fr!important}
  .form-grid .wide{grid-column:auto!important}
  .assessment-start-form{gap:14px!important}
  .assessment-start-form label{font-size:.84rem!important}
  .assessment-start-form input,.assessment-start-form select,.assessment-start-form textarea{min-height:46px;font-size:16px!important}
  .assessment-route-preview{padding:14px!important}
  .assessment-route-preview ol{grid-template-columns:1fr!important}
  .consent-fieldset{padding:14px!important}
  .consent-choice{grid-template-columns:24px 1fr!important;padding:13px!important}
  .consent-choice input{width:20px!important;height:20px!important}
  .consent-choice span{font-size:.9rem!important;line-height:1.48!important}
  .consent-detail{font-size:.86rem!important}
  .assessment-start-card .consent-box{font-size:.88rem!important}
  .assessment-start-card .button.primary{min-height:50px;margin-bottom:calc(10px + env(safe-area-inset-bottom))}
  .assessment-start-card+.site-footer{display:none}

  .assessment-shell{width:min(100% - 20px,920px)!important;margin:20px auto calc(96px + env(safe-area-inset-bottom))!important}
  .assessment-top{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:12px!important;margin-bottom:14px!important}
  .assessment-top h1{font-size:clamp(1.8rem,8vw,2.5rem)!important}
  .assessment-top p{font-size:.9rem!important}
  .assessment-top .eyebrow{font-size:.62rem!important;letter-spacing:.11em!important}
  .progress-card{width:100%!important;min-width:0!important;padding:12px 14px!important}
  .progress-card strong{display:none!important}
  .progress-card span{display:none!important}
  .mobile-progress-copy{display:block!important;font-size:.82rem!important;color:var(--navy)!important;font-weight:850}
  .assessment-section-nav{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px!important;margin-bottom:14px!important}
  .assessment-section-nav>div{min-height:52px!important;padding:8px!important;gap:7px!important}
  .assessment-section-nav span{width:28px!important;height:28px!important;flex:0 0 28px}
  .assessment-section-nav em{font-size:.75rem!important;line-height:1.18!important}
  .assessment-guidance{padding:12px 13px!important;font-size:.86rem!important}
  .question-list{gap:12px!important;padding-bottom:12px}
  .profile-question-grid{grid-template-columns:1fr!important}
  .question-card{padding:16px!important;border-radius:14px!important}
  .question-card h2{font-size:1.08rem!important;line-height:1.35!important}
  .question-purpose,.hint{font-size:.86rem!important;line-height:1.5!important}
  .question-meta{gap:5px!important}
  .question-meta>span,.priority-badge{font-size:.68rem!important;padding:5px 7px!important}
  .choice-grid,.check-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}
  .choice span,.check-tile span{min-height:46px!important;padding:10px!important;display:flex!important;align-items:center!important;justify-content:center;font-size:.88rem!important;line-height:1.3!important}
  .choice input:checked+span,.check-tile input:checked+span{position:relative;padding-right:32px!important}
  .choice input:checked+span::after,.check-tile input:checked+span::after{content:"✓";position:absolute;right:10px;top:50%;transform:translateY(-50%);font-weight:900}
  .large-input,textarea{max-width:none!important;font-size:16px!important}
  .priority-selection-summary{position:sticky;top:66px;z-index:45;padding:11px!important;border-radius:12px;background:#fff;box-shadow:0 8px 24px rgba(2,5,20,.1)}
  .priority-concern-grid{grid-template-columns:1fr!important;gap:9px!important}
  .priority-concern-card,.problem-selector-label{min-height:64px!important;padding:13px!important}
  .priority-concern-control,.problem-selector-control{width:22px!important;height:22px!important;flex:0 0 22px}
  .priority-concern-copy strong,.problem-selector-copy strong{font-size:.94rem!important;line-height:1.35!important}
  .priority-concern-copy small,.problem-selector-copy em{font-size:.82rem!important;line-height:1.4!important}
  .priority-concern-copy i{display:inline-flex!important;width:max-content;margin-top:7px;padding:5px 8px;border-radius:999px;background:#f2edff;color:#4f278e;font-size:.72rem!important;font-weight:850}
  .follow-up-heading{padding:10px 12px!important}
  .follow-up-heading span,.follow-up-heading small{font-size:.78rem!important}
  .answer-context summary{min-height:44px;display:flex;align-items:center;font-size:.86rem;font-weight:800}
  .not-applicable-inline{min-height:44px;display:flex;align-items:center;gap:8px}
  .assessment-actions{position:sticky!important;z-index:70;bottom:0;margin:8px -10px calc(-96px - env(safe-area-inset-bottom));padding:10px 10px calc(10px + env(safe-area-inset-bottom))!important;display:grid!important;grid-template-columns:1fr!important;gap:7px!important;background:rgba(255,255,255,.97);border-top:1px solid #ddd8e9;box-shadow:0 -12px 28px rgba(2,5,20,.1)}
  .assessment-actions .button{width:100%;min-height:46px}
  .assessment-actions .button.primary{order:-1}
  .assessment-actions .button.ghost{background:transparent!important;color:#514c68!important;border:0!important}

  .review-completion-summary{grid-template-columns:1fr!important;gap:8px!important}
  .review-completion-summary>div{padding:12px!important}
  .review-section-grid{grid-template-columns:1fr!important;gap:10px!important}
  .review-section-card{padding:16px!important}
  .priority-review-list li{grid-template-columns:32px 1fr!important;padding:10px 0!important}
  .final-submit-card .button{width:100%;min-height:50px}
}

@media(max-width:430px), (max-device-width:430px){
  .site-header{grid-template-columns:minmax(0,1fr) auto!important}
  .site-header .session-actions>.nav-cta{display:none!important}
  .site-header .brand-logo{width:136px!important}
  .choice-grid,.check-grid{grid-template-columns:1fr!important}
  .participant-actions a[href*="privacy"]{display:none!important}
}

@media(prefers-reduced-motion:reduce){
  .public-nav,.five-step-grid article,.decision-wheel-step{transition:none!important}
}
