.customer-portal{color:#1e1a17;min-height:100dvh;font-family:var(--font-geist-sans), sans-serif;background:#fbfaf6;font-size:15px;line-height:1.55}.customer-portal *{box-sizing:border-box}.customer-portal a{color:inherit}.customer-portal button,.customer-portal input,.customer-portal select,.customer-portal textarea{font:inherit;border-radius:0}.customer-portal button{cursor:pointer}.customer-portal button:disabled{opacity:.6;cursor:wait}.customer-portal :focus-visible{outline-offset:3px;outline:2px solid #6b1e24}.portal-header{border-bottom:1px solid #d6d1c9;justify-content:space-between;align-items:center;gap:20px;height:72px;padding:0 48px;display:flex}.portal-header>a:first-child{width:126px;display:flex}.portal-header svg{width:100%;height:auto}.portal-header>div{align-items:center;gap:20px;font-size:14px;display:flex}.portal-header button{color:#6e6762;background:0 0;border:0}.portal-layout{grid-template-columns:minmax(0,1fr) 320px;align-items:start;gap:48px;max-width:1180px;margin:auto;padding:40px 48px 64px;display:grid}.portal-main{flex-direction:column;gap:28px;min-width:0;display:flex}.portal-heading{border-bottom:1px solid #1e1a17;gap:8px;padding-bottom:20px;display:grid}.portal-heading h1{letter-spacing:-.02em;margin:0;font-size:34px;font-weight:700;line-height:1.1}.portal-heading p{color:#4a433e;margin:0}.portal-eyebrow{letter-spacing:.1em;text-transform:uppercase;font-weight:600;color:#6e6762!important;font-size:10.5px!important}.portal-section{gap:12px;display:grid}.portal-section h2,.portal-callout h2{margin:0;font-size:18px;font-weight:600}.portal-section h3{margin:0;font-size:16px}.portal-section p,.portal-callout p{color:#4a433e;margin:0;line-height:1.55}.portal-callout{background:#fff;border:1px solid #1e1a17;gap:12px;padding:24px;display:grid}.portal-primary,.portal-button{text-align:center;color:#1e1a17;letter-spacing:.04em;background:#fff;border:1px solid #1e1a17;justify-content:center;align-items:center;min-height:48px;padding:12px 22px;font-weight:600;line-height:1.3;text-decoration:none;display:inline-flex;font-size:13px!important}.portal-primary{color:#fbfaf6;background:#1e1a17}.portal-actions{flex-wrap:wrap;gap:10px;margin-top:8px;display:flex}.portal-actions button:not(.portal-primary){background:#fff;border:1px solid #1e1a17;padding:12px 16px}.portal-text-button{color:inherit;text-underline-offset:3px;background:0 0;border:0;padding:0;font-size:14px;text-decoration:underline}.portal-section-heading{justify-content:space-between;align-items:baseline;gap:16px;display:flex}.portal-lines{border-top:1px solid #d6d1c9;margin:0}.portal-lines>div{border-bottom:1px solid #efeae2;grid-template-columns:1fr auto;gap:16px;padding:12px 0;display:grid}.portal-lines dt{color:#6e6762}.portal-lines dd{text-align:right;overflow-wrap:anywhere;max-width:340px;margin:0}.portal-lines small,.portal-document small{color:#6e6762;margin-top:4px;font-size:12px;display:block}.portal-lines .portal-total{border-top:1px solid #1e1a17;font-weight:600}.portal-price{font-family:var(--font-geist-mono), monospace;letter-spacing:-.02em;font-size:40px;line-height:1.2}.portal-status{color:#fbfaf6;background:#1e1a17;justify-self:start;padding:4px 9px;font-size:12px;font-weight:600}.portal-aside{gap:20px;display:grid;position:sticky;top:24px}.portal-stages{background:#fff;border:1px solid #d6d1c9;padding:20px}.portal-contact{background:#fff;border:1px solid #d6d1c9;gap:12px;padding:16px;display:grid}.portal-contact p{margin:0}.portal-contact>div:not(.portal-two){align-items:center;gap:12px;display:flex}.portal-avatar{color:#fbfaf6;background:#1e1a17;place-items:center;width:44px;height:44px;font-weight:700;display:grid}.portal-two{grid-template-columns:1fr 1fr;gap:14px;display:grid}.portal-choice,.portal-document{border-top:1px solid #d6d1c9;justify-content:space-between;align-items:center;gap:24px;padding:16px 0;display:flex}.portal-update{border-top:1px solid #d6d1c9;gap:8px;padding:16px 0;display:grid}.portal-update small{font:11px var(--font-geist-mono), monospace;color:#6e6762}.portal-preserve{white-space:pre-wrap}.portal-contract{overflow-wrap:anywhere;padding:20px 0}.portal-contract h1,.portal-contract h2,.portal-contract h3{margin:16px 0}.portal-contract p{margin:12px 0}.portal-contract table{border-collapse:collapse;max-width:100%;font-size:13px}.portal-contract td,.portal-contract th{border:1px solid #d6d1c9;padding:6px}.portal-contract ul,.portal-contract ol{padding-left:24px}.portal-photos{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.portal-photos>a,.portal-upload{aspect-ratio:4/3;cursor:pointer;border:1px dashed #8a837d;place-items:center;font-size:13px;display:grid;position:relative;overflow:hidden}.portal-photos img{object-fit:cover;width:100%;height:100%}.portal-upload input{opacity:0;cursor:pointer;width:100%;position:absolute;inset:0}.portal-upload:focus-within{outline:2px solid #6b1e24}.portal-notice{background:#fff;border:1px solid #d6d1c9;padding:16px}.portal-error{color:#6b1e24;font-size:14px}.portal-help{color:#6e6762;font-size:13px}.portal-dialog{color:#1e1a17;background:#fbfaf6;border:1px solid #1e1a17;width:min(720px,100% - 32px);max-height:90dvh;margin:auto;padding:28px}.portal-dialog::backdrop{background:#1e1a1780}.portal-dialog form{gap:20px;display:grid}.portal-dialog header{justify-content:space-between;align-items:start;gap:20px;display:flex}.portal-dialog h2{margin:0;font-size:23px;line-height:1.2}.portal-dialog header button{background:0 0;border:0;font-size:28px;line-height:1}.customer-portal label{flex-direction:column;gap:8px;font-size:13px;font-weight:500;display:flex}.customer-portal input:not([type=checkbox]):not([type=file]),.customer-portal select,.customer-portal textarea{color:#1e1a17;background:#fff;border:1px solid #d6d1c9;width:100%;min-height:50px;padding:12px 14px;font-size:16px}.customer-portal label small{color:#6e6762;font-size:12px;font-weight:400}.customer-portal label.portal-checkbox{flex-direction:row;align-items:start;font-size:13px;font-weight:400}.portal-checkbox input{accent-color:#1e1a17;flex-shrink:0;width:18px;height:18px}.portal-login{grid-template-columns:1fr 1fr;max-width:1440px;margin:auto;display:grid}.portal-login-intro{border-right:1px solid #d6d1c9;flex-direction:column;gap:28px;padding:96px 80px;display:flex}.portal-login h1{letter-spacing:-.025em;max-width:520px;margin:0;font-size:44px;line-height:1.08}.portal-login-intro p{color:#4a433e;max-width:480px;margin:0;font-size:17px}.portal-login-intro ol{border-top:1px solid #d6d1c9;max-width:480px;margin:8px 0 0;padding:0;list-style:none}.portal-login-intro li{color:#4a433e;border-bottom:1px solid #efeae2;align-items:center;gap:14px;min-height:40px;display:flex}.portal-login-intro li span{font:12px var(--font-geist-mono), monospace;color:#6e6762;width:16px}.portal-login-form{background:#fff;padding:96px 80px}.portal-login-form form{gap:22px;max-width:400px;display:grid}.portal-login-form h2{margin:0;font-size:22px}.portal-login-form p{margin:0}.portal-privacy{color:#6e6762;border-top:1px solid #d6d1c9;padding-top:18px;font-size:13px;line-height:1.5}.portal-code{letter-spacing:.45em;font-family:var(--font-geist-mono), monospace!important;font-size:25px!important}.portal-project-list{gap:16px;max-width:720px;margin:auto;padding:32px 24px;display:grid}.portal-project-list>a{background:#fff;border:1px solid #d6d1c9;justify-content:space-between;padding:20px;display:flex}@media (max-width:1000px){.portal-layout{grid-template-columns:minmax(0,1fr) 280px;gap:28px;padding:32px}.portal-login-intro,.portal-login-form{padding:64px 40px}}@media (max-width:750px){.portal-header{height:60px;padding:0 24px}.portal-header>a:first-child{width:110px}.portal-header>div>span{display:none}.portal-layout{flex-direction:column;gap:28px;padding:24px;display:flex}.portal-main{gap:24px;width:100%}.portal-aside{width:100%;display:contents;position:static}.portal-stages{background:0 0;border:0;order:-1;padding:0}.portal-heading h1{font-size:29px}.portal-callout{padding:20px}.portal-price{font-size:36px}.portal-lines dd{max-width:220px}.portal-login{flex-direction:column;display:flex}.portal-login-intro{border:0;gap:16px;padding:36px 24px 20px}.portal-login h1{max-width:360px;font-size:32px}.portal-login-intro p{font-size:15px}.portal-login-intro ol{display:none}.portal-login-form{background:0 0;padding:24px}.portal-login-form form{max-width:none}.portal-photos{grid-template-columns:repeat(2,minmax(0,1fr))}.portal-two{gap:12px}.portal-choice{flex-wrap:wrap}.portal-dialog{padding:24px}}@media print{.portal-header,.portal-aside,.portal-dialog,.portal-actions,.portal-help,.portal-upload,button{display:none!important}.portal-layout{padding:0;display:block}.portal-main{display:block}.portal-section{break-inside:avoid;margin:20px 0}.portal-contract{display:block}details:not([open])>:not(summary){display:block!important}.customer-portal{background:#fff}}.portal-past>summary{cursor:pointer;border-top:1px solid #d6d1c9;padding:16px 0;font-size:18px;font-weight:600}.portal-past>.portal-section{margin:20px 0}@media (max-width:750px){.portal-main{display:contents}.portal-main>*{order:2;width:100%}.portal-main>.portal-heading{border:0;order:0;gap:4px;padding:0}.portal-heading h1,.portal-heading>p:not(.portal-eyebrow):not(.portal-mobile-received){clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.portal-stages{background:0 0;border:0;order:1;width:100%;padding:0}.portal-stages:not(.is-request) .stage-list{display:none}.portal-aside>.portal-contact,.portal-aside>label,.portal-aside>.portal-help{order:3;width:100%}.portal-callout{padding:18px 16px}.portal-photos{grid-template-columns:repeat(3,minmax(0,1fr))}}.portal-mobile-received{display:none}@media (max-width:750px){.portal-mobile-received{font-size:13px;display:block}.portal-layout{gap:22px}.portal-header{height:64px}.portal-callout h2{font-size:16px}}
