:root{--navy:#16202b;--bronze:#8a5a1f;--bronze-lt:#c99a5b;--stone:#efede8;--mist:#c9ced4;--slate:#3a4756;--ink-2:#4a5562;--rule:#16202b24;--rule-dk:#c9ced42e;--glass:#f6f5f1d1;--glass-line:#ffffffbf;--display:"Marcellus", Georgia, serif;--body:"IBM Plex Sans", Arial, sans-serif;--mono:"IBM Plex Mono", ui-monospace, Menlo, monospace;--acc:var(--bronze);color-scheme:light}*{box-sizing:border-box}body{background:var(--stone);color:var(--navy);font:16px/1.6 var(--body);-webkit-font-smoothing:antialiased;margin:0}.wrap{max-width:1200px;margin:0 auto;padding-inline:clamp(16px,4vw,40px)}p,h1,h2,ul,dl,dd{margin:0}.display{font-family:var(--display);text-wrap:balance;font-weight:400;line-height:1.1}.label{font:500 .75rem/1.4 var(--mono);letter-spacing:.08em;text-transform:uppercase}.btn{font:500 .9375rem/1 var(--body);cursor:pointer;white-space:nowrap;border:0;border-radius:4px;align-items:center;gap:10px;padding:15px 22px;text-decoration:none;display:inline-flex}.btn-dark{background:var(--navy);color:var(--stone)}a:focus-visible,button:focus-visible{outline:2px solid var(--bronze);outline-offset:3px}.page{grid-template-rows:auto 1fr;min-height:100vh;display:grid;position:relative;overflow:hidden}.page>img.bg{object-fit:cover;object-position:78% 40%;width:100%;height:100%;position:absolute;inset:0}.page:before{content:"";z-index:1;pointer-events:none;background:linear-gradient(90deg, var(--stone) 0%, #efede8f5 34%, #efede88c 56%, #efede814 80%);position:absolute;inset:0}.page>:not(.bg){z-index:2;position:relative}.nav{padding-top:calc(env(safe-area-inset-top,0px) + 20px)}.pill{border:1px solid var(--rule);-webkit-backdrop-filter:blur(14px);background:#efede899;border-radius:999px;justify-content:space-between;align-items:center;gap:16px;padding:10px 12px 10px 16px;display:flex}.lockup{font-family:var(--display);letter-spacing:.08em;align-items:center;gap:12px;font-size:1.3rem;display:flex}.lockup .mk{width:40px;height:40px;color:var(--navy);flex:none;display:block}.pill ul{color:var(--ink-2);gap:26px;padding:0;font-size:.875rem;list-style:none;display:flex}.pill .btn{padding:11px 16px;font-size:.8125rem}@media (width<=760px){.pill ul{display:none}}@media (width<=440px){.lockup{gap:9px;font-size:1.1rem}.lockup .mk{width:32px;height:32px}.pill .btn{padding:10px 12px;font-size:.75rem}}.contact{grid-template-columns:minmax(0,1fr) minmax(0,470px);align-items:start;gap:clamp(28px,5vw,80px);padding-block:clamp(48px,7vw,96px);display:grid}.words{gap:24px;min-width:0;display:grid}.words .label{color:var(--bronze)}.words h1{max-width:9em;font-size:clamp(2.5rem,4.4vw + .6rem,4.6rem)}.words .lede{color:var(--ink-2);text-wrap:pretty;max-width:30em;font-size:1.125rem}.details{border-top:1px solid var(--rule);max-width:30em;display:grid}.details>div{border-bottom:1px solid var(--rule);grid-template-columns:96px minmax(0,1fr);align-items:baseline;gap:16px;padding-block:14px;display:grid}.details dt{font:500 .75rem/1.6 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-2)}.details dd{color:var(--slate);min-width:0}.email{flex-wrap:wrap;align-items:baseline;gap:12px;display:flex}.email span{font:500 1.0625rem/1.4 var(--body);color:var(--navy);-webkit-user-select:all;user-select:all}.copy{font:500 .75rem/1 var(--mono);letter-spacing:.04em;color:var(--bronze);border:1px solid var(--rule);cursor:pointer;background:0 0;border-radius:999px;padding:6px 10px}.book{min-width:0;max-height:var(--cap,680px);border-radius:10px;flex-direction:column;gap:14px;padding:22px 22px 14px;display:flex;box-shadow:0 24px 60px #16202b29}.glass{background:var(--glass);border:1px solid var(--glass-line);-webkit-backdrop-filter:blur(20px)saturate(1.1)}.book .hd{border-bottom:1px solid var(--rule);flex-wrap:wrap;flex:none;justify-content:space-between;align-items:start;gap:8px 16px;padding-bottom:12px;display:flex}.book .hd>div{gap:4px;display:grid}.book .open-cal{font:500 .8125rem/1.4 var(--body);color:var(--bronze);white-space:nowrap;padding-top:2px;text-decoration:none}.book .open-cal:hover{text-underline-offset:3px;text-decoration:underline}.book .hd .label{color:var(--bronze)}.book .hd h2{font:400 1.5rem/1.2 var(--display)}.book .hd p{color:var(--ink-2);font-size:.875rem}.cal{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:18px;display:grid}.month{gap:8px;min-width:0;display:grid}.month .mh{font:500 .8125rem/1 var(--mono);letter-spacing:.04em;color:var(--navy);justify-content:space-between;display:flex}.grid{text-align:center;grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.grid .dow{font:500 .625rem/1.8 var(--mono);color:var(--ink-2);letter-spacing:.06em}.grid button,.grid span.d{font:400 .8125rem/1 var(--body);aspect-ratio:1;color:var(--ink-2);background:0 0;border:0;border-radius:6px;place-items:center;min-width:0;padding:0;display:grid}.grid span.d{opacity:.45}.grid button{color:var(--navy);cursor:pointer;background:#16202b0f;font-weight:500}.grid button:hover{background:#8a5a1f24}.grid button.sel{background:var(--navy);color:var(--stone)}.times{align-content:start;gap:6px;min-width:0;display:grid}.times .th{font:500 .8125rem/1 var(--mono);letter-spacing:.04em;color:var(--navy);padding-bottom:2px}.times button{font:500 .875rem/1 var(--body);border:1px solid var(--rule);color:var(--navy);cursor:pointer;background:#fff9;border-radius:6px;padding:11px 10px}.times button:hover{border-color:var(--bronze);color:var(--bronze)}.book .ft{border-top:1px solid var(--rule);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding-top:14px;display:flex}.book .note{font:400 .6875rem/1.4 var(--mono);color:var(--ink-2);letter-spacing:.02em;max-width:22em}@media (width<=900px){.contact{grid-template-columns:1fr}.page:before{background:linear-gradient(#efede8ed 0%,#efede8f2 55%,#efede88c 100%)}}@media (width<=460px){.cal{grid-template-columns:1fr}.book{padding:18px}.details>div{grid-template-columns:1fr;gap:2px}}.site-foot{background:var(--navy);color:var(--mist);padding-block:40px}.site-foot .wrap{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;display:flex}.site-foot .lockup{color:var(--stone)}.site-foot .lockup .mk{color:var(--stone);--acc:var(--bronze-lt)}.site-foot p{font-size:.8125rem}.mk svg{width:100%;height:100%;display:block;overflow:visible}.spin-a{transform-origin:100px 100px;animation:140s linear infinite spin}.spin-b{transform-origin:100px 100px;animation:100s linear infinite reverse spin}@keyframes spin{to{transform:rotate(360deg)}}.draw{stroke-dasharray:1 1;stroke-dashoffset:0}.onload .draw{animation:1s cubic-bezier(.32,.72,0,1) both draw}.onload .draw.r2{animation-delay:.25s}.onload .draw.r3{animation-delay:.5s}.onload .node,.onload .core{transform-box:fill-box;transform-origin:50%;animation:.5s cubic-bezier(.19,1,.22,1) both pop}.onload .node{animation-delay:1.15s}@keyframes draw{0%{stroke-dashoffset:1px}to{stroke-dashoffset:0}}@keyframes pop{0%{opacity:0;transform:scale(.2)}to{opacity:1;transform:scale(1)}}@media (prefers-reduced-motion:reduce){.spin-a,.spin-b,.onload .draw,.onload .node,.onload .core{animation:none}}.cal-embed{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#16202b47 transparent;border-radius:6px;flex:auto;width:100%;min-height:300px;overflow-y:auto}.cal-embed:focus-visible{outline:2px solid var(--bronze);outline-offset:2px}
