@font-face{font-family:"Space Grotesk";src:url("../fonts/space-grotesk-latin-ext-400-normal.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Space Grotesk";src:url("../fonts/space-grotesk-latin-ext-500-normal.woff2") format("woff2");font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:"Space Grotesk";src:url("../fonts/space-grotesk-latin-ext-600-normal.woff2") format("woff2");font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:"Space Grotesk";src:url("../fonts/space-grotesk-latin-ext-700-normal.woff2") format("woff2");font-weight:700;font-style:normal;font-display:swap}
.kvfm-shell{--kvfm-primary:#123b56;--kvfm-accent:#0b6b6d;--kvfm-ink:#172b3a;--kvfm-muted:#5d7180;--kvfm-bg:#f5f8fa;--kvfm-line:#d8e2e7;--kvfm-error:#b42335;box-sizing:border-box;width:100%;max-width:960px;margin:clamp(18px,4vw,48px) auto;padding:0 clamp(12px,2.5vw,24px);color:var(--kvfm-ink);font-family:"Space Grotesk",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:16px;line-height:1.55}
.kvfm-shell *{box-sizing:border-box}.kvfm-shell [hidden]{display:none!important}.kvfm-hero,.kvfm-step,.kvfm-complete{background:#fff;border:1px solid var(--kvfm-line);border-radius:18px;box-shadow:0 12px 35px rgba(18,59,86,.07)}
.kvfm-survey-header{display:grid;gap:12px;margin-bottom:18px}.kvfm-site-header{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:68px;padding:12px 18px;border-radius:16px;background:var(--kvfm-primary);color:#fff;box-shadow:0 10px 30px rgba(18,59,86,.14)}.kvfm-brand-lockup{display:flex;align-items:center;gap:11px;min-width:0}.kvfm-brand-mark{display:grid;width:42px;height:42px;place-items:center;flex:0 0 auto;border-radius:11px;background:#fff;color:var(--kvfm-primary);font-size:22px;font-weight:700}.kvfm-brand-copy{display:grid;min-width:0;line-height:1.15}.kvfm-brand-copy strong{overflow:hidden;font-size:17px;text-overflow:ellipsis;white-space:nowrap}.kvfm-brand-copy small{margin-top:3px;color:rgba(255,255,255,.76);font-size:12px}.kvfm-header-time{display:inline-flex;align-items:center;gap:7px;flex:0 0 auto;padding:7px 10px;border:1px solid rgba(255,255,255,.22);border-radius:999px;font-size:12px;font-weight:600}.kvfm-status-dot{width:7px;height:7px;flex:0 0 auto;border-radius:50%;background:#63d7c9;box-shadow:0 0 0 3px rgba(99,215,201,.14)}
.kvfm-hero{padding:clamp(26px,5vw,50px)}.kvfm-eyebrow{margin:0 0 8px;color:var(--kvfm-accent);font-size:13px;font-weight:700;letter-spacing:.09em;text-transform:uppercase}.kvfm-hero h2{margin:0;color:var(--kvfm-primary);font-size:clamp(29px,5vw,44px);line-height:1.08;letter-spacing:-.035em}.kvfm-intro{max-width:68ch;margin-top:22px}.kvfm-intro p:last-child{margin-bottom:0}.kvfm-badges{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}.kvfm-badges span{display:inline-flex;align-items:center;min-height:32px;padding:5px 11px;border-radius:999px;background:#eaf5f4;color:#135c60;font-size:13px;font-weight:600}.kvfm-privacy-link{display:inline-block;margin-top:18px;color:var(--kvfm-primary);font-weight:600;text-underline-offset:3px}
.kvfm-progress-wrap{position:sticky;z-index:20;top:12px;margin:18px 0;padding:14px 18px;border:1px solid var(--kvfm-line);border-radius:14px;background:rgba(255,255,255,.96);box-shadow:0 8px 24px rgba(18,59,86,.09);backdrop-filter:blur(10px)}.admin-bar .kvfm-progress-wrap{top:44px}.kvfm-progress-copy{display:flex;justify-content:space-between;gap:12px;font-size:13px}.kvfm-progress-copy strong{color:var(--kvfm-primary)}.kvfm-progress-copy span{color:var(--kvfm-muted)}.kvfm-progress-title{margin:5px 0 8px;font-weight:600}.kvfm-progress-wrap progress{display:block;width:calc(100% - 50px);height:9px;border:0;border-radius:999px;overflow:hidden;background:#e7eef1}.kvfm-progress-wrap progress::-webkit-progress-bar{background:#e7eef1}.kvfm-progress-wrap progress::-webkit-progress-value{background:linear-gradient(90deg,var(--kvfm-primary),var(--kvfm-accent));border-radius:999px}.kvfm-progress-wrap progress::-moz-progress-bar{background:linear-gradient(90deg,var(--kvfm-primary),var(--kvfm-accent));border-radius:999px}.kvfm-progress-percent{position:absolute;right:18px;bottom:11px;color:var(--kvfm-primary);font-size:13px;font-weight:700}
.kvfm-step{padding:clamp(22px,4vw,38px)}.kvfm-step,.kvfm-step-heading,.kvfm-question,.kvfm-error-summary{scroll-margin-top:150px}.kvfm-step-heading{margin-bottom:8px;padding-bottom:16px;border-bottom:1px solid var(--kvfm-line)}.kvfm-step-heading span{color:var(--kvfm-accent);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.kvfm-step-heading h3{margin:3px 0 0;color:var(--kvfm-primary);font-size:clamp(24px,4vw,32px);line-height:1.15}.kvfm-question{min-width:0;margin-top:14px;padding:20px;border:1px solid #e1e9ed;border-radius:14px;background:#fbfdfe}.kvfm-question legend{display:block;width:100%;padding:0;color:var(--kvfm-ink);font-size:18px;font-weight:600;line-height:1.35}.kvfm-required{display:inline-block;margin-left:7px;padding:3px 7px;border-radius:5px;background:#edf2f5;color:#5b6871;font-size:10px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;vertical-align:2px}.kvfm-help{margin:7px 0 14px;color:var(--kvfm-muted);font-size:14px}.kvfm-choice-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:10px}.kvfm-choice{display:flex;align-items:flex-start;gap:11px;min-height:48px;margin:0;padding:12px 14px;border:1px solid var(--kvfm-line);border-radius:11px;background:#fff;cursor:pointer;transition:border-color .15s,background .15s,box-shadow .15s}.kvfm-choice:hover{border-color:var(--kvfm-accent);background:#f7fcfc}.kvfm-choice:has(input:checked){border-color:var(--kvfm-accent);background:#ecf8f7;box-shadow:0 0 0 1px var(--kvfm-accent)}.kvfm-choice input{flex:0 0 auto;width:19px;height:19px;margin:2px 0 0;accent-color:var(--kvfm-accent)}.kvfm-choice span{line-height:1.35}.kvfm-shell .kvfm-other-input{grid-column:1/-1;width:100%;margin:7px 0 6px}.kvfm-question:is([data-question-type="text"],[data-question-type="textarea"],[data-question-type="number"],[data-question-type="select"]) .kvfm-control{max-width:640px}
.kvfm-shell input[type="text"],.kvfm-shell input[type="email"],.kvfm-shell input[type="tel"],.kvfm-shell input[type="number"],.kvfm-shell select,.kvfm-shell textarea{display:block;width:100%;min-height:48px;margin-top:7px;padding:11px 13px;border:1px solid #bdcbd2;border-radius:9px;background:#fff;color:var(--kvfm-ink);font:inherit}.kvfm-shell textarea{min-height:120px;resize:vertical}.kvfm-shell input:focus,.kvfm-shell select:focus,.kvfm-shell textarea:focus,.kvfm-button:focus-visible,.kvfm-choice:focus-within{outline:3px solid var(--kvfm-accent);outline-offset:2px;border-color:var(--kvfm-accent)}.kvfm-question.has-error{border:2px solid var(--kvfm-error);background:#fffafa;box-shadow:0 0 0 3px rgba(180,35,53,.06)}.kvfm-field-error{margin:10px 0 0;color:var(--kvfm-error);font-size:14px;font-weight:600}.kvfm-error-summary{margin:18px 0;padding:16px 18px;border:2px solid var(--kvfm-error);border-radius:12px;background:#fff5f5;color:#7f1d2d}.kvfm-error-summary ul{margin:8px 0 0;padding-left:20px}.kvfm-notice{margin:18px 0;padding:15px 18px;border-radius:11px}.kvfm-notice--info{border:1px solid #a9d4d1;background:#edf9f8}.kvfm-notice--error{border:1px solid #e9a9b0;background:#fff2f3;color:#842534}.kvfm-resume-notice{display:flex;align-items:center;justify-content:space-between;gap:14px}.kvfm-inline-clear{border:0;background:transparent;color:var(--kvfm-primary);font:600 13px/1.2 "Space Grotesk",sans-serif;text-decoration:underline;cursor:pointer}.kvfm-shell .screen-reader-text{position:absolute!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.kvfm-actions{display:flex;justify-content:space-between;gap:12px;margin-top:26px;padding-top:22px;border-top:1px solid var(--kvfm-line)}.kvfm-button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:11px 20px;border:2px solid transparent;border-radius:10px;font:600 15px/1.2 "Space Grotesk",sans-serif;cursor:pointer;transition:box-shadow .12s,background .12s}.kvfm-button:hover{box-shadow:0 8px 20px rgba(18,59,86,.14)}.kvfm-button:disabled{cursor:wait;opacity:.65}.kvfm-button--primary{margin-left:auto;background:var(--kvfm-primary);color:#fff;box-shadow:0 6px 16px rgba(18,59,86,.18)}.kvfm-button--primary:hover{background:color-mix(in srgb,var(--kvfm-primary) 88%,#000);color:#fff}.kvfm-button--secondary{border-color:var(--kvfm-line);background:#fff;color:var(--kvfm-primary)}
.kvfm-matrix-scroll{max-width:100%;overflow-x:auto;border:1px solid var(--kvfm-line);border-radius:10px}.kvfm-matrix{width:100%;min-width:680px;border-collapse:collapse}.kvfm-matrix th,.kvfm-matrix td{padding:6px;border-bottom:1px solid var(--kvfm-line);text-align:center}.kvfm-matrix thead th{background:#f1f6f8;color:var(--kvfm-primary);font-size:12px}.kvfm-matrix tbody th{text-align:left}.kvfm-matrix td label{display:grid;min-width:44px;min-height:44px;place-items:center;cursor:pointer}.kvfm-matrix input{width:21px;height:21px;accent-color:var(--kvfm-accent)}
.kvfm-complete{padding:clamp(26px,6vw,50px);text-align:center}.kvfm-complete h3{margin:10px 0;color:var(--kvfm-primary);font-size:32px}.kvfm-success-icon{display:grid;width:58px;height:58px;margin:auto;place-items:center;border-radius:50%;background:var(--kvfm-accent);color:#fff;font-size:31px;font-weight:700}.kvfm-submission-id{display:inline-block;margin:18px 0;padding:7px 11px;border-radius:7px;background:#f0f5f7;font-size:13px}.kvfm-contact-box{margin-top:30px;padding-top:30px;border-top:1px solid var(--kvfm-line);text-align:left}.kvfm-contact-box h4{margin:0;color:var(--kvfm-primary);font-size:24px}.kvfm-field-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.kvfm-field-grid label{font-weight:600}.kvfm-field-grid label span{color:var(--kvfm-muted);font-size:12px;font-weight:400}.kvfm-consent{display:flex;gap:10px;margin:18px 0;font-size:14px}.kvfm-consent input{flex:0 0 auto;width:19px;height:19px;margin-top:2px;accent-color:var(--kvfm-accent)}.kvfm-contact-privacy{margin:-8px 0 18px}.kvfm-contact-status{min-height:24px;color:var(--kvfm-primary);font-weight:600}.kvfm-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.kvfm-brand-image{display:flex;min-width:42px;max-width:142px;height:42px;padding:5px 8px;align-items:center;justify-content:center;flex:0 1 auto;border-radius:10px;background:#fff}.kvfm-brand-logo{display:block;width:auto;max-width:126px;height:auto;max-height:32px;object-fit:contain}.kvfm-site-footer{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:20px;padding:18px 20px;border:1px solid var(--kvfm-line);border-radius:14px;background:#fff;color:var(--kvfm-ink)}.kvfm-site-footer .kvfm-brand-copy strong{color:var(--kvfm-primary);font-size:14px;white-space:normal}.kvfm-site-footer .kvfm-brand-copy small{color:var(--kvfm-muted);font-size:11px}.kvfm-site-footer .kvfm-brand-mark{background:var(--kvfm-primary);color:#fff}.kvfm-site-footer__meta{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:7px 16px;color:var(--kvfm-muted);font-size:12px}.kvfm-site-footer__meta a{color:var(--kvfm-primary);font-weight:600;text-underline-offset:3px}.kvfm-notice--warning{border:1px solid #e1c274;background:#fff8e6;color:#665018}.kvfm-privacy-shell{max-width:960px}.kvfm-privacy-hero .kvfm-privacy-lead{max-width:70ch;margin:18px 0 0;color:#405966}.kvfm-privacy-updated{margin:12px 0 0;color:var(--kvfm-muted);font-size:13px}.kvfm-privacy-review{margin:18px 0}.kvfm-privacy-toc{padding:20px 24px;border:1px solid var(--kvfm-line);border-radius:14px;background:#eef6f6}.kvfm-privacy-toc strong{display:block;color:var(--kvfm-primary);font-size:18px}.kvfm-privacy-toc ol{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px 28px;margin:12px 0 0;padding-left:21px}.kvfm-privacy-toc a{color:var(--kvfm-primary);text-underline-offset:3px}.kvfm-privacy-content{display:grid;gap:14px;margin-top:18px}.kvfm-privacy-content section{padding:clamp(20px,4vw,34px);border:1px solid var(--kvfm-line);border-radius:15px;background:#fff;box-shadow:0 8px 24px rgba(18,59,86,.045);scroll-margin-top:24px}.kvfm-privacy-content h3{margin:0 0 14px;color:var(--kvfm-primary);font-size:clamp(20px,3vw,26px);line-height:1.2}.kvfm-privacy-content p:last-child,.kvfm-privacy-content ul:last-child{margin-bottom:0}.kvfm-privacy-content li+li{margin-top:7px}.kvfm-privacy-details{display:grid;grid-template-columns:minmax(170px,34%) 1fr;margin:0}.kvfm-privacy-details dt,.kvfm-privacy-details dd{margin:0;padding:10px 0;border-bottom:1px solid var(--kvfm-line)}.kvfm-privacy-details dt{color:#3e5664;font-weight:600}.kvfm-privacy-details dd{overflow-wrap:anywhere}.kvfm-privacy-source{color:var(--kvfm-muted);font-size:12px}.kvfm-admin-completion{padding:12px 14px;border-radius:9px;background:#fff5dc;color:#614a12;font-size:13px}
@media (max-width:782px){.admin-bar .kvfm-progress-wrap{top:58px}}@media (max-width:620px){.kvfm-shell{margin:16px auto;padding:0 12px;font-size:15px}.kvfm-hero,.kvfm-step,.kvfm-complete{border-radius:13px}.kvfm-progress-wrap{top:6px;margin:10px 0;padding:11px 13px;border-radius:11px}.admin-bar .kvfm-progress-wrap{top:52px}.kvfm-progress-copy{font-size:11px}.kvfm-progress-title{font-size:13px}.kvfm-progress-wrap progress{width:calc(100% - 43px)}.kvfm-progress-percent{right:13px;bottom:8px;font-size:11px}.kvfm-question{padding:18px 0}.kvfm-question legend{font-size:16px}.kvfm-choice{min-height:48px;padding:12px}.kvfm-actions{flex-direction:column}.kvfm-button{width:100%}.kvfm-button--primary{margin-left:0}.kvfm-shell input[type="text"],.kvfm-shell input[type="email"],.kvfm-shell input[type="tel"],.kvfm-shell input[type="number"],.kvfm-shell select,.kvfm-shell textarea{font-size:16px}.kvfm-field-grid{grid-template-columns:1fr}.kvfm-badges{flex-direction:column;align-items:flex-start}.kvfm-matrix{min-width:600px}.kvfm-resume-notice{align-items:flex-start;flex-direction:column}}
@media (max-width:620px){.kvfm-survey-header{gap:10px;margin-bottom:10px}.kvfm-site-header{min-height:60px;padding:10px 12px;border-radius:13px}.kvfm-brand-lockup{gap:9px}.kvfm-brand-mark{width:38px;height:38px;border-radius:9px;font-size:20px}.kvfm-brand-copy strong{font-size:15px}.kvfm-brand-copy small{font-size:11px}.kvfm-header-time{gap:5px;padding:6px 8px;font-size:11px}.kvfm-hero{padding:24px 18px}.kvfm-step{padding:20px 14px}.kvfm-question{margin-top:10px;padding:16px 14px}.kvfm-choice-list{grid-template-columns:1fr}.kvfm-other-input{margin-left:0;width:100%}.kvfm-actions{margin-top:22px;padding-top:18px}}
@media (max-width:620px){.kvfm-brand-image{min-width:38px;max-width:104px;height:38px;padding:4px 6px}.kvfm-brand-logo{max-width:92px;max-height:29px}.kvfm-site-footer{align-items:flex-start;flex-direction:column;padding:16px}.kvfm-site-footer__meta{justify-content:flex-start}.kvfm-privacy-toc ol{grid-template-columns:1fr}.kvfm-privacy-details{grid-template-columns:1fr}.kvfm-privacy-details dt{padding-bottom:2px;border-bottom:0}.kvfm-privacy-details dd{padding-top:2px}.kvfm-privacy-content section{padding:20px 17px}}
@media print{.kvfm-progress-wrap,.kvfm-actions,.kvfm-contact-box{display:none!important}.kvfm-step{display:block!important;box-shadow:none;page-break-inside:avoid}.kvfm-shell{max-width:none}.kvfm-hero{box-shadow:none}}
@media (prefers-reduced-motion:reduce){.kvfm-shell *{scroll-behavior:auto!important;transition:none!important}}

/* 1.2.0: intentionally minimal public chrome — logo-only header and privacy-only footer. */
.kvfm-site-header{position:relative;display:flex;min-height:88px;overflow:hidden;align-items:center;justify-content:center;padding:16px 22px;border:1px solid rgba(255,255,255,.12);border-radius:20px;background:linear-gradient(135deg,var(--kvfm-primary),color-mix(in srgb,var(--kvfm-primary) 72%,#061d2c));box-shadow:0 14px 36px rgba(18,59,86,.16);isolation:isolate}
.kvfm-site-header:before,.kvfm-site-header:after{position:absolute;z-index:-1;border-radius:50%;content:"";pointer-events:none}
.kvfm-site-header:before{top:-85px;right:-45px;width:210px;height:210px;border:1px solid rgba(255,255,255,.12);box-shadow:0 0 0 34px rgba(255,255,255,.025),0 0 0 70px rgba(255,255,255,.018)}
.kvfm-site-header:after{bottom:-82px;left:-38px;width:150px;height:150px;background:radial-gradient(circle,rgba(61,202,191,.22),transparent 67%)}
.kvfm-site-header__glow{position:absolute;inset:0;background:linear-gradient(110deg,transparent 28%,rgba(255,255,255,.055) 49%,transparent 70%);pointer-events:none}
.kvfm-site-header__logo{position:relative;z-index:1;display:flex;align-items:center;justify-content:center}
.kvfm-site-header .kvfm-brand-image{min-width:64px;max-width:min(280px,72vw);height:56px;padding:7px 14px;border:1px solid rgba(255,255,255,.7);border-radius:14px;background:#fff;box-shadow:0 7px 22px rgba(0,0,0,.13)}
.kvfm-site-header .kvfm-brand-logo{max-width:min(250px,65vw);max-height:42px}
.kvfm-site-header .kvfm-brand-mark{width:54px;height:54px;border:1px solid rgba(255,255,255,.8);border-radius:14px;box-shadow:0 7px 22px rgba(0,0,0,.13)}
.kvfm-site-footer{position:relative;display:flex;min-height:76px;overflow:hidden;align-items:center;justify-content:center;margin-top:20px;padding:18px 20px;border:1px solid var(--kvfm-line);border-radius:16px;background:linear-gradient(145deg,#fff,#edf5f6);color:var(--kvfm-ink);box-shadow:0 9px 28px rgba(18,59,86,.055)}
.kvfm-site-footer__ornament{position:absolute;top:-45px;right:-32px;width:120px;height:120px;border:20px solid color-mix(in srgb,var(--kvfm-accent) 10%,transparent);border-radius:50%;pointer-events:none}
.kvfm-site-footer__meta{position:relative;z-index:1;display:flex;align-items:center;justify-content:center}
.kvfm-site-footer__meta a{display:inline-flex;min-height:40px;align-items:center;padding:9px 15px;border:1px solid color-mix(in srgb,var(--kvfm-accent) 34%,#d3dde1);border-radius:999px;background:#fff;color:var(--kvfm-primary);font-size:13px;font-weight:600;text-decoration:none;box-shadow:0 4px 14px rgba(18,59,86,.06)}
.kvfm-site-footer__meta a:before{width:7px;height:7px;margin-right:8px;border-radius:50%;background:var(--kvfm-accent);content:""}
.kvfm-site-footer__meta a:hover{text-decoration:underline;text-underline-offset:3px}

@media(max-width:620px){.kvfm-site-header{min-height:72px;padding:12px;border-radius:15px}.kvfm-site-header .kvfm-brand-image{max-width:min(220px,72vw);height:48px;padding:6px 11px}.kvfm-site-header .kvfm-brand-logo{max-width:min(196px,64vw);max-height:35px}.kvfm-site-header .kvfm-brand-mark{width:46px;height:46px;border-radius:12px}.kvfm-site-footer{min-height:68px;align-items:center;padding:14px}.kvfm-site-footer__meta{justify-content:center;width:100%}.kvfm-site-footer__meta a{justify-content:center;width:100%;max-width:280px}}

/* 1.2.1: theme-independent canvas and denser desktop layout. */
html.kvfm-canvas-document {
	min-height: 100%;
	margin-top: 0 !important;
	padding: 0 !important;
}

body.kvfm-canvas-page {
	min-width: 320px;
	min-height: 100vh;
	margin: 0 !important;
	padding: 0 !important;
	background:
		radial-gradient(circle at 8% 0, rgba(11, 107, 109, .07), transparent 28rem),
		linear-gradient(180deg, #f8fafb 0, #eef4f5 100%);
}

.kvfm-canvas-page .kvfm-canvas {
	width: 100%;
	min-height: 100vh;
	overflow-x: hidden;
}

@supports (overflow: clip) {
	.kvfm-canvas-page .kvfm-canvas {
		overflow-x: clip;
	}
}

.kvfm-canvas-page .kvfm-canvas__main {
	display: block;
	width: 100%;
	margin: 0;
	padding: 0;
}

.kvfm-canvas-skip {
	position: fixed;
	top: 8px;
	left: 12px;
	z-index: 100000;
	padding: 9px 13px;
	border-radius: 8px;
	background: #fff;
	color: #123b56;
	font: 600 14px/1.2 "Space Grotesk", sans-serif;
	transform: translateY(-180%);
}

.kvfm-canvas-skip:focus {
	transform: translateY(0);
}

.kvfm-canvas-page .kvfm-shell {
	max-width: 1240px;
	margin: 12px auto 24px;
	padding-right: clamp(12px, 2.2vw, 30px);
	padding-left: clamp(12px, 2.2vw, 30px);
}

.kvfm-canvas-page .kvfm-investor-shell {
	max-width: 1440px;
}

.kvfm-canvas-page .kvfm-privacy-shell {
	max-width: 1180px;
}

.kvfm-canvas-page .kvfm-site-header {
	min-height: 68px;
	padding: 9px 18px;
	border-radius: 16px;
}

.kvfm-canvas-page .kvfm-site-header .kvfm-brand-image {
	height: 48px;
	max-width: min(260px, 72vw);
	padding: 5px 12px;
	border-radius: 12px;
}

.kvfm-canvas-page .kvfm-site-header .kvfm-brand-logo {
	max-width: min(232px, 65vw);
	max-height: 36px;
}

.kvfm-canvas-page .kvfm-site-header .kvfm-brand-mark {
	width: 48px;
	height: 48px;
	border-radius: 12px;
}

.kvfm-canvas-page .kvfm-survey-header {
	gap: 10px;
	margin-bottom: 12px;
}

.kvfm-canvas-page .kvfm-hero {
	padding: clamp(24px, 3vw, 36px);
}

.kvfm-canvas-page .kvfm-progress-wrap {
	margin: 12px 0;
}

.kvfm-canvas-page .kvfm-step {
	padding: clamp(22px, 3vw, 34px);
}

.kvfm-canvas-page .kvfm-question {
	margin-top: 12px;
	padding: 18px;
}

.kvfm-canvas-page .kvfm-question:is([data-question-type="text"],[data-question-type="textarea"],[data-question-type="number"],[data-question-type="select"]) .kvfm-control {
	max-width: 780px;
}

.kvfm-canvas-page .kvfm-site-footer {
	min-height: 62px;
	margin-top: 14px;
	padding: 11px 18px;
	border-radius: 14px;
}

.kvfm-canvas-page .kvfm-site-footer__meta {
	width: auto;
}

@media (min-width: 980px) {
	.kvfm-canvas-page .kvfm-shell:not(.kvfm-privacy-shell):not(.kvfm-investor-shell) .kvfm-hero {
		display: grid;
		grid-template-columns: minmax(330px, .82fr) minmax(430px, 1.18fr);
		grid-template-rows: auto auto auto 1fr;
		column-gap: clamp(34px, 5vw, 68px);
		align-items: start;
		padding: 30px 38px;
	}

	.kvfm-canvas-page .kvfm-shell:not(.kvfm-privacy-shell):not(.kvfm-investor-shell) .kvfm-hero .kvfm-eyebrow {
		grid-column: 1;
		grid-row: 1;
	}

	.kvfm-canvas-page .kvfm-shell:not(.kvfm-privacy-shell):not(.kvfm-investor-shell) .kvfm-hero h2 {
		grid-column: 1;
		grid-row: 2;
		font-size: clamp(34px, 3vw, 47px);
	}

	.kvfm-canvas-page .kvfm-shell:not(.kvfm-privacy-shell):not(.kvfm-investor-shell) .kvfm-hero .kvfm-badges {
		grid-column: 1;
		grid-row: 3;
		align-self: end;
		margin-top: 18px;
	}

	.kvfm-canvas-page .kvfm-shell:not(.kvfm-privacy-shell):not(.kvfm-investor-shell) .kvfm-hero .kvfm-intro {
		grid-column: 2;
		grid-row: 1 / span 2;
		max-width: none;
		margin-top: 0;
	}

	.kvfm-canvas-page .kvfm-shell:not(.kvfm-privacy-shell):not(.kvfm-investor-shell) .kvfm-hero .kvfm-privacy-summary {
		grid-column: 2;
		grid-row: 3;
		margin: 14px 0 0;
	}

	.kvfm-canvas-page .kvfm-shell:not(.kvfm-privacy-shell):not(.kvfm-investor-shell) .kvfm-hero .kvfm-privacy-link {
		grid-column: 2;
		grid-row: 4;
		align-self: end;
		justify-self: start;
		margin-top: 14px;
	}

	.kvfm-canvas-page .kvfm-choice-list {
		grid-template-columns: repeat(auto-fit, minmax(min(100%, 270px), 1fr));
	}

	.kvfm-canvas-page .kvfm-privacy-toc ol {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.kvfm-canvas-page .kvfm-privacy-content section > p,
	.kvfm-canvas-page .kvfm-privacy-content section > ul {
		max-width: 96ch;
	}
}

@media (max-width: 620px) {
	body.kvfm-canvas-page {
		background: #f5f8fa;
	}

	.kvfm-canvas-page .kvfm-shell {
		margin: 7px auto 16px;
		padding-right: 10px;
		padding-left: 10px;
	}

	.kvfm-canvas-page .kvfm-site-header {
		min-height: 60px;
		padding: 7px 10px;
		border-radius: 13px;
	}

	.kvfm-canvas-page .kvfm-site-footer {
		min-height: 60px;
		margin-top: 10px;
		padding: 10px;
	}
}

/* 1.4.0: one question per screen, answer-button navigation and soft page fades. */
.kvfm-form {
	position: relative;
}

.kvfm-form.is-transitioning {
	pointer-events: none;
}

.kvfm-step--question {
	display: flex;
	flex-direction: column;
	min-height: clamp(410px, 58vh, 690px);
	overflow: hidden;
	opacity: 1;
	transform: none;
	transition: opacity 185ms cubic-bezier(.4, 0, .2, 1);
}

.kvfm-step--question.is-leaving,
.kvfm-step--question.is-leaving-back,
.kvfm-step--question.is-entering,
.kvfm-step--question.is-entering-back {
	opacity: 0;
	pointer-events: none;
	will-change: opacity;
}

.kvfm-step--question .kvfm-step-heading {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 14px;
	margin: 0;
	padding: 0 0 17px;
}

.kvfm-step--question .kvfm-step-topic {
	color: var(--kvfm-muted);
	font-size: 13px;
	font-weight: 600;
	letter-spacing: -.01em;
	text-align: right;
}

.kvfm-step--question .kvfm-question {
	margin: 0;
	padding: clamp(24px, 3.4vw, 42px) 0 12px;
	border: 0;
	border-radius: 0;
	background: transparent;
}

.kvfm-step--question .kvfm-question legend {
	max-width: 940px;
	color: var(--kvfm-primary);
	font-size: clamp(24px, 3.1vw, 36px);
	font-weight: 650;
	line-height: 1.18;
	letter-spacing: -.032em;
}

.kvfm-step--question[tabindex="-1"]:focus,
.kvfm-step--question[tabindex="-1"]:focus-visible {
	outline: 0 !important;
	box-shadow: none !important;
	-webkit-tap-highlight-color: transparent;
}

.kvfm-privacy-summary {
	margin: 16px 0 0;
	padding: 13px 15px;
	border: 1px solid rgba(11, 107, 109, .2);
	border-radius: 11px;
	background: #f0f8f7;
	color: #314f5d;
	font-size: 13px;
	line-height: 1.55;
}

.kvfm-step--question .kvfm-help {
	max-width: 76ch;
	margin: 11px 0 24px;
	font-size: 15px;
}

.kvfm-step--question .kvfm-required {
	margin-left: 8px;
	vertical-align: 5px;
}

.kvfm-step--question .kvfm-control {
	max-width: 1080px;
}

.kvfm-choice-search {
	display: block;
	max-width: 720px;
	margin: 0 0 16px;
}

.kvfm-choice-search span {
	display: block;
	margin-bottom: 7px;
	color: var(--kvfm-muted);
	font-size: 13px;
	font-weight: 650;
}

.kvfm-choice-search input {
	width: 100%;
	min-height: 50px;
	padding: 11px 15px;
	border: 1px solid #c9d8df;
	border-radius: 13px;
	background: #fff;
	color: var(--kvfm-ink);
	font: inherit;
	box-shadow: 0 4px 16px rgba(18, 59, 86, .04);
}

.kvfm-choice-search input:focus {
	border-color: var(--kvfm-accent);
	outline: 3px solid color-mix(in srgb, var(--kvfm-accent) 18%, transparent);
}

.kvfm-choice-search-empty {
	margin: 0 0 14px;
	padding: 11px 13px;
	border-radius: 10px;
	background: #fff6ed;
	color: #71421d;
	font-size: 13px;
}

.kvfm-step--question .kvfm-choice-list {
	gap: 12px;
}

.kvfm-step--question .kvfm-choice {
	position: relative;
	min-height: 58px;
	align-items: center;
	padding: 15px 17px;
	border-color: #d4e0e5;
	border-radius: 14px;
	box-shadow: 0 3px 10px rgba(18, 59, 86, .025);
	font-weight: 550;
	transition:
		border-color 180ms ease,
		background-color 180ms ease,
		box-shadow 180ms ease;
}

.kvfm-step--question .kvfm-choice:hover {
	box-shadow: 0 9px 22px rgba(18, 59, 86, .08);
}

.kvfm-step--question .kvfm-choice:active {
	box-shadow: 0 2px 8px rgba(18, 59, 86, .07);
}

.kvfm-step--question .kvfm-choice:has(input:checked) {
	border-color: color-mix(in srgb, var(--kvfm-accent) 80%, #fff);
	background: linear-gradient(145deg, #f3fbfa, #e8f7f5);
	box-shadow:
		0 0 0 1px color-mix(in srgb, var(--kvfm-accent) 72%, transparent),
		0 9px 24px rgba(11, 107, 109, .1);
}

.kvfm-step--question .kvfm-choice input {
	width: 21px;
	height: 21px;
	margin: 0;
}

.kvfm-step--question .kvfm-choice span {
	font-size: 16px;
	line-height: 1.32;
}

.kvfm-step--question .kvfm-other-input {
	min-height: 54px;
	margin-top: 4px;
	border-radius: 12px;
}

.kvfm-step--question:is([data-title]) .kvfm-question:is([data-question-type="text"], [data-question-type="textarea"], [data-question-type="number"], [data-question-type="select"]) .kvfm-control {
	max-width: 900px;
}

.kvfm-response-actions {
	display: flex;
	justify-content: flex-end;
	margin-top: 18px;
}

.kvfm-response-actions .kvfm-button {
	min-width: 190px;
}

.kvfm-step--question .kvfm-actions {
	justify-content: flex-start;
	margin-top: auto;
	padding-top: 28px;
	border-top: 0;
}

.kvfm-step--question .kvfm-actions .kvfm-button--secondary {
	min-height: 43px;
	padding: 8px 13px;
	border-color: transparent;
	background: transparent;
	box-shadow: none;
}

.kvfm-step--question .kvfm-actions .kvfm-button--secondary:hover {
	border-color: var(--kvfm-line);
	background: #f7fafb;
}

@media (min-width: 900px) {
	.kvfm-step--question .kvfm-choice-list {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.kvfm-step--question .kvfm-choice-list--select {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media (max-width: 620px) {
	.kvfm-step--question {
		min-height: calc(100svh - 132px);
		padding: 20px 16px 16px;
	}

	.kvfm-step--question .kvfm-step-heading {
		padding-bottom: 13px;
	}

	.kvfm-step--question .kvfm-step-topic {
		max-width: 58%;
		font-size: 11px;
	}

	.kvfm-step--question .kvfm-question {
		padding-top: 23px;
	}

	.kvfm-step--question .kvfm-question legend {
		font-size: clamp(23px, 7vw, 29px);
	}

	.kvfm-step--question .kvfm-help {
		margin-bottom: 18px;
		font-size: 14px;
	}

	.kvfm-step--question .kvfm-choice {
		min-height: 56px;
		padding: 14px;
	}

	.kvfm-response-actions .kvfm-button {
		width: 100%;
	}

	.kvfm-step--question .kvfm-actions {
		align-items: flex-start;
		padding-top: 20px;
	}

	.kvfm-step--question .kvfm-actions .kvfm-button--secondary {
		width: auto;
	}
}

@media (prefers-reduced-motion: reduce) {
	.kvfm-step--question {
		transform: none !important;
	}
}
