@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(../media/bricolage-grotesque-vietnamese-wght-normal.0h_qcmzvudf58.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(../media/bricolage-grotesque-latin-ext-wght-normal.0i4j_a8lim1a-.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(../media/bricolage-grotesque-latin-wght-normal.300rpl789hft0.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
:root{--ink:#22201f;--charcoal:#3d3836;--muted:#6f6662;--soft-muted:#746963;--paper:#fffaf7;--cream:#fff4ed;--blush:#ffe8ef;--blush-strong:#ff86a4;--rose:#d96f8e;--honey:#f7d66d;--sage:#dce9df;--sky:#e8f2ff;--line:#eadeda;--line-strong:#d8cbc5;--white:#fff;--success:#277a45;--error:#b53645;--shadow:0 18px 48px #45322c1f;--shell:min(1180px, calc(100vw - 40px))}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--ink);background:var(--paper);text-rendering:optimizelegibility;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:16px;line-height:1.55}h1,h2{font-variation-settings:"opsz" 48, "wdth" 100;font-family:Bricolage Grotesque Variable,sans-serif}::selection{color:var(--ink);background:var(--honey)}*{scrollbar-color:var(--rose) var(--cream);scrollbar-width:thin}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--cream)}::-webkit-scrollbar-thumb{background:var(--rose);border:2px solid var(--cream);border-radius:10px}a{color:inherit}button,input,textarea,select{font:inherit}button,summary,input[type=file]{cursor:pointer}img{max-width:100%;display:block}h1,h2,h3,p{margin-top:0}h1,h2,h3{text-wrap:balance;line-height:1.12}address{font-style:normal}:focus-visible{outline:3px solid var(--honey);outline-offset:3px}.design-contract{display:contents}.brand-logo{object-fit:contain;width:166px;height:auto}.button{letter-spacing:0;border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;width:100%;min-height:50px;padding:13px 20px;font-weight:750;transition:background-color .18s ease-out,color .18s ease-out,transform .18s ease-out,box-shadow .18s ease-out;display:inline-flex}.button:hover{transform:translateY(-1px)}.button:active{transform:translateY(0)}.button:disabled{cursor:not-allowed;opacity:.55;transform:none}.button--primary{color:var(--white);background:var(--ink);box-shadow:0 8px 22px #22201f29}.button--primary:hover{background:#000;box-shadow:0 10px 26px #22201f36}.button--secondary{color:var(--ink);background:var(--white);border-color:var(--ink)}.button--secondary:hover{background:var(--cream)}.button--approve{background:var(--rose);box-shadow:0 8px 22px #d96f8e40}.button--approve:hover{background:#c65e7c}.quiet-button{border:0;border-bottom:1px solid var(--line-strong);min-height:44px;color:var(--muted);background:0 0;padding:8px 2px}.quiet-button:hover{color:var(--ink);border-color:var(--ink)}.text-link{color:var(--ink);text-underline-offset:4px;text-decoration-thickness:1px}.text-link:hover{color:var(--rose)}.login-shell{background:var(--white);grid-template-columns:minmax(420px,.92fr) 1.08fr;min-height:100svh;display:grid}.login-panel{place-items:center;padding:48px clamp(32px,6vw,88px);display:grid}.login-inner{width:min(100%,480px)}.login-copy{margin:62px 0 30px}.login-copy h1{letter-spacing:-.035em;max-width:11ch;margin-bottom:18px;font-size:clamp(2.45rem,4vw,4.5rem)}.login-copy p{max-width:48ch;color:var(--muted);margin-bottom:0;font-size:1.05rem}.login-art{background:var(--blush);place-items:center;min-height:100svh;padding:56px;display:grid;position:relative;overflow:hidden}.login-art:before,.login-art:after{content:"";background:var(--honey);border-radius:50%;position:absolute}.login-art:before{opacity:.72;width:170px;height:170px;top:-70px;right:11%}.login-art:after{width:54px;height:54px;bottom:12%;left:10%}.proof-desk-card{z-index:1;width:min(520px,82%);position:relative;transform:rotate(-1.5deg)}.proof-desk-image{background:var(--white);padding:18px 18px 74px;box-shadow:14px 24px 52px #55343e2e}.proof-desk-image img{aspect-ratio:3/4;object-fit:cover;width:100%}.proof-desk-caption{background:var(--ink);color:var(--white);margin:-58px 34px 0;padding:20px 22px;position:relative;box-shadow:8px 12px 28px #22201f33}.proof-desk-caption span{color:#f6c7d4;letter-spacing:.03em;text-transform:uppercase;margin-bottom:5px;font-size:.78rem;font-weight:750;display:block}.proof-desk-caption strong{font-size:1.08rem;line-height:1.35}.login-art-note{color:#6f3d4d;margin:0;font-size:.86rem;font-weight:700;position:absolute;bottom:28px;right:36px}.login-form{gap:18px;display:grid}label{gap:8px;display:grid}label>span{color:var(--charcoal);font-size:.9rem;font-weight:720}label em{color:var(--soft-muted);font-size:.78rem;font-style:normal;font-weight:500}input,textarea,select{border:1px solid var(--line-strong);width:100%;min-height:50px;color:var(--ink);background:var(--white);caret-color:var(--rose);border-radius:8px;padding:12px 14px;transition:border-color .16s ease-out,box-shadow .16s ease-out,background-color .16s ease-out}textarea{resize:vertical;min-height:150px}input::placeholder,textarea::placeholder{color:#786c66}input:hover,textarea:hover,select:hover{border-color:#bdaea7}input:focus,textarea:focus,select:focus{border-color:var(--rose);outline:none;box-shadow:0 0 0 4px #d96f8e24}input[type=file]{color:var(--muted);padding:8px}input[type=file]::file-selector-button{min-height:34px;color:var(--ink);background:var(--blush);border:0;border-radius:6px;margin-right:12px;padding:6px 12px;font-weight:700}label small{color:var(--soft-muted);font-size:.78rem}.demo-note{color:#594914;background:#fff8cd;border:1px solid #e5c75e;border-radius:8px;flex-wrap:wrap;justify-content:space-between;gap:6px 16px;margin:0 0 20px;padding:13px 15px;font-size:.84rem;display:flex}.form-message{width:var(--shell);border-radius:8px;margin:0 auto 22px;padding:13px 16px;font-weight:650}.login-inner>.form-message,.staff-login-panel>.form-message{width:100%}.form-message--error{color:#7c2330;background:#fff0f2;border:1px solid #edbdc5}.form-message--success{color:#1c6337;background:#eaf7ee;border:1px solid #b8dec5}.secure-note{color:var(--muted);align-items:center;gap:7px;margin:19px 0 7px;font-size:.84rem;display:flex}.login-inner>.text-link{margin-top:14px;font-size:.88rem;display:inline-block}.portal-header{border-bottom:1px solid var(--line);background:#fffaf7f5;justify-content:space-between;align-items:center;gap:18px;height:82px;padding:0 max(24px,50vw - 590px);display:flex}.portal-header .brand-logo{width:146px}.portal-main{padding:46px 0 74px}.progress{width:var(--shell);margin:0 auto 44px;padding:0 8px 10px;overflow-x:auto}.progress-cue{display:none}.progress ol{grid-template-columns:repeat(7,1fr);min-width:780px;margin:0;padding:0;list-style:none;display:grid}.progress-step{color:var(--soft-muted);text-align:center;justify-items:center;gap:9px;display:grid;position:relative}.progress-step:not(:last-child):after{content:"";background:var(--line-strong);width:calc(100% - 54px);height:2px;position:absolute;top:25px;left:calc(50% + 27px)}.progress-step--complete:not(:last-child):after{background:#73bc8b}.progress-dot{z-index:1;border:1px solid var(--line-strong);background:var(--white);border-radius:50%;place-items:center;width:52px;height:52px;display:grid;position:relative}.progress-step--complete .progress-dot{color:#155f31;background:var(--sage);border-color:#c0e0ca}.progress-step--current .progress-dot{color:#6f3d4d;background:var(--blush);border-color:#f4b8c8;box-shadow:0 7px 18px #d96f8e26}.progress-label{max-width:100px;font-size:.78rem;font-weight:700;line-height:1.25}.progress-step--current .progress-label{color:var(--ink)}.status-banner{width:var(--shell);background:var(--sky);border-radius:12px;grid-template-columns:auto 1fr;align-items:center;gap:16px;margin:0 auto 44px;padding:22px 24px;display:grid}.status-banner--ready_for_review{background:#fff6bd}.status-banner--revision_requested{background:var(--blush)}.status-banner--approved,.status-banner--in_production,.status-banner--shipped,.status-banner--delivered{background:var(--sage)}.status-mark{background:currentColor;border-radius:50%;width:12px;height:12px;display:block;box-shadow:0 0 0 7px #22201f14}.status-banner h1{letter-spacing:-.025em;margin-bottom:5px;font-size:clamp(1.45rem,2.5vw,2rem)}.status-banner p{max-width:65ch;color:var(--charcoal);margin:0}.review-layout{width:var(--shell);grid-template-columns:minmax(0,1.45fr) minmax(310px,.72fr);align-items:start;gap:clamp(26px,4vw,58px);margin:0 auto;display:grid}.section-heading{justify-content:space-between;align-items:end;gap:20px;margin-bottom:20px;display:flex}.section-heading h2{letter-spacing:-.03em;margin-bottom:7px;font-size:clamp(1.65rem,3vw,2.5rem)}.section-heading p{color:var(--muted);margin:0}.section-heading--compact h2{font-size:1.55rem}.version-label,.workflow-chip,.staff-badge{background:var(--blush);color:#744050;border-radius:999px;flex:none;align-items:center;min-height:30px;padding:5px 10px;font-size:.76rem;font-weight:760;display:inline-flex}.proof-meta-actions{flex:none;justify-items:end;gap:7px;display:grid}.proof-meta-actions a{color:var(--charcoal);text-underline-offset:3px;font-size:.78rem;font-weight:700}.proof-meta-actions a:hover{color:var(--rose)}.artwork-frame{background:#eee7e2;place-items:center;min-height:520px;padding:clamp(20px,4vw,50px);display:grid;position:relative;overflow:hidden}.artwork-frame:before{content:"";pointer-events:none;border:1px solid #5c4e4829;position:absolute;inset:18px}.artwork-frame img{object-fit:contain;width:min(100%,610px);max-height:760px;position:relative;box-shadow:0 20px 48px #2a201d33}.artwork-frame--empty{background:var(--cream)}.empty-proof{min-height:260px;color:var(--muted);text-align:center;place-items:center;gap:4px;display:grid}.empty-proof span{color:var(--ink);font-size:1.25rem;font-weight:760}.proof-note{color:var(--muted);margin:12px 0 0;font-size:.88rem}.decision-column{padding-top:60px;position:sticky;top:24px}.decision-copy{border-bottom:1px solid var(--line);padding-bottom:24px}.decision-copy h2{letter-spacing:-.035em;max-width:14ch;margin-bottom:12px;font-size:clamp(1.7rem,3vw,2.5rem)}.decision-copy p{color:var(--muted)}.decision-column form{margin-top:22px}.revision-panel{border-bottom:1px solid var(--line);margin-top:12px}.revision-panel summary{border:1px solid var(--ink);min-height:50px;color:var(--ink);background:var(--white);border-radius:8px;place-items:center;font-weight:750;list-style:none;display:grid}.revision-panel summary::-webkit-details-marker{display:none}.revision-panel[open] summary{color:#744050;border-color:var(--rose);background:var(--blush)}.revision-form{gap:18px;padding:22px 0 26px;display:grid}.decision-assurance{color:var(--muted);gap:2px;margin-top:24px;padding:18px 0;font-size:.85rem;display:grid}.decision-assurance strong{color:var(--ink)}.order-details{width:var(--shell);border-top:1px solid var(--line);grid-template-columns:1.2fr .8fr;gap:52px;margin:76px auto 0;padding-top:54px;display:grid}.order-total{font-variant-numeric:tabular-nums;flex:none;font-size:1.3rem}.line-items{gap:16px;display:grid}.line-item{grid-template-columns:96px 1fr;align-items:center;gap:18px;display:grid}.line-item img,.line-item-placeholder{aspect-ratio:1;object-fit:cover;background:var(--cream);width:96px}.line-item h3{margin-bottom:5px;font-size:1rem}.line-item p{color:var(--muted);margin-bottom:4px}.line-item span{color:var(--soft-muted);font-variant-numeric:tabular-nums;font-size:.82rem}.shipping-summary address{color:var(--muted);gap:2px;margin-bottom:18px;display:grid}.shipping-summary address strong{color:var(--ink)}.shipping-summary>.text-link{font-size:.88rem}.tracking-link{border:1px solid var(--ink);border-radius:8px;justify-content:center;align-items:center;min-height:46px;margin-top:20px;font-weight:750;text-decoration:none;display:flex}.tracking-link:hover{background:var(--ink);color:var(--white)}.history-section{width:var(--shell);border-top:1px solid var(--line);margin:70px auto 0;padding-top:52px}.history-list{max-width:780px;margin:0;padding:0;list-style:none}.history-list li{grid-template-columns:20px 1fr;gap:14px;padding-bottom:26px;display:grid;position:relative}.history-list li:not(:last-child):before{content:"";background:var(--line-strong);width:1px;position:absolute;top:13px;bottom:0;left:5px}.history-dot{z-index:1;background:var(--rose);width:11px;height:11px;box-shadow:0 0 0 5px var(--paper);border-radius:50%;margin-top:6px;position:relative}.history-list strong{margin-bottom:3px;display:block}.history-list p{max-width:65ch;color:var(--muted);margin:4px 0}.history-list time{color:var(--soft-muted);font-variant-numeric:tabular-nums;font-size:.8rem}.empty-history{color:var(--muted)}.portal-footer{border-top:1px solid var(--line);min-height:84px;color:var(--muted);background:var(--white);justify-content:space-between;align-items:center;gap:20px;padding:20px max(24px,50vw - 590px);font-size:.85rem;display:flex}.portal-footer a{text-underline-offset:3px}.staff-login-shell{background:var(--cream);place-items:center;min-height:100svh;padding:32px 20px;display:grid}.staff-login-panel{border:1px solid var(--line);background:var(--white);width:min(460px,100%);box-shadow:var(--shadow);border-radius:14px;gap:24px;padding:42px;display:grid}.staff-login-panel h1{margin-bottom:8px;font-size:2rem}.staff-login-panel p{color:var(--muted);margin-bottom:0}.staff-login-panel .demo-note{margin:0}.portal-header--staff{justify-content:flex-start}.portal-header--staff form{margin-left:auto}.staff-badge{background:var(--sage);color:#245937}.staff-main{width:var(--shell);margin:0 auto;padding:54px 0 80px}.staff-search{grid-template-columns:1fr minmax(430px,.8fr);align-items:end;gap:54px;margin-bottom:34px;display:grid}.staff-search h1{letter-spacing:-.035em;margin-bottom:8px;font-size:clamp(2rem,4vw,3.3rem)}.staff-search p{max-width:58ch;color:var(--muted);margin:0}.staff-search form{grid-template-columns:1fr 150px;align-items:end;gap:10px;display:grid}.staff-search .button{min-height:50px}.staff-main>.form-message{width:100%}.staff-order{border-top:1px solid var(--line);margin-top:38px;padding-top:38px}.staff-order-head{justify-content:space-between;align-items:center;gap:20px;margin-bottom:24px;display:flex}.staff-order-head h2{margin-bottom:5px;font-size:2rem}.staff-order-head p{color:var(--muted);margin:0}.workflow-chip--ready_for_review{color:#594914;background:#fff4b3}.workflow-chip--revision_requested{background:var(--blush);color:#744050}.workflow-chip--approved,.workflow-chip--in_production,.workflow-chip--shipped,.workflow-chip--delivered{background:var(--sage);color:#245937}.staff-grid{grid-template-columns:minmax(300px,.75fr) 1.25fr;align-items:start;gap:46px;display:grid}.staff-proof-preview{background:#eee7e2;place-items:center;min-height:420px;padding:24px;display:grid}.staff-proof-preview img{object-fit:contain;max-height:620px;box-shadow:0 14px 34px #2a201d2e}.staff-update-form{border:1px solid var(--line);background:var(--white);border-radius:14px;gap:20px;padding:28px;display:grid}@media (prefers-reduced-motion:no-preference){.proof-desk-card{animation:.62s cubic-bezier(.16,1,.3,1) both settle-proof}@keyframes settle-proof{0%{filter:blur(6px);opacity:.7;transform:translateY(28px)rotate(-3deg)}to{filter:blur();opacity:1;transform:translateY(0)rotate(-1.5deg)}}}@media (max-width:900px){:root{--shell:min(100% - 28px, 720px)}.login-shell{grid-template-columns:1fr}.login-panel{min-height:100svh;padding:34px 24px 48px}.login-copy{margin-top:44px}.login-copy h1{font-size:clamp(2.3rem,10vw,3.5rem)}.login-art{min-height:620px}.review-layout{grid-template-columns:1fr}.decision-column{padding-top:0;position:static}.decision-copy h2{max-width:none}.order-details{grid-template-columns:1fr;gap:42px}.staff-search,.staff-grid{grid-template-columns:1fr}.staff-search form{max-width:620px}}@media (max-width:600px){.brand-logo{width:142px}.login-panel{place-items:start stretch}.login-art{min-height:540px;padding:44px 20px 70px}.proof-desk-card{width:min(390px,88%)}.proof-desk-image{padding:12px 12px 62px}.proof-desk-caption{margin:-50px 18px 0;padding:16px}.login-art-note{text-align:center;bottom:20px;left:20px;right:20px}.portal-header{height:70px;padding:0 15px}.portal-header .brand-logo{width:124px}.portal-main{padding-top:26px}.progress{margin-bottom:26px;padding-bottom:34px;padding-left:0;padding-right:0;position:relative}.progress ol{min-width:670px}.progress-cue{width:max-content;color:var(--muted);margin-top:13px;font-size:.75rem;font-weight:700;display:block;position:sticky;left:12px}.status-banner{align-items:start;margin-bottom:22px;padding:14px 16px}.section-heading{align-items:start}.section-heading h2{font-size:1.65rem}.section-heading p{font-size:.9rem}.artwork-frame{min-height:0;padding:12px}.artwork-frame:before{inset:10px}.artwork-frame img{width:auto;max-height:24svh}.decision-copy{display:none}.decision-column form{margin-top:14px}.decision-column--reviewable{z-index:20;border:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffaf7f5;border-radius:12px;grid-template-columns:1fr 1fr;gap:8px;padding:8px;display:grid;position:fixed;inset:auto 14px 12px;box-shadow:0 14px 34px #2a201d33}.decision-column--reviewable>form,.decision-column--reviewable .revision-panel{margin:0}.decision-column--reviewable .revision-panel{border:0}.decision-column--reviewable .revision-panel[open]{grid-column:1/-1;max-height:72svh;overflow-y:auto}.decision-column--reviewable .decision-assurance{display:none}.order-details{margin-top:54px;padding-top:38px}.line-item{grid-template-columns:76px 1fr}.line-item img,.line-item-placeholder{width:76px}.history-section{margin-top:52px;padding-top:38px}.portal-footer{flex-direction:column;align-items:flex-start}.staff-login-panel{padding:28px 22px}.portal-header--staff .staff-badge{display:none}.staff-main{padding-top:34px}.staff-search{gap:24px}.staff-search form{grid-template-columns:1fr}.staff-order-head{flex-direction:column;align-items:flex-start}.staff-update-form{padding:20px}}
