.about{padding-top:var(--section-gap)}.about__row{gap:2rem var(--gutter);grid-template-columns:minmax(0,4fr) minmax(0,8fr);display:grid}.about__row--record{margin-top:max(3.5rem,min(8vw,7.5rem))}.about__title{font-size:var(--step-head)}.about__paragraph{max-width:34ch;font-size:var(--step-lead);line-height:1.4}.about__facts{align-content:start;gap:1.25rem;margin:0;display:grid}.about__facts dt,.about__list-title{color:var(--muted);font-family:var(--font-text),Georgia,serif;font-size:var(--step-small);letter-spacing:0;font-weight:400;line-height:1.4}.about__facts dd{margin:.15rem 0 0}.about__lists{gap:2.5rem var(--gutter);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.about__list{font-family:var(--font-display),system-ui,sans-serif;font-size:var(--step-lead);letter-spacing:-.02em;-webkit-hyphens:auto;hyphens:auto;overflow-wrap:break-word;gap:.35rem;margin:.75rem 0 0;padding:0;font-weight:700;line-height:1.2;list-style:none;display:grid}.about__list li>*,.about__list li{min-width:0}.about__list--steps{counter-reset:step}.about__list--steps li{counter-increment:step;grid-template-columns:1.6em minmax(0,1fr);display:grid}.about__list--steps li:before{content:counter(step)".";color:var(--accent)}@media (max-width:760px){.about__row,.about__lists{grid-template-columns:1fr}.about__facts{grid-template-columns:repeat(2,minmax(0,1fr))}}
.contact{margin-top:var(--section-gap);background:var(--field);color:var(--field-ink)}.contact__inner{flex-direction:column;min-height:100svh;padding-top:max(3rem,min(7vw,5.5rem));padding-bottom:2rem;display:flex}.contact__top{gap:1.5rem var(--gutter);grid-template-columns:minmax(0,4fr) minmax(0,8fr);align-items:end;display:grid}.contact__title{font-size:var(--step-head)}.contact__sentence{max-width:30ch;font-size:var(--step-lead);line-height:1.3}.contact__form{margin-top:max(2.5rem,min(6vw,4.5rem))}.contact__builder{gap:1rem var(--gutter);border:0;grid-template-columns:minmax(0,4fr) minmax(0,8fr);margin:0;padding:0;display:grid}.contact__question{float:left;color:var(--field-muted);font-size:var(--step-body);padding:0}.contact__options{flex-wrap:wrap;gap:6px;display:flex}.contact__option{cursor:pointer;position:relative}.contact__option input{opacity:0;cursor:pointer;margin:0;position:absolute;top:0;bottom:0;left:0;right:0}.contact__option span{min-height:3rem;font-family:var(--font-display),system-ui,sans-serif;letter-spacing:-.01em;transition:background-color .2s ease,color .2s ease,transform .2s var(--ease-out);background:#d9dcde;align-items:center;padding:0 1.1rem;font-weight:700;display:inline-flex}.contact__option:hover span{background:#cbcfd2}.contact__option input:checked+span{background:var(--field-ink);color:var(--field)}.contact__option input:focus-visible+span{outline:3px solid var(--field-accent);outline-offset:2px}.contact__option:active span{transform:scale(.97)}.contact__email{font-family:var(--font-display),system-ui,sans-serif;letter-spacing:-.05em;overflow-wrap:anywhere;margin-top:auto;padding-top:max(3rem,min(8vh,6rem));font-size:max(2.2rem,min(7.6vw,9.5rem));font-weight:700;line-height:.95;transition:color .25s}.contact__email:hover{color:var(--field-accent)}.contact__corners{font-size:var(--step-small);justify-content:space-between;gap:1rem;margin-top:2.5rem;display:flex}.contact__corners ul{gap:1.5rem;margin:0;padding:0;list-style:none;display:flex}.contact .text-link:hover{color:var(--field-accent)}.contact :focus-visible{outline-color:var(--field-accent)}@media (max-width:760px){.contact__top,.contact__builder{grid-template-columns:1fr}.contact__email{font-size:11.5vw}.contact__domain{display:block}}@media (max-aspect-ratio:1){.contact__inner{min-height:auto}}.contact__fields{gap:1.75rem var(--gutter);margin-top:max(2rem,min(4vw,3rem));margin-left:calc((100% - var(--gutter))*4/12 + var(--gutter));grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.contact__field{flex-direction:column;gap:.4rem;display:flex}.contact__field--wide,.contact__submit{grid-column:1/-1}.contact__field label{color:var(--field-muted);font-size:var(--step-small);letter-spacing:.02em;text-transform:uppercase;font-weight:600}.contact__field input,.contact__field textarea{border:0;border-bottom:2px solid var(--field-ink);width:100%;color:var(--field-ink);font:inherit;font-family:var(--font-display),system-ui,sans-serif;font-size:var(--step-lead);letter-spacing:-.01em;background:0 0;border-radius:0;padding:.55rem 0 .6rem;transition:border-color .2s,background-color .2s}.contact__field textarea{resize:vertical;min-height:8rem;line-height:1.35}.contact__field input:hover,.contact__field textarea:hover{background:#18191b09}.contact__field input:focus-visible{border-bottom-color:var(--field-accent);background:#c4380a0d;outline:none}.contact__field textarea:focus-visible{border-bottom-color:var(--field-accent);background:#c4380a0d;outline:none}.contact__field input:user-invalid{border-bottom-color:var(--field-accent);border-bottom-style:dashed}.contact__field textarea:user-invalid{border-bottom-color:var(--field-accent);border-bottom-style:dashed}.contact__hint{color:var(--field-muted);font-size:var(--step-small)}.contact__submit{flex-wrap:wrap;align-items:center;gap:1rem 1.5rem;margin-top:.5rem;display:flex}.contact__send{background:var(--field-ink);color:var(--field)}.contact__send:hover{background:var(--field-accent);color:#fff}.contact__send:disabled{cursor:progress;opacity:.7}.contact__status{max-width:44ch;font-size:var(--step-body)}.contact__status:empty{display:none}.contact__status--success{border-left:3px solid var(--field-ink);padding-left:.9rem}.contact__status--error{border-left:3px solid var(--field-accent);color:var(--field-accent);padding-left:.9rem}.contact__status--error .text-link{color:var(--field-ink)}@media (max-width:760px){.contact__fields{grid-template-columns:1fr;margin-left:0}}
.footer{padding-top:max(4rem,min(9vw,8rem));padding-bottom:2rem;overflow:hidden}.footer__name{font-family:var(--font-display),system-ui,sans-serif;letter-spacing:-.055em;text-transform:uppercase;white-space:nowrap;margin-left:-.04em;font-size:max(3rem,min(11.6vw,13rem));font-weight:700;line-height:.85}.footer__row{gap:2.5rem var(--gutter);grid-template-columns:minmax(0,5fr) minmax(0,7fr);margin-top:max(3rem,min(6vw,4.5rem));display:grid}.footer__places{font-family:var(--font-display),system-ui,sans-serif;letter-spacing:-.03em;gap:.5rem;margin:0;padding:0;font-size:max(1.5rem,min(1.1rem + 1.2vw,2.25rem));font-weight:700;line-height:1.15;list-style:none;display:grid}.footer__places a{color:var(--accent);overflow-wrap:anywhere;transition:color .2s}.footer__places a:hover{color:var(--ink)}.footer__credits{color:var(--muted);font-size:var(--step-small)}.footer__credits-title{color:var(--ink)}.footer__credits ul{gap:.35rem;margin:.5rem 0 0;padding:0;list-style:none;display:grid}.footer__legal{color:var(--muted);font-size:var(--step-small);justify-content:space-between;gap:1rem;margin-top:max(3.5rem,min(7vw,6rem));display:flex}@media (max-width:760px){.footer__row{grid-template-columns:1fr}}
.hero{flex-direction:column;min-height:100svh;display:flex;overflow:hidden}.hero__bar{justify-content:space-between;align-items:center;gap:1rem;min-height:5rem;display:flex}.hero__wordmark{font-family:var(--font-display),system-ui,sans-serif;font-size:var(--step-body);letter-spacing:-.02em;font-weight:700}.hero__nav{align-items:center;gap:max(1rem,min(2.4vw,2.25rem));margin:0;padding:0;list-style:none;display:flex}.hero__nav-link{font-family:var(--font-display),system-ui,sans-serif;font-size:var(--step-body);letter-spacing:-.02em;font-weight:700;transition:color .2s;position:relative}.hero__nav-link:after{content:"";transform-origin:0;height:.12em;transition:transform .35s var(--ease-out);background:currentColor;position:absolute;bottom:-.25em;left:0;right:0;transform:scaleX(0)}.hero__nav-link:hover:after{transform:scaleX(1)}.hero__nav-link:focus-visible:after{transform:scaleX(1)}.hero__nav-link--action{color:var(--accent)}.hero__intro{gap:2rem var(--gutter);grid-template-columns:minmax(0,7fr) minmax(0,5fr);align-items:end;margin-top:max(1.5rem,min(5vh,4rem));display:grid}.hero__lead{max-width:40ch;font-size:var(--step-lead);line-height:1.3}.hero__meta{text-align:right;flex-direction:column;align-items:flex-end;gap:1.5rem;padding-bottom:.4rem;display:flex}.hero__name{font-size:var(--step-monument);letter-spacing:-.055em;text-transform:uppercase;margin-top:auto;padding-top:2rem;padding-bottom:.02em;line-height:.8}.hero__line{margin-top:-.04em;margin-bottom:-.04em;padding-top:.04em;padding-bottom:.04em;display:block;overflow:hidden}.hero__line-inner{white-space:nowrap;margin-left:-.05em;display:block}@media (max-width:760px){.hero__nav li:not(:last-child){display:none}.hero__meta{text-align:left;align-items:flex-start}.hero__intro{grid-template-columns:1fr;margin-top:2.5rem}.hero__name{font-size:24.5vw}}@media (max-aspect-ratio:1){.hero{min-height:auto}.hero__name{margin-top:max(3rem,min(12vw,7rem))}}
.intro{margin:var(--section-gap)0 0;aspect-ratio:21/9;background:var(--surface);overflow:hidden}.intro__image{object-fit:cover;object-position:50% 38%;filter:grayscale()contrast(1.05);transform-origin:50% 40%;will-change:transform;width:100%;height:100%}@media (max-width:760px){.intro{aspect-ratio:4/5}.intro__image{object-position:42% 40%}}
.services{gap:3rem var(--gutter);padding-top:var(--section-gap);grid-template-columns:minmax(0,7fr) minmax(0,5fr);align-items:start;display:grid}.services__column{container-type:inline-size}.services__title{letter-spacing:-.05em;text-transform:uppercase;margin-left:-.04em;font-size:16cqw;line-height:.8}.services__bars{gap:6px;margin-top:1.5rem;display:grid}.services__bar{background:var(--surface);transition:background-color .25s}.services__bar:hover{background:#2a2d31}.services__summary{min-height:3.75rem;font-family:var(--font-display),system-ui,sans-serif;font-size:var(--step-body);letter-spacing:-.01em;cursor:pointer;justify-content:space-between;align-items:center;gap:1rem;padding:.75rem 1.25rem;font-weight:700;list-style:none;display:flex}.services__summary::-webkit-details-marker{display:none}.services__sign{flex:none;width:.9rem;height:.9rem;position:relative}.services__sign:before,.services__sign:after{content:"";background:var(--accent);height:2px;transition:transform .35s var(--ease-out);margin-top:-1px;position:absolute;top:50%;bottom:auto;left:0;right:0}.services__sign:after{transform:rotate(90deg)}.services__bar[open] .services__sign:after{transform:rotate(0)}.services__text{max-width:52ch;padding:0 1.25rem 1.5rem}.services__figure{margin:0;position:-webkit-sticky;position:sticky;top:2rem}.services__figure img{width:100%}@media (max-width:900px){.services{grid-template-columns:1fr}.services__figure{position:static}}
.work{padding-top:var(--section-gap)}.work__title{font-size:var(--step-head)}.work__case{gap:2.5rem var(--gutter);grid-template-columns:minmax(0,8fr) minmax(0,4fr);align-items:end;margin-top:max(2.5rem,min(5vw,4rem));display:grid}.work__shot{background:var(--surface);display:block;overflow:hidden}.work__shot img{width:100%;transition:transform .9s var(--ease-out)}.work__shot:hover img{transform:scale(1.03)}.work__shot:focus-visible img{transform:scale(1.03)}.work__body{flex-direction:column;align-items:flex-start;display:flex}.work__name{letter-spacing:-.04em;overflow-wrap:anywhere;max-width:100%;font-size:max(2rem,min(1rem + 2.4vw,3.25rem))}.work__strip{margin:max(2.5rem,min(4vw,3rem)) 0 0;overflow:hidden}.work__strip img{width:100%}.work__text{margin-top:1.5rem}.work__facts{gap:1rem;margin:1.75rem 0 2rem;display:grid}.work__facts dt{color:var(--muted);font-size:var(--step-small)}.work__facts dd{margin:0}.work__more{gap:var(--gutter);grid-template-columns:repeat(2,minmax(0,1fr));margin:max(3rem,min(6vw,5rem)) 0 0;padding:0;list-style:none;display:grid}.work__more-link{background:var(--surface);height:100%;transition:background-color .3s var(--ease-out);padding:max(1.5rem,min(3vw,2.5rem));display:block}a.work__more-link:hover{background:var(--accent);color:var(--accent-ink)}.work__more-name{font-size:var(--step-lead);letter-spacing:-.02em}.work__more-text{max-width:40ch;margin-top:.75rem}@media (max-width:900px){.work__case,.work__more{grid-template-columns:1fr}.work__more-text{max-width:none}}
