@font-face{font-family:"EB Garamond";font-style:normal;font-weight:400;font-display:swap;src:url(fonts/eb-garamond-latin-400-normal.woff2) format("woff2")}
@font-face{font-family:"EB Garamond";font-style:normal;font-weight:500;font-display:swap;src:url(fonts/eb-garamond-latin-500-normal.woff2) format("woff2")}
@font-face{font-family:"Jost";font-style:normal;font-weight:300;font-display:swap;src:url(fonts/jost-latin-300-normal.woff2) format("woff2")}
@font-face{font-family:"Jost";font-style:normal;font-weight:400;font-display:swap;src:url(fonts/jost-latin-400-normal.woff2) format("woff2")}
@font-face{font-family:"Jost";font-style:normal;font-weight:500;font-display:swap;src:url(fonts/jost-latin-500-normal.woff2) format("woff2")}
/* Fey & Co. Client Design Studio — every visual choice lives here.
   Tokens and rules are copied from Alex's mockup (MOCKUP_Client-Portal_V1_2026-09-10)
   so the built page matches it exactly. Fonts are shipped with the page (see build.js). */
[hidden]{display:none!important}
:root{--w:#fff;--blue:#E6F0F8;--blue2:#F4F8FC;--navy:#272A4C;--navy2:#353970;--amp:#6FA3CC;--ink:#121212;--txt:#4A4A4A;--bd:#F0F2F4;--dv:#F6F6F6;--ln:#E0E0E0;--ft:#7A7A7A;--r:12px}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:#C9CED6;color:var(--txt);font-family:Jost,"Helvetica Neue",Arial,sans-serif;font-size:16px;line-height:1.5;font-weight:400;-webkit-font-smoothing:antialiased}
h1,h2,h3,h4{font-family:"EB Garamond",Garamond,Georgia,serif;font-weight:400;margin:0;color:var(--ink);line-height:1.1;text-wrap:balance}
h2{font-size:32px}h3{font-size:24px}h4{font-size:20px}
p{margin:0 0 .9em}p:last-child{margin-bottom:0}
a{color:var(--navy);text-decoration:none}
button,textarea,select,input{font:inherit;color:inherit}
:focus-visible{outline:1px solid var(--navy);outline-offset:4px}
.ac{font-size:13px;line-height:1.2;letter-spacing:1.5px;text-transform:uppercase;font-weight:500}
.ac.s{font-size:11px}
.ic{flex:0 0 auto;vertical-align:-3px}
.wrap{max-width:1200px;margin:0 auto;padding:0 44px}
ul.dm{list-style:none;margin:0;padding:0}
ul.dm li{position:relative;padding-left:18px;margin-bottom:9px}
ul.dm li:before{content:"\25C6";position:absolute;left:0;top:0;font-size:8px;line-height:inherit;color:currentColor;opacity:.7}
/* frame */
.fr{container-type:inline-size;width:100%;background:var(--w);min-height:100vh;margin:0 auto;position:relative}
body.phone{padding:26px 0 42px}
body.phone .fr{width:390px;max-width:calc(100% - 24px);height:800px;min-height:0;overflow-y:auto;border:11px solid #14151d;border-radius:38px;box-shadow:0 24px 70px rgba(0,0,0,.4)}
/* site header */
.ann{background:var(--navy);color:rgba(255,255,255,.72);text-align:center;font-size:10.5px;letter-spacing:1.8px;text-transform:uppercase;padding:9px 20px}
.hdr{background:var(--w);border-bottom:1px solid var(--bd);position:sticky;top:0;z-index:30}
.hdr .wrap{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding-top:16px;padding-bottom:16px}
.wm{font-family:"EB Garamond",Garamond,Georgia,serif;font-size:24px;letter-spacing:4px;color:var(--ink);text-align:center;font-weight:500}
.wm em{font-style:normal;color:var(--amp);font-weight:400;letter-spacing:0}
.hdr .r{text-align:right;font-size:12px;color:var(--ft)}
.hdr .r a{color:var(--ft);margin-left:14px}
.hdr .r a:hover{color:var(--ink)}
/* title */
.tb{border-bottom:1px solid var(--bd)}
.tb .wrap{display:flex;flex-wrap:wrap;align-items:flex-end;gap:14px 40px;padding-top:30px;padding-bottom:26px}
.tb .ac{color:var(--ft);display:block;margin-bottom:10px}
.cta{margin-left:auto;display:inline-flex;align-items:center;gap:12px;background:var(--navy);color:#fff;padding:14px 24px;font-size:12px;letter-spacing:2px;text-transform:uppercase;font-weight:500}
.cta:hover{background:var(--navy2)}
.cta.off{display:none}
.sb,.tabs{display:none}
/* layout */
.lay{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:80px;align-items:start;padding-top:48px;padding-bottom:12px}
main{min-width:0}
/* thread */
.th{display:flex;flex-direction:column;gap:40px}
.m .wh{display:flex;align-items:center;gap:10px;margin-bottom:12px}
.av{width:32px;height:32px;border-radius:50%;overflow:hidden;flex:0 0 32px;display:grid;place-items:center;font-size:10.5px;letter-spacing:1px}
.av svg{width:100%;height:100%;display:block}
.av.i{background:var(--w);border:1px solid var(--ln);color:var(--txt)}
.nm{font-size:14px;color:var(--ink);font-weight:400}
.m.c .nm:after{content:" \00B7 you";color:var(--ft)}
.og{font-size:9px;letter-spacing:1.5px;text-transform:uppercase;color:var(--ft)}
.m time{margin-left:auto;font-size:12px;color:var(--ft);white-space:nowrap}
.m .bd{font-size:16px;color:var(--txt);margin-left:42px}
.m.c .bd{background:var(--blue2);padding:20px 24px;border-radius:var(--r)}
.sh{margin:18px 0 0;border:1px solid var(--bd);border-radius:var(--r);overflow:hidden;max-width:560px}
.sh svg{display:block;width:100%;height:auto;cursor:zoom-in}
.sh figcaption{padding:11px 15px;font-size:11px;letter-spacing:1.4px;text-transform:uppercase;color:var(--ft);border-top:1px solid var(--bd);background:var(--w)}
.q{display:flex;gap:11px;align-items:center;padding:8px;margin-bottom:14px;background:var(--w);border:1px solid var(--bd);border-radius:8px}
.q .t{width:44px;height:44px;flex:0 0 44px;overflow:hidden;display:block;border-radius:4px}
.q .t svg{width:100%;height:100%;display:block}
.q .x{font-size:11px;letter-spacing:1.3px;text-transform:uppercase;color:var(--ft)}
.sy{font-size:15px;color:var(--ink);display:flex;align-items:center;gap:10px}
.sy .ic{color:var(--navy)}
/* approvals */
.ap{margin-top:22px;border:1px solid var(--bd);border-radius:var(--r);background:var(--w);padding:26px 28px}
.ap .hd{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 16px;margin-bottom:16px;padding-bottom:14px;border-bottom:1px solid var(--dv)}
.ap .k{font-size:11px;letter-spacing:1.5px;text-transform:uppercase;color:var(--ft);width:100%;margin-bottom:8px}
.ap .pr{margin-left:auto;font-family:"EB Garamond",Garamond,Georgia,serif;font-size:26px;color:var(--ink)}
.ap p{font-size:14px;max-width:58ch}
.ap .act{display:flex;flex-wrap:wrap;align-items:center;gap:11px;margin-top:20px}
.ap .by{font-size:13px}
.dn{font-size:14px;color:var(--ink);margin:0;display:flex;align-items:center;gap:9px}
.dn .ic{color:var(--navy)}
.ap.o{border:0;background:var(--navy);color:rgba(255,255,255,.75);padding:32px 34px}
.ap.o .hd{border-bottom-color:rgba(255,255,255,.18)}
.ap.o .k{color:var(--blue)}
.ap.o h3,.ap.o .pr{color:#fff}
.ap.o .b{border-color:rgba(255,255,255,.5);color:#fff}
.ap.o .b.p{background:#fff;color:var(--navy);border-color:#fff}
.ap.o .b.p:hover{background:var(--blue)}
.ap.o .b.g:hover{background:rgba(255,255,255,.1)}
.ap.o .by{color:rgba(255,255,255,.65)}
/* buttons */
.b{border:1px solid var(--navy);background:transparent;color:var(--navy);padding:12px 26px;cursor:pointer;font-size:12px;letter-spacing:2px;text-transform:uppercase;font-weight:500;display:inline-block;transition:.2s}
.b.p{background:var(--navy);color:#fff}
.b.p:hover{background:var(--navy2)}
.b.g:hover{background:var(--blue)}
.b.s{padding:9px 16px;font-size:10.5px;letter-spacing:1.5px}
/* composer */
.cp{margin-top:44px;border:1px solid var(--bd);border-radius:var(--r);background:var(--w);padding:16px 18px}
.cp textarea{width:100%;border:0;resize:vertical;outline:0;font-size:16px;color:var(--ink);background:transparent}
.cp textarea::placeholder{color:var(--ft)}
.cp .r{display:flex;gap:9px;justify-content:flex-end;border-top:1px solid var(--dv);padding-top:13px;margin-top:6px}
/* rail */
.rl{position:sticky;top:78px;min-width:0}
.rb{padding-bottom:24px;margin-bottom:24px;border-bottom:1px solid var(--dv)}
.rb:last-child{border-bottom:0;margin-bottom:0;padding-bottom:0}
.rb h4{margin-bottom:14px;display:flex;align-items:center;gap:9px}
.rb h4 .ic{color:var(--navy);opacity:.6}
.rb p{font-size:14px}
.rb ul.dm{font-size:14px;margin-bottom:10px}
.rb .b{margin-top:10px}
/* stages: numbered like the site's process */
.st{list-style:none;margin:0;padding:0}
.st li{display:flex;align-items:baseline;gap:12px;padding:5px 0;font-size:14px;color:var(--ft)}
.st li .no{font-family:"EB Garamond",Garamond,Georgia,serif;font-size:22px;line-height:1;color:var(--bd);width:30px;flex:0 0 30px;font-variant-numeric:tabular-nums}
.st li.d{color:var(--txt)}.st li.d .no{color:var(--ln)}
.st li.n{color:var(--ink)}.st li.n .no{color:var(--navy)}
.st li.n:after{content:"";width:6px;height:6px;border-radius:50%;background:var(--navy);margin-left:auto}
.up{font-size:12px;color:var(--ft);margin:12px 0 0 42px}
.rn{font-size:14px;display:flex;gap:9px;align-items:flex-start;margin-bottom:10px}
.rn .ic{color:var(--ln);margin-top:2px}
.eta{font-size:14px;color:var(--ink);background:var(--blue2);padding:12px 14px;border-radius:8px;margin-top:12px;display:flex;align-items:center;gap:10px}
.eta .ic{color:var(--navy);opacity:.6}
details.ex>summary{list-style:none;cursor:pointer;font-family:"EB Garamond",Garamond,Georgia,serif;font-size:20px;color:var(--ink);display:flex;align-items:center;gap:9px;line-height:1.1}
details.ex>summary::-webkit-details-marker{display:none}
details.ex>summary .ic{color:var(--navy);opacity:.6}
details.ex>summary:after{content:"";margin-left:auto;width:7px;height:7px;border-right:1px solid var(--ft);border-bottom:1px solid var(--ft);transform:rotate(45deg) translateY(-2px)}
details.ex[open]>summary{margin-bottom:14px}
details.ex[open]>summary:after{transform:rotate(-135deg) translateY(-2px)}
.sp{margin:0;font-size:13.5px;display:grid;grid-template-columns:auto 1fr;gap:6px 16px}
.sp dt{color:var(--ft)}.sp dd{margin:0;color:var(--ink);text-align:right;font-variant-numeric:tabular-nums}
.nt{font-size:12px;color:var(--ft);margin-top:10px}
.cs{display:block;font-size:13.5px;color:var(--txt);margin-bottom:9px;padding-left:24px;position:relative;cursor:pointer}
.cs input{position:absolute;left:0;top:3px;width:14px;height:14px;accent-color:var(--navy)}
.rv{border:1px solid var(--bd);border-radius:8px;background:var(--w);padding:12px 14px;margin-bottom:11px}
.rv textarea{width:100%;border:0;outline:0;resize:vertical;font-size:15px;color:var(--ink);background:transparent;min-height:72px}
.rv textarea::placeholder{color:var(--ft)}
.ok{font-size:13px;color:var(--navy);margin-top:9px}
.pbox{border:1px dashed var(--ln);border-radius:var(--r);padding:22px;font-size:14px;color:var(--ft)}
.band.n .pbox{border-color:rgba(255,255,255,.25);color:rgba(255,255,255,.55)}
/* bands */
.band{background:var(--w);color:var(--txt)}
.band.b{background:var(--blue)}
.band.n{background:var(--navy);color:rgba(255,255,255,.72)}
.band .wrap{padding-top:64px;padding-bottom:68px}
.band .ac{color:var(--navy);display:block;margin-bottom:12px}
.band.n .ac{color:var(--blue)}
.band.n h2,.band.n h3{color:#fff}
.band p{font-size:16px;max-width:52ch}
.band ul.dm{font-size:15px;max-width:52ch;margin-bottom:14px}
.band .b{margin-top:18px}
.band.n .b{border-color:rgba(255,255,255,.5);color:#fff}
.band.n .b:hover{background:rgba(255,255,255,.1)}
.bi{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:56px;align-items:center}
.bs{margin:0;overflow:hidden;background:var(--w);border-radius:var(--r);border:1px solid var(--bd)}
.band.n .bs{border-color:rgba(255,255,255,.12)}
.bs svg{display:block;width:100%;height:auto;cursor:zoom-in}
.two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:56px}
.two h3{display:flex;align-items:center;gap:10px;margin-bottom:10px}
.two h3 .ic{color:var(--navy);opacity:.6}
.two p{font-size:14.5px;max-width:44ch}
.strip{border-top:1px solid var(--bd)}
.strip .wrap{padding-top:26px;padding-bottom:28px;display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.strip h4{display:flex;align-items:center;gap:10px}
.strip h4 .ic{color:var(--navy);opacity:.6}
.strip p{font-size:13.5px;margin:3px 0 0 30px}
.strip .b{margin-left:auto}
.strip.t{background:var(--blue);border-top:0}
/* footer */
.ft{background:var(--navy);color:rgba(255,255,255,.72)}
.ft .wrap{padding-top:40px;padding-bottom:46px;display:flex;flex-wrap:wrap;gap:20px 60px;align-items:flex-start}
.ft .wm{font-size:18px;color:#fff;text-align:left}
.ft p{font-size:12.5px;max-width:38ch;margin:10px 0 0}
.ft .r{margin-left:auto;font-size:12.5px;text-align:right;line-height:2.1}
.ft .r a{color:rgba(255,255,255,.72);margin-left:18px}
.ft .r a:hover{color:#fff}
/* staff */
.staffbar{display:none;background:#14151d;color:#fff}
body.staff-on .staffbar{display:block}
.staffbar-in{max-width:1200px;margin:0 auto;padding:16px 44px}
.staff-h{font-size:13px;color:rgba(255,255,255,.75);margin-bottom:12px}
.staff-tag{display:inline-block;background:rgba(255,255,255,.12);color:#fff;font-size:9px;letter-spacing:1.5px;text-transform:uppercase;padding:4px 9px;margin-right:10px;vertical-align:middle}
.staff-controls{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.staff-controls label{font-size:12px;color:rgba(255,255,255,.55);display:flex;align-items:center;gap:7px}
.staff-controls select{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.22);color:#fff;padding:7px 9px}
.staffbar .btn{border:1px solid rgba(255,255,255,.3);color:#fff;background:transparent;padding:8px 14px;font-size:11px;letter-spacing:1.5px;text-transform:uppercase;cursor:pointer}
.staffbar .btn.link{border:0;color:rgba(255,255,255,.6);text-transform:none;letter-spacing:0;font-size:12.5px;padding:0}
.staff-warn{font-size:11.5px;color:rgba(255,255,255,.62);margin:12px 0 0;max-width:76ch}
.needsyou.resolved .ap.o{display:none}
.mf{max-width:1200px;margin:0 auto;padding:16px 44px 50px;font-size:10.5px;color:var(--ft);letter-spacing:.8px}
/* lightbox */
.lb[hidden]{display:none!important}
.lb{position:fixed;inset:0;z-index:120;background:rgba(18,18,18,.92);display:grid;place-items:center;padding:34px}
.lbi{max-width:980px;width:100%;background:var(--w);border-radius:var(--r);overflow:hidden}
.lbi svg{display:block;width:100%;height:auto}
.lbx{position:absolute;top:18px;right:22px;width:42px;height:42px;border:1px solid rgba(255,255,255,.3);background:transparent;color:#fff;font-size:22px;line-height:1;cursor:pointer}
/* switching */
/* piece: eng (default) / wb / oth  — state: live (default) / del / none */
.o-wb,.o-oth{display:none}
body.p-wb .o-eng,body.p-oth .o-eng{display:none}
body.p-wb .o-wb{display:block}body.p-oth .o-oth{display:block}
.o-del,.o-none{display:none}
body.s-del .o-del{display:block}body.s-del .o-live{display:none}
body.s-none .o-none{display:block}body.s-none .o-active{display:none}
body.s-none .tabs,body.s-none .sb{display:none!important}
@media (prefers-reduced-motion:reduce){*{transition:none!important}}
/* narrow */
@container (max-width:1040px){
 .wrap{padding:0 28px}
 .hdr .wrap{grid-template-columns:auto 1fr;padding-top:13px;padding-bottom:13px}
 .hdr .wm{text-align:left;font-size:20px;letter-spacing:3px}
 .tb .wrap{padding-top:22px;padding-bottom:18px}
 .cta{margin-left:0;width:100%;justify-content:space-between}
 .lay{grid-template-columns:minmax(0,1fr);gap:0;padding-top:28px}
 .rl{position:static}
 .tabs{display:flex;position:sticky;top:57px;z-index:25;background:var(--w);border-bottom:1px solid var(--bd)}
 .tabs button{flex:1;background:transparent;border:0;border-bottom:1px solid transparent;padding:13px 8px;font-size:11px;letter-spacing:1.8px;text-transform:uppercase;color:var(--ft);cursor:pointer}
 .tabs button.on{color:var(--ink);border-bottom-color:var(--navy)}
 body:not(.t-det) .rl{display:none}
 body.t-det main{display:none}
 .bi,.two{grid-template-columns:minmax(0,1fr);gap:28px}
 .staffbar-in,.mf{padding-left:28px;padding-right:28px}
}
@container (max-width:620px){
 .wrap{padding:0 20px}
 .hdr .wm{font-size:18px}
 h2{font-size:26px}
 .tabs{top:53px}
 .sb{display:flex;align-items:center;gap:10px;padding:10px 20px;background:var(--blue);font-size:12.5px;color:var(--ink)}
 .sb .nn{margin-left:auto;color:var(--navy)}
 .th{gap:32px}
 .m .bd{margin-left:0}
 .m.c .bd{padding:18px}
 .ap,.ap.o{padding:20px 18px}
 .ap .pr{margin-left:0;width:100%}
 .b{width:100%;text-align:center;padding:13px 18px}
 .ap .act .b{flex:1 1 100%}
 .ap .by{width:100%;text-align:center}
 .band .wrap{padding-top:40px;padding-bottom:44px}
 .band p,.band ul.dm{font-size:15px}
 .strip .b{margin-left:0;width:100%}
 .strip p{margin-left:0}
 .ft .r{margin-left:0;text-align:left}
 .ft .r a{margin:0 16px 0 0}
 .lb{padding:14px}
 .staffbar-in,.mf{padding-left:20px;padding-right:20px}
}

.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
/* title row buttons */
.reqs{margin-left:auto;display:flex;flex-wrap:wrap;gap:8px}
.reqs .b{padding:11px 16px;font-size:10.5px;letter-spacing:1.6px}
.need{font-size:13px;color:var(--navy);display:inline-flex;align-items:center;gap:7px;margin-top:8px}
.need .ic{width:14px;height:14px}
.need.off{display:none}
/* composer on top */
.cp.top{margin:0 0 36px}
/* tiles */
.tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:26px}
.tiles.five{grid-template-columns:repeat(5,minmax(0,1fr))}
.tile{background:var(--navy);color:#fff;border-radius:var(--r);padding:34px 20px 28px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:16px;min-height:190px;justify-content:center}
.tile .ic{width:40px;height:40px;stroke-width:1}
.tile span{font-size:13.5px;line-height:1.45;color:rgba(255,255,255,.9);max-width:22ch}
.tiles.light .tile{background:var(--w);color:var(--ink);border:1px solid var(--bd)}
.tiles.light .tile .ic{color:var(--navy)}
.tiles.light .tile span{color:var(--txt)}
.tiles.off3{grid-template-columns:repeat(2,minmax(0,1fr));max-width:66%;margin-left:auto;margin-right:auto}
/* credit ladder */
.ladder{margin:28px auto 0;max-width:460px;font-size:16px}
.ladder div{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:14px;padding:6px 0;color:var(--ink);font-variant-numeric:tabular-nums}
.ladder div i{height:1px;background:var(--navy);opacity:.5;position:relative;min-width:80px}
.ladder div i:after{content:"";position:absolute;right:-1px;top:-3px;width:6px;height:6px;border-right:1px solid var(--navy);border-top:1px solid var(--navy);transform:rotate(45deg);opacity:1}
.ladder div em{font-style:normal;text-align:right;font-weight:400}
.foot-note{font-size:12px;color:var(--ft);margin-top:14px}
.band.center{text-align:center}
.band.center p{margin-left:auto;margin-right:auto}
.band.center h2{max-width:none}
/* history */
.hist{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:36px}
.hist figure{margin:0;border-radius:var(--r);overflow:hidden;background:#fff}
.hist img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}
.hist figcaption{padding:10px 12px;font-size:11px;letter-spacing:1.4px;text-transform:uppercase;color:rgba(255,255,255,.75)}
.hist-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:56px;align-items:center}
.hist-grid .bs img{display:block;width:100%;height:auto}
.facts{display:flex;flex-wrap:wrap;gap:0 34px;margin-top:22px}
.facts div{font-size:13px;color:rgba(255,255,255,.8);padding:10px 0;border-top:1px solid rgba(255,255,255,.14);min-width:120px}
.facts div b{display:block;font-family:"EB Garamond",Garamond,Georgia,serif;font-size:26px;font-weight:400;color:#fff;line-height:1.1;margin-bottom:2px}
/* no-job view */
.rows{list-style:none;margin:0;padding:0;border-top:1px solid var(--bd)}
.rows li{display:flex;align-items:center;gap:16px;padding:18px 0;border-bottom:1px solid var(--bd);font-size:15px;color:var(--ink)}
.rows li span{color:var(--ft);font-size:13px}
.rows li a{margin-left:auto;font-size:11px;letter-spacing:1.6px;text-transform:uppercase;font-weight:500;display:inline-flex;align-items:center;gap:8px}
.plates{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.plate{border:1px solid var(--bd);border-radius:var(--r);overflow:hidden;background:var(--w)}
.plate .img{aspect-ratio:1/1;background:var(--blue2);display:grid;place-items:center;color:var(--navy);opacity:.9}
.plate .img .ic{width:38px;height:38px;stroke-width:.9;opacity:.5}
.plate .cap{padding:14px 16px;font-size:14px;color:var(--ink)}
.plate .cap span{display:block;font-size:12px;color:var(--ft);margin-top:2px}
.sec{padding-top:44px}
.sec h3{display:flex;align-items:center;gap:10px;margin-bottom:18px}
.sec h3 .ic{color:var(--navy);opacity:.6}
.sec h3 small{margin-left:auto;font-family:Jost,sans-serif;font-size:12px;color:var(--ft);letter-spacing:.3px}
.nj{padding-bottom:56px}
.fb{display:flex;align-items:center;gap:14px}
.photo{border-radius:var(--r);overflow:hidden}
.photo img{display:block;width:100%;height:auto}
@container (max-width:1040px){
 .tiles,.tiles.five{grid-template-columns:repeat(2,minmax(0,1fr))}
 .tiles.off3{max-width:none;grid-template-columns:repeat(2,minmax(0,1fr))}
 .hist{grid-template-columns:repeat(2,minmax(0,1fr))}
 .hist-grid{grid-template-columns:minmax(0,1fr);gap:28px}
 .plates{grid-template-columns:repeat(2,minmax(0,1fr))}
 .reqs{margin-left:0;width:100%}
 .reqs .b{flex:1 1 auto;text-align:center}
}
@container (max-width:620px){
 .tiles,.tiles.five,.plates{grid-template-columns:1fr}
 .tile{min-height:0;padding:26px 18px}
 .hist{grid-template-columns:1fr 1fr;gap:10px}
 .hist figcaption{padding:8px;font-size:10px}
 .ladder{font-size:15px}
 .reqs{flex-direction:column}
 .facts div{min-width:45%}
}

.lad-h{font-size:13.5px;color:var(--ink);margin:14px 0 4px}
.mh li span{display:block}
.mh li span em{display:block;font-style:normal;font-size:12.5px;color:var(--txt);margin-top:1px}
.mh li{align-items:flex-start;padding:11px 0}
.mh li .ic{margin-top:2px}
.hist.quad figure{aspect-ratio:4/3;background:transparent}
.hist.quad img{aspect-ratio:auto;height:100%;object-fit:cover;object-position:center}
.nj-top{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px;align-items:start;padding-top:44px}
.photo video{display:block;width:100%;height:auto;background:#fff}
.rb .photo{max-width:230px;margin:2px 0 4px}
.fbpanel{background:var(--blue);border-radius:var(--r);padding:44px 40px;text-align:center}
.fbpanel .ac{color:var(--navy);display:block;margin-bottom:12px}
.fbpanel p{max-width:34ch;margin:14px auto 22px;font-size:16px}
@container (max-width:1040px){.nj-top{grid-template-columns:minmax(0,1fr);gap:34px}}

.ladder.mini{margin:14px 0 0;max-width:none;font-size:13.5px}
.ladder.mini div{padding:3px 0;gap:10px}
.ladder.mini div i{min-width:30px}
.mh{list-style:none;margin:0 0 6px;padding:0}
.mh li{display:flex;align-items:center;gap:12px;padding:9px 0;border-top:1px solid var(--dv);font-size:14px;color:var(--ink)}
.mh li .ic{width:22px;height:22px;color:var(--navy);opacity:.7}
.hist.quad{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:0}
.band.focus .wrap{padding-top:52px;padding-bottom:56px}
.band.focus .b{margin-top:22px}
.cs-row{display:flex;flex-wrap:wrap;gap:6px 26px;margin-top:10px}
.cs-row .cs{margin-bottom:0}
.strip .cs-row{margin-left:30px}
@container (max-width:1040px){.hist.quad{grid-template-columns:repeat(2,minmax(0,1fr))}}
@container (max-width:620px){.hist.quad{grid-template-columns:1fr 1fr}.strip .cs-row{margin-left:0}}

/* ---- project tabs: a client with more than one active design toggles between them ---- */
.pj{border-bottom:1px solid var(--bd);background:var(--w)}
.pj .wrap{display:flex;gap:0;overflow-x:auto;-webkit-overflow-scrolling:touch}
.pj button{background:transparent;border:0;border-bottom:1px solid transparent;padding:14px 0;margin-right:34px;font-size:11px;letter-spacing:1.8px;text-transform:uppercase;color:var(--ft);cursor:pointer;white-space:nowrap}
.pj button.on{color:var(--ink);border-bottom-color:var(--navy)}
.pj button b{font-weight:500;color:var(--navy);margin-left:8px}
@container (max-width:620px){.pj button{margin-right:22px;padding:12px 0}}

/* ---- preview controls (only when the page is opened with ?preview) ---- */
.mb{position:fixed;bottom:12px;right:12px;z-index:99;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:4px;background:rgba(18,18,18,.92);color:#fff;border-radius:20px;padding:7px 9px;max-width:min(560px,calc(100% - 20px))}
.mb .g{display:flex;align-items:center;gap:3px}.mb .g+.g{padding-left:7px;border-left:1px solid rgba(255,255,255,.16)}
.mb i{font-style:normal;font-size:8.5px;letter-spacing:1.3px;text-transform:uppercase;opacity:.45;margin-right:2px}
.mb button{background:transparent;border:1px solid rgba(255,255,255,.2);color:#fff;border-radius:999px;padding:3px 9px;font-size:10.5px;cursor:pointer}
.mb button.on{background:#fff;color:#121212;border-color:#fff}
.sft{position:fixed;left:12px;bottom:12px;z-index:99;background:#fff;color:var(--ink);border:1px solid var(--ln);border-radius:999px;padding:8px 15px;font-size:11.5px;cursor:pointer}

/* ---- Phase 2: the staff bar sits above everything, as in the mockup, wherever it is rendered ---- */
.fr{display:flex;flex-direction:column}
.fr>*{width:100%}
.staffbar{order:-1}
/* ---- Phase 2: forms, lists and notes, in the mockup's own vocabulary ---- */
.sf{max-width:560px;margin:28px 0 8px;border:1px solid var(--bd);border-radius:var(--r);background:var(--w);padding:22px 24px}
.sf h4{margin-bottom:14px}
.sf label{display:block;font-size:12px;letter-spacing:1.2px;text-transform:uppercase;color:var(--ft);margin:12px 0 0}
.sf input,.sf select,.sf textarea{display:block;width:100%;margin-top:6px;border:1px solid var(--ln);border-radius:8px;padding:11px 12px;font-size:16px;color:var(--ink);background:var(--w);letter-spacing:0;text-transform:none}
.sf textarea{resize:vertical}
.sf .r{display:flex;flex-wrap:wrap;gap:9px;justify-content:flex-end;margin-top:18px}
.sf .r .b{width:auto}
.sf.signin{margin:48px auto 24px}
.sf.signin h2{margin:6px 0 10px}
.sf.signin .r{justify-content:flex-start}
.sf .links a{margin-right:18px}
.ok{font-size:13px;color:var(--navy);margin:12px 0 0}
.bad{font-size:13px;color:#8a3a2a;margin:12px 0 0}
.lt{display:flex;flex-wrap:wrap;gap:12px 28px;margin:0 0 22px}
.lt label{font-size:12px;letter-spacing:1.2px;text-transform:uppercase;color:var(--ft)}
.lt select,.lt input{display:block;margin-top:6px;border:1px solid var(--ln);border-radius:8px;padding:9px 12px;font-size:15px;color:var(--ink);background:var(--w);letter-spacing:0;text-transform:none;min-width:240px}
.att{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0 4px}
.att1{position:relative;width:64px;height:64px;border-radius:6px;overflow:hidden;border:1px solid var(--bd)}
.att1 img{width:100%;height:100%;object-fit:cover;display:block}
.att1 button{position:absolute;top:2px;right:2px;width:20px;height:20px;border:0;border-radius:50%;background:rgba(18,18,18,.7);color:#fff;cursor:pointer;font-size:13px;line-height:1}
.pick{margin-top:14px}.thumbs{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}
.th1{width:84px;height:84px;border:2px solid transparent;border-radius:8px;overflow:hidden;padding:0;background:var(--blue2);cursor:pointer}
.th1.on{border-color:var(--navy)}.th1 img{width:100%;height:100%;object-fit:cover;display:block}
.staff-link{display:inline-flex;gap:6px;align-items:center}
.staff-link input{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.22);color:#fff;padding:7px 9px;min-width:260px;font-size:12px}
.sb .nn{cursor:pointer}
@container (max-width:620px){.sf{padding:18px 16px}.lt select,.lt input{min-width:0;width:100%}.lt label{flex:1 1 100%}.staff-link{flex-wrap:wrap}.staff-link input{min-width:0;width:100%}}

/* ---- merged into this app (19 Oct 2026): the staff tools and the message rules, in the mockup's vocabulary ---- */
.tx{background:transparent;border:0;padding:0;color:var(--navy);cursor:pointer;font-size:12.5px;text-decoration:underline;text-underline-offset:3px;text-decoration-color:rgba(39,42,76,.35);margin-right:14px}
.tx:hover{text-decoration-color:var(--navy)}
.tx.on{text-decoration:none;color:var(--ink);cursor:default}
.tx.warn{color:#8a3a2a}
.tx:disabled{opacity:.5;cursor:default}
.order{font-size:12.5px;margin:-18px 0 24px;display:flex;gap:4px}
.mdo{margin-top:12px;display:flex;flex-wrap:wrap;align-items:center;gap:6px 0}
.mdo .nt{margin:0 14px 0 0}
.m.gone .bd{opacity:.7}
.wd{font-style:italic;color:var(--ft)}
.sh figcaption .tx{float:right;text-transform:none;letter-spacing:0;margin:0}
.rf{font-size:13px;color:var(--ft)}
.ap.o .rf{color:rgba(255,255,255,.65)}
.ap .by{margin-left:0}
.qr{margin-top:14px;border-top:1px solid var(--dv);padding-top:14px}
.qr svg{display:block;width:148px;height:148px;margin:10px 0}
.cp .r .qr-btn{margin-right:auto;align-self:center}
.rb-read .who-line{font-size:12px;color:var(--ft);margin:6px 0 10px}
.rb-read .r{justify-content:flex-end}
/* editing in place (staff) */
.ed{background:transparent;border:0;padding:0;text-align:left;cursor:text;color:inherit;font:inherit;border-bottom:1px dashed rgba(39,42,76,.35)}
.ed:hover{border-bottom-color:var(--navy)}
.ed .empty{color:var(--ft);font-style:italic}
h2 .ed{font:inherit;color:inherit}
.ed-open{display:block;margin-top:4px}
.ed-open input,.ed-open textarea{display:block;width:100%;border:1px solid var(--ln);border-radius:8px;padding:9px 11px;font-size:15px;color:var(--ink);background:var(--w);margin-top:4px}
.ed-open textarea{resize:vertical;min-height:70px}
.ed-open .r{display:flex;gap:9px;justify-content:flex-end;align-items:center;margin-top:8px}
.ed-open .lbl{display:block;font-size:11px;letter-spacing:1.2px;text-transform:uppercase;color:var(--ft);margin-top:10px}
.eta .ed{font-size:14px;border-bottom-color:transparent}
.eta .ed:hover{border-bottom-color:var(--navy)}
.eta .ed-open{flex:1}
/* staff bar extras */
.staff-link label{font-size:12px;color:rgba(255,255,255,.55);display:flex;align-items:center;gap:7px}
.staff-link input[type=date]{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.22);color:#fff;padding:6px 9px;font-size:12px;min-width:0}
.staffbar .btn:disabled{opacity:.5;cursor:default}
.reqs .b:disabled{opacity:.45;cursor:default}
/* people rows */
.rows li .pn{display:flex;flex-direction:column;gap:2px;color:var(--ink);font-size:15px}
.rows li .pn span{font-size:12.5px}
.rows li .pdo{margin-left:auto;display:flex;flex-wrap:wrap;align-items:center;gap:6px 0;justify-content:flex-end}
.rows li .pdo select{border:1px solid var(--ln);border-radius:8px;padding:6px 8px;font-size:13px;color:var(--ink);background:var(--w);margin-right:14px}
.rows li.off .pn{color:var(--ft)}
.sf .rows{margin:6px 0 14px}
.sf form label{display:block}
.sf input.code{letter-spacing:8px;font-size:24px;text-align:center}
.nj-top.one{grid-template-columns:minmax(0,1fr)}
@container (max-width:1040px){.cp .r .qr-btn{display:none}}
@container (max-width:620px){.rows li{flex-wrap:wrap}.rows li .pdo{margin-left:0;width:100%;justify-content:flex-start}.order{margin-top:-10px}}

/* notes for the owners (managers) */
.onotes .ac{display:block;margin-bottom:8px;color:var(--navy)}
.onote{font-size:13.5px;background:var(--blue2);border-radius:8px;padding:10px 12px;margin-bottom:8px;color:var(--txt)}
.onote b{font-weight:500;color:var(--ink)}
.rb .rv textarea{min-height:90px}

/* documents */
.docs{list-style:none;margin:6px 0 0 30px;padding:0}
.docs li{font-size:14px;padding:5px 0;display:flex;align-items:center;flex-wrap:wrap}
.docs li a{display:inline-flex;align-items:center;gap:6px;color:var(--ink);border-bottom:1px solid var(--ln)}
.docs li a:hover{border-bottom-color:var(--navy)}
.strip .sf{padding:16px 18px}
a.plate{display:block;color:inherit}
a.plate:hover .cap{color:var(--navy)}
