:root{font-family:system-ui,-apple-system,"Segoe UI",sans-serif;color:#183d43;background:#f7f5ef;font-synthesis:none;line-height:1.6}*{box-sizing:border-box}body{margin:0}header{display:flex;justify-content:space-between;align-items:center;max-width:1120px;margin:auto;padding:22px 24px;border-bottom:1px solid #dbded5}.brand{display:flex;gap:12px;align-items:center;font-size:20px;font-weight:750;color:inherit;text-decoration:none}.brand small{display:block;font-size:11px;font-weight:500;color:#607270}.mark{display:grid;place-items:center;width:43px;height:46px;border-radius:12px;background:#193e43;color:#fff;font:700 24px Georgia}.year{font-size:12px;border:1px solid #d4c2a5;border-radius:30px;padding:6px 12px}main{max-width:1120px;margin:auto;padding:24px}.prototype{background:#efe6d5;color:#795322;border-radius:7px;padding:9px 14px;font-size:12px}.hero{padding:40px 0 28px;display:flex;align-items:center;gap:48px}.eyebrow{font-size:11px;letter-spacing:1.5px;font-weight:750;color:#80612f;margin:0 0 16px}h1{font-size:clamp(28px,3.5vw,42px);line-height:1.23;letter-spacing:-1px;margin:0 0 22px}h1 em{font-family:Georgia,serif;font-weight:400;color:#8b6736}h2{font-size:22px;line-height:1.3;letter-spacing:-.5px;margin:0 0 12px}h3{font-size:14px;margin-top:0}.intro{max-width:640px;color:#566c6d;font-size:16px}.house{width:220px;flex-shrink:0}.trust{display:flex;flex-wrap:wrap;gap:8px 20px;font-size:12px}.trust span:before{content:'✓';margin-right:6px;color:#527861}.notice{border-left:3px solid #af874c;background:#f0eadf;padding:17px 20px;font-size:13px;color:#58605c}.workspace{display:grid;grid-template-columns:minmax(0,720px) 260px;gap:48px;margin-top:34px;align-items:start}.form-card{border:1px solid #e0e2da;border-radius:16px;padding:30px;background:white;box-shadow:0 8px 30px #173d4305}.steps{list-style:none;display:flex;gap:24px;font-size:13px;padding:0 0 22px;margin:0 0 26px;border-bottom:1px solid #e1e5df;color:#7a8987}.steps li{display:flex;gap:8px;align-items:center}.steps li[aria-current]{color:#183d43;font-weight:700}.muted,small{color:#687b79;font-size:12px}fieldset{border:0;padding:0;margin:32px 0}legend{font-size:16px;font-weight:700;padding:0;margin-bottom:14px;width:100%}legend span{float:right;font-size:12px;color:#71817e;font-weight:400}label{display:block;font-size:14px;font-weight:600;margin-bottom:17px}label span{font-weight:400;color:#71817e}input,select,textarea{display:block;margin-top:6px;width:100%;min-height:48px;border:1px solid #bdcbc6;border-radius:8px;padding:11px 12px;font:400 16px/1.4 inherit;font-family:inherit;font-size:16px;color:#173d43;background:#fff}input[readonly]{background:#f3f5f1;color:#647771}textarea{resize:vertical}small{display:block;font-weight:400;margin-top:6px}.two{display:grid;grid-template-columns:1fr 1fr;gap:16px}button{font:600 15px/1.4 system-ui;cursor:pointer;border-radius:9px;min-height:48px;padding:14px 18px;width:100%}.primary{background:#193f44;color:white;border:1px solid #193f44}.secondary{background:white;border:1px solid #becdc7;color:#173d43;margin:12px 0}.primary:hover:not(:disabled){background:#28585a}button:disabled{opacity:.5;cursor:not-allowed}.under-button{text-align:center;font-size:12px;color:#6f827d}.upload{background:#f3f7f3;border:1px dashed #9bb8a9;padding:18px;border-radius:10px}.upload input{padding:10px 0;border:0;background:none;font-size:13px;min-height:44px}.upload input::file-selector-button{padding:10px 12px;background:#fff;border:1px solid #b3c8bd;border-radius:6px;margin-right:8px}.photo{border:1px solid #dce4de;border-radius:10px;padding:12px;margin:12px 0;display:grid;grid-template-columns:90px 1fr;gap:14px}.photo img{width:90px;height:100px;object-fit:cover;border-radius:6px}.photo label{margin:0}.photo button{width:auto;min-height:44px;padding:6px 10px;font-size:12px;background:white;border:1px solid #c9d4ce;margin-top:8px}.sidebar{padding-top:12px;font-size:14px}.sidebar ol{padding-left:22px;color:#687d76}.sidebar li{padding:6px 0 6px 4px}.recipient{margin:28px 0;border-top:1px solid #d5dfd6;padding-top:26px}.recipient a,footer a{color:#365d55;font-size:12px;text-underline-offset:4px}.privacy{font-size:12px;color:#75827b}.letter{background:#fcfbf8;border:1px solid #dddcd3;padding:24px;font-size:14px;overflow-wrap:anywhere}.letter p{margin:0 0 16px}.letter strong{display:block}.consent{margin:24px 0}.consent label{display:flex;gap:12px;align-items:flex-start;font-size:13px}.consent input{width:20px;min-height:20px;height:20px;flex-shrink:0;margin-top:2px;accent-color:#193f44}.send-box{padding:20px;background:#f1f4ef;border-radius:10px;margin:25px 0;font-size:13px}.text-button{background:none;border:0;color:#5f716a;text-decoration:underline;font-size:12px}.error{border-radius:8px;background:#fff1e9;color:#963d23;padding:12px;margin:12px 0;font-size:14px}footer{font-size:12px;color:#6c7a73;max-width:720px;padding:30px 4px}footer strong{color:#38584e}:focus-visible{outline:3px solid #b48c48;outline-offset:3px}[hidden]{display:none!important}@media(max-width:800px){.workspace{grid-template-columns:1fr;gap:14px}.sidebar{border-top:1px solid #d9dfd7;padding:24px 4px}.house{width:140px}.hero{gap:20px}.form-card{padding:24px}}@media(max-width:520px){header{padding:16px}.year{font-size:10px;padding:5px 8px}.brand{font-size:18px;gap:8px}.brand small{font-size:10px}main{padding:16px}.hero{padding:28px 0 20px}.house{display:none}h1{font-size:30px;letter-spacing:-.6px}.intro{font-size:15px}.notice{padding:14px;font-size:12px}.workspace{margin-top:24px}.form-card{padding:22px 17px;border-radius:12px}.two{gap:10px}.steps{gap:15px;font-size:11px}.letter{padding:18px}.photo{grid-template-columns:70px 1fr;gap:10px}.photo img{width:70px;height:90px}.trust{gap:7px 14px;font-size:11px}}

.blason{width:40px;height:45px;object-fit:contain}.village-banner{margin:22px 0 0;border-radius:12px;overflow:hidden}.village-banner img{width:100%;height:auto;display:block}.hero{padding-top:30px}@media(max-width:520px){.village-banner{margin-top:16px}.hero{padding-top:24px}}

.benefits{margin-top:28px;padding:26px;background:white;border:1px solid #dce3db;border-radius:14px;font-size:14px}.benefits>p{max-width:800px}.benefits a{color:#315e55}.crack-gallery{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:24px}.crack-gallery figure{margin:0}.crack-gallery img{width:100%;height:220px;object-fit:cover;display:block;border-radius:9px}.crack-gallery figcaption{font-size:12px;margin-top:8px}.photo-credit{font-size:11px;color:#667970}.benefits details{border-top:1px solid #dae1db;padding-top:16px}.benefits summary{cursor:pointer;font-weight:650}.signature-panel{border-top:1px solid #d5dfd9;padding-top:24px}.signature-panel legend{padding-top:18px}#signature-preview{display:block;width:100%;max-width:300px;height:110px;object-fit:contain;border:1px solid #d3ded6;background:#fff;border-radius:8px}#signature-status{font-size:12px;color:#526c5a}#signature-dialog{width:100vw;height:100dvh;max-width:none;max-height:none;inset:0;margin:0;border:0;padding:0;background:#f8faf6;color:#173d43}#signature-dialog[open]{display:flex;flex-direction:column}#signature-dialog::backdrop{background:#183e43d9}.signature-top{padding:20px max(20px,env(safe-area-inset-left)) 10px}.signature-top p{margin:8px 0;font-size:14px}.signature-drawing{position:relative;flex:1;min-height:160px;margin:8px 20px;border:2px dashed #a5bab0;border-radius:12px;background:white;overflow:hidden}.signature-drawing canvas{width:100%;height:100%;display:block;position:absolute;inset:0;touch-action:none;cursor:crosshair}.signature-drawing span{position:absolute;inset:auto 0 14px;text-align:center;color:#98aaa3;font-size:13px;pointer-events:none}.signature-tools{display:flex;flex-wrap:wrap;gap:12px;padding:12px 20px max(16px,env(safe-area-inset-bottom))}.signature-tools button{flex:1;width:auto;margin:0}.signature-tools .primary{flex:2}@media(max-width:520px){.benefits{padding:20px 16px}.crack-gallery{gap:12px}.crack-gallery img{height:160px}.signature-tools{gap:8px}.signature-tools .primary{flex-basis:100%;order:3}.signature-top{padding-top:max(16px,env(safe-area-inset-top))}}

.link-button{display:inline-block;text-align:center;text-decoration:none;padding:14px 20px;border-radius:9px;font-weight:650}.welcome{max-width:900px;padding-bottom:110px}.welcome-intro{padding:32px 0}.welcome-intro p{max-width:720px}.comic-section{max-width:700px;margin:12px auto 30px}.comic-image{display:block;width:100%;height:auto;border-radius:14px}.comic-steps{padding-left:24px;display:grid;grid-template-columns:1fr 1fr;gap:18px 30px;font-size:14px}.comic-steps p{font-size:13px;margin-top:5px;color:#5b7268}.welcome-sticky{position:fixed;bottom:0;left:0;right:0;display:flex;justify-content:center;padding:12px 16px max(12px,env(safe-area-inset-bottom));background:#f7f5eff5;border-top:1px solid #d7dfd4;z-index:10}.welcome-sticky a{width:100%;max-width:480px;box-shadow:0 4px 16px #153d4320}.test-consent{display:flex;align-items:flex-start;gap:10px;font-size:13px}.test-consent input{width:20px;min-height:20px;flex-shrink:0;margin-top:2px}.test-result{padding:22px;background:#eaf4e8;border:1px solid #a9c5a5;border-radius:10px;margin:20px 0}.test-result p{font-size:14px}@media(max-width:520px){.welcome-intro{padding:26px 0}.comic-steps{gap:12px 22px;font-size:13px}.welcome-intro .link-button{width:100%}}

.declaration-intro{padding:26px 0 10px}.declaration-intro a{font-size:12px;color:#527467}.declaration-intro h1{margin:20px 0 10px;font-size:32px}.declaration-intro p{font-size:14px;color:#5e736c}
.email-share{margin:24px 0;padding:18px;background:#f3f7f3;border:1px solid #d9e3dc;border-radius:12px}.email-share h3{margin:0 0 8px;font-size:16px}.email-share p{font-size:13px;color:#566c65}.email-share button{margin:8px 0}.email-share .under-button{margin:4px 0 0}
.public-counter{display:flex;align-items:center;gap:10px;flex-wrap:wrap;width:max-content;max-width:100%;margin:10px 0 0;padding:9px 14px;border:1px solid #d8e0d9;border-radius:14px;background:#fff;font-size:12px;color:#526d65}.public-counter strong{font-size:18px;color:#183d43;font-variant-numeric:tabular-nums}.public-counter small{flex-basis:100%;margin:0;font-size:11px}
