:root{--bg: #000000;--ink: #6e6e6e;--muted: #b0b0ac;--line: #3a3a38;--light: #e4e4e4;--brand: #6e8080;--lightlead: #7e7e7e;--serif: "Cormorant Garamond", "Times New Roman", serif;--display: "Google Sans Flex", "Google Sans", "Inter", ui-sans-serif, system-ui, sans-serif;--sans:"Inter", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--gutter: clamp(16px, 3vw, 32px)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);font-weight:300;line-height:1.6;-webkit-font-smoothing:antialiased}a{color:inherit}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:1px solid var(--ink);outline-offset:4px}.site-header{position:absolute;inset:0 0 auto;z-index:1;display:flex;justify-content:space-between;align-items:baseline;padding:20px var(--gutter);font-size:13px}.brand{font-weight:500;letter-spacing:.08em;text-decoration:none}.nav-link{color:var(--muted);text-decoration:none;transition:color .2s}.nav-link:hover{color:var(--ink)}.page{min-height:100vh}.wave{display:block;width:100%;height:clamp(230px,42.5vh,443px)}.hero{margin-top:calc(-1*clamp(60px,10vh,110px) - 38px);padding:0 var(--gutter) clamp(32px,6vh,70px)}@media (max-width: 640px){.hero{margin-top:calc(-1*min(113px,17vh))}}.hero h1{margin:0;font-family:var(--display);font-weight:350;font-size:clamp(1.625rem,6vw,5rem);color:var(--brand);line-height:.9;letter-spacing:-.03em;text-transform:uppercase}@media (max-width: 640px){.hero h1{font-size:3.5rem;font-weight:400}}.row{display:grid;gap:10px;padding:0 var(--gutter) clamp(24px,5vh,48px)}@media (max-width: 899px){.columns{max-width:calc(26rem + 2 * var(--gutter));margin:0 auto}.intro .row{padding-bottom:clamp(12px,2.5vh,24px)}.columns #contact{top:15px}}@media (min-width: 900px){.columns{display:grid;grid-template-columns:minmax(min-content,25rem) minmax(0,26rem);justify-content:center;align-content:center;align-items:start;column-gap:clamp(48px,7vw,120px);margin-top:0;padding:clamp(24px,4vh,48px) var(--gutter)}.columns .hero{margin-top:0;padding:0 0 clamp(24px,4vh,48px)}.columns .hero h1{white-space:nowrap;margin-top:-.05em}.columns .row{padding:0}.columns #contact{top:0}}.lead{max-width:25rem;margin:0;color:var(--lightlead);font-size:16px;font-weight:400;line-height:1.7}#contact{position:relative;top:30px}.contact{--field: #1e1e1e;display:grid;gap:18px;max-width:26rem}.contact label{display:grid;gap:8px}.contact label span{color:var(--muted);font-size:13px;font-weight:400;line-height:1}.contact input,.contact textarea{display:block;width:100%;margin:0;padding:12px 14px;font-family:var(--sans);font-size:16px;font-weight:400;line-height:1.5;color:var(--light);caret-color:var(--light);background:var(--field);border:1px solid transparent;border-radius:8px;-webkit-appearance:none;-moz-appearance:none;appearance:none;transition:border-color .2s}.contact input::placeholder,.contact textarea::placeholder{color:var(--ink);opacity:1}.contact textarea{resize:none;field-sizing:content;min-height:calc(4.5em + 26px);max-height:14em}.contact input:focus,.contact textarea:focus{outline:none;border-color:var(--ink)}.contact input:-webkit-autofill{-webkit-text-fill-color:var(--light);box-shadow:0 0 0 1000px var(--field) inset;transition:background-color 9999s}button{justify-self:start;margin-top:4px;padding:10px 22px;font:inherit;font-size:13px;font-weight:400;letter-spacing:.04em;color:var(--ink);background:transparent;border:1px solid var(--ink);border-radius:999px;cursor:pointer;transition:background .2s,color .2s}.contact button{justify-self:center;display:grid;place-items:center;padding:10px 22px 10px calc(22px + .14em);border-radius:0;font-size:11px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;line-height:1}button:hover{color:var(--light);background:var(--ink)}button:disabled{cursor:default;opacity:.6}button:disabled:hover{color:var(--ink);background:transparent}.contact [aria-invalid=true]{border-color:#8a4a4a}.contact .field-error{color:#c88a8a;font-size:12px;line-height:1.3}.form-status{margin:0;min-height:1.4em;text-align:center;font-size:13px;color:var(--muted)}.form-status.sent{color:var(--light)}.form-status.error{color:#c88a8a}.hp{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.site-footer{padding:24px var(--gutter) 32px;color:var(--ink);font-size:12px;text-align:center}@media (max-width: 899px){#root{display:flex;flex-direction:column;min-height:100vh;min-height:100svh}.page{flex:1 0 auto;min-height:0}.columns #contact{padding-bottom:29px}.form-status:empty{position:absolute;min-height:0}.site-footer{padding-bottom:16px}}.feedback{--slot: 78%;padding:56px 0 24px;overflow:hidden}.feedback-stage{display:grid}.feedback-item{grid-area:1 / 1;width:var(--slot);margin:0 0 0 calc((100% - var(--slot)) / 2);padding:0 20px;display:grid;gap:12px;align-content:start;justify-items:center;text-align:center;transform:translate(calc(var(--offset) * 100%));opacity:.25;transition:transform .9s cubic-bezier(.65,0,.35,1),opacity .9s ease}.feedback-item[data-pos="0"]{opacity:1}.feedback-item[data-pos="-2"],.feedback-item[data-pos="2"]{opacity:0}@media (prefers-reduced-motion: reduce){.feedback-item{transition:opacity .9s ease}}.feedback blockquote{margin:0;color:var(--lightlead);font-size:14px;font-weight:400;line-height:1.65}.feedback figcaption{display:grid;gap:4px;justify-items:center}.feedback-name{color:var(--muted);font-size:11px;font-weight:500;line-height:1;letter-spacing:.12em;text-transform:uppercase}.feedback-role{color:var(--ink);font-size:12px}@media (min-width: 900px){.feedback{--slot: calc(100% / 3);margin:0 calc(var(--gutter) + clamp(48px,10vw,144px));padding-top:48px;padding-bottom:16px;flex:none}.feedback-item{padding:0 32px}}@media (min-width: 900px){#root{display:flex;flex-direction:column;min-height:100vh}.page{flex:1 0 auto;display:flex;flex-direction:column;min-height:0}.wave{--wave-h: clamp(230px, 42.5vh, 443px);flex:none;height:var(--wave-h);margin-bottom:calc(-.5 * var(--wave-h))}.columns{flex:1 0 auto}.site-footer{flex:none}.site-footer{padding:12px var(--gutter) 16px}}.card{max-width:28rem;margin:0 auto;padding:30vh var(--gutter) 0}.card h1{margin:0 0 .5rem;font-family:var(--serif);font-weight:300;font-size:2.5rem}.subtitle{margin:0 0 1.5rem;color:var(--muted)}.home{display:inline-block;padding:14px 28px;font-size:14px;color:var(--bg);background:var(--ink);border:1px solid var(--ink);border-radius:999px;text-decoration:none}
