@font-face{
  font-family:"Bricolage Grotesque";
  src:url('assets/bricolage-grotesque-latin-opsz.woff2') format('woff2');
  font-weight:200 800;
  font-display:swap
}
@font-face{
  font-family:Manrope;
  src:url('assets/manrope.ttf') format('truetype');
  font-weight:200 800;
  font-display:swap
}
:root{
  --night:oklch(.200 .040 258);
  --navy:oklch(.346 .074 256);
  --ivory:oklch(.958 .009 68);
  --muted:oklch(.841 .022 72);
  --warm:oklch(.351 .021 70);
  --gold:oklch(.743 .117 90);
  --focus:oklch(.589 .109 89);
  --line:color-mix(in oklch,var(--night) 22%,var(--ivory));
  color-scheme:light;
  scrollbar-color:var(--navy) var(--night);
  font-optical-sizing:auto
}
*{
  box-sizing:border-box
}
body{
  margin:0;
  background:var(--night);
  color:var(--ivory);
  font-family:"Bricolage Grotesque",Arial,sans-serif;
  font-weight:400;
  font-size:18px;
  line-height:1.55
}
button,select{
  font:inherit
}
button,a,select{
  -webkit-tap-highlight-color:transparent
}
button,a{
  touch-action:manipulation
}
button{
  cursor:pointer
}
button:disabled{
  cursor:default
}
a{
  color:inherit;
  text-underline-offset:.23em
}
button:focus-visible,a:focus-visible,select:focus-visible{
  outline:3px solid var(--focus);
  outline-offset:4px
}
h2[tabindex]:focus{
  outline:none
}
::selection{
  background:var(--gold);
  color:var(--night)
}
[hidden]{
  display:none!important
}
h1,h2,h3,h4,p,dl{
  margin:0
}
h1,h2,h3,h4{
  text-wrap:balance;
  font-weight:600
}
p{
  text-wrap:pretty
}
svg{
  width:24px;
  height:24px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.5
}
.wrap{
  width:min(1280px,calc(100% - 80px));
  margin-inline:auto
}
.masthead{
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding-block:23px;
  border-bottom:1px solid var(--navy)
}
.brand{
  font-size:32px;
  font-weight:600;
  text-decoration:none;
  letter-spacing:-.035em
}
.brand span{
  color:var(--gold)
}
.masthead>p{
  font-size:16px;
  display:flex;
  gap:28px
}
.masthead>p>span{
  color:var(--muted)
}
.intro{
  display:grid;
  grid-template-columns:1.5fr 1fr;
  align-items:end;
  gap:50px;
  padding-block:44px 36px
}
.intro h1{
  font-size:clamp(32px,3.5vw,50px);
  line-height:1.12;
  letter-spacing:-.025em
}
.intro h1 span{
  color:var(--muted)
}
.intro>p{
  max-width:34ch;
  color:var(--muted);
  padding-bottom:3px
}
.experience{
  background:var(--ivory);
  color:var(--night)
}
.journey{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  border-bottom:1px solid var(--night)
}
.journey button{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  background:transparent;
  color:var(--night);
  padding:20px 28px;
  border:0;
  border-bottom:3px solid transparent;
  text-align:left;
  font-weight:500
}
.journey button:disabled{
  color:var(--warm)
}
.journey button[aria-current]{
  background:var(--night);
  color:var(--ivory);
  border-bottom-color:var(--gold)
}
.journey button:not(:disabled):hover{
  text-decoration:underline;
  text-underline-offset:5px
}
.demo-body{
  padding:22px 30px 0
}
.scene-caption{
  display:flex;
  justify-content:space-between;
  gap:20px;
  margin-bottom:20px;
  font-size:14px;
  color:var(--warm)
}
.scene-caption>p:first-child{
  font-weight:600;
  color:var(--night)
}
.client-site{
  display:grid;
  grid-template-columns:1fr 1fr;
  min-height:415px;
  background:#ddd9cb;
  color:#303a2e
}
.racine-editorial{
  padding:24px 30px 22px;
  font-family:Manrope,Arial,sans-serif
}
.racine-name{
  font-size:17px;
  font-weight:600
}
.racine-editorial h2{
  font-size:30px;
  letter-spacing:-.025em;
  line-height:1.16;
  margin-block:24px 22px
}
.racine-editorial img{
  width:100%;
  height:190px;
  display:block;
  object-fit:cover
}
.racine-editorial>p:last-child{
  font-size:14px;
  line-height:1.6;
  margin-top:12px;
  max-width:36ch
}
.request{
  padding:32px;
  background:color-mix(in srgb,#ddd9cb 40%,#fff);
  font-family:Manrope,Arial,sans-serif
}
.request h2{
  font-size:26px;
  letter-spacing:-.025em
}
.request>p{
  font-size:14px;
  line-height:1.65;
  margin-top:10px;
  max-width:48ch
}
.request label{
  font-size:14px;
  font-weight:600;
  display:block;
  margin-block:24px 6px
}
.request select{
  width:100%;
  min-height:46px;
  border:1px solid #606959;
  background:transparent;
  border-radius:2px;
  color:#303a2e;
  padding:8px 30px 8px 10px;
  font-size:16px
}
.request-details{
  font-size:14px;
  margin-block:14px 22px
}
.request-details>div{
  display:flex;
  justify-content:space-between;
  gap:20px;
  padding-block:9px;
  border-bottom:1px solid #bec0b2
}
.request-details dt{
  flex-shrink:0
}
.request-details dd{
  margin:0;
  text-align:right;
  font-weight:600
}
.solid{
  border:1px solid var(--night);
  border-radius:4px;
  background:var(--night);
  color:var(--ivory);
  padding:13px 17px;
  min-height:48px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  font-size:16px;
  font-weight:500;
  text-align:left
}
.solid:hover{
  background:var(--navy)
}
.client-action{
  background:#3f4a3c;
  color:#fff;
  border-color:#3f4a3c;
  width:100%;
  font-size:15px
}
.client-action:hover{
  background:#303a2e
}
.fine{
  font-size:13px!important;
  line-height:1.6;
  color:var(--warm);
  margin-top:10px!important
}
.scene-explanation{
  padding-block:18px;
  font-size:16px;
  max-width:80ch
}
.business-stage{
  display:grid;
  grid-template-columns:.85fr 1.35fr;
  gap:50px;
  min-height:458px;
  padding-top:14px;
  padding-bottom:24px
}
.explanation h2{
  font-size:clamp(29px,2.8vw,38px);
  line-height:1.15;
  letter-spacing:-.025em;
  margin-bottom:22px
}
.explanation>p{
  font-size:17px;
  max-width:35ch
}
.formula{
  margin-top:32px;
  border-top:1px solid var(--line);
  padding-top:18px;
  font-size:14px!important;
  color:var(--warm)
}
.formula strong{
  font-size:17px;
  color:var(--night);
  display:inline-block;
  margin-top:5px
}
.work-heading{
  display:flex;
  justify-content:space-between;
  align-items:baseline;
  gap:20px;
  border-bottom:2px solid var(--night);
  padding-bottom:14px
}
.work-heading h3{
  font-size:19px
}
.work-heading>span{
  font-size:13px;
  color:var(--warm)
}
.project-heading{
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:15px;
  padding-block:20px 14px
}
.project-heading h4{
  font-size:24px;
  line-height:1.2
}
.status{
  font-size:14px;
  white-space:nowrap;
  font-weight:600;
  display:flex;
  align-items:center;
  gap:8px
}
.status:before{
  content:'';
  width:7px;
  height:7px;
  background:var(--focus);
  border-radius:50%
}
.work-details>div{
  display:grid;
  grid-template-columns:1fr 1.35fr;
  gap:16px;
  border-bottom:1px solid var(--line);
  padding-block:9px;
  font-size:15px
}
.work-details dt{
  color:var(--warm)
}
.work-details dd{
  margin:0;
  font-weight:500
}
.next-action{
  margin-block:19px
}
.next-action span{
  font-size:13px;
  color:var(--warm)
}
.next-action p{
  font-size:16px;
  margin-top:4px
}
.origin{
  font-size:14px;
  color:var(--warm);
  margin-bottom:14px
}
.received-stage{display:block;padding-top:4px}
.received-stage .explanation{display:grid;grid-template-columns:1fr 1.15fr 1fr;gap:34px;align-items:start;margin-bottom:26px}
.received-stage .explanation h2{font-size:32px;margin-bottom:0}
.received-stage .explanation>p{font-size:16px}
.received-stage .formula{margin-top:0;padding-top:0;border-top:0}
.request-count{font-size:14px;font-weight:400;margin-left:8px}
.queue-head,.request-queue button{display:grid;grid-template-columns:1.4fr .7fr 1fr;gap:24px;text-align:left}
.queue-head{font-size:13px;color:var(--warm);padding:12px 16px 10px}
.request-queue{list-style:none;padding:0;margin:0;border-top:1px solid var(--line)}
.request-queue li{border-bottom:1px solid var(--line)}
.request-queue button{width:100%;border:0;border-radius:0;padding:15px 16px;background:transparent;color:var(--night);align-items:center;font-size:15px;line-height:1.45}
.request-queue strong{display:block;font-weight:500;font-size:17px}
.request-queue small{display:block;margin-top:3px;font-size:12px}
.request-queue button:hover strong{text-decoration:underline;text-underline-offset:4px}
.request-queue button[aria-pressed="true"]{background:var(--night);color:var(--ivory)}
.request-queue button:focus-visible{outline-offset:-4px}
#request-detail{display:grid;grid-template-columns:1.2fr 1fr;column-gap:44px;padding-top:8px}
#request-detail .project-heading{grid-column:1/-1}
#request-detail .work-details{grid-column:1;grid-row:2/5;align-self:start}
#request-detail .next-action{grid-column:2;grid-row:2;margin-block:5px 14px}
#request-detail .solid{grid-column:2;grid-row:3;justify-self:start}
#request-detail .fine{grid-column:2;grid-row:4}
.task-list{border:0;padding:0;margin:24px 0 0;min-width:0}
.task-list legend{font-size:17px;font-weight:600;padding:0}
#task-progress{font-size:14px;color:var(--warm);padding-block:8px 14px}
.task-list label{display:flex;align-items:center;gap:14px;padding-block:14px;min-height:52px;border-top:1px solid var(--line);cursor:pointer;font-size:16px;line-height:1.45}
.task-list input{width:20px;height:20px;flex-shrink:0;margin:0;accent-color:var(--night);cursor:pointer}
.task-list input:focus-visible{outline:3px solid var(--focus);outline-offset:4px}
.task-list label[data-done="true"] span{text-decoration:line-through;color:var(--warm)}
.task-next{padding-top:14px;border-top:2px solid var(--night);margin-top:8px}
.back-to-requests{margin-top:20px;font-size:15px}
.workflow-tabs{display:grid;grid-template-columns:repeat(4,1fr);border-block:1px solid var(--line);margin-block:12px 22px}
.workflow-tabs button{background:transparent;border:0;border-bottom:3px solid transparent;border-radius:0;color:var(--night);min-height:50px;padding:12px 8px;font-size:15px;text-align:center}
.workflow-tabs button[aria-selected="true"]{background:var(--night);color:var(--ivory);border-bottom-color:var(--gold)}
.workflow-tabs button:hover{text-decoration:underline;text-underline-offset:4px}
.workflow-tabs button:focus-visible{outline-offset:-4px}
.workflow-panel{min-width:0}
.workflow-panel:focus-visible{outline:2px solid var(--focus);outline-offset:8px}
.workflow-panel h4{font-size:24px;line-height:1.2;letter-spacing:-.015em}
.workflow-panel h5{font:600 17px/1.4 "Bricolage Grotesque",Arial,sans-serif;margin:0}
.panel-intro{font-size:16px;line-height:1.6;margin-block:14px 24px}
.connection-heading{display:flex;justify-content:space-between;align-items:baseline;gap:16px;border-bottom:2px solid var(--night);padding-block:14px;font-size:16px;font-weight:600;margin-top:20px}
.connection-heading span+span{font-size:12px;font-weight:400;color:var(--warm)}
.chat-message{border-bottom:1px solid var(--line);padding-block:18px;margin-bottom:18px;font-size:16px}
.chat-message p{max-width:52ch}
.chat-message strong{font-weight:500}
.chat-link{background:none;color:var(--night);border:0;padding:12px 0 0;text-decoration:underline;text-underline-offset:4px;font-size:15px;min-height:44px}
.chat-link:disabled{color:var(--warm);text-decoration:none}
#calendar-choice h5{margin-block:18px 12px}
.calendar-slots{display:grid;border-top:1px solid var(--line)}
.calendar-slots button{border:0;border-bottom:1px solid var(--line);background:none;color:var(--night);min-height:48px;padding:12px;text-align:left;font-size:15px}
.calendar-slots button[aria-pressed="true"]{background:var(--night);color:var(--ivory)}
.calendar-slots button:disabled{color:var(--warm);text-decoration:line-through}
.calendar-slots button:not(:disabled):hover{text-decoration:underline;text-underline-offset:4px}
.connection-result{font-size:16px;font-weight:500;margin-block:18px}
.solid:disabled{background:transparent;color:var(--warm);border-color:var(--line);cursor:default}
.quote-approval{border-top:1px solid var(--line);padding-top:18px;margin-top:22px}
.quote-approval>p:first-child{font-size:15px;max-width:50ch;margin-bottom:14px}
.human-note{margin-top:24px}
.stock-details{margin-top:18px}
#stock-material{margin-top:20px}
#prepare-purchase{margin-top:12px}
.invoice-preview{border-top:2px solid var(--night);margin-top:26px;padding-top:20px}
.invoice-heading{display:flex;justify-content:space-between;align-items:baseline;gap:16px}
.invoice-heading h5{font-size:30px;letter-spacing:-.025em}
.invoice-heading>span{font-size:14px;font-variant-numeric:tabular-nums}
.invoice-warning{font-size:13px;margin-block:8px 20px;color:var(--warm)}
.invoice-lines{margin:22px 0;padding:0;list-style:none;border-top:1px solid var(--night)}
.invoice-lines li{display:flex;justify-content:space-between;align-items:baseline;gap:20px;padding-block:13px;border-bottom:1px solid var(--line);font-size:15px}
.invoice-lines strong{display:block;font-weight:500}
.invoice-lines small{display:block;font-size:13px;margin-top:4px;color:var(--warm)}
.invoice-lines li>span:last-child{white-space:nowrap;font-variant-numeric:tabular-nums}
.invoice-totals dd{font-variant-numeric:tabular-nums}
.invoice-totals>div:last-child{border-top:2px solid var(--night);border-bottom:0;padding-top:15px;font-weight:600}
.human-note{
  border-top:1px solid var(--line);
  padding-top:14px;
  font-size:14px;
  color:var(--warm)
}
.demo-footer{
  border-top:1px solid var(--line);
  margin-inline:30px;
  display:flex;
  justify-content:space-between;
  gap:20px;
  align-items:center;
  padding-block:13px 17px;
  font-size:14px;
  color:var(--warm)
}
.text-button{
  border:0;
  background:none;
  color:var(--night);
  padding:9px 0;
  min-height:44px;
  text-decoration:underline;
  text-underline-offset:4px;
  white-space:nowrap
}
.no-script{
  padding:20px 30px
}
.closing{
  display:grid;
  grid-template-columns:1fr auto;
  gap:70px;
  padding-block:38px 48px
}
.closing h2{
  font-size:28px;
  letter-spacing:-.02em
}
.closing>div>p{
  max-width:62ch;
  color:var(--muted);
  font-size:16px;
  margin-top:12px
}
.primary{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:30px;
  padding:15px 20px;
  background:var(--gold);
  color:var(--night);
  border-radius:4px;
  text-decoration:none;
  font-weight:600
}
.primary:hover{
  background:var(--ivory)
}
.closing .contact p{
  font-size:13px;
  margin-top:8px
}
.offer-link{
  font-size:14px;
  display:inline-block;
  margin-top:13px
}
@media(max-width:1000px){
  .workflow-tabs{grid-template-columns:repeat(2,1fr)}
  .connection-heading{display:block}
  .connection-heading span+span{display:block;margin-top:5px}
  .received-stage .explanation{grid-template-columns:1fr 1fr;gap:22px}
  .received-stage .formula{grid-column:1/-1}
  #request-detail{column-gap:24px}
  .queue-head,.request-queue button{grid-template-columns:1.2fr .6fr 1fr;gap:16px}
  .wrap{
    width:calc(100% - 40px)
  }
  .intro{
    gap:25px
  }
  .intro>p{
    font-size:16px
  }
  .request-details>div{
    display:block
  }
  .request-details dd{
    text-align:left;
    margin-top:3px
  }
  .racine-editorial img{
    height:230px
  }
  .business-stage{
    gap:30px
  }
  .work-heading{
    display:block
  }
  .work-heading>span{
    display:block;
    margin-top:5px
  }
  .project-heading{
    align-items:start
  }
  .project-heading h4{
    font-size:21px
  }
  .closing{
    gap:30px
  }
}
@media(max-width:650px){
  .workflow-panel h4{font-size:23px}
  .workflow-panel h5{font-size:16px}
  .panel-intro,.connection-result,.chat-message{font-size:15px}
  .workflow-tabs{margin-top:16px}
  .workflow-tabs button{font-size:14px}
  .calendar-slots button{font-size:14px;padding-inline:8px}
  .invoice-heading{display:block}
  .invoice-heading h5{font-size:28px}
  .invoice-heading>span{display:block;margin-top:6px}
  .invoice-lines li{display:block}
  .invoice-lines li>span:last-child{display:block;margin-top:8px;font-weight:600}
  .received-stage .explanation{display:block;margin-bottom:24px}
  .received-stage .explanation h2{font-size:30px;margin-bottom:16px}
  .received-stage .formula{margin-top:20px;padding-top:14px;border-top:1px solid var(--line)}
  .queue-head{display:none}
  .request-queue{margin-top:16px}
  .request-queue button{grid-template-columns:1fr;gap:6px;padding:15px 12px}
  .request-queue strong{font-size:16px}
  .request-queue button>span:nth-child(2){font-size:12px}
  .request-queue button>span:last-child{font-size:14px;font-weight:500}
  #request-detail{display:block;padding-top:12px}
  #request-detail .next-action{margin-block:18px}
  .task-list label{font-size:15px;gap:12px}
  .task-list legend{font-size:16px}
  body{
    font-size:16px
  }
  .wrap{
    width:calc(100% - 32px)
  }
  .masthead{
    padding-block:15px;
    gap:14px
  }
  .brand{
    font-size:29px
  }
  .masthead>p{
    display:block;
    font-size:13px;
    text-align:right
  }
  .masthead>p>span{
    display:block;
    font-size:12px
  }
  .intro{
    display:block;
    padding-block:28px 25px
  }
  .intro h1{
    font-size:34px;
    line-height:1.12
  }
  .intro>p{
    margin-top:18px;
    max-width:40ch;
    font-size:16px
  }
  .journey button{
    padding:15px 10px;
    font-size:13px;
    line-height:1.35;
    align-items:start;
    min-height:68px
  }
  .journey svg{
    display:none
  }
  .demo-body{
    padding:16px 16px 0
  }
  .scene-caption{
    display:block;
    font-size:12px;
    margin-bottom:14px
  }
  .scene-caption>p+p{
    margin-top:3px
  }
  .client-site{
    display:block
  }
  .racine-editorial{
    padding:20px
  }
  .racine-name{
    font-size:15px
  }
  .racine-editorial h2{
    font-size:28px;
    margin-block:18px
  }
  .racine-editorial img{
    height:160px
  }
  .racine-editorial>p:last-child{
    font-size:13px
  }
  .request{
    padding:22px 20px
  }
  .request h2{
    font-size:25px
  }
  .request label{
    margin-top:20px
  }
  .request-details>div{
    display:block
  }
  .request select{
    font-size:15px
  }
  .client-action{
    font-size:14px;
    padding:12px;
    gap:8px
  }
  .scene-explanation{
    font-size:14px;
    padding-block:16px
  }
  .demo-footer{
    margin-inline:16px;
    display:block;
    font-size:13px;
    padding-block:14px
  }
  .text-button{
    margin-top:8px
  }
  .business-stage{
    display:block;
    padding-top:3px;
    padding-bottom:20px
  }
  .explanation h2{
    font-size:30px;
    margin-bottom:16px
  }
  .explanation>p{
    font-size:16px;
    max-width:none
  }
  .formula{
    margin-top:20px;
    padding-top:14px
  }
  .formula strong{
    font-size:16px
  }
  .work-surface{
    margin-top:28px
  }
  .work-heading h3{
    font-size:18px
  }
  .work-heading>span{
    font-size:12px
  }
  .project-heading{
    display:block;
    padding-block:17px 10px
  }
  .project-heading h4{
    font-size:23px
  }
  .status{
    margin-top:9px;
    font-size:13px
  }
  .work-details>div{
    grid-template-columns:1fr;
    font-size:14px;
    gap:3px
  }
  .solid{
    font-size:14px
  }
  .closing{
    display:block;
    padding-block:30px 35px
  }
  .closing h2{
    font-size:27px
  }
  .closing>div>p{
    font-size:15px
  }
  .contact{
    margin-top:24px
  }
  .primary{
    width:fit-content;
    min-width:240px
  }
  .closing .contact p{
    font-size:13px
  }
}

/* Capture an off-site conversation without leaving the request queue. */
.request-tools{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-block:20px;border-bottom:1px solid var(--line)}
.request-tools p{font-size:15px;max-width:30ch}
.request-tools .solid{flex-shrink:0}
.manual-request-form{padding-block:24px;border-bottom:2px solid var(--night)}
.manual-request-form h4{font-size:24px;margin-bottom:8px}
.form-fields{display:grid;grid-template-columns:1fr 1fr;gap:18px 24px;margin-top:20px}
.form-fields label{display:flex;flex-direction:column;gap:8px;font-size:16px;font-weight:500;min-width:0}
.form-fields input,.form-fields select,.form-fields textarea{width:100%;min-width:0;border:1px solid var(--warm);border-radius:2px;background:var(--ivory);color:var(--night);padding:12px;font:400 16px/1.5 "Bricolage Grotesque",sans-serif;caret-color:var(--night)}
.form-fields input::placeholder,.form-fields textarea::placeholder{color:var(--warm);opacity:1}
.form-fields textarea{resize:vertical;min-height:110px}
.full-field{grid-column:1/-1}
.form-actions{display:flex;gap:24px;align-items:center;margin-top:20px;flex-wrap:wrap}
#manual-error{color:var(--night);font-weight:600;border-top:1px solid var(--night);padding-top:12px;margin-top:12px}
.request-notes{grid-column:1/-1;border-top:1px solid var(--line);padding-top:18px;margin-block:16px}
.request-notes h5{font-size:16px;margin-bottom:8px}
.request-notes p{white-space:pre-wrap;overflow-wrap:anywhere}
.request-queue strong,#request-detail-title,.project-heading h4{overflow-wrap:anywhere}
.document-toolbar{display:flex;align-items:start;justify-content:space-between;gap:20px;margin-bottom:16px;font-size:15px}
.document-toolbar p{font-weight:500}
.document-toolbar span{font-size:13px;font-weight:400;color:var(--warm)}
#document-links{display:flex;flex-direction:column;align-items:start;gap:10px}
#document-links a{color:var(--night);text-decoration:underline;text-underline-offset:4px;min-height:32px;display:inline-flex;align-items:center}
#document-status{font-size:14px;margin-block:12px 18px}
.document-paper{padding:16px;background:var(--line)}
.document-paper img{display:block;width:100%;height:auto;background:white}
.invoice-accessible{margin-top:18px;border-top:1px solid var(--line);padding-top:14px}
.invoice-accessible summary{font-size:15px;cursor:pointer;text-decoration:underline;text-underline-offset:4px;margin-bottom:18px}
@media(max-width:650px){
  .request-tools,.document-toolbar{display:block}
  .request-tools .solid{margin-top:14px}
  .form-fields{grid-template-columns:1fr}
  #document-links{margin-top:14px;gap:4px}
  .document-paper{padding:8px}
}

/* The atelier's site and private management space share one visual identity. */
.client-site{--focus:#606959}
.business-stage{display:block;padding-top:4px}
.business-stage .explanation{display:grid;grid-template-columns:1fr 1.15fr 1fr;gap:34px;align-items:start;margin-bottom:26px}
.business-stage .explanation h2{font-size:32px;margin-bottom:0}
.business-stage .explanation>p{font-size:16px;max-width:42ch}
.business-stage .formula{margin:0;padding:0;border:0}
.admin-space{
  --night:#303a2e;
  --navy:#3f4a3c;
  --ivory:#f1f0ea;
  --warm:#505b4c;
  --gold:#ddd9cb;
  --focus:#606959;
  --line:#bec0b2;
  background:var(--ivory);
  color:var(--night);
  border:1px solid var(--line);
  font-family:Manrope,Arial,sans-serif;
  min-width:0;
}
.admin-header{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px 28px;background:#ddd9cb}
.admin-brand{font-size:21px;font-weight:600;letter-spacing:-.02em}
.admin-subtitle{font-size:13px;margin-top:4px;color:var(--warm)}
.admin-header .text-button{font-size:14px;white-space:normal;margin:0}
.admin-nav{display:flex;gap:4px;padding-inline:20px;border-bottom:1px solid var(--line);background:#ddd9cb}
.admin-nav button,.admin-nav span{display:inline-flex;align-items:center;min-height:50px;padding:12px 18px;background:transparent;border:0;border-bottom:3px solid transparent;border-radius:0;color:var(--night);font-size:15px}
.admin-nav [aria-current="page"]{background:var(--ivory);border-bottom-color:var(--night);font-weight:600}
.admin-nav button:hover{background:var(--ivory)}
.admin-nav button:focus-visible{outline-offset:-4px}
.admin-content{padding:28px;min-width:0}
.admin-space .work-heading{border-bottom:1px solid var(--line);padding-bottom:16px}
.admin-space .work-heading h3{font-size:23px;letter-spacing:-.02em}
.admin-space .workflow-panel{max-width:780px;margin-inline:auto}
.admin-space .workflow-panel h5{font-family:inherit}
.admin-space .workflow-tabs{margin-bottom:28px}
.admin-space .form-fields input,.admin-space .form-fields select,.admin-space .form-fields textarea{font-family:inherit}
.admin-space input:focus-visible,.admin-space textarea:focus-visible{outline:3px solid var(--focus);outline-offset:3px}
.admin-space .document-paper{max-width:680px;margin-inline:auto;background:#ddd9cb}
.admin-space .document-toolbar{max-width:780px;margin-inline:auto}
.admin-space .request-tools p{max-width:40ch}
.admin-space .request-queue button[aria-pressed="true"]{background:#3f4a3c;color:#fff}
.admin-space .workflow-tabs button[aria-selected="true"]{background:#3f4a3c;color:#fff;border-bottom-color:#3f4a3c}
.admin-space .solid:not(:disabled){background:#3f4a3c;color:#fff;border-color:#3f4a3c}
.admin-space .solid:not(:disabled):hover{background:#303a2e}
@media(max-width:1000px){
  .business-stage .explanation{grid-template-columns:1fr 1fr;gap:22px}
  .business-stage .formula{grid-column:1/-1}
}
@media(max-width:650px){
  .business-stage .explanation{display:block;margin-bottom:24px}
  .business-stage .explanation h2{font-size:30px;margin-bottom:16px}
  .business-stage .formula{margin-top:20px;padding-top:14px;border-top:1px solid var(--line)}
  .admin-header{display:block;padding:20px 16px 12px}
  .admin-brand{font-size:18px;line-height:1.4}
  .admin-header .text-button{margin-top:10px}
  .admin-nav{padding-inline:8px}
  .admin-nav button,.admin-nav span{font-size:14px;padding-inline:14px}
  .admin-content{padding:20px 12px}
  .admin-space .work-heading h3{font-size:20px}
  .admin-space .project-heading h4{font-size:21px}
}

/* Amounts stay close to their document; settlement closes the project. */
.quote-price-form{margin-block:18px 24px;padding-block:18px;border-block:1px solid var(--line)}
.quote-price-form>label,#payment-form>label{display:block;font-size:15px;font-weight:600;margin-bottom:8px}
.price-action{display:flex;align-items:stretch;gap:12px;flex-wrap:wrap}
.price-action input{flex:1 1 150px;min-width:0;max-width:260px}
.price-action .solid{justify-content:center}
.quote-price-form input,.billing-fields input,#payment-form input{font:inherit;font-size:16px;font-variant-numeric:tabular-nums;min-height:46px;padding:10px 12px;border:1px solid var(--warm);border-radius:2px;background:var(--ivory);color:var(--night);width:100%}
.invoice-price-form{border-top:1px solid var(--line);margin-top:24px;padding-top:22px}
.invoice-price-form h5,.invoice-completion h5{font-size:21px!important;margin:0}
.billing-fields{display:grid;grid-template-columns:1fr 1fr;gap:18px 24px;margin-block:20px}
.billing-fields label{display:flex;flex-direction:column;justify-content:end;gap:8px;font-size:14px;font-weight:600;min-width:0}
.billing-fields small{font-size:12px;font-weight:400;color:var(--warm)}
.billing-fields input:disabled,.quote-price-form input:disabled,#payment-form input:disabled{color:var(--warm);border-color:var(--line)}
.billing-summary{border-block:1px solid var(--line);padding-block:14px;margin-bottom:18px;font-size:16px}
.billing-summary strong{float:right;font-variant-numeric:tabular-nums}
#quote-difference{font-size:13px;color:var(--warm);margin-top:6px;clear:both}
.invoice-completion{border-top:2px solid var(--night);margin-top:32px;padding-top:24px}
.settlement-totals{display:grid;grid-template-columns:1fr 1fr;gap:20px;padding-block:20px}
.settlement-totals dt{font-size:13px;color:var(--warm)}
.settlement-totals dd{margin:5px 0 0;font-size:24px;font-weight:600;font-variant-numeric:tabular-nums}
#confirm-delivery{margin-top:24px}
.completion-status{font-size:19px;font-weight:600;border-top:1px solid var(--line);padding-top:18px;margin-top:20px}
@media(max-width:650px){
  .billing-fields,.settlement-totals{grid-template-columns:1fr}
  .price-action{display:block}
  .price-action input{max-width:none}
  .price-action .solid{margin-top:12px;width:100%}
  .billing-summary strong{float:none;display:block;margin-top:4px}
}

/* The offer note explains the operations step before entering it. */
.operations-offer-note{margin:0;padding:12px 28px;border-bottom:1px solid var(--line);font-size:14px;line-height:1.5;color:var(--warm)}
sup{font-size:.8em;line-height:0;margin-left:.15em}
@media(max-width:650px){.operations-offer-note{padding:12px 16px}}

.invoice-email-form{border-top:1px solid var(--line);margin-top:24px;padding-top:22px}
.invoice-email-form label{display:block;margin-block:16px 8px;font-size:14px;font-weight:600}
.invoice-email-form input{font:inherit;font-size:16px;min-height:46px;padding:10px 12px;border:1px solid var(--warm);border-radius:2px;background:var(--ivory);color:var(--night);width:100%}
.invoice-email-form .solid{margin-top:16px}
#invoice-email-status,#invoice-email-attachment,#request-email{overflow-wrap:anywhere}
