:root{--bg:#f6f4f4;--ink:#000;--ink-soft:#1f1f1f;--muted:#666;--faint:#a3a3a3;--fainter:#aaa;--rule:#e2dfdf;--font:"Bodoni Moda", "Bodoni 72", "Didot", "Libre Bodoni", Georgia, "Times New Roman", serif;--sidebar-w:240px}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--ink);font-family:var(--font);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;font-size:17px;font-weight:400;line-height:1.6}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto;display:block}.shell{min-height:100vh;display:flex}.sidebar{width:var(--sidebar-w);flex-direction:column;flex-shrink:0;align-self:flex-start;height:100vh;padding:34px 28px 40px 34px;display:flex;position:sticky;top:0}.brand{display:block}.brand__name{letter-spacing:0;color:var(--ink);margin:0;font-size:44px;font-weight:400;line-height:1.08}.brand__tagline{letter-spacing:.04em;color:var(--fainter);margin:10px 0 0;font-size:16px}.nav{flex-direction:column;gap:8px;margin-top:44px;display:flex}.nav a{color:var(--ink-soft);font-size:22px;line-height:1.2;transition:color .15s}.nav a:hover,.nav a.active{color:var(--faint)}.sidebar__foot{letter-spacing:.02em;color:var(--fainter);margin-top:auto;font-size:12px}.menu-toggle{display:none}.main{min-width:0;max-width:calc(var(--sidebar-w) + 860px);flex:1;padding:34px 48px 80px 40px}.page{max-width:720px}.lede{margin:0 0 22px;font-size:15.6px;line-height:1.75}.lede a,.credit a{color:var(--ink);text-underline-offset:3px;font-style:italic;text-decoration:underline;text-decoration-thickness:1px}.social{margin:0 0 32px;font-size:15.6px}.social a:hover{color:var(--muted)}.section-heading{color:var(--ink);margin:0 0 14px;font-size:17px;font-weight:400}.section-heading+.list{margin-bottom:34px}.list{margin:0;padding:0;list-style:none}.list li{color:var(--muted);letter-spacing:.01em;margin:0 0 14px;padding-left:22px;font-size:14.5px;line-height:1.55;position:relative}.list li:before{content:"•";color:var(--faint);font-size:12px;position:absolute;top:0;left:4px}.list a{color:var(--ink-soft);font-weight:500}.list a:hover{color:var(--faint)}.list .sep{color:var(--muted);margin:0 5px}.credit{letter-spacing:.02em;color:var(--muted);margin:14px 0 0;font-size:12px}.hero-photo{width:100%;max-width:720px;margin:0 0 24px}.hero-photo img{aspect-ratio:3/2;object-fit:cover;width:100%}.about-photo{margin-top:34px}.about-photo img{aspect-ratio:3/2;object-fit:cover}.gallery{grid-template-columns:repeat(4,1fr);gap:12px;margin:10px 0 0;display:grid}.gallery img{aspect-ratio:1;object-fit:cover;background:#e9e6e6;width:100%}.form{max-width:560px}.form__row{grid-template-columns:1fr 1fr;gap:18px;display:grid}.field{flex-direction:column;margin-bottom:22px;display:flex}.field label{color:var(--ink-soft);margin-bottom:8px;font-size:14px}.field label .req{color:var(--faint);margin-left:4px;font-size:12px}.field input,.field textarea{font:inherit;color:var(--ink);background:#fff;border:1px solid #d6d2d2;border-radius:0;outline:none;padding:10px 12px;font-size:15px;transition:border-color .15s}.field input:focus,.field textarea:focus{border-color:var(--ink-soft)}.field textarea{resize:vertical;min-height:150px}.btn{font:inherit;letter-spacing:.16em;text-transform:uppercase;background:var(--ink);color:#fff;border:1px solid var(--ink);cursor:pointer;padding:12px 28px;font-size:13px;transition:background .15s,color .15s}.btn:hover{color:var(--ink);background:0 0}.btn:disabled{opacity:.5;cursor:default}.form__status{color:var(--muted);margin-top:18px;font-size:14.5px}.form__status.error{color:#9b2d2d}@media (width<=860px){.shell{display:block}.sidebar{width:auto;height:auto;padding:24px 22px 0;display:block;position:static}.sidebar__head{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.brand__name{font-size:34px}.brand__tagline{margin-top:6px;font-size:14px}.menu-toggle{font:inherit;color:var(--faint);cursor:pointer;background:0 0;border:0;padding:6px 0;font-size:20px;display:inline-block}.nav{gap:6px;margin-top:18px;display:none}.nav.open{display:flex}.sidebar__foot{display:none}.main{max-width:none;padding:22px 22px 60px}.gallery{grid-template-columns:repeat(2,1fr)}.form__row{grid-template-columns:1fr;gap:0}}@media (width<=420px){.brand__name{font-size:30px}.nav a{font-size:20px}}
