@import url('tokens.css');
/* Shared review primitives 0.2.1. UI values remain proposals. */
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--canvas);color:var(--ink);font:18px/1.65 var(--font-sans)}button,input,textarea{font:inherit}button,a,input,textarea,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit}img{max-width:100%;display:block}button{color:inherit}p{margin:0 0 20px;color:var(--secondary)}h1,h2,h3{margin:0 0 24px;font-weight:600;letter-spacing:-.04em;line-height:1.12;color:var(--ink)}h1{font-size:clamp(40px,5.1vw,76px);line-height:1.04;letter-spacing:-.055em}h2{font-size:clamp(30px,3.45vw,48px)}h3{font-size:22px;letter-spacing:-.025em;line-height:1.25}figure{margin:0}figcaption{font-size:14px;color:var(--secondary);margin-top:12px}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--focus);outline-offset:3px;box-shadow:0 0 0 3px var(--canvas)}[hidden]{display:none!important}.wrap{max-width:calc(var(--container) + 64px);padding-left:32px;padding-right:32px;margin:auto}.section{padding-top:96px;padding-bottom:96px}.preview-note{font-size:14px;padding:7px 32px;background:var(--paper);color:var(--secondary);display:flex;gap:12px;align-items:center;justify-content:center}.preview-status{font-size:14px;border-left:1px solid var(--control-line);padding-left:12px}.skip{position:absolute;z-index:100;top:0;left:20px;padding:12px 20px;background:var(--canvas);transform:translateY(-150%)}.skip:focus{transform:none}.site-header{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-top:24px;padding-bottom:24px}.logo-link{display:inline-block;flex:none}.logo-link img{aspect-ratio:2321/600}.navigation{display:flex;align-items:center;gap:24px}.nav-link{border:0;background:transparent;min-height:44px;padding:8px 4px;font-size:16px;font-weight:500;text-decoration:none}.nav-link:hover{color:var(--action);text-decoration:underline;text-underline-offset:6px}.button{border:1px solid transparent;border-radius:var(--radius-control);min-height:48px;padding:13px 22px;display:inline-flex;justify-content:center;align-items:center;gap:22px;font-size:16px;line-height:1.4;font-weight:600;text-decoration:none;transition:background var(--motion-feedback),color var(--motion-feedback)}.button.primary{background:var(--action);color:var(--inverse)}.button.primary:hover{background:var(--action-hover)}.button.primary:active{background:var(--action-pressed)}.button:disabled{cursor:wait;background:var(--disabled-surface);color:var(--disabled-ink)}.button.small{padding:11px 18px}.text-link{font-size:16px;min-height:44px;display:inline-flex;align-items:center;gap:16px;text-underline-offset:6px;border:0;background:transparent;padding:8px 0;font-weight:600;color:var(--action)}button.text-link{text-decoration:underline}.text-link:hover,.inline-link:hover{text-decoration:underline}.inline-link{font:inherit;color:var(--action);text-decoration:underline;text-underline-offset:4px;border:0;background:transparent;min-height:44px;padding:0 3px}.menu-toggle{display:none}
.eyebrow{text-transform:uppercase;letter-spacing:.13em;font-size:13px;line-height:1.5;font-weight:600;color:var(--action);margin-bottom:24px;display:block}.accent-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--brand-primary);margin-right:8px}
dialog{border:1px solid var(--line);border-radius:var(--radius-panel);max-width:640px;width:calc(100% - 40px);max-height:calc(100dvh - 48px);padding:32px;color:var(--ink);background:var(--canvas);box-shadow:var(--shadow-panel)}dialog::backdrop{background:rgb(24 60 50 / 48%)}body:has(dialog[open]){overflow:hidden}.dialog-head{display:flex;gap:12px;align-items:center;justify-content:space-between;margin-bottom:16px}.dialog-head .eyebrow{margin:0}.close-button{background:var(--paper);border:0;border-radius:50%;width:44px;height:44px;flex:none;font-size:28px;line-height:1}.simulation-note{font-size:14px;line-height:1.5;background:var(--paper);border-radius:8px;padding:10px 12px;margin-bottom:24px;color:var(--secondary)}dialog h2{font-size:32px;margin-bottom:16px}dialog>p{font-size:16px;margin-bottom:24px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.field{margin-bottom:16px}.field label{display:block;font-size:14px;font-weight:600;margin-bottom:8px}.field label span{font-weight:400;color:var(--secondary)}input,textarea{width:100%;border:1px solid var(--control-line);border-radius:var(--radius-control);color:var(--ink);background:var(--canvas);min-height:48px;padding:10px 12px;font-size:16px}textarea{resize:vertical}input[aria-invalid=true]{border:2px solid var(--error);background:var(--error-surface)}.field-error,.field-help{font-size:14px;line-height:1.5;margin:6px 0 0}.field-error{color:var(--error)}.field-error:empty{display:none}.form-policy{font-size:14px;line-height:1.5;margin-bottom:20px}.form-submit{width:100%}#form-status:not(:empty){font-size:16px;line-height:1.5;background:var(--subtle);border:1px solid var(--control-line);border-radius:8px;padding:16px;margin-bottom:24px}#form-status.is-error{color:var(--error);background:var(--error-surface);border-color:var(--error)}#form-status h3{margin:0 0 12px}#form-status p{font-size:16px;margin:0;color:inherit}.success-actions{margin-top:24px}.success-actions .button{width:100%}

.eyebrow{font-size:14px}.swatches{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:20px}.swatch{padding:24px;border:1px solid var(--line);border-radius:16px}.swatch i{height:72px;display:block;border-radius:8px;margin-bottom:16px}.review-section{margin:48px 0}.review-row{display:flex;flex-wrap:wrap;gap:16px;align-items:center;margin:24px 0}.review-table{border-collapse:collapse;width:100%;font-size:16px}.review-table td,.review-table th{padding:12px;text-align:left;border-bottom:1px solid var(--line)}.review-wrap{max-width:1200px;margin:auto;padding:48px 24px}.review-wrap h1{font-size:48px}.review-wrap h2{font-size:32px}.review-wrap .field{max-width:400px}
/* Shared segmented selector: selected, unselected, hover and keyboard focus. */
.segmented-control{display:flex;justify-content:center;gap:4px;width:fit-content;max-width:100%;margin:auto;padding:5px;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-control)}.segmented-control button{font-size:16px;line-height:1.4;min-height:44px;padding:10px 20px;border:1px solid transparent;border-radius:6px;background:transparent;color:var(--secondary);font-weight:600}.segmented-control button:hover{color:var(--action);background:var(--canvas)}.segmented-control button[aria-selected=true]{background:var(--canvas);border-color:var(--control-line);color:var(--ink);box-shadow:0 2px 4px rgb(24 60 50 / 6%)}
