:root{--paper:#f8f6ec;--soft:#fdfbf5;--blue:#264b69;--dark:#142e45;--red:#918c70;--text:#142e45;--muted:#617985;--line:rgba(38,75,105,.22);font-family:-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;color:var(--text);background:var(--paper);font-size:16px;line-height:1.8;color-scheme:light}
*{box-sizing:border-box}body{margin:0;background:var(--paper);min-width:320px}button,input{font:inherit}a{color:var(--blue)}button,a,input,summary{ -webkit-tap-highlight-color:transparent}button,a,input,summary,canvas{outline-offset:5px}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible,canvas:focus-visible{outline:3px solid #8275a1}button{cursor:pointer}button:disabled{cursor:wait;opacity:.6}p{margin:0 0 1rem}h1,h2{font-family:"Yu Mincho","Hiragino Mincho ProN",Georgia,serif;font-weight:400;color:var(--text);letter-spacing:.025em}h1{font-size:clamp(2rem,3.5vw,3.05rem);line-height:1.6;margin:20px 0 22px}h2{font-size:1.55rem;line-height:1.6;margin:0 0 20px}small{display:block;color:var(--muted);font-size:.875rem;line-height:1.7}strong{font-weight:650}[hidden]{display:none!important}.skip-link{position:absolute;left:1rem;top:-100px;z-index:50;background:var(--blue);color:var(--soft);padding:12px}.skip-link:focus{top:10px}.preview-banner{padding:8px 16px;background:var(--dark);color:#fdfbf5;text-align:center;font-size:.875rem}.masthead{display:flex;justify-content:space-between;align-items:center;padding:32px max(24px,calc((100vw - 1280px)/2));border-bottom:1px solid var(--line)}.wordmark{text-decoration:none;color:var(--blue);font:400 clamp(1.8rem,3vw,2.7rem)/1.1 Georgia,serif;letter-spacing:-.015em;display:block;white-space:nowrap}.brand-dot{color:var(--red)}.masthead-note{font-size:.875rem;font-weight:600;letter-spacing:.1em;line-height:1.6;text-align:right;color:var(--blue)}.masthead-note span{font-size:.75rem;font-weight:400;letter-spacing:.12em}.page-grid{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.15fr);gap:70px;width:min(1180px,calc(100% - 64px));margin:64px auto 100px}.intro{position:sticky;align-self:start;top:40px}.eyebrow,.section-number{font-size:.8125rem;color:var(--red);font-weight:700;letter-spacing:.11em}.intro-text{color:var(--dark);font-size:1rem;line-height:2;max-width:480px}.steps{padding:0;margin:36px 0 32px;list-style:none;border-top:1px solid var(--line);max-width:390px}.steps li{display:flex;align-items:center;gap:20px;padding:15px 0;border-bottom:1px solid var(--line);font-size:.9375rem;color:var(--muted)}.steps li[aria-current]{color:var(--blue)}.steps span{font:1.5rem Georgia,serif;color:inherit}.aside-note{display:flex;align-items:center;gap:20px;margin-top:36px}.aside-note p{font-size:.875rem;color:var(--muted);margin:0}.seal{border:1.5px solid var(--red);color:var(--red);font-family:"Yu Mincho",serif;padding:9px 12px;font-size:.875rem;line-height:1.5;border-radius:6px;flex-shrink:0}.card{background:var(--soft);border:1px solid var(--line);padding:30px;margin:0 0 22px;border-radius:8px;box-shadow:none}.section-heading{display:flex;align-items:center;gap:14px;margin-bottom:24px;flex-wrap:wrap}.section-heading h2{margin:0}.section-heading .section-number{font:1.4rem Georgia,serif;color:var(--red)}.badge{display:inline-block;padding:3px 9px;background:rgba(38,75,105,.055);border:1px solid var(--line);font-size:.75rem;color:var(--dark);white-space:nowrap;line-height:1.8}.section-heading .badge{margin-left:auto}.field{margin-bottom:22px}.field:last-child{margin-bottom:0}.field label{display:block;font-weight:600;font-size:.9375rem;margin-bottom:8px}.required{font-size:.75rem;color:var(--red);font-weight:500;margin-left:9px}input:not([type=checkbox]){width:100%;border:1px solid var(--line);border-radius:6px;padding:13px 14px;background:#fffef9;color:var(--text);min-height:52px;font-size:1rem;box-shadow:none}input[readonly]{background:rgba(38,75,105,.04);color:var(--dark)}input::placeholder{color:#71818a;font-size:.9375rem}.field small{margin-top:7px}.card-intro{color:var(--muted);font-size:.9375rem}.agreement{border-top:1px solid var(--line);margin-top:22px}.agreement details{border-bottom:1px solid var(--line)}.agreement summary{display:flex;align-items:center;gap:14px;padding:15px 0;cursor:pointer;list-style:none;font-size:.9375rem;font-weight:600;line-height:1.6;min-height:52px}.agreement summary::-webkit-details-marker{display:none}.agreement summary>span{color:var(--red);font:1.1rem Georgia,serif;width:22px}.agreement summary:after{content:'＋';margin-left:auto;color:var(--blue);font-weight:400}.agreement details[open] summary:after{content:'−'}.agreement details>div{padding:0 0 15px 36px;font-size:1rem;line-height:1.95}.agreement details p:last-child{margin-bottom:0}.agreement-tools,.signature-tools{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:12px;font-size:.75rem;color:var(--muted)}.text-button{background:none;border:0;color:var(--blue);padding:9px 0;font-size:.875rem;min-height:44px;text-decoration:underline;text-underline-offset:4px}.consent{display:flex;align-items:flex-start;gap:13px;margin-top:22px;padding:19px 15px;background:rgba(38,75,105,.045);line-height:1.8;font-size:.9375rem;cursor:pointer}.consent input{width:22px;height:22px;flex-shrink:0;margin:4px 0;accent-color:var(--blue)}.signature-wrap{position:relative;border:1px solid var(--blue);border-radius:6px;background:#fffef9;height:190px;background-image:linear-gradient(transparent calc(100% - 40px),rgba(38,75,105,.16) calc(100% - 40px),rgba(38,75,105,.16) calc(100% - 39px),transparent calc(100% - 39px))}canvas{width:100%;height:100%;display:block;touch-action:none;position:relative;z-index:1}.signature-guide{position:absolute;inset:0;display:grid;place-items:center;font-size:1rem;color:#71818a;pointer-events:none}.signature-wrap.has-signature .signature-guide{display:none}.signature-tools{font-size:.75rem;margin-bottom:22px}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:20px;background:linear-gradient(145deg,#345672,#1b3b53);color:#fffef5;text-decoration:none;border:1px solid #587185;border-radius:100px;padding:15px 24px;line-height:1.7;font-size:1rem;font-weight:600;min-height:55px}.button:hover{background:var(--dark);border-color:var(--dark)}.button-wide{width:100%}.fine-print{font-size:.8125rem;color:var(--muted);text-align:center;margin:12px 0 0;line-height:1.7}.form-error{font-size:.9375rem;color:#a62612;padding:12px;border-left:3px solid #a62612;background:rgba(229,77,37,.05);margin:0 0 16px}.status{padding:16px 20px;background:var(--soft);border:1px solid var(--line);margin-bottom:20px;line-height:1.8}.gate .section-number{display:block;margin-bottom:20px}.gate p{color:var(--muted)}.gate .button{margin-top:10px}.review-list{margin:28px 0}.review-list dt{color:var(--muted);font-size:.875rem;margin-top:18px}.review-list dd{margin:4px 0;font-size:1.1rem;overflow-wrap:anywhere}.review-signature{display:block;width:100%;height:180px;object-fit:contain;background:#fffef9;border:1px solid var(--line);margin:22px 0 28px}.back-button{display:block;margin:8px auto 0}.complete{text-align:center;padding:50px 30px}.complete-mark{display:grid;place-items:center;margin:0 auto 30px;width:58px;height:58px;border:1px solid var(--blue);border-radius:50%;color:var(--blue);font-size:1.6rem}.complete h2{font-size:2rem;margin:16px 0 24px}.complete p{line-height:2}.text-link{font-size:.875rem;text-underline-offset:5px}.footer{display:flex;justify-content:space-between;gap:20px;padding:24px max(24px,calc((100vw - 1180px)/2));border-top:1px solid var(--line);font-size:.8125rem;color:var(--muted)}.footer a{color:var(--blue);text-underline-offset:4px}.admin-page{max-width:1180px;margin:50px auto 90px;width:calc(100% - 64px)}.admin-page h1{margin:12px 0}.admin-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:28px;margin-top:35px;align-items:start}.admin-entry{max-width:660px;margin-top:32px}.admin-entry p{color:var(--muted)}.mail-preview{padding:20px;background:rgba(38,75,105,.03);border:1px solid var(--line);margin:24px 0}.mail-preview strong{font-size:.9375rem;display:block;margin:12px 0}.mail-preview>p:not(.eyebrow){font-size:.875rem;line-height:1.9}.preview-mail-button{display:block;padding:12px;background:var(--blue);color:var(--soft);text-align:center;margin:16px 0;font-size:.875rem}.invite-row{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:20px 0;border-bottom:1px solid var(--line)}.invite-row:first-child{border-top:1px solid var(--line)}.invite-row>div{min-width:0}.invite-row strong{font-size:.9375rem;display:block}.invite-row span:not(.badge){display:block;font-size:.8125rem;color:var(--muted);overflow-wrap:anywhere}.badge-complete{color:#276444;background:#edf4e9;border-color:#b5c9ab}
@media(max-width:900px){.page-grid{gap:32px;grid-template-columns:.9fr 1.2fr;width:calc(100% - 40px)}h1{font-size:2rem}.card{padding:24px}.desktop-only{display:none}.section-heading{gap:9px}.section-heading .badge{margin-left:0}.admin-grid{grid-template-columns:1fr 1fr;gap:20px}}
@media(max-width:680px){.masthead{padding:23px 20px;flex-wrap:wrap;gap:16px}.wordmark{font-size:1.8rem}.masthead-note{font-size:.75rem}.masthead-note span{font-size:.6875rem}.page-grid{display:block;width:calc(100% - 32px);margin:34px auto 55px}.intro{position:static;margin:0 4px 28px}h1{font-size:1.9rem;line-height:1.6;margin:13px 0 15px}.intro-text{font-size:.9375rem}.steps{display:flex;max-width:none;margin:24px 0 0;border-top:0;border-bottom:1px solid var(--line);gap:0}.steps li{flex:1;border-bottom:0;gap:7px;font-size:.75rem;justify-content:center;padding:12px 0}.steps span{font-size:1.05rem}.aside-note{display:none}.card{padding:22px 20px;margin-bottom:18px}.section-heading{margin-bottom:22px}.section-heading h2{font-size:1.4rem}.section-heading .badge{margin-left:auto;font-size:.6875rem}.card-intro{font-size:.875rem}.agreement details>div{padding-left:0}.agreement summary{font-size:.875rem;gap:9px}.agreement-tools{gap:8px}.agreement-tools>span{font-size:.6875rem}.signature-wrap{height:175px}.signature-tools{gap:8px;font-size:.6875rem}.signature-tools button{font-size:.8125rem}.complete{padding:36px 22px}.admin-page{width:calc(100% - 32px);margin:34px auto 60px}.admin-grid{display:block;margin-top:26px}.footer{display:block;padding:22px 20px}.footer a{display:block;margin-top:8px}.preview-banner{font-size:.75rem}.review-list dd{font-size:1rem}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}

.welcome-image{display:block;width:min(480px,100%);height:auto;aspect-ratio:1.65;object-fit:cover;object-position:75% center;margin:26px 0 0;border-radius:6px}
@media(max-width:680px){.welcome-image{width:100%;margin:22px 0 0}}

.admin-tabs{display:flex;gap:8px;margin-bottom:20px}.admin-tabs button{flex:1;min-height:44px;padding:10px;border:1px solid var(--line);background:transparent;color:var(--blue)}.admin-tabs button[aria-selected=true]{background:var(--blue);color:var(--soft)}.list-pagination{display:flex;justify-content:space-between;align-items:center;gap:10px}.invite-row>div:last-child{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:flex-end}

@media(max-width:680px){.invite-row{flex-direction:column;align-items:stretch;gap:10px}.invite-row>div:last-child{justify-content:flex-start}}

/* Bilingual wordmark approved by Marc. */
.brand-japanese{display:block;font:400 12px/1.5 "Hiragino Mincho ProN","Yu Mincho",YuMincho,serif;letter-spacing:.3em;margin-top:7px;color:inherit}
.workflow-footer-brand{font:400 26px/1.1 Georgia,serif;text-decoration:none}.workflow-footer-brand .brand-japanese{font-size:11px;margin-top:6px}.footer{align-items:center}
@media(max-width:700px){.brand-japanese{font-size:11px;margin-top:6px}}
