/* Priorivo Customer Journey V3 — shared premium conversion layer.
   Scope: public homepage, Free Scan, auth, billing and trust/legal surfaces.
   Functional payment/auth/scan contracts remain untouched. */
:root{
  --pj-bg:#f5f7fc;
  --pj-surface:#ffffff;
  --pj-surface-2:#f8f9ff;
  --pj-ink:#0f1730;
  --pj-muted:#667085;
  --pj-line:#e1e6f0;
  --pj-violet:#5d3cf2;
  --pj-blue:#1262ff;
  --pj-cyan:#28a8ff;
  --pj-green:#12a363;
  --pj-navy:#071a3d;
  --pj-radius:24px;
  --pj-radius-sm:16px;
  --pj-shadow:0 24px 70px rgba(29,40,96,.12);
  --pj-shadow-soft:0 14px 38px rgba(29,40,96,.08);
}

/* Shared polish */
body.pv4-public,
body.billing-page,
.scan-shell,
.auth-shell{color:var(--pj-ink)}
.pv4-button,.scan-input-row button,.scan-button-secondary,.auth-button,.public-button{
  position:relative;overflow:hidden;background:linear-gradient(135deg,var(--pj-violet),var(--pj-blue) 68%,var(--pj-cyan));
  box-shadow:0 12px 30px rgba(51,70,219,.24);font-weight:850
}
.pv4-button:after,.scan-input-row button:after,.scan-button-secondary:after,.auth-button:after,.public-button:after{
  content:"";position:absolute;inset:-2px;background:linear-gradient(110deg,transparent 15%,rgba(255,255,255,.25) 48%,transparent 75%);transform:translateX(-130%);transition:transform .55s ease
}
.pv4-button:hover:after,.scan-input-row button:hover:after,.scan-button-secondary:hover:after,.auth-button:hover:after,.public-button:hover:after{transform:translateX(130%)}
.pv4-button--secondary{background:#fff!important;color:#343b91!important;border:1px solid #d8ddf3!important;box-shadow:0 10px 24px rgba(31,45,104,.08)!important}
.pv4-button--secondary:hover{background:#f5f6ff!important;color:#29267f!important;border-color:#c7cef0!important}
.scan-button-secondary,.public-button{color:#fff!important}

/* Homepage */
.pv4-header{box-shadow:0 8px 30px rgba(15,23,48,.04)}
.pv4-hero{padding:82px 0 62px;background:
  radial-gradient(circle at 82% 18%,rgba(96,64,239,.19),transparent 30%),
  radial-gradient(circle at 8% 50%,rgba(18,98,255,.09),transparent 30%),
  linear-gradient(180deg,#fff 0%,#fafbff 72%,#f6f8fd 100%)}
.pv4-hero-grid{gap:54px}
.pv4-hero h1{font-size:clamp(48px,5.5vw,78px);letter-spacing:-.058em}
.pv4-lead{font-size:20px;line-height:1.6}
.pv4-scan-form{border-color:#d8deeb;border-radius:18px;padding:8px;box-shadow:0 18px 48px rgba(27,43,106,.11)}
.pv4-scan-form input{min-height:50px}
.pv4-result-card{border:1px solid rgba(102,82,241,.22);border-radius:28px;padding:28px;background:
  radial-gradient(circle at 88% 10%,rgba(102,82,241,.12),transparent 31%),
  linear-gradient(145deg,#fff,#f8f7ff 70%,#f2f6ff);box-shadow:0 28px 80px rgba(47,43,135,.17)}
.pv4-result-card:before{content:attr(data-preview-label);display:inline-flex;margin-bottom:10px;border:1px solid #dcd7ff;border-radius:999px;padding:5px 9px;color:#5539dc;background:#fff;font-size:10px;font-weight:900;letter-spacing:.08em}
.pv4-benefit-strip{border-radius:22px;box-shadow:var(--pj-shadow-soft)}
.pv4-section{padding:88px 0}
.pv4-flow-card,.pv4-audience-grid article,.pv4-pricing-grid article,.pv4-why-cards article,.pv4-guide-card{border-radius:22px;box-shadow:0 12px 34px rgba(32,46,107,.07)}
.pv4-dashboard-preview{border:1px solid #dedafd;border-radius:24px;padding:20px;background:linear-gradient(145deg,#f9faff,#f1efff)}
.pv4-priority{border-left:4px solid var(--pj-violet);box-shadow:0 10px 24px rgba(62,52,176,.08)}
.pv4-trust-banner{border:1px solid rgba(255,255,255,.08);box-shadow:0 26px 70px rgba(5,23,57,.24)}
.pv4-founder-card{border:1px solid var(--pj-line);border-radius:24px;background:#fff;box-shadow:var(--pj-shadow-soft)}
.pv4-plan-focus{background:linear-gradient(180deg,#fff,#f8f6ff);border-color:#bfb2ff!important;box-shadow:0 28px 70px rgba(82,59,210,.17)!important}

/* Free Scan — the scan itself should sell confidence */
.scan-shell{width:min(1220px,calc(100% - 40px))}
.scan-header{position:sticky;top:0;z-index:30;margin-inline:calc((1220px - 100vw)/2);padding-inline:max(20px,calc((100vw - 1220px)/2));background:rgba(255,255,255,.92);backdrop-filter:blur(18px);box-shadow:0 8px 30px rgba(15,23,48,.04)}
.scan-main{padding:56px 0 54px}
.scan-copy,.scan-preview,.scan-verified,.scan-zero,.scan-handoff,.scan-result-domain-card,.scan-coverage-overview,.scan-trust-inline{
  border-color:var(--pj-line);border-radius:24px;box-shadow:var(--pj-shadow-soft)
}
.scan-copy{position:relative;overflow:hidden;padding:38px;background:
  radial-gradient(circle at 10% 0%,rgba(18,98,255,.08),transparent 32%),#fff}
.scan-copy:before{content:"";position:absolute;width:210px;height:210px;right:-110px;bottom:-120px;border:1px solid rgba(96,64,239,.11);border-radius:50%}
.scan-preview{padding:30px;background:linear-gradient(145deg,#fff,#f5f3ff)}
.scan-preview-list div{border-radius:14px;box-shadow:0 8px 22px rgba(45,48,113,.05)}
















.scan-result-heading{padding-top:12px}
.scan-result-heading h1{max-width:950px}
.scan-result-domain-card{padding:20px 22px;background:linear-gradient(135deg,#fff,#f8f7ff)}
.scan-result-summary>div{border-radius:18px;box-shadow:0 10px 28px rgba(31,45,104,.06)}
.scan-coverage-overview{padding:24px;background:#fff}
.scan-coverage-grid>*{border-radius:16px!important;box-shadow:0 8px 24px rgba(34,46,103,.05)}
.scan-finding{position:relative;border-radius:20px!important;padding:22px!important;background:#fff;box-shadow:0 14px 36px rgba(31,45,104,.07)!important;transition:transform .2s ease,box-shadow .2s ease}
.scan-finding:hover{transform:translateY(-2px);box-shadow:0 20px 46px rgba(31,45,104,.11)!important}
.scan-finding:before{content:"";position:absolute;left:0;top:22px;bottom:22px;width:4px;border-radius:4px;background:linear-gradient(var(--pj-violet),var(--pj-blue))}
.scan-finding h2{font-size:24px!important;letter-spacing:-.02em}
.scan-finding-detail,.scan-finding-evidence,.scan-finding-why,.scan-finding-action{border-radius:14px!important}









.scan-trust-inline{margin-top:16px;padding:22px;background:#fff}

/* Auth + billing */
.auth-shell{width:min(1220px,calc(100% - 36px))}
.auth-header{position:sticky;top:0;z-index:25;background:rgba(246,248,253,.92);backdrop-filter:blur(18px)}
.auth-main{gap:48px;padding:48px 0 34px}
.auth-copy h1{font-size:clamp(46px,5.2vw,70px)}
.auth-copy>p{font-size:18px;line-height:1.65}
.auth-card{border-radius:26px;padding:30px;box-shadow:0 28px 76px rgba(44,51,110,.14)}
.auth-card h2{font-size:31px}
.auth-plan-summary{border-radius:20px;box-shadow:0 18px 46px rgba(70,51,230,.09)}
.auth-button{min-height:54px;border-radius:13px}
.auth-trust{border-radius:22px;padding:24px 26px;box-shadow:var(--pj-shadow-soft)}
.billing-main{gap:20px}
.billing-current{border-radius:24px;background:linear-gradient(135deg,#fff,#f5f3ff)}
.billing-plan{border-radius:24px;padding:28px;box-shadow:0 14px 36px rgba(31,45,104,.07)}
.billing-plan-focus{position:relative;transform:translateY(-5px);border:2px solid #7258f2;box-shadow:0 30px 80px rgba(82,59,210,.18)}
.billing-plan-focus:before{content:"FOCUS";position:absolute;right:18px;top:17px;border-radius:999px;padding:5px 9px;background:#eeeaff;color:#563bdd;font-size:10px;font-weight:900;letter-spacing:.08em}
.billing-selected-note{border-left:4px solid var(--pj-green)!important}

/* Trust / legal / about / contact pages */
.public-header{position:sticky;top:0;z-index:40;background:rgba(255,255,255,.94)!important;backdrop-filter:blur(18px);box-shadow:0 8px 30px rgba(15,23,48,.04)}
.public-header__inner{min-height:76px}
.public-brand{filter:none!important}
.legal-hero{position:relative;overflow:hidden;padding:84px 0 66px!important;background:
  radial-gradient(circle at 82% 12%,rgba(96,64,239,.15),transparent 30%),
  radial-gradient(circle at 8% 70%,rgba(18,98,255,.07),transparent 30%),
  linear-gradient(180deg,#fff,#f8f9ff)!important}
.legal-hero__inner{max-width:900px!important}
.legal-hero h1{font-size:clamp(46px,5.2vw,72px)!important;line-height:1.03!important;letter-spacing:-.05em!important}
.legal-hero p{font-size:18px;line-height:1.65}
.public-section{padding:72px 0!important}
.about-layout,.contact-layout,.legal-layout{gap:22px!important}
.about-story,.founder-card,.about-principles article,.about-contact-card,.contact-card,.legal-card,.legal-content,.contact-panel{
  border-radius:24px!important;box-shadow:var(--pj-shadow-soft)!important}
.founder-card{background:linear-gradient(145deg,#fff,#f6f4ff)!important}
.founder-initial{background:linear-gradient(135deg,var(--pj-violet),var(--pj-blue))!important;box-shadow:0 14px 34px rgba(70,51,230,.20)}
.about-principles article{transition:transform .2s ease,box-shadow .2s ease}
.about-principles article:hover{transform:translateY(-3px);box-shadow:0 20px 46px rgba(31,45,104,.11)!important}
.about-contact-card{background:linear-gradient(135deg,#071a3d,#102a63 62%,#30248f)!important;color:#fff!important}
.about-contact-card p{color:#d3def1!important}
.public-footer{background:#071a3d!important;color:#d6e0f2!important}
.public-footer a{color:#e8efff!important}
.public-footer .footer-brand::before{color:#fff}
.public-footer .footer-brand p{color:#d6e0f2}

@media(max-width:900px){
  .pv4-hero{padding-top:58px}.pv4-hero-grid{gap:30px}.scan-header{margin-inline:0;padding-inline:0}.auth-main{gap:26px}
  .billing-plan-focus{transform:none}
}
@media(max-width:620px){
  .pv4-hero h1,.auth-copy h1{font-size:42px}.pv4-lead{font-size:17px}.pv4-section{padding:64px 0}
  .scan-main{padding-top:30px}.scan-copy,.scan-preview{padding:22px}
.legal-hero{padding:58px 0 46px!important}.legal-hero h1{font-size:42px!important}
}
@media(prefers-reduced-motion:reduce){
  .pv4-button:after,.scan-input-row button:after,.scan-button-secondary:after,.auth-button:after,.public-button:after{display:none}
  .scan-finding,.about-principles article{transition:none}
}

/* Customer Journey V3 — transparent capability proof */
.pv4-underhood{background:linear-gradient(180deg,#fff,#f8f9ff)}
.pv4-underhood-lead{max-width:860px;margin:0 0 28px;color:var(--pj-muted);font-size:18px;line-height:1.65}
.pv4-underhood-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.pv4-underhood-grid article{border:1px solid var(--pj-line);border-radius:20px;padding:20px;background:#fff;box-shadow:var(--pj-shadow-soft)}
.pv4-underhood-grid strong{display:block;margin-bottom:8px;color:var(--pj-violet);font-size:12px;font-weight:950;letter-spacing:.08em}
.pv4-underhood-grid span{display:block;color:var(--pj-ink);font-size:15px;font-weight:760;line-height:1.45}
.scan-capabilities{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:18px}
.scan-capabilities>div{border:1px solid var(--pj-line);border-radius:18px;padding:17px;background:#fff;box-shadow:0 10px 28px rgba(31,45,104,.06)}
.scan-capabilities strong,.scan-capabilities span{display:block}
.scan-capabilities strong{color:var(--pj-ink);font-size:14px;font-weight:900}
.scan-capabilities span{margin-top:5px;color:var(--pj-muted);font-size:12px;line-height:1.45}
.pv4-button--secondary{background:#eef1ff!important;color:#302f86!important;border:1px solid #d9dfff!important;box-shadow:none!important}
.pv4-button--secondary:hover{background:#e3e7ff!important;color:#26206f!important}
@media(max-width:900px){.pv4-underhood-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.scan-capabilities{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.pv4-underhood-grid,.scan-capabilities{grid-template-columns:1fr}.pv4-underhood-lead{font-size:16px}.scan-capabilities>div{padding:15px}}

/* Avoid 100vw scrollbar spill in the sticky Free Scan header. */
.scan-header{width:100%;margin-inline:0!important;padding-inline:0!important}

/* Result-surface contrast corrections found in real production-data preview. */
.scan-result-domain-card strong{color:var(--pj-ink)!important}
.scan-result-domain-card p{color:var(--pj-muted)!important}
.scan-result-domain-card span{color:#6876a3!important}


.scan-trust-inline{color:var(--pj-ink)!important}
.scan-trust-inline h2{color:var(--pj-ink)!important}
.scan-trust-inline p{color:var(--pj-muted)!important}

/* Live-scan readability polish. */

/* One compact, keyboard-native language disclosure for customer surfaces. */
.auth-language-menu{position:relative;flex:0 0 auto;max-width:100%;font:inherit;color:var(--pj-ink)}
.auth-language-menu summary{display:list-item;min-height:44px;padding:10px 14px;border:1px solid #d7ddeb;border-radius:12px;background:#fff;color:#343b91;font-weight:750;cursor:pointer;white-space:nowrap;overflow-wrap:normal}
.auth-language-menu summary:focus-visible,.auth-language-options a:focus-visible{outline:3px solid #1262ff;outline-offset:3px}
.auth-language-options{position:absolute;right:0;top:calc(100% + 8px);z-index:80;display:grid;grid-template-columns:1fr;gap:4px;min-width:180px;max-width:calc(100vw - 40px);padding:8px;border:1px solid #d7ddeb;border-radius:14px;background:#fff;box-shadow:0 16px 40px #0f173024}
.auth-language-menu:not([open])>.auth-language-options{display:none}
.auth-language-menu .auth-language-options a.auth-lang{display:block;min-height:44px;margin:0;padding:10px 12px;border:0;border-radius:8px;background:#fff;color:#343b91;line-height:1.4;text-align:left;text-decoration:none;overflow-wrap:anywhere}
.auth-language-menu .auth-language-options a.auth-lang:hover,.auth-language-menu .auth-language-options a[aria-current="true"]{background:#efedff;color:#3520a7}
@media(max-width:480px){.auth-language-menu summary{padding:10px;font-size:14px}.auth-language-options{min-width:170px}}

/* Six-language labels remain intact while narrow customer headers stay compact. */
@media(max-width:560px){
 .detail-header{display:grid;grid-template-columns:minmax(0,1fr) max-content;column-gap:8px;row-gap:4px;padding-block:3px}
 .detail-header>.auth-language-menu{grid-column:2;grid-row:1}
 .detail-header>.text-link{grid-column:1/-1;grid-row:2;min-height:44px;display:flex;align-items:center}
 .auth-header .auth-nav>a{min-width:0;flex-shrink:1}
 .activation-page .auth-brand{flex-shrink:0}
 .activation-page .auth-nav{min-width:0}
}
@media(max-width:440px){.app-sidebar{padding-block:6px}}
@media(min-width:721px) and (max-width:980px){.app-shell:not(.detail-shell){grid-template-columns:176px minmax(0,1fr)}}

/* Global public layouts: long translated labels wrap instead of widening or clipping cards. */
.pv-journey-hero .pv-journey-open>span:not(.pv-play-disc){min-width:0}
.pv-journey-hero .pv-journey-open strong,.pv-journey-hero .pv-journey-open small{white-space:normal;overflow-wrap:anywhere;hyphens:auto}
.page-shell .hero>*,.page-shell .step-grid>*,.page-shell .plan-grid>*{min-width:0}
.page-shell main h1,.page-shell main h2,.page-shell main h3,.page-shell main p,.page-shell main .eyebrow,.page-shell main .primary,.page-shell main .proof-chips{overflow-wrap:anywhere;hyphens:auto}
.contact-page main h1,.contact-page main h2,.contact-page main h3,.contact-page main p,.contact-page main .public-kicker,.contact-page main .public-button{overflow-wrap:anywhere;hyphens:auto}
.contact-page main .public-button{max-width:100%;text-align:center}

/* Keep the proof heading in its grid column even when a translated word is wider. */
.pv-journey-proof .pv5-result-main>div{min-width:0}
.pv-journey-proof .pv5-result-main h2,.pv-journey-proof .pv5-result-main p{overflow-wrap:anywhere}
