/* Shared public presentation; account logic and application styles stay scoped. */
.cv3-public { --cv3-line:#e0e8e6; --cv3-blue:#1769e0; font-family:Inter,"Segoe UI",system-ui,sans-serif; background:#f8faf8; color:#142b3a; }
.cv3-public .public-header { position:sticky; top:0; z-index:40; background:#fffffff5; backdrop-filter:blur(12px); border-bottom:1px solid #e1e8e6; }
.cv3-public .public-header__bar { max-width:1352px; padding:14px 32px; min-height:82px; gap:26px; }
.cv3-public .public-brand { width:136px; flex-shrink:0; }
.cv3-public .public-brand img { width:136px; height:40px; object-fit:contain; }
.cv3-public .public-nav { gap:18px; margin-left:auto; }
.cv3-public .public-nav a { padding:8px 0; font-size:13px; color:#415861; white-space:nowrap; }
.cv3-public .public-actions { gap:10px; }
.cv3-public .public-actions a, .cv3-public .public-actions button { border-radius:8px; padding:12px 15px; }
.cv3-public .public-actions--desktop { flex-shrink:0; }
.cv3-public .public-actions--desktop a, .cv3-public .public-actions--desktop button, .cv3-public .public-actions--desktop form { width:auto; white-space:nowrap; }
.cv3-public .public-menu-toggle { border-radius:9px; }
.cv3-public .public-language-picker { position:relative; }
.cv3-public .public-language-picker__summary { list-style:none; cursor:pointer; display:flex; align-items:center; justify-content:space-between; gap:8px; min-height:44px; padding:10px 8px; color:#415861; font-size:12px; font-weight:600; border-radius:8px; }
.cv3-public .public-language-picker__summary::-webkit-details-marker { display:none; }
.cv3-public .public-language-picker__summary::marker { content:""; }
.cv3-public .public-language-picker__summary:hover { background:#eff5f2; }
.cv3-public .public-language-picker__chevron { width:14px; height:14px; transition:transform .15s; }
.cv3-public .public-language-picker[open] .public-language-picker__chevron { transform:rotate(180deg); }
.cv3-public .public-language-picker__list { position:absolute; top:calc(100% + 10px); right:0; min-width:190px; padding:7px; border:1px solid #dce6e2; border-radius:12px; box-shadow:0 16px 42px #163b4520; background:white; max-height:min(380px,70vh); overflow:auto; }
.cv3-public .public-locales a.public-locale-option { display:flex; gap:24px; align-items:center; justify-content:space-between; padding:11px 12px; min-height:44px; font-size:14px; border-radius:7px; color:#253e49; text-decoration:none; }
.cv3-public .public-locales a.public-locale-option:hover,.cv3-public .public-locales a.public-locale-option[aria-current=page] { background:#edf6f1; color:#176b60; }
.cv3-public .public-locale-option__code { font-size:11px; color:#657a78; }
.cv3-public .public-locales__label { grid-column:1/-1; font-size:12px; color:#627873; padding:6px 12px; }
.cv3-public .public-footer { padding:64px 0 26px; background:#fff; color:#536575; }
.cv3-public .public-footer__container { width:calc(100% - 112px); max-width:1240px; margin:0 auto; }
.cv3-public .public-footer__main { display:grid; grid-template-columns:1fr 1.7fr; gap:90px; }
.cv3-public .public-footer__brand img { width:144px; height:42px; }
.cv3-public .public-footer__brand p { max-width:230px; margin:18px 0 0; font-size:14px; line-height:1.7; }
.cv3-public .public-footer__links { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:34px; }
.cv3-public .public-footer__links nav { display:flex; flex-direction:column; align-items:flex-start; gap:11px; }
.cv3-public .public-footer h2 { margin:0 0 8px; color:#142b3a; font-size:12px; line-height:1.5; letter-spacing:.7px; font-weight:650; text-transform:uppercase; }
.cv3-public .public-footer a { min-height:0; padding:0; color:#536575; font-size:13px; line-height:1.6; }
.cv3-public .public-footer a:hover { color:#1769e0; text-decoration:underline; text-underline-offset:4px; }
.cv3-public .public-footer a:focus-visible { outline:2px solid #1769e0; outline-offset:4px; box-shadow:none; }
.cv3-public .public-footer__bottom { display:flex; align-items:center; justify-content:space-between; gap:25px; margin-top:46px; padding-top:24px; border-top:1px solid #dce5ea; color:#627a89; font-size:12px; line-height:1.6; }
.cv3-public .public-footer__bottom a { display:inline-flex; align-items:center; gap:6px; white-space:nowrap; font-size:12px; }
.cv3-public .public-footer__bottom svg { width:15px; height:15px; }
.cv3-public .marketing-section { padding:72px 32px; }
.cv3-public .marketing-container { max-width:1184px; }
.cv3-public .marketing-section--surface { background:#f0f5f1; }
.cv3-public .marketing-display { font-size:clamp(36px,4.2vw,57px); font-weight:650; line-height:1.11; letter-spacing:-1.9px; }
.cv3-public .marketing-lead { font-size:16px; color:#50646a; max-width:62ch; }
.cv3-public .marketing-eyebrow { color:#237b70; font-size:11px; letter-spacing:.12em; }
.cv3-public .marketing-outcome-card,.cv3-public .marketing-industry-card,.cv3-public .marketing-product-card,.cv3-public .marketing-media,.cv3-public .marketing-security-proof,.cv3-public .marketing-truth-strip,.cv3-public .marketing-workflow,.cv3-public .marketing-pricing-card,.cv3-public .marketing-faq details { border-radius:15px; border-color:#dce6e1; box-shadow:0 5px 20px #163b4505; }
.cv3-public .marketing-cta { min-height:48px; border-radius:8px; font-size:14px; }
.cv3-public .marketing-final-cta { background:#173c3c; border-radius:20px; padding:48px; }
.cv3-public .marketing-final-cta h2,.cv3-public .marketing-final-cta p,.cv3-public [data-landing-final-cta] .marketing-final-cta>p.text-slate-200 { color:#fff; }
.cv3-public [data-public-page] { padding-top:70px; padding-bottom:86px; }
.cv3-public [data-public-page] h1 { max-width:20ch; line-height:1.12; font-weight:650; font-size:clamp(34px,4vw,52px); letter-spacing:-1.5px; }
.cv3-public [data-public-page] .rounded-2xl,.cv3-public [data-public-policy-links] a,.cv3-public [data-legal-body] .rounded-2xl { border-radius:16px; background:#fff; border:1px solid #e0e8e3; box-shadow:none; --tw-ring-shadow:0 0 transparent; }
.cv3-public [data-public-page] p,.cv3-public [data-legal-body] p,.cv3-public [data-legal-body] li { line-height:1.85; }
.cv3-public [data-legal-body] { background:#f8faf8; }
.cv3-public [data-legal-body]>div { max-width:960px; }
.cv3-public .public-app-promo { display:flex; flex-direction:column; gap:34px; background:#eaf2ed; border:1px solid #dce7df; border-radius:22px; padding:42px; }
.cv3-public .public-app-promo__identity { display:flex; align-items:center; gap:14px; }
.cv3-public .public-app-promo__identity>img { padding:11px; background:#fff; border:1px solid #dde7e2; border-radius:16px; flex-shrink:0; }
.cv3-public .public-app-promo__identity strong { font-size:23px; font-weight:650; letter-spacing:-.5px; }
.cv3-public .public-app-promo__identity p { margin:4px 0 0; font-size:12px; color:#58716b; }
.cv3-public .public-app-promo__eyebrow { margin:0 0 15px; font-size:10px; letter-spacing:.1em; text-transform:uppercase; font-weight:650; color:#237467; }
.cv3-public .public-app-promo h2 { font-size:clamp(30px,3vw,41px); line-height:1.14; letter-spacing:-1.3px; font-weight:650; color:#183c39; margin:0; }
.cv3-public .public-app-promo__description { margin:20px 0 0; font-size:15px; color:#4e6863; line-height:1.85; }
.cv3-public .public-store-links { display:flex; align-items:center; flex-wrap:wrap; gap:8px 18px; }
.cv3-public .public-store-links a { display:flex; align-items:center; min-height:64px; }
.cv3-public .public-store-links img { width:auto; height:46px; }
.cv3-public .public-store-links .public-store-links__google img { height:60px; }
.cv3-public .public-app-promo__foot { display:flex; align-items:flex-start; gap:13px; border-top:1px solid #cdded4; padding-top:25px; color:#2f6b5f; }
.cv3-public .public-app-promo__foot svg { flex:0 0 auto; }
.cv3-public .public-app-promo__foot strong { font-size:13px; font-weight:600; }
.cv3-public .public-app-promo__foot p { margin:5px 0 0; font-size:12px; color:#58716b; line-height:1.75; }
@media(min-width:1024px) and (max-width:1199px) { .cv3-public .public-header__bar{gap:15px;padding-inline:24px} .cv3-public .public-nav{gap:11px}.cv3-public .public-nav a{font-size:12px}.cv3-public .public-actions a{padding-inline:11px} }
@media(max-width:1023px) { .cv3-public .public-header__bar{min-height:72px;padding:12px 24px}.cv3-public .public-locales--mobile{display:grid;grid-template-columns:1fr 1fr;gap:4px;border-top:1px solid #e0e8e3;margin-top:18px;padding-top:12px}.cv3-public .public-app-promo{padding:30px;gap:25px}.cv3-public .marketing-section{padding:50px 24px} }
@media(max-width:599px) { .cv3-public .public-header__bar{padding:10px 18px;min-height:66px}.cv3-public .public-brand,.cv3-public .public-brand img{width:125px}.cv3-public .public-footer__grid{padding:38px 22px;gap:30px}.cv3-public .public-footer__grid>section{grid-column:1/-1}.cv3-public .public-footer__copyright{padding:20px 22px}.cv3-public .public-app-promo{border-radius:16px;padding:26px;gap:24px}.cv3-public .public-app-promo h2{font-size:31px}.cv3-public .marketing-section{padding:40px 20px}.cv3-public .marketing-display{font-size:34px;letter-spacing:-1.1px}.cv3-public .marketing-final-cta{padding:28px}.cv3-public [data-public-page]{padding:45px 20px 60px}.cv3-public [data-public-page] h1{font-size:34px}.cv3-public .public-locales--mobile{grid-template-columns:1fr} }
@media(prefers-reduced-motion:reduce) { .cv3-public .public-language-picker__chevron{transition:none} }
@media(max-width:1023px) { .cv3-public .public-footer__container{width:calc(100% - 64px)}.cv3-public .public-footer__main{grid-template-columns:1fr;gap:40px}.cv3-public .public-footer__brand{display:flex;align-items:center;gap:35px}.cv3-public .public-footer__brand p{margin-top:0} }
@media(max-width:599px) { .cv3-public .public-footer{padding-top:46px}.cv3-public .public-footer__container{width:calc(100% - 40px)}.cv3-public .public-footer__main{gap:32px}.cv3-public .public-footer__brand{display:block}.cv3-public .public-footer__brand p{margin-top:17px}.cv3-public .public-footer__links{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 23px}.cv3-public .public-footer__bottom{display:grid;grid-template-columns:1fr auto;gap:17px;margin-top:35px}.cv3-public .public-footer__bottom>span:nth-child(2){grid-column:1/-1;order:3} }
