/* Final public visual polish — authoritative mobile menu + GoCX visual assets. */

/* Replace the lightweight UI diagrams with full branded visual assets. */
.discovery-visual-card{padding:24px!important;background:linear-gradient(145deg,#fff,#fffdf3)!important}
.discovery-visual-card .discovery-visual-copy{margin-bottom:8px}
.discovery-visual-asset,.assessment-visual-asset{display:block;width:100%;height:auto;border-radius:22px;box-shadow:0 22px 54px rgba(12,15,34,.18)}
.discovery-visual-asset{max-width:610px;margin:2px auto 0}
.assessment-visual-asset{max-width:620px;margin:0 auto 20px}
.before-you-begin-card.visual-assessment-card{padding:22px!important}
.before-you-begin-card.visual-assessment-card .section-kicker{margin-top:4px}

/* Tighten the public story rhythm without compressing content. */
.discovery-story-section,.discovery-commercial-section{padding-top:50px!important;padding-bottom:46px!important}
.discovery-coverage-band,.discovery-evidence-band{padding-top:50px!important;padding-bottom:50px!important}
.discovery-section-heading{margin-bottom:24px!important}
.discovery-boundary-track{margin-top:18px!important}
.discovery-deliverables{margin-top:38px!important;padding-top:32px!important}
.discovery-final-cta{padding-top:38px!important;padding-bottom:46px!important}
.public-body .compact-assessment-hero{padding-top:48px!important;padding-bottom:34px!important}
.public-body .assessment-outcome-strip{padding-top:16px!important;padding-bottom:10px!important}
.public-body .assessment-start-card{margin-top:12px!important;margin-bottom:44px!important}

/* Discovery hero actions deliberately share one visual language. */
.discovery-hero-actions .gold-button{min-width:218px;justify-content:center;text-align:center}

/* Homepage media integration — align generated media with the editorial GoCX website language. */
.public-media-hero .public-hero-media-wrap{position:relative;display:flex;align-items:center;justify-content:center;min-height:480px;overflow:visible}
.public-media-hero .public-hero-media{position:relative;z-index:2;display:block;width:min(680px,100%);height:auto;filter:drop-shadow(0 30px 56px rgba(0,0,0,.28));transform:translateY(4px)}
.public-media-hero .hero-glow{position:absolute;z-index:1;inset:12% 8%;border-radius:50%;background:radial-gradient(circle,rgba(255,194,10,.16),rgba(110,45,180,.1) 42%,transparent 70%);filter:blur(26px);pointer-events:none}

.public-result-preview{align-items:center!important}
.public-snapshot-visual{display:grid;gap:16px;align-items:center;justify-items:center;min-width:0}
.public-snapshot-visual>img{display:block;width:min(570px,100%);height:auto;filter:drop-shadow(0 18px 32px rgba(18,18,38,.14))}
.public-snapshot-visual .sample-result-card{width:min(520px,calc(100% - 32px));margin:-64px auto 0;position:relative;z-index:2}

.public-media-audience-grid article{overflow:hidden;padding-top:0!important}
.public-media-audience-grid .audience-media{display:block;width:calc(100% + 48px);max-width:none;height:210px;margin:0 -24px 24px;object-fit:contain;object-position:center;background:linear-gradient(145deg,#fbfbd8,#fff);border-bottom:1px solid rgba(43,28,78,.08)}
.public-media-audience-grid article>strong,.public-media-audience-grid article>p{position:relative;z-index:1}

.public-framework-section .public-framework-media{display:block;width:min(1120px,100%);height:auto;margin:4px auto 34px;filter:drop-shadow(0 18px 34px rgba(24,14,47,.12))}
.public-framework-section .five-step-grid{margin-top:0!important}

.assessment-generated-media{object-fit:contain;background:linear-gradient(145deg,#101126,#261548);box-shadow:0 22px 54px rgba(12,15,34,.2)!important}

/* Native public mobile menu. This file loads last and is the menu authority. */
.public-menu-toggle{display:none;border:0;font-family:"Saira","Ubuntu",Arial,sans-serif}
.public-menu-icon{position:relative;width:23px;height:16px;display:inline-block}
.public-menu-icon::before,.public-menu-icon::after,.public-menu-icon{background:linear-gradient(#151515,#151515) center/23px 2px no-repeat}
.public-menu-icon::before,.public-menu-icon::after{content:"";position:absolute;left:0;width:23px;height:2px;background:#151515;transition:transform .18s ease,top .18s ease}
.public-menu-icon::before{top:0}.public-menu-icon::after{top:14px}
.public-menu-toggle[aria-expanded="true"] .public-menu-icon{background-size:0 0}
.public-menu-toggle[aria-expanded="true"] .public-menu-icon::before{top:7px;transform:rotate(45deg)}
.public-menu-toggle[aria-expanded="true"] .public-menu-icon::after{top:7px;transform:rotate(-45deg)}

@media(max-width:1480px){
  html.mobile-menu-open,body.mobile-menu-open{overflow:hidden!important}
  .public-body .site-header{overflow:visible!important;grid-template-columns:auto auto!important;align-items:center!important}
  .public-body .public-menu-toggle{
    position:relative!important;
    z-index:1105!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:10px!important;
    width:auto!important;
    min-width:108px!important;
    height:58px!important;
    margin-right:5px!important;
    padding:0 19px!important;
    border-radius:999px!important;
    background:linear-gradient(90deg,#ff5600,#ffc20a)!important;
    color:#151515!important;
    font-size:15px!important;
    font-weight:800!important;
    line-height:1!important;
    cursor:pointer!important;
    box-shadow:0 8px 22px rgba(255,137,0,.18)!important;
  }
  .public-body .public-menu-toggle::before,.public-body .public-menu-toggle::after{content:none!important;display:none!important}
  .public-body .public-menu-label{display:inline!important;color:#151515!important;font-size:15px!important;line-height:1!important}
  .public-body .public-nav{
    position:fixed!important;
    z-index:1090!important;
    inset:0!important;
    display:none!important;
    flex-direction:column!important;
    align-items:stretch!important;
    justify-content:flex-start!important;
    gap:0!important;
    min-width:0!important;
    width:100vw!important;
    height:100dvh!important;
    padding:96px clamp(22px,6vw,70px) 36px!important;
    overflow-y:auto!important;
    background:linear-gradient(160deg,#0a0e20 0%,#171c38 58%,#281446 100%)!important;
    box-sizing:border-box!important;
  }
  .public-body .public-nav.mobile-open{display:flex!important}
  .public-body .public-nav .primary-links{
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    justify-content:flex-start!important;
    gap:0!important;
    width:100%!important;
  }
  .public-body .public-nav .primary-links a{
    display:flex!important;
    align-items:center!important;
    width:100%!important;
    min-height:54px!important;
    padding:10px 4px!important;
    border-bottom:1px solid rgba(255,194,10,.18)!important;
    color:#ffc20a!important;
    font-size:clamp(1.15rem,4vw,1.65rem)!important;
    font-weight:700!important;
    line-height:1.15!important;
    text-decoration:none!important;
    white-space:normal!important;
  }
  .public-body .public-nav .primary-links a::after{display:none!important}
  .public-body .public-nav .primary-links a[aria-current="page"]{color:#fff!important}
  .public-body .site-session-cta{
    align-self:flex-start!important;
    min-height:48px!important;
    margin-top:24px!important;
    padding:0 22px!important;
    border:1px solid rgba(255,194,10,.75)!important;
    border-radius:999px!important;
    color:#fff!important;
    background:rgba(255,255,255,.07)!important;
    font-size:.93rem!important;
  }
  .public-body .site-talk-cta{
    align-self:flex-start!important;
    min-height:52px!important;
    margin-top:12px!important;
    padding:0 28px!important;
    border-radius:999px!important;
    background:linear-gradient(90deg,#ff5600,#ffc20a)!important;
    color:#171717!important;
    font-size:1rem!important;
  }
}

@media(max-width:980px){
  .public-media-hero .public-hero-media-wrap{min-height:360px}
  .public-media-hero .public-hero-media{width:min(580px,94%)}
  .public-snapshot-visual .sample-result-card{margin:-44px auto 0}
  .public-media-audience-grid .audience-media{height:180px}
}

@media(max-width:760px){
  .discovery-story-section,.discovery-commercial-section,.discovery-coverage-band,.discovery-evidence-band{padding-top:34px!important;padding-bottom:34px!important}
  .discovery-final-cta{padding-top:30px!important;padding-bottom:36px!important}
  .public-body .compact-assessment-hero{padding-top:34px!important;padding-bottom:26px!important}
  .discovery-visual-card{padding:16px!important}
  .discovery-visual-asset,.assessment-visual-asset{border-radius:16px;box-shadow:0 14px 32px rgba(12,15,34,.16)}
  .before-you-begin-card.visual-assessment-card{padding:16px!important}
  .public-media-hero .public-hero-media-wrap{min-height:300px;margin-top:10px}
  .public-media-hero .public-hero-media{width:min(520px,100%);filter:drop-shadow(0 18px 38px rgba(0,0,0,.24))}
  .public-snapshot-visual>img{width:min(500px,100%)}
  .public-snapshot-visual .sample-result-card{width:100%;margin:-26px auto 0}
  .public-media-audience-grid .audience-media{width:calc(100% + 32px);height:170px;margin:0 -16px 20px}
  .public-framework-section .public-framework-media{margin-bottom:24px}
}

@media(max-width:560px){
  .public-body .public-menu-toggle{min-width:94px!important;height:50px!important;padding:0 15px!important;gap:8px!important}
  .public-body .public-menu-label{font-size:14px!important}
  .public-menu-icon,.public-menu-icon::before,.public-menu-icon::after{width:20px;background-size:20px 2px}
  .public-menu-icon::after{top:13px}
  .public-body .public-nav{padding:78px 20px 28px!important}
  .public-body .public-nav .primary-links a{min-height:49px!important;font-size:1.12rem!important}
  .public-media-hero .public-hero-media-wrap{min-height:240px}
  .public-media-audience-grid .audience-media{height:150px}
}
