:root{--santo-navy:#0b1f2e;--santo-amber:#e7a83c;--santo-slate:#6e7f92;--santo-mist:#e9eef2;--santo-warm:#f7f5ef;--santo-white:#fff;--color-bg:var(--santo-warm);--color-bg-alt:var(--santo-white);--color-surface:var(--santo-white);--color-border:var(--santo-mist);--color-field-border:#ccd6de;--color-text:var(--santo-navy);--color-text-secondary:var(--santo-slate);--color-accent:var(--santo-amber);--color-accent-text:var(--santo-navy);--color-error:#b3452e;--color-focus:var(--santo-amber);--color-on-navy:var(--santo-warm);--color-on-navy-muted:#f7f5efa8;--color-on-navy-rule:#f7f5ef24;--font-brand:"Manrope", "Inter", sans-serif;--font-body:"Inter", sans-serif;--font-mono:"IBM Plex Mono", monospace;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--space-7:3rem;--space-8:4rem;--radius-sm:3px;--radius-md:6px;--radius-lg:10px;--border-width:1px;--container-max:740px;--sidebar-width:320px}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--color-bg);color:var(--color-text);font-family:var(--font-body);-webkit-font-smoothing:antialiased;margin:0;font-size:16px;line-height:1.6}h1,h2,h3{font-family:var(--font-brand);letter-spacing:-.015em;margin:0 0 var(--space-3);color:var(--color-text);line-height:1.2}h1{font-size:clamp(1.75rem,4vw,2.375rem);font-weight:700}h2{font-size:clamp(1.375rem,3vw,1.75rem);font-weight:700}h3{letter-spacing:-.005em;font-size:1.0625rem;font-weight:600}p{margin:0 0 var(--space-3)}a{color:var(--color-text)}button{font-family:inherit}:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}@media (prefers-reduced-motion:no-preference){.step-transition{animation:.18s ease-out step-fade}}@keyframes step-fade{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}.app-shell{flex-direction:column;min-height:100vh;display:flex}.app-main{padding:var(--space-5) var(--space-4) var(--space-7);flex:1;justify-content:center;display:flex}@media (width>=640px){.app-main{padding:var(--space-7) var(--space-5) var(--space-8)}}@media (width>=960px){.app-shell{flex-direction:row;align-items:stretch}.app-main{padding:var(--space-8) var(--space-7);align-items:flex-start}}.step-container{width:100%;max-width:var(--container-max)}.sidebar{background:var(--santo-navy);color:var(--color-on-navy);padding:var(--space-5) var(--space-5) var(--space-4);position:relative;overflow:hidden}.sidebar-mark{display:none}.sidebar-logo{width:148px;height:auto;margin-left:-8px;display:block}.sidebar-project{margin-top:var(--space-4)}.sidebar-project-title{font-family:var(--font-brand);letter-spacing:-.01em;margin:0;font-size:1.0625rem;font-weight:600}.sidebar-project-plan{display:none}.sidebar-note{margin:var(--space-3) 0 0;color:var(--color-on-navy-muted);max-width:42ch;font-size:.9375rem}.sidebar-stage{margin-top:var(--space-4);padding-top:var(--space-4);border-top:var(--border-width) solid var(--color-on-navy-rule)}.sidebar-stage-count{font-family:var(--font-mono);color:var(--color-on-navy-muted);margin-bottom:var(--space-1);font-size:.8125rem;display:block}.sidebar-stage-title{font-family:var(--font-brand);color:var(--color-on-navy);margin:0 0 var(--space-3);font-size:1.125rem;font-weight:600}.sidebar-progress-track{border-radius:var(--radius-sm);background:#f7f5ef29;height:3px;overflow:hidden}.sidebar-progress-fill{background:var(--santo-amber);height:100%;transition:width .24s ease-out}@media (prefers-reduced-motion:reduce){.sidebar-progress-fill{transition:none}}.sidebar-stage-description{margin:var(--space-3) 0 0;color:var(--color-on-navy-muted);max-width:46ch;font-size:.9375rem}@media (width>=960px){.sidebar{width:var(--sidebar-width);min-height:100vh;padding:var(--space-7) var(--space-6);flex-direction:column;flex-shrink:0;align-self:flex-start;display:flex;position:sticky;top:0}.sidebar-mark{width:340px;height:340px;color:var(--santo-warm);opacity:.05;pointer-events:none;display:block;position:absolute;bottom:-92px;right:-104px}.sidebar-logo{width:182px;margin-left:-9px}.sidebar-project{margin-top:var(--space-7);position:relative}.sidebar-project-title{font-size:1.1875rem}.sidebar-project-plan{margin:var(--space-1) 0 0;text-wrap:balance;color:var(--color-on-navy-muted);font-size:.875rem;line-height:1.45;display:block}.sidebar-note{margin-top:var(--space-6);padding-top:var(--space-6);border-top:var(--border-width) solid var(--color-on-navy-rule);position:relative}.sidebar-stage{margin-top:var(--space-6);padding-top:var(--space-6);position:relative}.sidebar-stage-title{margin-bottom:var(--space-4);font-size:1.375rem}.sidebar-progress-track{height:4px}.sidebar-stage-description{margin-top:var(--space-4);max-width:34ch}}.card{background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-5) var(--space-4)}@media (width>=640px){.card{padding:var(--space-6)}}@media (width>=960px){.card{padding:var(--space-7)}}.card>h2{margin-bottom:var(--space-2)}.card-lead{color:var(--color-text-secondary);margin-bottom:var(--space-6);max-width:56ch;font-size:1rem}.form-group+.form-group{margin-top:var(--space-7);padding-top:var(--space-6);border-top:var(--border-width) solid var(--color-border)}.form-group-title{font-family:var(--font-brand);color:var(--color-text);margin:0 0 var(--space-5);font-size:1.1875rem;font-weight:600}.field-group{margin-bottom:var(--space-5)}.field-row{column-gap:var(--space-4);display:grid}@media (width>=700px){.field-row{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}}label,legend{margin-bottom:var(--space-2);padding:0;font-size:1rem;font-weight:600;line-height:1.45;display:block}fieldset{margin:0 0 var(--space-5);border:none;padding:0}.field-hint{color:var(--color-text-secondary);margin-top:var(--space-1);max-width:62ch;font-size:.9375rem;line-height:1.55}.field-error{color:var(--color-error);margin-top:var(--space-2);font-size:.875rem}.installment-preview{margin-bottom:var(--space-5)}.installment-preview ul{color:var(--color-text);margin:0;padding:0;font-size:.9375rem;list-style:none}.installment-preview li{padding:var(--space-1) 0}input[type=text],input[type=email],input[type=tel],input[type=url],textarea,select{width:100%;min-height:46px;padding:.625rem var(--space-3);border:var(--border-width) solid var(--color-field-border);border-radius:var(--radius-md);background:var(--color-bg-alt);color:var(--color-text);font-family:inherit;font-size:1rem;line-height:1.4}input[type=text]:hover,input[type=email]:hover,input[type=tel]:hover,input[type=url]:hover,textarea:hover{border-color:var(--santo-slate)}input[type=text]:focus-visible,input[type=email]:focus-visible,input[type=tel]:focus-visible,input[type=url]:focus-visible,textarea:focus-visible,select:focus-visible{border-color:var(--santo-amber);outline:none;box-shadow:0 0 0 3px #e7a83c33}input[aria-invalid=true],textarea[aria-invalid=true]{border-color:var(--color-error)}textarea{resize:vertical;min-height:6rem;line-height:1.55}.checkbox-row,.radio-row{align-items:flex-start;gap:var(--space-3);padding:var(--space-2) 0;margin-bottom:0;font-size:1rem;font-weight:400;display:flex}.checkbox-row input,.radio-row input{width:18px;height:18px;accent-color:var(--santo-amber);flex-shrink:0;margin-top:4px}.option-count{font-family:var(--font-mono);color:var(--color-text-secondary);font-size:.875rem;font-weight:400}.notice{background:var(--santo-mist);border-left:2px solid var(--santo-amber);border-radius:0 var(--radius-sm) var(--radius-sm) 0;padding:var(--space-3) var(--space-4);margin:0 0 var(--space-6);color:var(--color-text);font-size:.9375rem}.turnstile-field{margin-top:var(--space-2)}.scale-row{align-items:center;gap:var(--space-3);margin-bottom:var(--space-4);grid-template-columns:1fr auto 1fr;display:grid}.scale-labels-left,.scale-labels-right{color:var(--color-text-secondary);font-size:.875rem}.scale-labels-right{text-align:right}.scale-options{gap:var(--space-3);justify-content:center;display:flex}.scale-option{align-items:center;gap:var(--space-1);cursor:pointer;flex-direction:column;margin-bottom:0;font-size:.9375rem;font-weight:400;display:flex}.scale-option input{width:18px;height:18px;accent-color:var(--santo-amber)}@media (width<=480px){.scale-row{justify-items:center;gap:var(--space-2);grid-template-columns:1fr;grid-template-areas:"options""left""right"}.scale-row .scale-options{grid-area:options}.scale-row .scale-labels-left{grid-area:left}.scale-row .scale-labels-right{text-align:center;grid-area:right}}.btn{justify-content:center;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-5);border-radius:var(--radius-md);border:var(--border-width) solid transparent;cursor:pointer;min-height:46px;font-size:.9375rem;font-weight:600;text-decoration:none;display:inline-flex}.btn-primary{background:var(--color-accent);color:var(--color-accent-text);padding-inline:var(--space-6);min-width:116px}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-secondary{border-color:var(--color-field-border);color:var(--color-text);background:0 0}.btn-secondary:hover{border-color:var(--santo-slate)}.btn-quiet{min-height:0;color:var(--color-text-secondary);text-underline-offset:3px;cursor:pointer;background:0 0;border:none;padding:0;font-size:.9375rem;font-weight:600;text-decoration:underline}.btn-quiet:hover{color:var(--color-text)}.step-actions{justify-content:flex-end;gap:var(--space-3);margin-top:var(--space-7);padding-top:var(--space-5);border-top:var(--border-width) solid var(--color-border);display:flex}.step-actions>.btn-secondary:first-child{margin-right:auto}@media (width<=420px){.step-actions{flex-direction:column-reverse}.step-actions .btn{width:100%}}.intro-lead{color:var(--color-text-secondary);max-width:54ch;margin-bottom:var(--space-5);font-size:1.0625rem}.intro-meta{color:var(--color-text-secondary);margin-bottom:var(--space-6);font-size:.9375rem}.intro-list{margin:0 0 var(--space-7);border-top:var(--border-width) solid #0b1f2e1f;padding:0;list-style:none}.intro-list li{align-items:flex-start;gap:var(--space-3);padding:var(--space-3) 0;border-bottom:var(--border-width) solid #0b1f2e1f;color:#3d4c5e;font-size:.9375rem;line-height:1.5;display:flex}.intro-list li:before{content:"";opacity:.55;background-color:currentColor;flex-shrink:0;width:15px;height:15px;margin-top:3px;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M3 8.5l3 3 7-7' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") 50%/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M3 8.5l3 3 7-7' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") 50%/contain no-repeat}.intro-list strong{color:var(--color-text);font-weight:600}.saved-banner{background:var(--santo-mist);border-radius:var(--radius-md);padding:var(--space-4);margin-bottom:var(--space-5);justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap;font-size:.9375rem;display:flex}.saved-banner-actions{align-items:center;gap:var(--space-4);display:flex}.project-sheet{background:var(--santo-mist);border-radius:var(--radius-md);padding:var(--space-5);margin-bottom:var(--space-6)}.project-sheet h3{margin:0 0 var(--space-4)}.project-sheet dl{gap:var(--space-3);margin:0;display:grid}.project-sheet dl>div{justify-content:space-between;gap:var(--space-2);flex-wrap:wrap;align-items:baseline;display:flex}.project-sheet dt{color:var(--color-text-secondary);font-size:.9375rem}.project-sheet dd{text-align:right;margin:0;font-size:.9375rem;font-weight:600}.prototype-preview{border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-3);margin-bottom:var(--space-5)}.prototype-preview img{border-radius:var(--radius-sm);width:100%;display:block}.prototype-actions{margin-top:var(--space-3)}.reference-item{background:var(--santo-warm);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-4);margin-bottom:var(--space-4)}.reference-item .field-group:last-of-type{margin-bottom:var(--space-3)}.review-row{justify-content:space-between;align-items:baseline;gap:var(--space-4);padding:var(--space-4) 0;border-bottom:var(--border-width) solid var(--color-border);display:flex}.review-row:first-of-type{border-top:var(--border-width) solid var(--color-border)}.review-row h3{margin:0 0 var(--space-1)}.review-row p{color:var(--color-text-secondary);margin:0;font-size:.9375rem}.review-actions{margin-top:var(--space-7)}.btn-spinner{border:2px solid #0b1f2e40;border-top-color:var(--color-accent-text);border-radius:50%;flex-shrink:0;width:14px;height:14px;animation:.7s linear infinite btn-spin}@keyframes btn-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.btn-spinner{animation:none}}.submit-status-note{margin:var(--space-3) 0 0;text-align:right;color:var(--color-text-secondary);min-height:1.2em;font-size:.8125rem}@media (width<=420px){.submit-status-note{text-align:center}}.success-steps{counter-reset:success;margin:var(--space-5) 0 var(--space-6);border-top:var(--border-width) solid var(--color-border);padding:0;list-style:none}.success-steps li{counter-increment:success;gap:var(--space-4);padding:var(--space-3) 0;border-bottom:var(--border-width) solid var(--color-border);align-items:baseline;font-size:.9375rem;display:flex}.success-steps li:before{content:counter(success);color:var(--color-text-secondary);min-width:1rem;font-size:.9375rem;font-weight:600}.materials-access{margin-top:var(--space-6);padding-top:var(--space-5);border-top:var(--border-width) solid var(--color-border)}.materials-access h2{margin:0 0 var(--space-2);font-size:1rem}.materials-access p{color:var(--color-text-secondary);margin:0 0 var(--space-4);font-size:.9375rem}.materials-access .btn{min-width:0}.protocol-row{justify-content:space-between;align-items:center;gap:var(--space-3);margin-top:var(--space-2);padding-top:var(--space-5);border-top:var(--border-width) solid var(--color-border);flex-wrap:wrap;display:flex}.protocol-label{color:var(--color-text-secondary);margin-bottom:var(--space-1);font-size:.8125rem;display:block}.protocol{font-family:var(--font-mono);letter-spacing:.02em;color:var(--color-text);word-break:break-all;margin:0;font-size:1.125rem;font-weight:600}.honeypot{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}
