.behidden{display:none !important}.dflex{display:flex}.dflex-row{display:flex;flex-direction:row}.dflex-col{display:flex;flex-direction:column}.dflexr-jcs{display:flex;flex-direction:row;justify-content:flex-start}.dflexr-jce{display:flex;flex-direction:row;justify-content:flex-end}.dflexr-jcc{display:flex;flex-direction:row;justify-content:center}.dflexr-jcsa{display:flex;flex-direction:row;justify-content:space-around}.dflexr-jcsb{display:flex;flex-direction:row;justify-content:space-between}.dflexr-jcse{display:flex;flex-direction:row;justify-content:space-evenly}.dflexc-jcs{display:flex;flex-direction:column;justify-content:flex-start}.dflexc-jce{display:flex;flex-direction:column;justify-content:flex-end}.dflexc-jcc{display:flex;flex-direction:column;justify-content:center}.dflexc-jcsa{display:flex;flex-direction:column;justify-content:space-around}.dflexc-jcsb{display:flex;flex-direction:column;justify-content:space-between}.dflexc-jcse{display:flex;flex-direction:column;justify-content:space-evenly}.flexfit{flex:1}.flexgrow{flex:1 0}.flexshrink{flex:0 1}.flexwrap-on{flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;height:35px;padding:0 1.5rem;border-radius:5px;font-size:.9rem;font-weight:600;text-decoration:none;border:none;cursor:pointer;box-sizing:border-box}.btn-delete{background-image:linear-gradient(180deg, #c07070, #8c4040);color:#000}.btn-delete:hover{background-color:#f44}.btn-cancel{background-color:#c9a227;color:#000}.btn-cancel:hover{background-color:#e0c05a;color:red}.btn-save{background-color:#6a8a7a;color:#000}.btn-save:hover{background-color:#4a8a6a}.btn-general{background-color:#4a6a5a;color:#0d1218;text-shadow:1px 1px 2px #ff0;width:50%}.nav-link{text-decoration:none}.nav-link:hover{font-weight:bold;line-height:1.5}.main-nav-menu li a{color:#8ec2d4}.stage{position:relative;isolation:isolate;display:grid;grid-template-columns:1fr;grid-template-rows:auto 1fr;min-height:100svh;overflow:hidden;background:#0d1218}@media only screen and (min-width: 992px){.stage{grid-template-columns:minmax(0, 1.05fr) minmax(0, 0.95fr);grid-template-rows:1fr auto}}.stage__bg{position:absolute;inset:0;z-index:0;background-image:var(--card-bg);background-size:cover;background-position:center;background-repeat:no-repeat}.stage__code{position:absolute;right:0;bottom:0;top:auto;width:100%;height:42%;z-index:1;margin:0;overflow:hidden;pointer-events:none;font-family:"IBM Plex Mono",ui-monospace,monospace;font-size:clamp(.62rem,.95vw,.92rem);line-height:1.45;color:rgba(176,198,210,.28);white-space:pre;user-select:none;opacity:.7;mask-image:linear-gradient(180deg, rgba(0, 0, 0, 0.85), rgba(0, 0, 0, 0.35) 70%, transparent)}@media only screen and (min-width: 992px){.stage__code{top:3%;right:3%;bottom:8%;width:min(46vw,40rem);height:auto;opacity:1}}.stage__connectors{display:none;position:absolute;inset:0;z-index:2;width:100%;height:100%;pointer-events:none;overflow:visible}@media only screen and (min-width: 992px){.stage__connectors{display:block}}.stage__connectors path{fill:none;stroke:#c9dbe4;stroke-width:1.5;stroke-linecap:round;filter:drop-shadow(0 0 4px rgba(142, 194, 212, 0.35));opacity:0;transition:opacity 280ms ease}.stage__connectors.is-ready path{opacity:1}@media(prefers-reduced-motion: reduce){.stage__connectors path{transition:none}}.brand,.contact{position:relative;z-index:3}.brand{grid-column:1;grid-row:1;align-self:stretch;padding:2rem 1.5rem 1rem}@media only screen and (min-width: 992px){.brand{grid-row:1/-1;padding:clamp(1.5rem,6vh,4.5rem) 1rem clamp(3rem,14vh,7rem) clamp(1.5rem,5vw,4.5rem)}}.brand__logo{display:block;width:clamp(7.25rem,15vw,11.5rem);height:auto;margin:0 0 clamp(.85rem,1.8vw,1.4rem)}.brand__name{margin:0;font-size:clamp(2.4rem,6.2vw,5.1rem);font-weight:800;letter-spacing:.035em;line-height:.95;text-transform:uppercase;color:#eef4f7}.brand__llc{margin:clamp(.55rem,1.2vw,.9rem) 0 0;font-size:clamp(.92rem,1.7vw,1.35rem);font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:#b4cbd5;white-space:nowrap}.brand__entity{display:none;align-items:center;gap:0;width:min(38rem,100% + 6vw);margin:.4rem 0 clamp(1.15rem,2.2vw,1.75rem)}@media only screen and (min-width: 992px){.brand__entity{display:flex}}.rule{flex:1 1 auto;height:1.5px;background:linear-gradient(90deg, #c9dbe4, rgba(201, 219, 228, 0.35));box-shadow:0 0 6px rgba(142,194,212,.35)}.node{flex:0 0 auto;width:15px;height:15px;border:2px solid #d7e6ee;border-radius:50%;background:radial-gradient(circle at center, #d7e6ee 0 3px, transparent 3.5px);box-shadow:0 0 10px rgba(215,230,238,.45)}.brand__services{margin:0;padding:0;list-style:none;color:#eef4f7;font-size:clamp(1.05rem,2vw,1.55rem);font-weight:500;letter-spacing:.02em}.brand__services li{align-items:center;gap:.7rem;margin:.45rem 0}.brand__services li::before{content:"";width:.62em;height:.62em;border:1.5px solid #b4cbd5;border-radius:50%;flex:0 0 auto}.brand__bio{display:inline-block;margin-top:1.35rem;font-size:clamp(.92rem,1.5vw,1.1rem);font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:#b4cbd5;border-bottom:1.5px solid #c9dbe4;padding-bottom:.15rem;width:fit-content;transition:color 160ms ease,border-color 160ms ease}.brand__bio:focus-visible{outline:2px solid #8ec2d4;outline-offset:4px}.contact{grid-column:1;grid-row:2;align-self:end;justify-self:stretch;width:100%;padding:1rem 1.5rem 2.25rem}@media only screen and (min-width: 992px){.contact{grid-column:2;grid-row:1/-1;width:auto;padding:clamp(1.5rem,4vw,3.5rem) clamp(1.5rem,5vw,4rem) clamp(4.5rem,14vh,9rem)}}.contact__address{margin:0;font-size:clamp(1.5rem,3vw,2.45rem);font-weight:600;letter-spacing:.01em;line-height:1.22;color:#eef4f7}.contact__address a{display:inline-block;transition:color 160ms ease}.contact__entity{align-items:center;gap:0;margin:.85rem 0 .7rem}.contact__entity .rule{width:100%;max-width:none}.contact__entity .node{display:none}@media only screen and (min-width: 992px){.contact__entity .node{display:block}}.contact__email{display:inline-block;font-size:clamp(1.05rem,2vw,1.55rem);font-weight:600;letter-spacing:.01em;color:#eef4f7;transition:color 160ms ease}.contact__address a:focus-visible,.contact__email:focus-visible{outline:2px solid #8ec2d4;outline-offset:4px}@media(hover: hover){.contact__address a:hover,.contact__email:hover,.contact__address a:focus-visible,.contact__email:focus-visible,.brand__bio:hover{color:#8ec2d4}.brand__bio:hover{border-color:#8ec2d4}}@media only screen and (min-width: 992px)and (max-height: 600px){.brand__logo{width:5.5rem}.brand__name{font-size:2.6rem}.contact__address{font-size:1.35rem}.contact{padding-bottom:2.5rem}}.brand,.contact{animation:rise 700ms ease both}.contact{animation-delay:90ms}.node{animation:pulse 2.8s ease-in-out infinite}@media(prefers-reduced-motion: reduce){.brand,.contact,.node{animation:none}}@keyframes rise{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes pulse{0%,100%{box-shadow:0 0 8px rgba(215,230,238,.35)}50%{box-shadow:0 0 14px rgba(215,230,238,.8)}}.bio-page{position:relative;isolation:isolate;min-height:100svh;overflow:auto;background:#0d1218}.bio-page__bg{position:fixed;inset:0;z-index:0;background-image:var(--card-bg);background-size:cover;background-position:center;background-repeat:no-repeat;opacity:.55}.bio-nav,.bio{position:relative;z-index:1}.bio-nav{align-items:center;padding:1.25rem 1.5rem 0;max-width:68rem;margin:0 auto}.bio-nav__home{align-items:center;gap:.7rem;font-size:.85rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:#b4cbd5;transition:color 160ms ease}.bio-nav__logo{width:2.4rem;height:auto}.bio{max-width:68rem;margin:0 auto;padding:1.5rem 1.5rem 3.5rem}.bio__header{gap:1.75rem;margin-bottom:2.25rem;padding-bottom:1.75rem;border-bottom:1.5px solid #c9dbe4}@media only screen and (min-width: 992px){.bio__header{flex-direction:row;justify-content:space-between;align-items:flex-start}}.bio__intro{gap:.35rem;min-width:0}.bio__name{margin:0;font-size:clamp(2rem,4.5vw,3.2rem);font-weight:800;letter-spacing:.02em;line-height:1.05;color:#eef4f7}.bio__role,.bio__place{margin:0;color:#b4cbd5;font-weight:600;letter-spacing:.04em}.bio__role{text-transform:uppercase;font-size:.92rem;letter-spacing:.14em;margin-top:.45rem}.bio__email{margin-top:.7rem;color:#eef4f7;font-weight:600;width:fit-content;transition:color 160ms ease}.bio__portrait{margin:0;flex:0 0 auto;width:min(100%,16rem)}@media only screen and (min-width: 992px){.bio__portrait{width:16rem}}.bio__portrait img{display:block;width:100%;aspect-ratio:1;object-fit:cover;border:1.5px solid #8ec2d4;background:rgba(13,18,24,.6)}.bio__portrait-placeholder{align-items:center;gap:.7rem;aspect-ratio:1;border:1.5px dashed #8ec2d4;background:rgba(13,18,24,.55);color:#b4cbd5;font-size:.82rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;text-align:center;padding:1.25rem}.bio__portrait-mark{width:5.5rem;height:auto;opacity:.85}.bio__section{margin-bottom:2rem}.bio__section h2{margin:0 0 .85rem;font-size:.82rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:#8ec2d4}.bio__section p{margin:0 0 1rem;max-width:48rem;font-size:1.05rem;line-height:1.65;color:#eef4f7}.bio__section p:last-child{margin-bottom:0}.bio__focus{margin:0;padding:0;list-style:none;display:grid;grid-template-columns:1fr;gap:.35rem 2rem}@media only screen and (min-width: 768px){.bio__focus{grid-template-columns:1fr 1fr}}.bio__focus li{align-items:center;gap:.7rem;color:#eef4f7;font-size:1.02rem}.bio__focus li::before{content:"";width:.55em;height:.55em;border:1.5px solid #b4cbd5;border-radius:50%;flex:0 0 auto}.bio__tools{margin:0}.bio__tools-row{gap:1rem;padding:.7rem 0;border-bottom:1px solid rgba(201,219,228,.28);flex-wrap:wrap}.bio__tools-row dt{flex:0 0 8.5rem;margin:0;font-size:.78rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#b4cbd5}.bio__tools-row dd{flex:1 1 16rem;margin:0;color:#eef4f7;line-height:1.5}.bio-nav__home:focus-visible,.bio__email:focus-visible{outline:2px solid #8ec2d4;outline-offset:4px}@media(hover: hover){.bio-nav__home:hover,.bio__email:hover{color:#8ec2d4}}.login-dialog{width:min(26rem,100vw - 2rem);padding:0;border:1.5px solid #c9dbe4;background:rgba(13,18,24,.96);color:#eef4f7;box-shadow:0 0 32px rgba(8,12,16,.65)}.login-dialog::backdrop{background:rgba(8,12,16,.72)}.login-dialog__card{padding:1.75rem 1.6rem 1.5rem}.login-dialog__title{margin:0 0 1.15rem;font-size:.82rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:#8ec2d4}.login-dialog__error{margin:0 0 1rem;color:#e8b4b4;font-size:.92rem}.login-dialog__form{gap:.95rem}.login-dialog__label{display:flex;flex-direction:column;gap:.4rem;font-size:.78rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#b4cbd5}.login-dialog__label input{width:100%;padding:.7rem .8rem;border:1.5px solid rgba(201,219,228,.35);border-radius:4px;background:rgba(13,18,24,.7);color:#eef4f7;font:inherit;letter-spacing:.02em;text-transform:none;font-weight:500}.login-dialog__label input:focus{outline:2px solid #8ec2d4;outline-offset:2px;border-color:#8ec2d4}.login-dialog__actions{gap:.75rem;margin-top:.35rem}.login-dialog__submit,.login-dialog__cancel{height:2.4rem;border:1.5px solid #c9dbe4;background:rgba(0,0,0,0);color:#eef4f7;letter-spacing:.12em;text-transform:uppercase;font-size:.78rem}.login-dialog__submit{border-color:#8ec2d4;color:#8ec2d4}.login-dialog__cancel{color:#b4cbd5;border-color:rgba(201,219,228,.35)}@media(hover: hover){.login-dialog__submit:hover{color:#eef4f7;background:rgba(142,194,212,.12)}.login-dialog__cancel:hover{color:#eef4f7;border-color:#c9dbe4}}.tracker{position:relative;isolation:isolate;min-height:100svh;overflow:auto;background:#0d1218}.tracker__bg{position:fixed;inset:0;z-index:0;background-image:var(--card-bg);background-size:cover;background-position:center;background-repeat:no-repeat;opacity:.55}.tracker__nav,.tracker__panel{position:relative;z-index:1}.tracker__nav{align-items:center;gap:1rem;padding:1.25rem 1.5rem 0;max-width:68rem;margin:0 auto}.tracker__home{align-items:center;gap:.7rem;font-size:.85rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:#b4cbd5;transition:color 160ms ease}.tracker__logo{width:2.4rem;height:auto}.tracker__panel{max-width:68rem;margin:0 auto;padding:1.5rem 1.5rem 3.5rem}.tracker__flash,.tracker__banner,.tracker__empty{margin:0 0 1.25rem;color:#b4cbd5;line-height:1.5}.tracker__flash{color:#e8b4b4}.tracker__notice{margin:0 0 1.25rem;color:#8ec2d4;line-height:1.5}.tracker__banner a{color:#8ec2d4;border-bottom:1px solid #c9dbe4}.tracker__toolbar{gap:1rem 1.5rem;align-items:flex-end;margin-bottom:1.75rem}.tracker__select-form,.tracker__add-form{gap:.7rem;align-items:flex-end;min-width:min(100%,18rem)}.tracker__label{display:flex;flex-direction:column;gap:.4rem;font-size:.78rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#b4cbd5}.tracker__select,.tracker__label input{width:100%;min-height:2.4rem;padding:.55rem .75rem;border:1.5px solid rgba(201,219,228,.35);border-radius:4px;background:rgba(13,18,24,.7);color:#eef4f7;font:inherit;letter-spacing:.02em;text-transform:none;font-weight:500}.tracker__select:focus,.tracker__label input:focus{outline:2px solid #8ec2d4;outline-offset:2px;border-color:#8ec2d4}.tracker__stats{gap:1rem;margin-bottom:1.35rem}.tracker__stat{flex:1 1 14rem;padding:1.15rem 1.2rem 1.05rem;border:1.5px solid rgba(201,219,228,.35);background:rgba(13,18,24,.55)}.tracker__stat h2{margin:0 0 .45rem;font-size:.75rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:#8ec2d4}.tracker__hours{margin:0;font-size:clamp(1.8rem,4vw,2.6rem);font-weight:800;letter-spacing:.02em;line-height:1.1;color:#eef4f7}.tracker__clock,.tracker__meta{margin:.35rem 0 0;color:#b4cbd5;font-weight:600}.tracker__clock{font-family:"IBM Plex Mono",ui-monospace,monospace;letter-spacing:.06em}.tracker__rate-form{gap:.7rem;align-items:flex-end;margin:-0.5rem 0 1.5rem}.tracker__rate-field{align-items:center;gap:.45rem}.tracker__rate-prefix,.tracker__rate-suffix{color:#b4cbd5;font-weight:600}.tracker__rate-field input{width:8.5rem}.tracker__controls{gap:.75rem;margin:0 0 2rem}.tracker__btn,.tracker__signout{height:2.4rem;border:1.5px solid #c9dbe4;background:rgba(0,0,0,0);color:#eef4f7;letter-spacing:.12em;text-transform:uppercase;font-size:.78rem}.tracker__signout{color:#b4cbd5;border-color:rgba(201,219,228,.35)}.tracker__btn--start{border-color:#8ec2d4;color:#8ec2d4}.tracker__btn--stop{border-color:#c07070;color:#e8b4b4}.tracker__btn:disabled{opacity:.4;cursor:not-allowed}.tracker__log{width:100%;border-collapse:collapse;color:#eef4f7}.tracker__log caption{caption-side:top;text-align:left;margin-bottom:.75rem;font-size:.75rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:#8ec2d4}.tracker__log th,.tracker__log td{padding:.7rem .55rem;border-bottom:1px solid rgba(201,219,228,.28);text-align:left;font-size:.95rem}.tracker__log th{font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:#b4cbd5}.tracker__tag{margin-left:.45rem;font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;color:#8ec2d4}.tracker__invoices{margin:2rem 0 0;padding:0;list-style:none}.tracker__invoices-label{margin-bottom:.75rem;font-size:.75rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:#8ec2d4}.tracker__invoice-link{padding:.7rem 0;border-bottom:1px solid rgba(201,219,228,.28);color:#eef4f7;font-weight:600}@media(hover: hover){.tracker__home:hover{color:#8ec2d4}.tracker__btn:hover:not(:disabled),.tracker__signout:hover{color:#eef4f7;border-color:#c9dbe4}.tracker__btn--start:hover:not(:disabled){color:#eef4f7;background:rgba(142,194,212,.12)}.tracker__btn--stop:hover:not(:disabled){background:rgba(192,112,112,.12)}.tracker__banner a:hover,.tracker__invoice-link:hover{color:#8ec2d4}}.tracker__home:focus-visible,.tracker__select:focus-visible,.tracker__label input:focus-visible,.tracker__btn:focus-visible,.tracker__signout:focus-visible,.tracker__invoice-link:focus-visible{outline:2px solid #8ec2d4;outline-offset:4px}.invoice-doc{margin-bottom:1.75rem;padding:1.5rem 1.35rem 1.35rem;border:1.5px solid rgba(201,219,228,.35);background:rgba(13,18,24,.62)}.invoice-doc__brand{gap:1.25rem;margin-bottom:1.5rem;padding-bottom:1.25rem;border-bottom:1.5px solid #c9dbe4;align-items:flex-start}.invoice-doc__logo{width:3rem;height:auto;margin-bottom:.7rem}.invoice-doc__company{margin:0;font-size:1.05rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.invoice-doc__meta{margin:.25rem 0 0;color:#b4cbd5;font-weight:600}.invoice-doc__kicker,.invoice-doc__parties h2,.invoice-doc__notes h2{margin:0 0 .4rem;font-size:.75rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:#8ec2d4}.invoice-doc__number{margin:0;font-size:clamp(1.6rem,3vw,2.2rem);font-weight:800;letter-spacing:.04em}.invoice-doc__id{text-align:left}@media only screen and (min-width: 768px){.invoice-doc__id{text-align:right}}.invoice-doc__parties{gap:2rem;margin-bottom:1.5rem}.invoice-doc__parties p{margin:0 0 .25rem;color:#eef4f7}.invoice-doc__table{width:100%;border-collapse:collapse;margin-bottom:1.25rem}.invoice-doc__table th,.invoice-doc__table td{padding:.65rem .4rem;border-bottom:1px solid rgba(201,219,228,.28);text-align:left;font-size:.95rem}.invoice-doc__table th{font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:#b4cbd5}.invoice-doc__table th:nth-child(n+3),.invoice-doc__table td:nth-child(n+3){text-align:right}.invoice-doc__totals{margin:0 0 0 0;max-width:22rem;margin-left:auto}.invoice-doc__totals div{padding:.35rem 0}.invoice-doc__totals dt{color:#b4cbd5;font-size:.78rem;letter-spacing:.12em;text-transform:uppercase}.invoice-doc__totals dd{margin:0;font-weight:700}.invoice-doc__due{margin-top:.4rem;padding-top:.7rem;border-top:1.5px solid #c9dbe4}.invoice-doc__due dd{font-size:1.35rem}.invoice-doc__notes{margin-top:1.5rem;padding-top:1.15rem;border-top:1px solid rgba(201,219,228,.28)}.invoice-doc__notes p{margin:0 0 .6rem;color:#eef4f7;line-height:1.55}.invoice-form{gap:1rem}.invoice-form__grid{gap:1rem}.invoice-form textarea{width:100%;min-height:5.5rem;padding:.7rem .8rem;border:1.5px solid rgba(201,219,228,.35);border-radius:4px;background:rgba(13,18,24,.7);color:#eef4f7;font:inherit;resize:vertical}.invoice-form textarea:focus{outline:2px solid #8ec2d4;outline-offset:2px;border-color:#8ec2d4}*,*::before,*::after{box-sizing:border-box}html,body{margin:0;min-height:100%;background:#0d1218;color:#eef4f7}body{font-family:"Montserrat",system-ui,sans-serif;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}img{max-width:100%;height:auto}a{color:inherit;text-decoration:none}address{font-style:normal}
