@font-face{font-family:WH Portal Jakarta;src:url(/fonts/portal/plus-jakarta-sans-latin.woff2)format("woff2");font-style:normal;font-weight:100 900;font-display:swap}@font-face{font-family:WH Portal Mono;src:url(/fonts/portal/jetbrains-mono-latin.woff2)format("woff2");font-style:normal;font-weight:100 900;font-display:swap}.portal-redesign{--background:#f7f3eb;--foreground:#15110e;--card:#f4efe7;--card-foreground:#15110e;--muted:#eee9df;--muted-foreground:#655f57;--border:#d9d3c9;--input:#cbc4b8;--primary:#3a5fa8;--primary-foreground:#fff;--secondary:#eee9df;--secondary-foreground:#15110e;--accent:#e9edf5;--accent-foreground:#284b8d;--ring:#3a5fa8;--blue:#284b8d;--cobalt:#3a5fa8;--warning:#82550c;--success:#426341;background:var(--background);min-height:100dvh;color:var(--foreground);--portal-control-surface:#f7f3eb;--portal-control-border:#d5d0c7;--portal-control-hover:#e9edf5;--portal-control-hover-border:#b9cbe8;font-family:WH Portal Jakarta,ui-sans-serif,system-ui,sans-serif;font-size:15px}.portal-redesign *{box-sizing:border-box}.portal-redesign a{color:inherit}.portal-redesign :is(a,button,summary,textarea):focus-visible{outline:3px solid var(--ring);outline-offset:3px}.portal-redesign .font-mono,.portal-redesign .portal-eyebrow{font-family:WH Portal Mono,ui-monospace,monospace}.portal-skip{z-index:100;background:#15110e;padding:12px;position:absolute;top:-100px;left:15px;color:#fff!important}.portal-skip:focus{top:10px}.portal-site-header{border-bottom:1px solid #d9d3c9;justify-content:space-between;align-items:center;gap:20px;min-height:100px;padding:18px clamp(20px,4vw,70px);display:flex;position:relative}.portal-brand{letter-spacing:-1px;white-space:nowrap;align-items:center;gap:10px;font-size:21px;font-weight:780;text-decoration:none;display:flex}.portal-brand-mark{background:#1a1a1a;border-radius:50%;place-items:center;width:46px;height:46px;display:grid;box-shadow:4px 4px 9px #bcb5aa80,-4px -4px 9px #fff}.portal-brand-mark img{width:100%;height:100%}.portal-brand small{color:var(--muted-foreground);letter-spacing:0;margin-top:1px;font:400 12px WH Portal Mono,monospace;display:block}.portal-navigation{-webkit-backdrop-filter:blur(20px)saturate(1.3);background:#faf9f5bf;border:1px solid #fff;border-radius:999px;align-items:center;gap:7px;padding:7px;display:flex;box-shadow:0 6px 18px #6f6b5d18,inset 0 1px #fff}.portal-navigation a{color:#565e60;background:linear-gradient(145deg,#ffffff80,#f3f1eb40);border:1px solid #ffffff80;border-radius:999px;justify-content:center;align-items:center;gap:7px;min-height:44px;padding:0 17px;font:500 12px WH Portal Mono,monospace;text-decoration:none;display:flex;box-shadow:3px 3px 7px #c9c6bb55,-2px -2px 5px #ffffffb3}.portal-navigation a:hover{color:var(--blue);background:#fff}.portal-navigation a[aria-current]{color:var(--blue);background:#dde8f8c2;border-color:#c9d8ec;font-weight:650;box-shadow:inset 3px 3px 7px #aabbd04d,inset -2px -2px 5px #fffc}.portal-account{justify-content:flex-end;align-items:center;gap:10px;min-width:100px;display:flex}.portal-account-initial{background:var(--background);width:34px;height:34px;color:var(--muted-foreground);border:1px solid #fff;border-radius:50%;flex:none;place-items:center;font:500 12px WH Portal Mono,monospace;display:grid;box-shadow:4px 4px 9px #d0c8ba80,-4px -4px 9px #fff}.portal-account button,.portal-preview-tag{color:var(--muted-foreground);cursor:pointer;background:0 0;border:0;font:500 12px WH Portal Mono,monospace}.portal-account button:hover{text-decoration:underline}.portal-content{max-width:1260px;margin:0 auto;padding:0 38px 48px}.portal-welcome,.portal-page-heading{padding:16px 0 23px}.portal-eyebrow{color:var(--muted-foreground);text-transform:none;letter-spacing:.05em;font-size:12px;line-height:1.5;display:block}.portal-welcome h1,.portal-page-heading h1{letter-spacing:-2.4px;margin:10px 0 12px;font-size:clamp(35px,4vw,57px);font-weight:780;line-height:1.05}.portal-welcome>p:last-child,.portal-page-heading>p:last-child{color:var(--muted-foreground);font-size:15px}.portal-attention{background:#e9edf5;border:1px solid #d3dce9;border-radius:16px;align-items:center;gap:18px;padding:23px 26px;display:flex}.portal-attention-icon{color:#3a5fa8;background:#e9edf5;border:1px solid #ffffff90;border-radius:50%;flex:none;place-items:center;width:43px;height:43px;display:grid;box-shadow:4px 4px 9px #c7d0e099,-4px -4px 9px #ffffffc9}.portal-attention h2{margin:4px 0 5px;font-size:18px;font-weight:760;line-height:1.25}.portal-attention p{color:#5f6672;font-size:13px;line-height:1.5}.portal-attention-clear{background:#eeeae1;border-color:#ddd6ca}.portal-attention-clear .portal-attention-icon{color:#635f56;background:#eeeae1;box-shadow:4px 4px 9px #cec6ba80,-4px -4px 9px #fffdf8}.portal-attention-clear p{color:var(--muted-foreground)}.portal-primary-action{background:var(--primary);border:1px solid #31569b;border-radius:11px;flex:none;justify-content:center;align-items:center;gap:15px;min-height:46px;margin-left:auto;padding:11px 17px;font-size:13px;font-weight:600;text-decoration:none;display:inline-flex;box-shadow:4px 5px 10px #2c467333,-3px -3px 8px #ffffffb3,inset 1px 1px 2px #fff4,inset -1px -2px 3px #203f7d66;color:var(--primary-foreground)!important}.portal-primary-action:hover{background:#284b8d}.portal-section-heading{justify-content:space-between;align-items:center;gap:15px;margin:34px 0 14px;display:flex}.portal-section-heading h2{letter-spacing:-.5px;font-size:18px;font-weight:760}.portal-section-heading a,.portal-note-card a,.portal-home-bottom a,.portal-empty a,.portal-inline-link{align-items:center;gap:8px;min-height:44px;font-size:12px;font-weight:650;text-decoration:none;display:inline-flex;color:var(--blue)!important}.portal-section-heading a:hover,.portal-note-card a:hover,.portal-home-bottom a:hover,.portal-empty a:hover,.portal-inline-link:hover{text-underline-offset:4px;text-decoration:underline}.portal-home-grid{grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);gap:24px;display:grid}.portal-project-list{align-content:start;gap:24px;display:grid}.portal-project-summary{background:var(--card);border:1px solid #fff;border-radius:16px;overflow:hidden;box-shadow:8px 8px 20px #d7d3c780,-8px -8px 20px #ffffffd9}.portal-project-cover{min-height:190px;color:var(--foreground);background:#e8e3d9;border-bottom:1px solid #d9d3c9;flex-direction:column;justify-content:space-between;gap:20px;padding:24px;display:flex;box-shadow:inset 3px 3px 8px #d3d7ca80,inset -3px -3px 8px #fff9}.portal-project-cover>span{text-transform:none;letter-spacing:.05em;color:var(--muted-foreground);font:500 12px WH Portal Mono,monospace}.portal-project-cover strong{letter-spacing:-1.5px;overflow-wrap:anywhere;font-size:clamp(28px,3vw,43px);font-weight:800;line-height:1.05}.portal-project-description{justify-content:space-between;align-items:center;gap:18px;padding:22px 24px;display:flex}.portal-project-description h3{letter-spacing:-.5px;margin:6px 0;font-size:20px;font-weight:760;line-height:1.2}.portal-project-description h3 a{text-decoration:none}.portal-project-description p{color:var(--muted-foreground);max-width:65ch;font-size:12px;line-height:1.5}.portal-review-count{color:var(--blue);margin-top:8px;font:500 12px WH Portal Mono,monospace;display:block}.portal-project-open{border:1px solid var(--border);background:var(--background);border-radius:50%;flex:none;place-items:center;width:44px;height:44px;display:grid;box-shadow:4px 4px 9px #d0c8ba80,-4px -4px 9px #ffffffd9;color:var(--blue)!important}.portal-note-card{background:#eee9df;border-radius:16px;flex-direction:column;min-width:0;padding:26px;display:flex}.portal-note-meta{color:var(--muted-foreground);justify-content:space-between;gap:12px;font:400 12px WH Portal Mono,monospace;display:flex}.portal-note-card h3{letter-spacing:-.8px;overflow-wrap:anywhere;margin:55px 0 16px;font-size:26px;font-weight:760;line-height:1.12}.portal-note-card p{color:#625c54;white-space:pre-wrap;-webkit-line-clamp:7;-webkit-box-orient:vertical;font-size:13px;line-height:1.65;display:-webkit-box;overflow:hidden}.portal-note-card a{margin-top:auto;padding-top:22px}.portal-home-bottom{grid-template-columns:1.7fr 1fr;gap:24px;margin-top:28px;display:grid}.portal-home-bottom>div{border-top:1px solid #d9d3c9;grid-template-columns:1fr auto;align-items:center;gap:4px 16px;padding:20px 0;display:grid}.portal-home-bottom .portal-eyebrow{grid-column:1/-1}.portal-home-bottom h3{font-size:13px;font-weight:750}.portal-home-bottom p{color:var(--muted-foreground);font-size:12px}.portal-home-bottom a{grid-area:2/2/4}.portal-page-heading{padding-top:28px}.portal-page-heading h1{margin-bottom:10px}.portal-back{align-items:center;min-height:44px;margin-top:14px;font-size:12px;text-decoration:none;display:inline-flex;color:var(--blue)!important}.portal-detail{background:var(--card);border:1px solid #fff;border-radius:16px;margin:12px 0 30px;padding:20px 28px;box-shadow:8px 8px 20px #d7d3c780,-8px -8px 20px #ffffffd9}.portal-detail :is(h2,h3){color:var(--foreground)}.portal-detail section[id^=review-]{scroll-margin-top:24px}.portal-project-list-full{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:10px}.portal-project-list-full>details{grid-column:1/-1}.portal-record-list{gap:20px;padding-bottom:20px;display:grid}.portal-record-card{background:var(--card);border:1px solid #fff;border-radius:16px;padding:25px 28px;box-shadow:5px 5px 14px #d7d3c766,-5px -5px 14px #ffffffd9}.portal-record-card .portal-eyebrow{font-weight:600}.portal-record-card .portal-inline-link{margin-top:14px}.portal-empty{text-align:center;background:#f2eee6;border:1px dashed #cbc3b7;border-radius:16px;padding:55px 25px}.portal-empty>svg{width:32px;height:32px;color:var(--muted-foreground);margin:0 auto 15px}.portal-empty h2{letter-spacing:-1px;font-size:29px;font-weight:760;line-height:1.1}.portal-empty p{max-width:50ch;color:var(--muted-foreground);margin:12px auto;font-size:13px;line-height:1.6}.portal-preview-tag{cursor:default}@media (max-width:900px){.portal-home-grid{grid-template-columns:1fr}.portal-note-card h3{margin-top:15px}.portal-home-bottom,.portal-project-list-full{grid-template-columns:1fr}}@media (max-width:650px){.portal-site-header{min-height:78px;padding:13px 20px}.portal-brand{font-size:19px}.portal-brand-mark{width:42px;height:42px}.portal-account{min-width:0}.portal-account form{display:none}.portal-navigation{z-index:50;left:12px;right:12px;bottom:calc(10px + env(safe-area-inset-bottom));background:#faf9f5d6;border-radius:25px;justify-content:space-around;gap:6px;padding:7px;position:fixed;box-shadow:0 6px 22px #6f6b5d26,inset 0 1px #fff}.portal-navigation a{border-radius:18px;flex-direction:column;gap:5px;width:25%;min-width:0;min-height:53px;padding:5px;font-size:12px}.portal-navigation svg{width:18px;height:18px}.portal-content{padding:0 20px calc(110px + env(safe-area-inset-bottom))}.portal-welcome,.portal-page-heading{padding:20px 0 24px}.portal-welcome h1,.portal-page-heading h1{letter-spacing:-1.65px;font-size:35px;line-height:1.12}.portal-welcome>p:last-child,.portal-page-heading>p:last-child{font-size:13px;line-height:1.6}.portal-attention{flex-wrap:wrap;gap:13px;padding:19px}.portal-attention-icon{width:34px;height:34px}.portal-attention>div{flex:1;min-width:calc(100% - 52px)}.portal-attention h2{font-size:17px}.portal-attention p{font-size:12px}.portal-attention .portal-primary-action{width:100%;margin:6px 0 0}.portal-section-heading{margin:27px 0 12px}.portal-section-heading h2{font-size:16px}.portal-section-heading a{font-size:12px}.portal-project-cover{min-height:150px;padding:19px}.portal-project-cover strong{font-size:30px}.portal-project-description{padding:19px}.portal-project-description h3{font-size:18px}.portal-note-card{padding:23px}.portal-note-card h3{font-size:23px}.portal-home-bottom>div{grid-template-columns:1fr auto}.portal-home-bottom a{font-size:12px}.portal-detail{margin-top:8px;padding:18px}.portal-detail h2{font-size:27px}.portal-record-card{padding:19px}}@media (max-width:360px){.portal-content{padding:0 15px}.portal-navigation{left:8px;right:8px}.portal-navigation a{font-size:12px}.portal-project-description{padding:15px}.portal-welcome h1,.portal-page-heading h1{font-size:32px}}@media (prefers-reduced-motion:no-preference){.portal-primary-action,.portal-project-open{transition:background .18s,color .18s,box-shadow .18s}}.portal-project-cover{isolation:isolate;background:radial-gradient(circle at 84% 20%,#d6dfed 0,#0000 36%),#e8e3d9;text-decoration:none;position:relative;overflow:hidden}.portal-project-cover:before{content:"";z-index:-1;border:1px solid #8fa5c94d;border-radius:50%;width:370px;height:370px;position:absolute;bottom:-290px;right:-118px;box-shadow:0 0 0 36px #8fa5c91c,0 0 0 74px #8fa5c914}.portal-project-watermark{opacity:.5;filter:grayscale();width:58px;height:58px;position:absolute;top:16px;right:19px}.portal-project-cover strong{max-width:70%;position:relative}.portal-project-cover:hover strong,.portal-project-description h3 a:hover{color:#284b8d}.portal-site-link{align-items:center;gap:6px;min-height:34px;margin-top:9px;font:550 12px WH Portal Mono,monospace;text-decoration:none;display:inline-flex;color:#284b8d!important}.portal-site-link:hover{text-underline-offset:3px;text-decoration:underline}.portal-archived-card{background:#f4efe7;border:1px solid #fff;border-radius:14px;flex-direction:column;align-items:flex-start;min-width:0;padding:21px;display:flex;box-shadow:5px 5px 14px #d7d3c766,-5px -5px 14px #ffffffd9}.portal-archived-card h3{margin:13px 0 7px;font-size:18px;font-weight:760;line-height:1.2}.portal-archived-card h3 a{text-decoration:none}.portal-archived-card h3 a:hover{color:#284b8d}.portal-archived-card p{-webkit-line-clamp:3;color:#655f57;-webkit-box-orient:vertical;font-size:12px;line-height:1.55;display:-webkit-box;overflow:hidden}.portal-archived-card .portal-secondary-action{margin-top:auto}.portal-record-title{letter-spacing:-.5px;margin-top:7px;font-size:22px;font-weight:760;line-height:1.2}.portal-record-card>section{margin-top:12px}.portal-pay-link{background:var(--primary);border-color:#31569b;border-radius:8px;text-decoration:none;box-shadow:3px 4px 9px #2c46732e,inset 1px 1px 2px #fff4;color:var(--primary-foreground)!important}.portal-pay-link:hover{background:#284b8d}.portal-pay-link{text-align:center;min-width:0;max-width:100%;line-height:1.25}.portal-pay-destination{letter-spacing:0;overflow-wrap:anywhere;margin-top:2px;font:400 12px/1.25 WH Portal Jakarta,ui-sans-serif,system-ui,sans-serif;display:block}.portal-receipt-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px;display:flex}.portal-receipt-actions a{text-align:center;white-space:nowrap;border-radius:8px;justify-content:center;align-items:center;min-height:44px;padding:8px 11px;font:400 12px/1.25 WH Portal Mono,ui-monospace,monospace;text-decoration:none;display:inline-flex}.portal-receipt-download{border:1px solid var(--border);color:var(--foreground)}.portal-receipt-download:hover{border-color:var(--foreground)}.portal-receipt-invoice{color:var(--muted-foreground);text-underline-offset:3px;text-decoration:underline!important}@media (min-width:768px) and (max-width:1000px){.portal-invoice-status-action{flex-direction:column;align-items:stretch;gap:6px}.portal-invoice-status-action .portal-pay-link{width:100%}}@media (max-width:650px){.portal-account form{display:block}.portal-account button{white-space:nowrap;min-height:44px;font-size:12px}.portal-project-cover strong{max-width:82%}.portal-project-watermark{width:45px;height:45px}}.portal-redesign .portal-secondary-action{border:1px solid var(--portal-control-border);background:var(--portal-control-surface);white-space:nowrap;border-radius:10px;justify-content:center;align-items:center;gap:10px;width:fit-content;min-height:44px;padding:10px 15px;font-size:12px;font-weight:650;text-decoration:none;display:inline-flex;box-shadow:3px 4px 9px #c8c1b477,-2px -2px 6px #ffffffa6;color:var(--blue)!important}.portal-redesign .portal-secondary-action:hover{background:var(--portal-control-hover);border-color:var(--portal-control-hover-border);text-decoration:none}.portal-note-card .portal-secondary-action{margin-top:auto;padding-top:10px}.portal-record-card .portal-secondary-action{margin-top:14px}.portal-home-bottom :is(.portal-primary-action,.portal-secondary-action){justify-self:end}.portal-home-bottom .portal-primary-action{color:var(--primary-foreground)!important}.portal-home-bottom :is(.portal-primary-action,.portal-secondary-action):hover{text-decoration:none}.portal-redesign .portal-site-access-note{max-width:60ch;color:var(--muted-foreground);overflow-wrap:anywhere;font:400 12px/1.5 WH Portal Mono,monospace;display:block}.portal-disclosure-trigger{border:1px solid var(--portal-control-border);background:var(--portal-control-surface);width:100%;min-height:48px;color:var(--blue);cursor:pointer;border-radius:10px;align-items:center;gap:9px;padding:10px 15px;font:600 12px WH Portal Mono,monospace;list-style:none;display:flex;box-shadow:3px 4px 9px #c8c1b477,-2px -2px 6px #ffffffa6}.portal-disclosure-trigger::-webkit-details-marker{display:none}.portal-disclosure-trigger:hover{background:var(--portal-control-hover);border-color:var(--portal-control-hover-border)}.portal-disclosure-count{color:#284b8d;font-variant-numeric:tabular-nums;background:#dfe8f7;border-radius:999px;place-items:center;min-width:22px;height:22px;padding:0 5px;display:grid}.portal-disclosure-chevron{flex:none;margin-left:auto;transition:transform .18s}.portal-disclosure[open] .portal-disclosure-chevron{transform:rotate(180deg)}.portal-disclosure[open]>:not(summary){margin-top:10px}@media (prefers-reduced-motion:reduce){.portal-disclosure-chevron{transition:none}}.portal-account .portal-theme-toggle{width:44px;min-height:44px;box-shadow:none;background:0 0;border:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.portal-account .portal-theme-toggle:hover{text-decoration:none}.portal-theme-track{background:#d9dfe9;border:1px solid #b6bdc9;border-radius:999px;flex:none;width:42px;height:24px;padding:2px;display:block;box-shadow:inset 2px 2px 4px #aeb8c8,inset -1px -1px 3px #ffffffc9}.portal-theme-thumb{color:#3a5fa8;background:#fff;border-radius:50%;place-items:center;width:18px;height:18px;display:grid;box-shadow:1px 1px 4px #7f8da477}.portal-account .portal-theme-toggle[aria-checked=true] .portal-theme-thumb{transform:translate(18px)}@media (prefers-reduced-motion:no-preference){.portal-theme-thumb{transition:transform .18s}}@media (max-width:650px){.portal-account-initial{display:none}.portal-account{gap:6px}}.portal-redesign[data-theme=dark]{--background:#171b24;--foreground:#f4f1eb;--card:#252a35;--card-foreground:#f4f1eb;--muted:#303642;--muted-foreground:#b9c1ce;--border:#4c5463;--input:#596271;--primary:#799de0;--primary-foreground:#111722;--secondary:#303642;--secondary-foreground:#f4f1eb;--accent:#303d55;--accent-foreground:#d5e3ff;--ring:#9dbdff;--blue:#b1cbff;--cobalt:#88acf0;--warning:#efc47b;--success:#a8d6a7;--portal-control-surface:#303b50;--portal-control-border:#53698c;--portal-control-hover:#405473;--portal-control-hover-border:#86a9e5;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:var(--background);color:var(--foreground)}.portal-redesign[data-theme=dark] :is(a,button,summary,textarea):focus-visible{outline-color:#a9c8ff}.portal-redesign[data-theme=dark] .portal-skip{background:#f4f1eb;color:#171b24!important}.portal-redesign[data-theme=dark] .portal-site-header,.portal-redesign[data-theme=dark] .portal-home-bottom>div{border-color:#404958}.portal-redesign[data-theme=dark] .portal-brand small,.portal-redesign[data-theme=dark] .portal-eyebrow,.portal-redesign[data-theme=dark] .portal-welcome>p:last-child,.portal-redesign[data-theme=dark] .portal-page-heading>p:last-child,.portal-redesign[data-theme=dark] .portal-project-description p,.portal-redesign[data-theme=dark] .portal-note-meta,.portal-redesign[data-theme=dark] .portal-note-card p,.portal-redesign[data-theme=dark] .portal-home-bottom p,.portal-redesign[data-theme=dark] .portal-empty p,.portal-redesign[data-theme=dark] .portal-contact p{color:var(--muted-foreground)}.portal-redesign[data-theme=dark] .portal-detail :is(h2,h3){color:#f4f1eb}.portal-redesign[data-theme=dark] .portal-brand-mark{box-shadow:4px 4px 10px #0a0d14,-3px -3px 9px #3b4556}.portal-redesign[data-theme=dark] .portal-navigation{background:#303846db;border-color:#5a6678;box-shadow:0 8px 22px #080b12aa,inset 0 1px #ffffff1e}.portal-redesign[data-theme=dark] .portal-navigation a{color:#d0d8e5;background:linear-gradient(145deg,#414b5c,#303744);border-color:#566174;box-shadow:3px 3px 8px #151b25,-2px -2px 6px #66738644}.portal-redesign[data-theme=dark] .portal-navigation a:hover{color:#fff;background:#465574}.portal-redesign[data-theme=dark] .portal-navigation a[aria-current]{color:#f5f8ff;background:#3c5279;border-color:#799de0;box-shadow:inset 3px 3px 7px #1c2b49,inset -2px -2px 5px #83a3db55}.portal-redesign[data-theme=dark] .portal-account-initial,.portal-redesign[data-theme=dark] .portal-project-open{background:#2b313e;border-color:#4c586b;box-shadow:4px 4px 9px #0a0d14,-3px -3px 8px #485161;color:#c7d9ff!important}.portal-redesign[data-theme=dark] .portal-theme-track{background:#42659f;border-color:#789de0;box-shadow:inset 2px 2px 4px #243b64,inset -1px -1px 3px #93b4eb66}.portal-redesign[data-theme=dark] .portal-theme-thumb{color:#2d5194;background:#f0f4ff;box-shadow:1px 1px 4px #142544aa}.portal-redesign[data-theme=dark] .portal-account form button,.portal-redesign[data-theme=dark] .portal-preview-tag{color:#c5cbd5}.portal-redesign[data-theme=dark] .portal-attention{background:#293650;border-color:#536b96}.portal-redesign[data-theme=dark] .portal-attention-icon{color:#c5d9ff;background:#35486b;border-color:#7795c766;box-shadow:4px 4px 9px #14213b,-3px -3px 8px #566e98}.portal-redesign[data-theme=dark] .portal-attention p{color:#c6d1e4}.portal-redesign[data-theme=dark] .portal-attention-clear{background:#2c323b;border-color:#535b67}.portal-redesign[data-theme=dark] .portal-attention-clear .portal-attention-icon{color:#cbd6c9;background:#39424c}.portal-redesign[data-theme=dark] .portal-primary-action,.portal-redesign[data-theme=dark] .portal-pay-link{background:var(--primary);border-color:#83a9ef;box-shadow:4px 5px 10px #0b122766,inset 1px 1px 2px #fff4;color:var(--primary-foreground)!important}.portal-redesign[data-theme=dark] :is(.portal-primary-action,.portal-pay-link):hover{background:#9dbdff}.portal-redesign[data-theme=dark] :is(.portal-section-heading a,.portal-note-card a,.portal-home-bottom a,.portal-empty a,.portal-inline-link,.portal-back,.portal-site-link,.portal-review-count){color:#b1cbff!important}.portal-redesign[data-theme=dark] .portal-secondary-action{background:var(--portal-control-surface);border-color:var(--portal-control-border);box-shadow:3px 4px 9px #0a0e15a8,-2px -2px 6px #46577777;color:#d5e4ff!important}.portal-redesign[data-theme=dark] .portal-home-bottom .portal-primary-action{color:var(--primary-foreground)!important}.portal-redesign[data-theme=dark] .portal-disclosure-trigger{color:#d5e4ff;box-shadow:3px 4px 9px #0a0e15a8,-2px -2px 6px #46577777}.portal-redesign[data-theme=dark] .portal-disclosure-count{color:#f0f5ff;background:#425b86}.portal-redesign[data-theme=dark] :is(.portal-project-summary,.portal-detail,.portal-record-card,.portal-archived-card){background:#252a35;border-color:#4d5666;box-shadow:8px 8px 20px #0a0e15a8,-6px -6px 17px #39425366}.portal-redesign[data-theme=dark] .portal-project-cover{color:#f4f1eb;background:radial-gradient(circle at 84% 20%,#344d79 0,#0000 40%),#303b50;border-color:#536077;box-shadow:inset 3px 3px 8px #202838,inset -3px -3px 8px #53638077}.portal-redesign[data-theme=dark] .portal-project-cover>span{color:#c0cadb}.portal-redesign[data-theme=dark] .portal-project-cover:before{border-color:#8baae95c;box-shadow:0 0 0 36px #8baae91c,0 0 0 74px #8baae912}.portal-redesign[data-theme=dark] .portal-project-watermark{filter:grayscale()brightness(1.8)}.portal-redesign[data-theme=dark] :is(.portal-project-cover:hover strong,.portal-project-description h3 a:hover,.portal-archived-card h3 a:hover){color:#b1cbff}.portal-redesign[data-theme=dark] .portal-note-card,.portal-redesign[data-theme=dark] .portal-empty{background:#2c323e;border-color:#535c6b}.portal-redesign[data-theme=dark] .portal-archived-card p{color:#b9c1ce}@media (min-width:651px) and (max-width:1000px){.portal-site-header{gap:14px}.portal-navigation{gap:4px;padding:5px}.portal-navigation a{padding:0 12px}}.portal-project-shot{z-index:-2;object-fit:cover;object-position:center 68%;opacity:.46;filter:blur(1.4px)saturate(.95);width:70%;height:100%;transition:transform .5s;position:absolute;top:0;bottom:0;right:0;transform:scale(1.06);-webkit-mask-image:linear-gradient(90deg,#0000 0,#000 62%);mask-image:linear-gradient(90deg,#0000 0,#000 62%)}.portal-project-logo{background:#ffffffeb;border:1px solid #fff;border-radius:12px;place-items:center;padding:7px 10px;display:grid;position:absolute;top:16px;right:19px;box-shadow:0 5px 14px #15110e26}.portal-project-logo img{object-fit:contain;width:auto;max-width:132px;height:38px;display:block}@media (prefers-reduced-motion:no-preference){.portal-project-cover:hover .portal-project-shot{transform:scale(1.1)}}@media (max-width:650px){.portal-project-shot{width:80%}.portal-project-logo{padding:5px 8px;top:13px;right:14px}.portal-project-logo img{max-width:104px;height:30px}}.portal-redesign[data-theme=dark] .portal-project-shot{opacity:.36;filter:blur(1.4px)saturate(.85)brightness(.85)}.portal-redesign[data-theme=dark] .portal-project-logo{border-color:#fffc;box-shadow:0 5px 14px #0006}.portal-project-description .portal-eyebrow+p{margin-top:8px}.portal-site-row{flex-wrap:wrap;align-items:center;gap:8px 10px;display:flex}.portal-site-row .portal-site-link{margin-top:0}.portal-site-row .portal-site-access-note{max-width:none;margin-top:0}.portal-project-cover{justify-content:flex-end;gap:10px;min-height:212px;padding:28px}.portal-project-cover strong{max-width:78%}.portal-project-logo,.portal-project-watermark{top:22px;right:24px}.portal-project-description{flex-direction:column;align-items:stretch;gap:28px;padding:28px}.portal-project-copy{flex-direction:column;align-items:flex-start;gap:12px;min-width:0;display:flex}.portal-project-copy>p{max-width:none}.portal-project-actions{justify-content:space-between;align-items:flex-end;gap:16px;display:flex}.portal-project-actions .portal-site-row{flex-direction:column;align-items:flex-start;min-width:0}.portal-project-actions .portal-project-open{margin-left:auto}.portal-project-copy>p,.portal-project-description .portal-eyebrow+p{margin:0}.portal-redesign .portal-project-open:is(:hover,:focus-visible){border-color:var(--primary);background:var(--primary);box-shadow:3px 5px 12px #203f7d55;color:var(--primary-foreground)!important}@media (prefers-reduced-motion:no-preference){.portal-project-open{transition:background .18s,color .18s,border-color .18s,box-shadow .18s,transform .18s}.portal-project-open:hover{transform:translateY(-2px)}}@media (max-width:650px){.portal-project-cover{min-height:176px;padding:22px}.portal-project-logo{top:16px;right:18px}.portal-project-description{gap:18px;padding:22px}}.portal-brand{min-height:44px}.portal-welcome,.portal-page-heading{padding-top:36px}.portal-back{margin-top:28px}.portal-redesign .portal-detail{padding:0;overflow:hidden}.portal-detail-cover{border-radius:16px 16px 0 0;min-height:212px}.portal-detail-cover h1{letter-spacing:-.035em;overflow-wrap:anywhere;max-width:78%;margin:0;font-size:clamp(28px,3vw,43px);font-weight:800;line-height:1.12}.portal-detail-status{color:var(--muted-foreground);font-size:12px}.portal-detail-body{gap:28px;padding:28px;display:grid}.portal-detail-body>section{margin-top:0}.portal-detail-body>section[id^=updates-]{scroll-margin-top:24px}.portal-subheading{font-size:18px;font-weight:760;line-height:1.4}.portal-subheading span{color:var(--muted-foreground);margin-left:12px;font-size:12px;font-weight:400}.portal-project-context{gap:20px;display:grid}.portal-project-facts{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:20px;display:grid}.portal-invoices{gap:16px;display:grid}.portal-invoice-heading{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.portal-billing-list{gap:36px;display:grid}.portal-billing-project{border-top:1px solid var(--border);padding-top:24px}.portal-billing-client{color:var(--muted-foreground);margin:8px 0 20px;font-size:12px}.portal-redesign .portal-primary-action,.portal-redesign .portal-pay-link{color:var(--primary-foreground)!important}.portal-redesign .portal-secondary-action{white-space:normal;overflow-wrap:anywhere;max-width:100%}.portal-redesign :is(p,h1,h2,h3){overflow-wrap:anywhere}.portal-redesign ::selection{background:var(--primary);color:var(--primary-foreground)}.portal-redesign textarea{caret-color:var(--ring)}@media (min-width:651px) and (max-width:1000px){.portal-site-header{grid-template-columns:1fr auto;display:grid}.portal-navigation{grid-area:2/1/auto/-1;justify-self:center}.portal-account{grid-area:1/2}}@media (max-width:650px){.portal-detail-cover{min-height:200px;padding-top:76px}.portal-detail-cover h1{max-width:100%}.portal-detail-body{gap:24px;padding:20px}.portal-site-header{flex-wrap:wrap;gap:8px}.portal-account{gap:6px}.portal-account-initial{display:none}.portal-navigation{-webkit-backdrop-filter:none;background:#faf9f5}.portal-redesign[data-theme=dark] .portal-navigation{background:#303846}.portal-redesign :is(a,button,summary,textarea){scroll-margin-block:24px 110px}.portal-note-meta{flex-wrap:wrap}}.portal-redesign .font-heading{font-family:WH Portal Jakarta,ui-sans-serif,system-ui,sans-serif}.portal-project-description p,.portal-note-card p{font-size:15px;line-height:1.6}.portal-detail .portal-subheading{font-size:18px}.portal-contact{border:1px solid var(--border);background:var(--card);border-radius:16px;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:clamp(32px,5vw,72px);margin:12px 0 48px;padding:clamp(28px,4vw,56px);display:grid}.portal-contact-note{flex-direction:column;align-items:flex-start;display:flex}.portal-contact-note h2{letter-spacing:-.035em;margin:0 0 20px;font-size:clamp(34px,4vw,52px);font-weight:780;line-height:1.08}.portal-contact-note>p{max-width:39ch;color:var(--muted-foreground);font-size:16px;line-height:1.7}.portal-contact-signature{align-items:center;gap:14px;margin-top:40px;display:flex}.portal-contact-signature img{background:#3a5fa8;border-radius:50%;flex:none;padding:4px}.portal-contact-signature strong{font-size:16px;font-weight:700;display:block}.portal-contact-signature span{color:var(--muted-foreground);margin-top:5px;font-size:12px;display:block}.portal-contact-action{border-left:1px solid var(--border);flex-direction:column;justify-content:center;align-items:flex-start;padding-left:clamp(28px,4vw,56px);display:flex}.portal-contact-envelope{color:var(--blue);margin-bottom:20px}.portal-contact-address{letter-spacing:-.025em;overflow-wrap:anywhere;max-width:100%;font-size:clamp(18px,2vw,26px);font-weight:650}.portal-contact-action .portal-primary-action{justify-content:space-between;width:100%;min-height:52px;margin:24px 0 0;padding:14px 20px;font-size:14px}.portal-contact-handoff{color:var(--muted-foreground);margin-top:12px;font-size:12px}@media (max-width:760px){.portal-contact{grid-template-columns:minmax(0,1fr);gap:28px;margin-bottom:32px;padding:26px}.portal-contact-note h2{margin-bottom:16px;font-size:34px}.portal-contact-note>p{font-size:15px;line-height:1.65}.portal-contact-signature{margin-top:24px}.portal-contact-action{border-left:0;border-top:1px solid var(--border);padding:28px 0 0}.portal-contact-envelope{display:none}.portal-contact-address{font-size:clamp(18px,5vw,24px)}.portal-contact-action .portal-primary-action{margin-top:20px}}.portal-redesign .portal-brand-mark{background:#1a1a1a;box-shadow:4px 4px 9px #bcb5aa80,-4px -4px 9px #fff}.portal-redesign[data-theme=dark] .portal-brand-mark{background:0 0;box-shadow:4px 4px 10px #0a0d14,-3px -3px 9px #3b4556}.portal-redesign .portal-project-actions .portal-site-link:is(:hover,:focus-visible),.portal-redesign[data-theme=dark] .portal-project-actions .portal-site-link:is(:hover,:focus-visible){border-color:var(--primary);background:var(--primary);box-shadow:3px 5px 12px #203f7d55;color:var(--primary-foreground)!important}@media (prefers-reduced-motion:no-preference){.portal-project-actions .portal-site-link{transition:background .18s,color .18s,border-color .18s,box-shadow .18s,transform .18s}.portal-project-actions .portal-site-link:hover{transform:translateY(-2px)}}.portal-login{flex-direction:column;display:flex}.portal-login-header{flex:none}.portal-login .portal-theme-toggle{cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;width:44px;min-height:44px;padding:0;display:inline-flex}.portal-login .portal-theme-toggle[aria-checked=true] .portal-theme-thumb{transform:translate(18px)}.portal-login-main{flex:1;grid-template-columns:minmax(0,1fr) minmax(0,440px);align-items:center;gap:clamp(42px,7vw,120px);width:min(100%,1130px);margin:0 auto;padding:72px clamp(20px,4vw,70px) 96px;display:grid}.portal-login-intro{align-self:center}.portal-login-intro h1{letter-spacing:-.04em;margin:0 0 20px;font-size:clamp(46px,6vw,78px);font-weight:780;line-height:1.02}.portal-login-intro p{max-width:40ch;color:var(--muted-foreground);font-size:16px;line-height:1.65}.portal-login-panel{background:var(--card);border:1px solid #fff;border-radius:16px;padding:clamp(24px,3vw,36px);box-shadow:8px 8px 20px #d7d3c780,-8px -8px 20px #ffffffd9}.portal-login-form{flex-direction:column;gap:12px;display:flex}.portal-login-form label{color:var(--foreground);font:600 12px/1.5 WH Portal Mono,ui-monospace,monospace}.portal-login-form input:not([type=hidden]){border:1px solid var(--input);background:var(--background);width:100%;min-height:52px;color:var(--foreground);caret-color:var(--ring);border-radius:10px;outline:none;padding:0 15px;font:500 16px/1.4 WH Portal Jakarta,ui-sans-serif,system-ui,sans-serif}.portal-login-form input:not([type=hidden]):focus-visible{border-color:var(--ring);outline:3px solid var(--ring);outline-offset:2px}.portal-login-form input[aria-invalid=true]{border-color:#a54335}.portal-login-form .portal-login-code{font-variant-numeric:tabular-nums;letter-spacing:.2em;font-family:WH Portal Mono,ui-monospace,monospace!important}.portal-login-submit{background:var(--primary);width:100%;min-height:52px;color:var(--primary-foreground);cursor:pointer;border:1px solid #31569b;border-radius:11px;justify-content:space-between;align-items:center;gap:18px;margin-top:8px;padding:11px 17px;font:600 13px/1.4 WH Portal Mono,ui-monospace,monospace;display:flex;box-shadow:4px 5px 10px #2c467333,-3px -3px 8px #ffffffb3,inset 1px 1px 2px #fff4,inset -1px -2px 3px #203f7d66}.portal-login-submit:hover:not(:disabled){background:#284b8d;box-shadow:3px 6px 14px #2c467355}.portal-login-submit:disabled{opacity:.6;cursor:wait}.portal-login-error{color:#8e382e;margin:0;font-size:13px;line-height:1.5}.portal-login-help{overflow-wrap:anywhere;color:var(--muted-foreground);flex-direction:column;align-items:flex-start;gap:3px;margin:6px 0 0;font-size:12px;line-height:1.5;display:flex}.portal-login-help a{text-underline-offset:3px;align-items:center;min-height:44px;display:inline-flex;color:var(--blue)!important}.portal-login-help a:hover{text-decoration-thickness:2px}.portal-redesign[data-theme=dark] .portal-login-panel{border-color:#4b5565;box-shadow:8px 8px 20px #0a0d1470,-7px -7px 18px #3b455630}.portal-redesign[data-theme=dark] .portal-login-submit{border-color:#8baae9;box-shadow:4px 5px 12px #0a0d1490,inset 1px 1px 2px #fff4}.portal-redesign[data-theme=dark] .portal-login-submit:hover:not(:disabled){background:#9dbdff}.portal-redesign[data-theme=dark] .portal-login-error{color:#ffb6aa}.portal-redesign[data-theme=dark] .portal-login-help a{color:#b1cbff!important}@media (max-width:760px){.portal-login-main{grid-template-columns:1fr;align-content:center;gap:36px;width:min(100%,560px);padding:70px 20px 80px}.portal-login-intro h1{margin-bottom:14px}}@media (max-width:400px){.portal-login-header,.portal-login-main{padding-inline:15px}.portal-login-panel{padding:22px}}@media (prefers-reduced-motion:no-preference){.portal-login .portal-theme-thumb{transition:transform .18s}.portal-login-submit{transition:background .18s,box-shadow .18s}}
