@font-face{font-family:'Fonde';src:url('/static/fonde.ttf') format('truetype');font-weight:normal;font-style:normal;font-display:swap;}
@font-face{font-family:'CWCSans';src:url('/static/montserrat.ttf') format('truetype');font-weight:100 900;font-style:normal;font-display:swap;}

:root{
  --cream:#f2eee2;
  --ink:#2b2a27;
  --ink-soft:#6d675b;
  --rust:#966230;
  --peach:#e2b88d;
  --retainer:#ebd8c0;
  --invoices:#e4e2d2;
  --note:#f0e4d2;
  --inset:#f6f2e8;
  --btn-sage:#959579;
  --btn-peach:#e2b88d;
  --hair:rgba(43,42,39,.14);
  --serif:'Fonde',Georgia,'Times New Roman',serif;
  --sans:'CWCSans',Jost,'Helvetica Neue',Arial,sans-serif;
}
*{margin:0;padding:0;box-sizing:border-box;}
html{-webkit-text-size-adjust:100%;}
body{background:var(--cream);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;padding:clamp(24px,4vw,44px) clamp(18px,4vw,40px) 40px;}
.wrap{max-width:1060px;margin:0 auto;}
.fonde{font-family:var(--serif);font-weight:normal;text-transform:lowercase;line-height:1.1;}

.brandhead{text-align:center;padding-bottom:20px;}
.brandhead img{width:min(72vw,340px);height:auto;display:block;margin:0 auto clamp(20px,3.4vw,30px);}
nav{display:flex;justify-content:center;align-items:center;gap:clamp(14px,3vw,40px);flex-wrap:wrap;}
nav a{font-size:.86rem;text-transform:uppercase;color:var(--ink);text-decoration:none;padding:8px 4px;white-space:nowrap;cursor:pointer;border-radius:22px;}
nav a.active{background:var(--peach);padding:8px 22px;}
.rule{height:1px;background:var(--ink);opacity:.9;margin:20px 0 0;}

.page{display:none;}
.page.active{display:block;}
.titlerow{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;flex-wrap:wrap;padding:clamp(28px,5vw,44px) 4px clamp(20px,4vw,30px);}
.titlerow h1{font-size:clamp(2rem,5.4vw,3rem);}
.titlerow .cycle{color:var(--ink);font-size:1rem;margin-top:10px;}
.titlerow .client{font-size:clamp(1.2rem,3vw,1.6rem);text-transform:uppercase;white-space:nowrap;}

.card{border-radius:16px;padding:clamp(26px,3.4vw,40px);}
.card--tan{background:var(--retainer);}
.card--sage{background:var(--invoices);}
.card--peach{background:var(--note);}
.mb{margin-bottom:clamp(20px,2.6vw,30px);}
.grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(20px,2.6vw,30px);}
@media(max-width:660px){.grid{grid-template-columns:1fr;}}
.card h2{font-size:clamp(1.5rem,3.8vw,2.1rem);margin-bottom:14px;}

.ret-top{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap;}
.ret-top h2{margin-bottom:0;}
.ret-figure{display:flex;align-items:baseline;gap:12px;}
.ret-figure .big{font-family:var(--serif);color:var(--rust);font-size:clamp(2.5rem,6.5vw,3.4rem);line-height:.9;}
.ret-figure .lbl{font-size:clamp(.95rem,2.4vw,1.05rem);color:var(--ink);}
.ret-rule{height:1.5px;background:var(--rust);margin:18px 0 12px;}
.ret-dates{display:flex;justify-content:space-between;font-size:.95rem;color:var(--ink);margin-bottom:20px;}
.ret-statement{font-size:clamp(1rem,2.4vw,1.1rem);color:var(--ink);max-width:60ch;}
.ret-divider{height:1px;background:var(--hair);margin:20px 0;}
.ret-terms{font-size:.95rem;color:var(--ink);max-width:64ch;line-height:1.7;}

.btns{margin-top:22px;display:flex;flex-direction:column;gap:12px;}
.btn{display:block;width:100%;text-align:center;text-decoration:none;color:#fff;text-transform:uppercase;font-size:.8rem;font-weight:500;padding:15px 18px;border-radius:8px;border:none;cursor:pointer;font-family:inherit;}
.btn--sage{background:var(--btn-sage);}
.btn--peach{background:var(--btn-peach);}
.card p.intro{color:var(--ink);}
@media(max-width:560px){
  .btns .btn{font-size:.7rem;padding:13px 12px;letter-spacing:0;white-space:nowrap;}
  .prev-row .btn{font-size:.72rem;padding:10px 16px;}
}

.notebody{color:var(--ink);}
.notebody:empty::before{content:attr(data-ph);color:var(--ink-soft);}
.placeholder{color:var(--ink-soft);}
.sig{font-family:var(--serif);text-transform:lowercase;color:var(--ink);font-size:1.7rem;text-align:right;margin-top:auto;padding-top:26px;}
.card--flex{display:flex;flex-direction:column;}

.subhead{display:flex;justify-content:space-between;align-items:baseline;gap:14px;flex-wrap:wrap;}
.subhead .week{font-size:.98rem;color:var(--ink);}
.inset{background:var(--inset);border:1px solid var(--hair);border-radius:10px;padding:clamp(20px,2.6vw,28px);margin-top:16px;}
.task{display:flex;gap:14px;align-items:flex-start;padding:12px 0;}
.task + .task{border-top:1px solid var(--hair);}
.chk{flex:none;width:20px;height:20px;margin-top:3px;border:1.5px solid var(--ink);border-radius:4px;background:transparent;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;padding:0;}
.chk.on{background:var(--btn-sage);border-color:var(--btn-sage);}
.chk.on::after{content:"";width:6px;height:11px;border:solid #fff;border-width:0 2px 2px 0;transform:translateY(-1px) rotate(45deg);}
.task .t{font-weight:500;}
.task .o{color:var(--ink-soft);font-size:.95rem;margin-top:2px;}
.taskbody{flex:1;min-width:0;}
.rm{flex:none;background:none;border:none;color:var(--ink-soft);font-size:1.3rem;line-height:1;cursor:pointer;padding:0 4px;opacity:.45;font-family:inherit;}
.rm:hover{opacity:1;color:var(--rust);}
.addtask{margin-top:16px;background:none;border:none;color:var(--rust);font-weight:500;font-size:.94rem;cursor:pointer;padding:6px 0;font-family:inherit;}
.addtask:hover{text-decoration:underline;}
.commentbox{background:var(--inset);border:1px solid var(--hair);border-radius:10px;padding:clamp(20px,2.6vw,28px);min-height:150px;margin-top:14px;color:var(--ink);}
.commentbox:empty::before{content:attr(data-ph);color:var(--ink-soft);}
[contenteditable]{outline:none;}
[contenteditable]:focus{box-shadow:0 0 0 2px rgba(150,98,48,.35);border-radius:3px;}

.ctask{display:flex;gap:14px;align-items:flex-start;padding:12px 0;}
.ctask + .ctask{border-top:1px solid var(--hair);}
.ctask .chk{cursor:pointer;}
.ctaskbody{flex:1;min-width:0;}
.ctask .t{font-weight:500;}
.ctask .cdate{color:var(--ink-soft);font-size:.9rem;margin-top:2px;}
.completed-scroll{max-height:340px;overflow-y:auto;padding-right:6px;}
.completed-scroll::-webkit-scrollbar{width:8px;}
.completed-scroll::-webkit-scrollbar-thumb{background:rgba(43,42,39,.18);border-radius:4px;}
.completed-scroll::-webkit-scrollbar-track{background:transparent;}

.prev-row{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;padding:16px 0;border-top:1px solid var(--hair);}
.prev-row:first-of-type{border-top:none;}
.prev-row .d .t{font-weight:500;}
.prev-row .d .s{color:var(--ink-soft);font-size:.9rem;margin-top:2px;}
.prev-row .btn{width:auto;padding:12px 20px;}
.prev-scroll{max-height:370px;overflow-y:auto;padding-right:6px;}
.prev-scroll::-webkit-scrollbar{width:8px;}
.prev-scroll::-webkit-scrollbar-thumb{background:rgba(43,42,39,.18);border-radius:4px;}
.prev-scroll::-webkit-scrollbar-track{background:transparent;}

footer{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap;padding:clamp(36px,5vw,56px) 4px 6px;}
footer .badge{width:clamp(104px,15vw,138px);height:auto;}
footer .fr{text-align:right;margin-left:auto;}
footer .fr .q{font-size:1rem;color:var(--ink);}
footer .fr .p{font-size:.85rem;color:var(--ink);margin-top:4px;}
@media(max-width:560px){footer{justify-content:center;text-align:center;}footer .fr{text-align:center;margin-left:0;}}

.saveflash{position:fixed;bottom:20px;left:50%;transform:translateX(-50%) translateY(20px);background:var(--ink);color:var(--cream);padding:9px 18px;border-radius:20px;font-size:.85rem;opacity:0;transition:all .25s ease;pointer-events:none;z-index:50;}
.saveflash.show{opacity:1;transform:translateX(-50%) translateY(0);}
