*{box-sizing:border-box}body{font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--brand-background);color:var(--brand-text);font-size:15px;margin:0;line-height:1.65}.public-shell{max-width:460px;margin:0 auto;padding:36px 24px 22px;min-height:100dvh}.public-brand{text-align:center;padding:9px 0 24px}.brand-logo{max-width:150px;max-height:85px;display:block;margin:0 auto 15px;object-fit:contain}.public-mark{display:block;font-size:56px;font-weight:800;line-height:1.1;color:var(--brand-primary);margin-bottom:14px;letter-spacing:-5px}.public-mark span{font-size:22px;color:var(--brand-secondary);vertical-align:top}.unit-label{font-size:12px;opacity:.7;margin-top:3px}.intro{text-align:center;margin:15px 0 28px}.eyebrow{display:block;font-size:9px;font-weight:750;letter-spacing:1.8px;color:var(--brand-secondary);margin:0 0 12px}h1{font-size:34px;font-weight:750;letter-spacing:-1.2px;line-height:1.2;margin:12px 0 19px}h2{font-size:21px;margin:27px 0 10px}p{margin-bottom:21px}.intro p{font-size:14px;line-height:1.8;opacity:.8}.category-list{display:grid;gap:12px}.category-button{display:flex;align-items:center;gap:13px;padding:17px 16px;border-radius:12px;background:var(--brand-button);color:var(--brand-button-text);text-decoration:none;font-size:13px;font-weight:620;min-height:64px;box-shadow:0 4px 9px #00000006;transition:transform .15s}.category-button:hover{transform:translateY(-2px);color:var(--brand-button-text);filter:brightness(.95)}.category-icon{background:#ffffff22;border-radius:8px;width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;font-size:24px;font-weight:400;flex:none}.arrow{margin-left:auto;font-size:24px;font-weight:300}.privacy-note{text-align:center;font-size:11px;line-height:1.8;opacity:.8;margin:24px 0 0}.public-footer{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between;margin-top:42px;padding-top:20px;border-top:1px solid #7d8ba126;font-size:10px;opacity:.8}.public-footer a,a{color:var(--brand-text)}.back-link{display:inline-block;margin:8px 0 18px;font-size:13px;text-decoration:none}.form-title{font-size:28px}.muted{font-size:13px;opacity:.8}.form-control{border:1px solid #acb7c766;background:#ffffffb5;min-height:48px;border-radius:9px;font-size:15px;color:#172b4d}.form-label{font-size:13px;font-weight:600}.feedback-form .errorlist,.errorlist{font-size:13px;color:#ad1432;padding:12px 0 0 20px}.contact-question{border-top:1px solid #7d8ba126;margin-top:27px;padding:22px 0;font-size:13px}.contact-question .form-check-label{font-size:12px}.form-check-input{width:20px;height:20px;margin-right:8px}.contact-field[hidden]{display:none}.submit-button{display:flex;width:100%;align-items:center;justify-content:space-between;gap:10px;padding:16px 20px;border:0;border-radius:11px;background:var(--brand-button);color:var(--brand-button-text);font-size:14px;font-weight:650;text-decoration:none;min-height:54px;margin-top:22px}.submit-button:hover{color:var(--brand-button-text);filter:brightness(.94)}.success-wrap{text-align:center;padding-top:70px}.success-icon{width:84px;height:84px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--brand-button);color:var(--brand-button-text);font-size:38px;margin:0 auto 35px}.success-wrap h1{font-size:39px}.success-wrap p{opacity:.8}.honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.wordmark{font-size:45px;font-weight:780;letter-spacing:-2px;display:block;color:var(--brand-text);text-decoration:none}.wordmark span{color:var(--brand-secondary)}.home-intro{padding-top:30px}.home-intro>.eyebrow{margin-top:35px;font-size:8px}.home-intro h1{font-size:40px}.home-intro p{font-size:14px;opacity:.8}.home-card{background:#ffffff80;border:1px solid #dce5f0;border-radius:15px;padding:25px;margin:30px 0}.home-card>span{font-size:35px;display:block;color:var(--brand-primary);margin-bottom:5px}.home-card p{margin:12px 0 0;font-size:12px}.login-wrap{padding:25px 0}.login-wrap h1{font-size:30px}.login-wrap>p{font-size:13px;opacity:.75}.login-wrap form{margin-top:30px}.skip-link{position:absolute;top:-60px;left:10px;background:#fff;padding:10px;z-index:99}.skip-link:focus{top:0}:focus-visible{outline:3px solid #c96b00;outline-offset:4px}@media(min-width:768px){.public-shell{padding-top:55px}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}
/* Public flow v2, scoped to preserve login/home and organization branding. */
.wizard-page{padding-bottom:100px}.wizard-brand{padding-top:0;padding-bottom:25px}.wizard-brand .public-mark{font-size:39px;margin-bottom:8px}.wizard-brand .brand-logo{max-height:66px;max-width:130px}.step-progress{margin:0 0 25px}.step-progress-label{display:flex;justify-content:space-between;font-size:11px;margin-bottom:10px}.step-progress-label span{opacity:.7}.step-track{display:flex;gap:6px}.step-track span{height:4px;border-radius:4px;flex:1;background:#8597aa30}.step-track .complete{background:var(--brand-primary)}.wizard-intro{margin-top:0}.wizard-intro h1{font-size:32px}.wizard-intro p{margin-bottom:23px;font-size:13px}.topic-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.topic-card{position:relative;border:1px solid #a9b4c84a;border-radius:15px;padding:18px 15px;background:#ffffff90;display:flex;flex-direction:column;gap:5px;min-height:160px;cursor:pointer;color:var(--brand-text);transition:border-color .15s,box-shadow .15s}.topic-card input{position:absolute;opacity:0;width:1px;height:1px;top:20px;left:20px}.topic-card:focus-within{outline:3px solid #c96b00;outline-offset:3px}.topic-symbol{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:var(--brand-background);border-radius:10px;color:var(--brand-primary);font-size:27px;margin-bottom:7px;line-height:1}.topic-card strong{font-size:14px;letter-spacing:-.2px}.topic-card small{font-size:10px;line-height:1.6;opacity:.8}.topic-check{position:absolute;top:14px;right:14px;opacity:0;font-size:12px}.topic-card:has(input:checked){border-color:var(--brand-primary);box-shadow:0 0 0 1px var(--brand-primary);background:var(--brand-button);color:var(--brand-button-text)}.topic-card:has(input:checked) .topic-check{opacity:1}.topic-card:has(input:checked) .topic-symbol{background:#ffffff25;color:var(--brand-button-text)}.sticky-cta{position:fixed;z-index:20;bottom:0;left:50%;transform:translateX(-50%);width:100%;max-width:460px;padding:12px 24px calc(14px + env(safe-area-inset-bottom));background:var(--brand-background);border-top:1px solid #8191a326;box-shadow:0 -8px 20px #24344806}.sticky-cta .submit-button{margin:0}.submit-button:disabled{opacity:.45;cursor:not-allowed;filter:none}.price-shortcut{display:flex;gap:10px;align-items:center;justify-content:center;border:1px solid #92a0b344;border-radius:11px;padding:15px;margin:23px 0 0;font-size:13px;font-weight:650;text-decoration:none;color:var(--brand-text)}.chosen-topic{display:inline-block;background:#ffffff85;border:1px solid #a9b4c840;border-radius:20px;padding:5px 12px;font-size:11px;margin-bottom:12px}.wizard-form .form-title{font-size:27px;margin-top:8px;margin-bottom:25px}.wizard-form section[hidden],.wizard-form button[hidden]{display:none!important}.wizard-form .back-link{margin:0 0 17px;font-size:13px}.input-hint{font-size:11px;line-height:1.65;opacity:.8;margin-top:8px}.catalog-combobox{margin-bottom:22px}.catalog-results{border:1px solid #a6b1c550;background:var(--brand-background);border-radius:10px;overflow:hidden;margin-top:7px;max-height:290px;overflow-y:auto}.catalog-option{display:flex;justify-content:space-between;gap:10px;width:100%;text-align:left;border:0;border-bottom:1px solid #a6b1c52b;background:#ffffff95;padding:14px 12px;color:var(--brand-text);font-size:12px;min-height:50px}.catalog-option strong{white-space:nowrap;font-size:11px}.catalog-option:hover,.catalog-option:focus{background:var(--brand-button);color:var(--brand-button-text)}.outside-catalog{border:1px dashed #75849a77;background:none;color:var(--brand-text);width:100%;padding:13px 10px;border-radius:9px;margin-top:12px;font-size:12px;text-align:left}.selected-product{background:#ffffff90;border-left:3px solid var(--brand-primary);padding:10px 12px;border-radius:5px;margin:10px 0;font-size:12px}.photo-field{margin-top:24px}.photo-actions{display:flex;gap:8px;margin-top:10px}.photo-actions button{border:1px solid #91a0b555;border-radius:8px;background:#ffffff85;padding:12px 14px;font-size:12px;flex:1;color:var(--brand-text)}.photo-preview{max-width:100%;max-height:180px;border-radius:10px;margin-top:15px;object-fit:contain}.field-warning{font-size:12px;color:#a71d32}.contact-choice legend{font-size:16px;font-weight:650;line-height:1.5}.contact-options{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:14px 0 24px}.contact-options label{display:flex;align-items:center;justify-content:center;gap:10px;border:1px solid #9faec356;padding:14px;border-radius:10px;cursor:pointer;background:#ffffff80;font-weight:600;font-size:14px}.contact-options label:has(input:checked){border-color:var(--brand-primary);box-shadow:0 0 0 1px var(--brand-primary)}.contact-options input{accent-color:var(--brand-primary);width:18px;height:18px}.consent-box{font-size:12px;line-height:1.7;margin:18px 0}.consent-box .form-check{padding-left:29px}.consent-box small{display:block;font-size:10px;opacity:.8;margin:7px 0 0 29px}.marketing-consent{border-top:1px solid #95a2b344;padding-top:17px}.price-result{background:#ffffffb5;border:1px solid #a4b1c544;border-radius:16px;padding:26px 22px;margin:25px 0}.price-result h2{font-size:21px;margin:10px 0}.price-result>strong{font-size:39px;letter-spacing:-1.1px;color:var(--brand-text)}input,textarea,select{scroll-margin-bottom:130px}html{scroll-padding-bottom:130px}@media(max-width:350px){.topic-grid{grid-template-columns:1fr}.topic-card{min-height:100px}.wizard-intro h1{font-size:29px}}@media(max-width:767px){.wizard-form input,.wizard-form textarea{font-size:16px}}
/* Branding logo dimensions are shared by preview and public page. */
.brand-logo{width:var(--logo-width,240px);max-width:100%;height:auto;max-height:none;display:block;margin:0 auto 15px;object-fit:contain}
.wizard-brand .brand-logo{max-width:100%;max-height:none}
/* Public copy controls stay bounded for readable, responsive mobile layouts. */
.wizard-intro h1{font-size:var(--heading-size,25px);line-height:1.1}
.wizard-intro p{font-size:var(--introduction-size,12px);line-height:1.4}
.wizard-brand{padding-bottom:8px}
.wizard-intro h1{margin-top:8px;margin-bottom:9px}
.wizard-intro p{margin-bottom:20px}
.scanner-start{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;min-height:54px;border:0;border-radius:11px;background:var(--brand-button);color:var(--brand-button-text);font-size:14px;font-weight:700;padding:14px 18px;box-shadow:0 4px 12px #00000018;cursor:pointer;transition:filter .15s,transform .15s}.scanner-start:hover{color:var(--brand-button-text);filter:brightness(.94)}.scanner-start:active{transform:translateY(1px)}.scanner-start:disabled{opacity:.6;cursor:wait;filter:none;transform:none}.manual-search{border-top:1px solid #95a2b344;margin-top:22px;padding-top:20px}.scanner-panel{position:fixed;z-index:10000;inset:0;width:100%;height:100vh;height:100dvh;overflow:hidden;background:#050505;color:#fff;isolation:isolate}.scanner-panel[hidden]{display:none!important}.scanner-viewport{position:absolute;z-index:0;inset:0;width:100%;height:100%;overflow:hidden;background:#050505}.scanner-viewport video{position:absolute;inset:0;width:100%!important;height:100%!important;object-fit:cover}.scanner-viewport canvas{display:none!important}.scanner-content{position:absolute;z-index:2;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:calc(76px + env(safe-area-inset-top)) 7vw calc(44px + env(safe-area-inset-bottom));pointer-events:none;background:linear-gradient(to bottom,#0008 0,#0000 28%,#0000 72%,#0008 100%)}.scanner-guidance{order:2;margin:20px 16px 0;color:#fff;font-size:14px;font-weight:650;line-height:1.4;text-align:center;text-shadow:0 1px 4px #000}.scanner-frame{position:relative;width:min(86vw,560px);aspect-ratio:2.5/1;max-height:38dvh;border:2px solid #fff;border-radius:12px;box-shadow:0 0 0 9999px #00000038,0 0 18px #0008}.scanner-line{position:absolute;left:4%;right:4%;top:50%;height:2px;transform:translateY(-1px);background:#ff2d2d;box-shadow:0 0 7px #ff2d2d;pointer-events:none}.scanner-close{position:absolute;z-index:3;top:calc(12px + env(safe-area-inset-top));left:calc(12px + env(safe-area-inset-left));display:flex;align-items:center;gap:7px;min-height:44px;margin:0;border:1px solid #ffffff99;background:#111b;color:#fff;border-radius:999px;padding:9px 16px;font-size:14px;font-weight:700;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);cursor:pointer}.scanner-close span{font-size:24px;font-weight:400;line-height:.7}.scanner-close:hover{background:#000e}.scanner-active{overflow:hidden!important;overscroll-behavior:none}.scanner-active body,body.scanner-active{position:fixed;left:0;right:0;width:100%;overflow:hidden!important;touch-action:none}.no-lookup-methods{padding:17px;border:1px solid #95a2b344;border-radius:10px;background:#ffffff70}
.brand-byline{display:block;font-size:11px;line-height:1.5;letter-spacing:.02em;opacity:.72}.brand-byline a{color:inherit;text-decoration:none}.brand-byline a:hover{text-decoration:underline}.home-intro>.brand-byline{margin-top:-8px;margin-bottom:15px}.login-wrap>.brand-byline{margin-top:-12px}.public-footer .brand-byline{display:inline}
