@import url("/action-buttons.css");
/* D147: selected D145 composition. 500 ms confirmed by the user. */
html{scrollbar-gutter:stable}.project-dialog{--modal-bg:#eeeee7;--modal-ink:#20251f;--modal-muted:#67705e;--modal-line:#bcc4b3;--modal-input:#f9f9f3;--modal-accent:#ed6c32;--modal-pad:38px;--modal-space:22px;--modal-font:'Bahnschrift','Segoe UI',sans-serif;--modal-radius:16px;--motion-duration:360ms;--motion-ease:cubic-bezier(.2,.75,.2,1);--veil:.48;--blur:4px;position:fixed;inset:0;margin:0;padding:24px;width:100%;height:100dvh;max-width:none;max-height:none;border:0;background:transparent;color:var(--modal-ink);overflow:hidden;font:400 14px/1.5 'Segoe UI',Arial,sans-serif;box-sizing:border-box;color-scheme:light}
.project-dialog[open]{display:flex;align-items:center;justify-content:center}.project-dialog::backdrop{background:rgb(11 16 14 / var(--veil));backdrop-filter:blur(var(--blur));animation:veil-in var(--motion-duration) var(--motion-ease) both}.project-dialog[data-closing]::backdrop{animation:veil-out 180ms ease both}.project-dialog *{box-sizing:border-box}.project-dialog [hidden]{display:none!important}.project-dialog :is(button,input,textarea){font:inherit}.project-dialog button{cursor:pointer;touch-action:manipulation}.project-dialog a{color:inherit}.project-dialog :is(button,a,input,textarea):focus-visible{outline:2px solid #a34c24;outline-offset:4px}.project-dialog [tabindex='-1']:focus{outline:0}.project-dialog .modal-card{position:relative;display:block;width:548px;max-width:100%;max-height:100%;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;background:var(--modal-bg);border:1px solid #ffffff21;border-radius:var(--modal-radius);box-shadow:0 24px 100px #0005;animation:modal-lift var(--motion-duration) var(--motion-ease) both}.project-dialog .modal-intro{padding:var(--modal-pad) var(--modal-pad) 0}.project-dialog .modal-kicker{display:flex;align-items:center;gap:9px;font-size:9px;font-weight:500;letter-spacing:.14em;line-height:1.5;color:var(--modal-muted);margin:0 36px 22px 0}.project-dialog .modal-kicker>span{width:5px;height:5px;border-radius:50%;background:var(--modal-accent);flex-shrink:0}.project-dialog h2{font-family:var(--modal-font);font-size:42px;font-weight:500;letter-spacing:-.045em;line-height:1.04;max-width:410px;margin:0 0 15px;overflow-wrap:anywhere}.project-dialog #project-description{font-size:14px;line-height:1.55;color:var(--modal-muted);margin:0}.project-dialog .modal-body{padding:28px var(--modal-pad) var(--modal-pad)}.project-dialog .modal-close{position:absolute;right:13px;top:13px;display:grid;place-items:center;width:40px;height:40px;border-radius:50%;border:1px solid transparent;background:transparent;color:var(--modal-muted);z-index:2;transition:background .18s,color .18s}.project-dialog .modal-close svg{width:22px;height:22px}.project-dialog .modal-close:hover{background:#7a87681a;color:var(--modal-ink)}.project-dialog .modal-field{margin-bottom:var(--modal-space)}.project-dialog .modal-field label{display:block;margin:0 0 8px;font-size:12px;color:var(--modal-ink)}.project-dialog .modal-field label>span{font-size:10px;color:var(--modal-muted);margin-left:4px}.project-dialog input,.project-dialog textarea{display:block;width:100%;max-width:100%;border:1px solid var(--modal-line);border-radius:min(8px,var(--modal-radius));background:var(--modal-input);color:var(--modal-ink);padding:13px 14px;min-height:49px;line-height:1.45;transition:border-color .18s,background .18s;outline:none;box-shadow:none}.project-dialog textarea{resize:vertical;min-height:81px;max-height:180px}.project-dialog input::placeholder,.project-dialog textarea::placeholder{color:var(--modal-muted);opacity:.86}.project-dialog .modal-submit{width:100%;display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:52px;padding:14px 18px;background:var(--modal-accent);border:1px solid var(--modal-accent);border-radius:min(8px,var(--modal-radius));color:#171a14;text-align:left;font-size:13px;font-weight:600;transition:background .18s,transform .18s}.project-dialog .modal-submit svg{width:21px;height:21px;transition:transform .2s}.project-dialog .modal-submit:hover{background:#f38350}.project-dialog .modal-submit:hover svg{transform:translate(2px,-2px)}.project-dialog .modal-submit:active{transform:translateY(1px)}.project-dialog .modal-direct{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:23px;padding-top:19px;border-top:1px solid var(--modal-line);font-size:11px}.project-dialog .modal-direct>span{color:var(--modal-muted)}.project-dialog .modal-direct a{font-weight:500;font-size:13px;white-space:nowrap;display:inline-flex;align-items:center;gap:12px;min-height:30px;text-decoration:none}.project-dialog .modal-direct a:hover{text-decoration:underline}.project-dialog .modal-direct a>span{color:var(--modal-muted);font-size:18px}.project-dialog .modal-aside{display:none}.project-dialog .modal-error{font-size:11px;line-height:1.5;color:#a12c25;margin:7px 0 0}.project-dialog input[aria-invalid=true]{border-color:#a12c25;background:#fff5ee}.project-dialog .modal-success{padding:8px 0 16px;min-height:238px}.project-dialog .success-symbol{display:grid;place-items:center;width:49px;height:49px;border:1px solid var(--modal-line);border-radius:50%;color:var(--modal-muted);margin-bottom:23px}.project-dialog .success-symbol svg{width:30px;height:30px}.project-dialog .modal-success h3{font:500 27px/1.15 var(--modal-font);letter-spacing:-.035em;margin:0 0 12px}.project-dialog .modal-success p{color:var(--modal-muted);font-size:14px;margin:0 0 26px}.project-dialog .modal-done{display:flex;align-items:center;justify-content:space-between;width:100%;border:0;border-bottom:1px solid var(--modal-line);background:transparent;color:var(--modal-ink);padding:10px 0;min-height:44px;font-size:13px}.project-dialog .modal-done span{font-size:20px}.project-dialog[data-density=compact]{--modal-pad:30px;--modal-space:17px}.project-dialog[data-density=air]{--modal-pad:46px;--modal-space:27px}.project-dialog[data-palette=olive]{--modal-bg:#dce1d2;--modal-input:#edf0e5;--modal-line:#a9b39e;--modal-muted:#56614d}.project-dialog[data-palette=graphite]{--modal-bg:#191c1d;--modal-ink:#f1f1e8;--modal-muted:#bbc3b5;--modal-input:#252a29;--modal-line:#566052;color-scheme:dark}.project-dialog[data-palette=graphite] :is(a,button,input,textarea):focus-visible{outline-color:#f6b084}.project-dialog[data-palette=graphite] .modal-error{color:#ffb5a7}.project-dialog[data-palette=graphite] input[aria-invalid=true]{color:var(--modal-ink);background:#362a26;border-color:#ffb5a7}.project-dialog[data-font=human]{--modal-font:'Segoe UI',Arial,sans-serif}.project-dialog[data-font=editorial]{--modal-font:Georgia,serif}.project-dialog[data-font=editorial] h2{font-size:40px;line-height:1.12;letter-spacing:-.055em}.project-dialog[data-layout=dialog] .modal-card{display:grid;grid-template-columns:.9fr 1.1fr;width:830px}.project-dialog[data-layout=dialog] .modal-intro{padding:var(--modal-pad);display:flex;flex-direction:column;background:#303b2b;color:#f1f1e8}.project-dialog[data-layout=dialog][data-palette=paper] .modal-intro{background:#e0e3d7;color:#20251f}.project-dialog[data-layout=dialog][data-palette=graphite] .modal-intro{background:#232a26}.project-dialog[data-layout=dialog] .modal-kicker{margin-right:0;color:#bec8b5}.project-dialog[data-layout=dialog][data-palette=paper] .modal-kicker{color:#66705b}.project-dialog[data-layout=dialog] #project-description{color:#c5cdbe;font-size:13px}.project-dialog[data-layout=dialog][data-palette=paper] #project-description{color:#5e6a55}.project-dialog[data-layout=dialog] h2{font-size:39px;line-height:1.1}.project-dialog[data-layout=dialog] .modal-break{display:none}.project-dialog[data-layout=dialog] .modal-aside{display:block;margin-top:auto;padding-top:43px}.project-dialog .modal-aside p{font-size:14px;line-height:1.5;margin:15px 0 6px}.project-dialog .modal-aside small{opacity:.65;font-size:10px}.project-dialog .route-line{display:flex;align-items:center;width:108px;gap:7px}.project-dialog .route-line i{width:5px;height:5px;border-radius:50%;border:1px solid currentColor}.project-dialog .route-line i:first-child{background:#ed6c32;border-color:#ed6c32}.project-dialog .route-line span{height:1px;background:currentColor;flex:1;opacity:.25}.project-dialog[data-layout=dialog] .modal-body{padding-top:66px;align-self:center}.project-dialog[data-layout=dialog] .modal-direct{display:block}.project-dialog[data-layout=dialog] .modal-direct>a{display:flex;width:fit-content;margin-top:4px}.project-dialog[data-layout=drawer]{justify-content:flex-end;padding:14px}.project-dialog[data-layout=drawer] .modal-card{width:500px;min-height:min(660px,100%);display:flex;flex-direction:column}.project-dialog[data-layout=drawer] .modal-intro{padding-top:54px}.project-dialog[data-layout=drawer] .modal-body{flex:1;display:flex;flex-direction:column}.project-dialog[data-layout=drawer] .modal-direct{margin-top:auto;padding-top:23px}.project-dialog[data-layout=drawer] form{margin-bottom:35px}.project-dialog[data-motion=settle] .modal-card{animation-name:modal-settle}.project-dialog[data-motion=glide] .modal-card{animation-name:modal-glide}.project-dialog[data-motion=none] .modal-card{animation-name:modal-fade}.project-dialog[data-closing] .modal-card{animation:modal-out 180ms ease both}.prototype-note{position:fixed;bottom:10px;left:50%;transform:translateX(-50%);z-index:9999;background:#182119bd;border:1px solid #ffffff22;color:#e4e9dd;backdrop-filter:blur(4px);padding:6px 10px;border-radius:20px;font:9px/1.4 'Segoe UI',sans-serif;letter-spacing:.025em;pointer-events:none;white-space:nowrap}
@keyframes modal-lift{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}@keyframes modal-settle{from{opacity:0;transform:scale(.98)}to{opacity:1;transform:none}}@keyframes modal-glide{from{opacity:0;transform:translateX(28px)}to{opacity:1;transform:none}}@keyframes modal-fade{from{opacity:0}to{opacity:1}}@keyframes modal-out{to{opacity:0;transform:translateY(5px)}}@keyframes veil-in{from{background:rgb(11 16 14 / 0)}to{background:rgb(11 16 14 / var(--veil))}}@keyframes veil-out{to{background:rgb(11 16 14 / 0)}}
@media(max-width:650px){.project-dialog{padding:14px;--modal-pad:26px;--modal-space:20px}.project-dialog[data-density=air]{--modal-pad:30px;--modal-space:24px}.project-dialog[data-density=compact]{--modal-pad:22px;--modal-space:16px}.project-dialog .modal-card{width:440px}.project-dialog .modal-kicker{font-size:8px;margin-bottom:22px}.project-dialog h2,.project-dialog[data-font=editorial] h2{font-size:35px;max-width:310px}.project-dialog #project-description{font-size:13px}.project-dialog .modal-body{padding-top:24px}.project-dialog .modal-direct{align-items:flex-start;flex-direction:column;gap:0;margin-top:20px;padding-top:15px}.project-dialog .modal-direct a{font-size:14px}.project-dialog .modal-field :is(input,textarea){font-size:16px}.project-dialog .modal-field label{font-size:11px}.project-dialog .modal-close{right:8px;top:8px;width:36px;height:36px}.project-dialog[data-layout=dialog] .modal-card{display:block;width:440px}.project-dialog[data-layout=dialog] .modal-intro{padding:var(--modal-pad)}.project-dialog[data-layout=dialog] .modal-kicker{margin-right:32px;margin-bottom:15px}.project-dialog[data-layout=dialog] h2{font-size:33px;max-width:300px;margin-bottom:12px}.project-dialog[data-layout=dialog] .modal-aside{display:none}.project-dialog[data-layout=dialog] .modal-body{padding-top:25px}.project-dialog[data-layout=dialog] .modal-close{color:#d6ddcf;background:#ffffff08}.project-dialog[data-layout=dialog][data-palette=paper] .modal-close{color:#59644e}.project-dialog[data-layout=drawer]{align-items:flex-end;padding:10px}.project-dialog[data-layout=drawer] .modal-card{width:100%;min-height:0;max-height:100%}.project-dialog[data-layout=drawer] .modal-intro{padding-top:39px}.project-dialog[data-layout=drawer] form{margin-bottom:0}.project-dialog[data-layout=drawer] .modal-direct{margin-top:20px}.project-dialog[data-motion=glide] .modal-card{animation-name:modal-lift}.prototype-note{font-size:8px;bottom:3px}}
@media(max-height:650px) and (min-width:651px){.project-dialog{--modal-pad:28px;--modal-space:17px;padding:16px}.project-dialog .modal-kicker{margin-bottom:15px}.project-dialog h2{font-size:37px}.project-dialog .modal-body{padding-top:22px}.project-dialog .modal-direct{margin-top:17px;padding-top:14px}.project-dialog[data-layout=dialog] .modal-body{padding-top:55px}}
@media(prefers-reduced-motion:reduce){.project-dialog .modal-card,.project-dialog[data-closing] .modal-card,.project-dialog::backdrop,.project-dialog[data-closing]::backdrop{animation:none!important;transform:none!important}.project-dialog *{transition:none!important}.project-dialog .modal-submit:hover svg{transform:none}}

/* Integrate the existing local contact delivery without changing the selected composition. */
.project-dialog .modal-status{font-size:10px;line-height:1.5;color:var(--modal-muted);margin:12px 0 0}.home-layout .project-dialog .contact-status[data-state=error]{color:#a12c25!important}.project-dialog .modal-submit:disabled{cursor:not-allowed;opacity:.58}.project-dialog .modal-submit:disabled svg{transform:none}.project-dialog .modal-form[aria-busy=true] .modal-submit{cursor:wait}

/* Match the accepted compact modal; status appears only when there is a message. */
.project-dialog .modal-status:empty{display:none}
.project-dialog .consent-notice>p{display:none}

/* D168: verified audit corrections, preserving the approved composition. */
.project-dialog .modal-field :is(input,textarea){border-color:var(--dm-control-border,#77816e)}
.project-dialog .modal-field input[aria-invalid=true]{border-color:#a12c25}
.project-dialog .modal-field label,.project-dialog .modal-status{font-size:12px}
