:root{color-scheme:light;--paper:#FCFBFA;--card:#FFFFFF;--ink:#1B1C1B;--graphite:#404041;--mist:#77787B;--hair:#DCDDD9;--rule:#1B1C1B;--serif:"Playfair Display",Georgia,"Times New Roman",serif;--sans:"Roboto",-apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif;--gutter:clamp(16px,4vw,48px);--max:1240px}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}img{max-width:100%;display:block}a{color:inherit}h1,h2,h3{font-family:var(--serif);font-weight:400;margin:0;text-wrap:balance;letter-spacing:-.005em;line-height:1.15}p{margin:0}.wrap{max-width:var(--max);margin:0 auto;padding-inline:var(--gutter)}.band{background:var(--paper);color:var(--ink)}.band-white{--paper:#FFFFFF;--card:#FFFFFF}.band-dark{--paper:#1B1C1B;--card:#242624;--ink:#EDEEEA;--graphite:#CFD1CB;--mist:#9A9D96;--hair:#33362F;--rule:#EDEEEA}.band-dark .mark{filter:invert(1)}.eyebrow{font-size:.7rem;letter-spacing:.22em;text-transform:uppercase;color:var(--mist);font-weight:500}.link{display:inline-block;text-decoration:none;padding-bottom:2px;border-bottom:1px solid var(--rule);font-weight:500;line-height:1.3}.link:hover{border-bottom-color:var(--mist);color:var(--graphite)}.link:focus-visible,a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--ink);outline-offset:3px}.links{display:flex;flex-wrap:wrap;gap:14px 36px;align-items:baseline}.cap{font-size:.68rem;letter-spacing:.18em;text-transform:uppercase;color:var(--mist);margin-top:10px}.note{color:var(--graphite)}.muted{color:var(--mist)}.mast{border-bottom:1px solid var(--rule);position:sticky;top:env(safe-area-inset-top,0px);z-index:5;background:var(--paper)}.mast .wrap{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:24px;padding-block:16px}.brand img.mark{width:66px;height:auto}.mast .place{justify-self:center;text-align:center}.mast nav{display:flex;gap:28px}.mast nav a{text-decoration:none;font-size:.8rem;letter-spacing:.16em;text-transform:uppercase;font-weight:500;padding-bottom:3px;border-bottom:1px solid transparent}.mast nav a:hover{border-bottom-color:var(--mist)}.mast nav a[aria-current=page]{border-bottom-color:var(--rule)}.hero{display:grid;grid-template-columns:1fr;gap:48px;align-items:center;padding-block:clamp(48px,8vw,110px) clamp(40px,6vw,72px)}.hero h1{font-size:clamp(2.6rem,6.2vw,5.4rem);line-height:1.02;margin:18px 0 26px;max-width:16ch}.hero .lede{font-size:1.08rem;max-width:44ch;color:var(--graphite);margin-bottom:34px}.hero-band .cover{position:relative;width:100%;aspect-ratio:21/9;max-height:560px;overflow:hidden;background:#1b1c1b}.hero-band .cover img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 45%;opacity:0;transition:opacity 1.4s ease}.hero-band .cover img.on{opacity:1}@media(max-width:700px){.hero-band .cover{aspect-ratio:4/3}}.proof{padding-block:clamp(40px,6vw,80px);border-bottom:1px solid var(--hair)}.proof p{font-family:var(--serif);font-style:italic;font-size:clamp(1.5rem,3vw,2.4rem);line-height:1.3;max-width:30ch;text-wrap:balance}.proof .eyebrow{margin-bottom:18px;display:block}.cols{display:grid;grid-template-columns:repeat(3,1fr);padding-block:clamp(40px,6vw,80px)}.cols .col{padding-inline:34px;border-left:1px solid var(--hair)}.cols .col:first-child{padding-left:0;border-left:0}.cols .col:last-child{padding-right:0}.cols h3{font-size:1.9rem;margin:10px 0 12px}.cols p{color:var(--graphite);max-width:34ch}.who{padding-block:clamp(40px,6vw,80px)}.who-head{max-width:60ch;margin-bottom:38px}.who-head h2{font-size:clamp(1.8rem,3vw,2.5rem);margin-top:10px}.who-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:32px}.who-grid div{border-top:1px solid var(--rule);padding-top:16px}.who-grid h3{font-size:1.5rem;margin-bottom:10px}.who-grid p{color:var(--graphite);font-size:.95rem}@media(max-width:900px){.who-grid{grid-template-columns:1fr 1fr}}@media(max-width:520px){.who-grid{grid-template-columns:1fr}}.steps{display:grid;grid-template-columns:1fr 2fr;gap:48px;padding-block:clamp(40px,6vw,80px)}.steps h2{font-size:clamp(1.8rem,3vw,2.5rem);margin-top:10px}.steps .intro{color:var(--graphite);max-width:36ch;margin-top:16px}.steps ol{list-style:none;margin:0;padding:0;display:grid}.steps li{display:grid;grid-template-columns:64px 1fr;gap:18px;align-items:baseline;padding-block:18px;border-top:1px solid var(--hair);font-family:var(--serif);font-size:clamp(1.25rem,2vw,1.6rem);line-height:1.35}.steps li:last-child{border-bottom:1px solid var(--hair)}.steps li span{font-family:var(--serif);font-style:italic;font-size:2.2rem;line-height:1;color:var(--mist)}.steps .fine{margin-top:18px;color:var(--mist);font-size:.92rem}.teaser{padding-block:clamp(40px,6vw,80px)}.teaser .head{display:flex;justify-content:space-between;align-items:baseline;gap:24px;flex-wrap:wrap;margin-bottom:34px}.teaser h2{font-size:clamp(1.8rem,3vw,2.5rem);margin-top:8px}.trio{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.trio a{text-decoration:none}.trio img{width:100%;aspect-ratio:4/5;object-fit:cover;background:var(--hair)}.trio .cap{color:var(--ink)}.trio .cap em{font-style:normal;color:var(--mist);margin-left:8px}.strip{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center;padding-block:clamp(48px,7vw,96px)}.strip h2{font-size:clamp(2rem,4vw,3.2rem)}.strip p{color:var(--graphite);max-width:40ch;margin-bottom:26px}.strip .big{font-family:var(--serif);font-size:clamp(1.4rem,2.6vw,2rem);text-decoration:none;border-bottom:1px solid var(--rule);padding-bottom:4px;word-break:break-all}.strip .big:hover{border-bottom-color:var(--mist)}.page-head{padding-block:clamp(40px,7vw,96px) clamp(28px,4vw,48px);display:grid;grid-template-columns:7fr 5fr;gap:48px;align-items:end}.page-head h1{font-size:clamp(2.6rem,6vw,5rem);line-height:1.02;margin-top:18px}.page-head .lede{color:var(--graphite);max-width:42ch;font-size:1.08rem}.concept{display:grid;grid-template-columns:1.15fr 1fr;gap:56px;align-items:center;padding-block:clamp(44px,6vw,80px);border-bottom:1px solid var(--hair)}.concept.flip .mosaic{order:2}.concept:last-child{border-bottom:0}.concept h2{font-size:clamp(2rem,3.6vw,3rem);line-height:1.08;margin-bottom:12px}.concept .note{margin-bottom:26px;max-width:40ch}.concept h2+ul{margin-top:22px}.concept ul{list-style:none;margin:0;padding:0;display:grid;border-top:1px solid var(--hair)}.concept li{padding-block:10px;border-bottom:1px solid var(--hair);color:var(--graphite)}.price{display:flex;flex-wrap:wrap;gap:6px 18px;align-items:baseline}.price .v{font-family:var(--serif);font-size:1.7rem;font-variant-numeric:tabular-nums}.price .k{color:var(--mist);font-size:.9rem}.mosaic{display:grid;gap:12px;grid-template-columns:repeat(2,1fr)}.mosaic img{width:100%;height:100%;object-fit:cover;background:var(--hair)}.mosaic.m2 img{aspect-ratio:4/5}.mosaic.m2.wide{grid-template-columns:1fr}.mosaic.m2.wide img{aspect-ratio:3/2}.mosaic.m3 img:first-child{grid-column:1/-1;aspect-ratio:16/10}.mosaic.m3 img:not(:first-child){aspect-ratio:1}.mosaic.m4 img{aspect-ratio:1}.toc{display:flex;flex-wrap:wrap;gap:10px 28px;padding-block:18px;border-bottom:1px solid var(--hair)}.toc a{text-decoration:none;font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;font-weight:500;color:var(--graphite);padding-bottom:2px;border-bottom:1px solid transparent}.toc a:hover{border-bottom-color:var(--rule);color:var(--ink)}.mosaic.pending{grid-template-columns:1fr;aspect-ratio:4/3;place-items:center;border:1px dashed var(--hair);background:var(--card);max-width:100%}.mosaic.pending span{font-size:.7rem;letter-spacing:.2em;text-transform:uppercase;color:var(--mist)}.price .v.pending{font-size:1.15rem;color:var(--mist);font-style:italic}.closer{padding-block:clamp(48px,7vw,96px);max-width:56ch;display:grid;gap:22px}.closer h2{font-size:clamp(1.9rem,3.4vw,2.8rem)}.closer p{color:var(--graphite)}.contact{display:grid;grid-template-columns:5fr 6fr;gap:64px;padding-block:clamp(40px,7vw,96px)}.contact h1{font-size:clamp(2.2rem,4.6vw,3.8rem);line-height:1.06;margin:18px 0 22px}.contact .lede{color:var(--graphite);max-width:36ch;margin-bottom:28px}.form{display:grid;gap:22px}.form .row{display:grid;grid-template-columns:1fr 1fr;gap:22px}.field{display:grid;gap:8px}.field label{font-size:.7rem;letter-spacing:.2em;text-transform:uppercase;color:var(--mist);font-weight:500}.field input,.field textarea{font:inherit;color:var(--ink);background:var(--card);border:1px solid var(--hair);padding:12px 14px;border-radius:0;width:100%}.field input:focus,.field textarea:focus{border-color:var(--ink)}.field textarea{min-height:120px;resize:vertical}.field.choice{border:0;padding:0;margin:0;gap:10px}.field.choice legend{font-size:.7rem;letter-spacing:.2em;text-transform:uppercase;color:var(--mist);font-weight:500;padding:0;margin-bottom:4px}.field.choice label{font-size:.95rem;color:var(--graphite);display:flex;gap:10px;align-items:center;letter-spacing:0;text-transform:none;font-weight:400}.field.choice input{accent-color:var(--ink);width:16px;height:16px;margin:0}.field label .opt{color:var(--mist);letter-spacing:.08em;font-weight:400;margin-left:6px}.btn{font:inherit;font-weight:500;letter-spacing:.16em;text-transform:uppercase;font-size:.8rem;background:var(--ink);color:var(--paper);border:1px solid var(--ink);padding:16px 28px;cursor:pointer;justify-self:start}.btn:hover{background:var(--graphite);border-color:var(--graphite)}.form .fine{color:var(--mist);font-size:.9rem}.about{padding-block:clamp(40px,6vw,72px)}.about-head{margin-bottom:30px}.about-head h2{font-size:clamp(1.6rem,2.6vw,2.2rem);margin-top:10px}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px 56px}.person{display:grid;grid-template-columns:132px 1fr;gap:22px;align-items:start}.person img,.photo-pending{width:132px;aspect-ratio:4/5;object-fit:cover;background:var(--hair);max-width:100%}.photo-pending{display:grid;place-items:center;border:1px dashed var(--hair);background:var(--card)}.photo-pending span{font-size:.62rem;letter-spacing:.18em;text-transform:uppercase;color:var(--mist);text-align:center;padding:6px}.person h3{font-size:1.4rem;margin-bottom:8px}.person p{color:var(--graphite);font-size:.95rem}@media(max-width:900px){.about-grid{grid-template-columns:1fr}}@media(max-width:520px){.person{grid-template-columns:104px 1fr;gap:16px}.person img,.photo-pending{width:104px}}.foot{border-top:1px solid var(--hair)}.foot .wrap{display:flex;justify-content:space-between;align-items:center;gap:18px 32px;flex-wrap:wrap;padding-block:26px 40px;font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--mist)}.foot a{text-decoration:none}.foot a:hover{color:var(--ink)}.foot img.mark{width:40px;height:auto}@media(max-width:900px){.hero,.page-head,.steps,.strip,.contact{grid-template-columns:1fr;gap:32px}.cols{grid-template-columns:1fr;gap:28px}.cols .col{padding-inline:0;border-left:0;border-top:1px solid var(--hair);padding-top:22px}.cols .col:first-child{border-top:0;padding-top:0}.concept{grid-template-columns:1fr;gap:28px}.concept:nth-of-type(2n) .mosaic{order:0}.trio{grid-template-columns:1fr 1fr}.trio a:last-child{grid-column:1/-1}.trio a:last-child img{aspect-ratio:16/9}.mast .place{display:none}.mast .wrap{grid-template-columns:auto 1fr}.mast nav{justify-self:end}}@media(max-width:520px){.form .row,.trio{grid-template-columns:1fr}.trio a:last-child img{aspect-ratio:4/5}.steps li{grid-template-columns:44px 1fr}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}.simple{padding-block:clamp(56px,9vw,120px);max-width:56ch;display:grid;gap:20px}.simple h1{font-size:clamp(2.4rem,5vw,4rem);line-height:1.04}.simple .lede{color:var(--graphite);font-size:1.08rem}.hp{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}
