:root{--space-small:12px;--space-medium:32px;--space-large:80px;--type-small:12px;--type-body:18px;--type-title:28px}
*{box-sizing:border-box}body{margin:0;background:#fff;color:#2d2d2d;font:18px/1.5 Georgia,serif}
main{width:min(82%,1120px);margin:0 auto;padding:80px 0}
main>section+section,main>.opening+section{margin-top:80px}
h1,h2,h3,p{margin:0;font-weight:400}h1,h2{font-size:28px;line-height:1.2}h3{font-size:18px}
small,.plate span{font:12px/1.5 Graphik,Arial,sans-serif}small{display:block;margin-bottom:12px}
p{max-width:55ch;margin-top:12px}a{color:inherit;text-decoration:none;font-style:italic}a:hover,a:focus-visible{color:#c3c4b7}
.opening a,main>p{display:inline-block;margin-top:32px}.portrait,.service-body{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,320px);gap:32px;align-items:start}
img{display:block;width:100%;height:auto}.portrait h2{font-size:18px;margin-top:12px}
.entry{border-top:1px solid #c3c4b7;padding-top:12px;margin-top:32px}.entry small{margin:0}.service-body{margin-top:32px}.service-body .entry:first-child{margin:0}.plate span{display:block;margin-top:12px}
@media(max-width:700px){.portrait,.service-body{grid-template-columns:1fr}.portrait img,.plate{max-width:240px}}

.process-example{margin:var(--space-large) 0 0;max-width:640px}
.process-example>div{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:var(--space-small)}
.process-example figcaption{margin-top:var(--space-small);font:var(--type-small)/1.5 Graphik,Arial,sans-serif}
