/* Phase 1.5 uses the existing teal site palette. */
.founding-page { --ink:#17211d; --paper:#f8faf9; --muted:#43524b; --rule:#cad7d0; --accent:#0f766e; color:var(--ink); background:var(--paper); padding:48px 24px 72px; min-height:70vh; }
.founding-shell { max-width:1120px; margin:auto; }
.founding-form-shell { max-width:780px; margin:auto; }
.founding-page h1,.founding-page h2,.founding-page h3 { font-family:var(--site-font-editorial); font-weight:400; line-height:1.15; letter-spacing:-.02em; }
.founding-page h1 { font-size:clamp(2.25rem,5vw,3.75rem); margin:12px 0 20px; max-width:760px; }
.founding-page h2 { font-size:clamp(1.6rem,3vw,2.25rem); margin:0 0 18px; }
.founding-page h3 { font-size:1.35rem; }
.founding-page p { line-height:1.65; max-width:70ch; }
.founding-page a { color:var(--accent); text-underline-offset:3px; }
.founding-status { color:var(--accent); font-size:.875rem; font-weight:600; }
.founding-lead { font-size:1.125rem; color:var(--muted); }
.founding-section { border-top:1px solid var(--rule); padding:36px 0; }
.founding-hero { display:grid; grid-template-columns:minmax(0,1.4fr) minmax(240px,1fr); gap:44px; align-items:center; padding-bottom:40px; }
.founding-hero img { width:100%; height:auto; }
.founding-actions { display:flex; flex-wrap:wrap; gap:12px; margin:24px 0 16px; }
.founding-page .founding-button { display:inline-flex; align-items:center; justify-content:center; min-height:46px; padding:12px 20px; background:var(--accent); border:1px solid var(--accent); color:#fff; font:600 .95rem var(--site-font-body); text-decoration:none; border-radius:2px; }
.founding-page .founding-button.secondary { color:var(--ink); background:transparent; border-color:var(--ink); }
.founding-page .founding-button:hover { background:#115e59; color:#fff; }
.founding-page :focus-visible { outline:3px solid var(--accent); outline-offset:3px; }
.founding-page .request-notice { padding:16px 20px; background:#eef3f0; border-left:3px solid var(--accent); margin:20px 0; }
.request-form { margin-top:28px; }
.request-form fieldset { padding:24px 0; margin:0; border:0; border-top:1px solid var(--rule); min-width:0; }
.request-form legend { font:400 1.6rem var(--site-font-editorial); padding:0 12px 0 0; }
.request-field { margin:20px 0; }
.request-field > label,.request-field > .field-label { display:block; font-weight:600; margin-bottom:6px; }
.request-help,.request-optional { color:var(--muted); font-size:.875rem; }
.request-help { margin:6px 0 10px; }
.founding-page .request-input { display:block; width:100%; max-width:100%; padding:11px 12px; color:var(--ink); background:#ffffff; border:1px solid #8e958f; border-radius:2px; min-height:46px; font:inherit; }
.founding-page textarea.request-input { min-height:95px; resize:vertical; }
.request-input::placeholder { color:#43524b; }
.request-field [id="id_requested_services"] { display:grid; grid-template-columns:1fr 1fr; gap:10px 20px; }
.request-field [id="id_requested_services"] label,.request-consent label { display:flex; gap:10px; align-items:flex-start; line-height:1.5; }
.founding-page input[type="checkbox"] { flex-shrink:0; width:20px; height:20px; margin-top:2px; accent-color:var(--accent); }
.request-consent { margin:20px 0; }
.request-error { color:#a52323; margin-top:6px; font-size:.9rem; }
.upload-placeholder { padding:18px; border:1px dashed #7e8580; margin:20px 0; color:var(--muted); }
.upload-placeholder strong { display:block; color:var(--ink); }
.request-scope { display:grid; grid-template-columns:minmax(130px,1fr) minmax(0,2fr); gap:12px 20px; }
.request-scope dt { font-weight:600; } .request-scope dd { margin:0; white-space:pre-wrap; overflow-wrap:anywhere; }
.request-boundary { color:var(--muted); font-size:.9rem; }
.scope-options { display:grid; grid-template-columns:1fr 1fr; gap:0 36px; }
.scope-options details { padding:14px 0; border-bottom:1px solid var(--rule); }
.scope-options summary { cursor:pointer; font-weight:600; min-height:32px; }
.founding-steps { display:grid; grid-template-columns:1fr 1fr; gap:24px 40px; padding:0; list-style:none; }
.founding-preview { padding:24px; border:1px solid var(--accent); margin:24px 0; }
.country-options { max-height:320px; overflow:auto; border:1px solid var(--rule); padding:12px; margin:12px 0 24px; }
.country-options label { display:flex; align-items:flex-start; gap:12px; padding:8px 0; }
.request-field [id="id_source_selection_mode"] label { display:flex; gap:10px; align-items:center; padding:8px 0; }
.founding-page input[type="radio"] { width:20px; height:20px; accent-color:var(--accent); }
.country-options [hidden] { display:none; }
.country-open-confirm { padding:16px; margin-block:16px; border:1px solid var(--accent); }
.country-open-confirm[hidden] { display:none; }
.country-open-confirm button { font:inherit; padding:10px; margin:4px 4px 4px 0; color:var(--accent); background:white; border:1px solid var(--accent); cursor:pointer; }
.country-chip { padding:8px 12px; margin:4px 6px 4px 0; color:var(--accent); border:1px solid currentColor; background:transparent; border-radius:4px; font:inherit; text-align:left; max-width:100%; overflow-wrap:anywhere; cursor:pointer; }
.network-copy { font-size:1.0625rem; line-height:1.65; }
.network-copy-hero { max-width:850px; padding:36px 0 56px; }
.network-copy-hero h1 { max-width:19ch; }
.network-copy h2 { max-width:30ch; }
.network-copy h3 { font-size:1.35rem; margin-top:28px; }
.network-copy p, .network-copy li { max-width:78ch; }
.network-copy .network-values { color:var(--accent); font-weight:600; font-size:1.15rem; }
.network-copy .founding-section { padding-block:48px; }
.network-copy .founding-section h3 + p { margin-top:10px; }
.network-table table { width:100%; border-collapse:collapse; }
.responsibility-row { display:grid; grid-template-columns:1fr 2fr 2fr; gap:24px; padding:24px 0; border-bottom:1px solid var(--rule); }
.responsibility-row h3, .responsibility-row h4 { margin:0 0 10px; }
@media(max-width:767px) { .responsibility-row { grid-template-columns:1fr; gap:12px; } }
.network-table th, .network-table td { text-align:left; vertical-align:top; border-bottom:1px solid var(--rule); padding:16px 12px; }
.application-preview { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,2fr); gap:28px; margin:32px 0; align-items:start; }
.preview-request, .preview-application { padding:24px; border:1px solid var(--accent); border-radius:8px; background:#fff; min-width:0; }
.preview-request { margin-top:60px; }
.preview-request dd { margin:0 0 20px; }
.preview-request dt { font-weight:600; }
.preview-partner { display:flex; gap:18px; align-items:center; margin:24px 0; }
.preview-partner svg { flex-shrink:0; color:var(--accent); }
.preview-partner h4 { font-size:1.3rem; margin:0; }
.preview-application details { border-top:1px solid var(--rule); padding:18px 0; }
.preview-application summary { cursor:pointer; font-weight:600; }
.preview-application .signal { color:#115e59; }
.preview-fee { display:flex; justify-content:space-between; gap:16px; padding:20px 0; }
.preview-deposit { background:#edf7f5; padding:18px !important; }
.founding-page :focus-visible { outline:3px solid var(--accent); outline-offset:4px; }
.founding-page h1, .founding-page h2, .founding-page p, .founding-page td { overflow-wrap:anywhere; }
@media(max-width:767px) { .application-preview { grid-template-columns:1fr; } .preview-request { margin-top:0; } .network-table tr { display:grid; grid-template-columns:1fr; margin-bottom:20px; } .network-table td { padding:12px 0; } .network-copy-hero { padding:12px 0 28px; } .network-copy .founding-section { padding-block:32px; } .preview-request, .preview-application { padding:18px; } }
@media(max-width:767px) { .founding-page { padding:28px 16px 48px; } .founding-hero,.scope-options,.founding-steps { grid-template-columns:1fr; } .founding-hero { gap:24px; } .founding-hero img { max-width:420px; } .request-field [id="id_requested_services"] { grid-template-columns:1fr; } .request-scope { grid-template-columns:1fr; gap:5px; } .request-scope dd { margin-bottom:12px; } .founding-preview { padding:16px; } }
