:root{color-scheme:light;--paper:#fff;--ink:#181818;--muted:#707070;--line:#dedede;--gutter:clamp(24px,4.2vw,72px)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,'Helvetica Neue',Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}a:focus-visible{outline:2px solid currentColor;outline-offset:7px}a:hover{text-decoration:underline;text-underline-offset:5px;text-decoration-thickness:1px}figure,p,h1{margin:0}
/* The photograph is the opening surface. */
.landing{position:relative;isolation:isolate;background:#6f8fa5;color:#fff}.header{display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center;gap:24px;padding:32px var(--gutter)}.landing .header{position:absolute;left:0;top:0;right:0;z-index:3}.wordmark{font-size:21px;font-weight:600;letter-spacing:-.045em;line-height:1.2}.header-contact{font-size:14px;text-align:center;line-height:1.5}.language-switch{display:flex;align-items:center;justify-content:flex-end;gap:12px;font-size:13px;line-height:1.5}.language-switch a{opacity:.72;padding:6px 0}.language-switch a:hover{opacity:1}.language-switch [aria-current=page]{font-weight:600}.language-divider{opacity:.45}.hero .photo{position:relative;background:#6f8fa5}.hero .photo::after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(9,20,27,.25),transparent 22%,transparent 52%,rgba(8,13,16,.48))}.hero img{height:100svh;min-height:640px;max-height:1300px;width:100%;object-fit:cover;object-position:57% 48%;display:block}.hero figcaption{position:absolute;right:var(--gutter);bottom:42px;z-index:2;color:white;padding:0;opacity:.9}.signature{position:absolute;bottom:65px;left:var(--gutter);right:var(--gutter);z-index:2;font-size:clamp(34px,4.3vw,66px);font-weight:500;letter-spacing:-.055em;line-height:1.12;max-width:760px}.signature .motion-word{font-style:normal}
.gallery{max-width:1600px;padding:clamp(80px,9vw,145px) var(--gutter) clamp(95px,10vw,160px);margin:auto}.photo{overflow:hidden;background:#eee;isolation:isolate}img{display:block;width:100%;height:auto;transition:transform 1.5s cubic-bezier(.2,.65,.2,1)}figcaption{font-size:12px;font-variant-numeric:tabular-nums;color:var(--muted);line-height:1.5;letter-spacing:.07em;padding-top:17px;text-align:right}.monochrome{width:100%;margin-bottom:clamp(75px,9vw,140px)}.portrait-pair{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,3vw,48px);align-items:start}.portrait-pair figure{width:100%;margin:0}.reveal{opacity:1}
.footer{background:#151515;color:#f8f8f8;padding:clamp(90px,10vw,160px) var(--gutter) 30px;text-align:center}.contact-signature{font-size:clamp(42px,5.7vw,88px);line-height:1.1;letter-spacing:-.055em;font-weight:500;margin:0 0 42px}.contact-signature .motion-word:nth-of-type(n+3){color:#b4b4b4}.footer-email{display:inline-block;max-width:100%;overflow-wrap:anywhere;font-size:clamp(20px,2.1vw,31px);line-height:1.5;letter-spacing:-.025em;border-bottom:1px solid #898989;padding-bottom:5px}.footer-email:hover{text-decoration:none;border-bottom-color:#fff}.location{font-size:14px;color:#b4b4b4;line-height:1.6;margin-top:25px}.footer-bottom{max-width:1456px;border-top:1px solid #414141;margin:clamp(80px,9vw,135px) auto 0;padding-top:25px;display:flex;justify-content:space-between;align-items:center;gap:24px;text-align:left}.copyright{font-size:12px;color:#b4b4b4;line-height:1.5}.legal-links{display:flex;flex-wrap:wrap;gap:14px 26px;font-size:14px;line-height:1.6;color:#c4c4c4}
.text-reveal{display:inline-block;max-width:100%}.motion-word{display:inline-block;opacity:1;transform:none;filter:none}
.legal-body .header{max-width:1600px;margin:auto}.legal-page{max-width:820px;padding:55px 24px 90px;line-height:1.7;margin:auto}.legal-page h1{font-weight:500;font-size:clamp(34px,5vw,54px);line-height:1.15;letter-spacing:-.045em;margin:28px 0}.legal-page h2{font-size:24px;line-height:1.3;letter-spacing:-.025em;margin:40px 0 16px}.legal-page p,.legal-page li{font-size:16px}.legal-page p{margin:14px 0}.legal-page a{text-decoration:underline;text-underline-offset:3px}.legal-intro{color:var(--muted)}.policy-note{background:#f3f3f3;border-left:2px solid #999;padding:16px 22px}.legal-page+.footer{padding-top:35px}.legal-page+.footer .legal-links{justify-content:center}.legal-page+.footer .copyright{display:block;margin-bottom:24px}.skip-link{position:absolute;left:24px;top:-100px;padding:10px 16px;background:var(--ink);color:#fff;z-index:30}.skip-link:focus{top:12px}
@media(hover:hover) and (prefers-reduced-motion:no-preference){.gallery .photo:hover img{transform:scale(1.018)}}
@media(max-width:700px){.header{grid-template-columns:1fr auto;padding:26px 24px;gap:20px}.wordmark{font-size:19px}.header-contact{display:none}.language-switch{font-size:13px}.hero img{height:92svh;min-height:570px;max-height:950px;object-position:64% 50%}.hero figcaption{bottom:28px;right:24px;font-size:12px}.signature{bottom:74px;left:24px;right:24px;font-size:clamp(34px,8.8vw,51px);max-width:90%;line-height:1.08;letter-spacing:-.045em}.gallery{padding-top:65px;padding-bottom:80px}.monochrome{margin-bottom:65px}.portrait-pair{grid-template-columns:1fr;gap:65px}.footer{padding-top:82px}.contact-signature{font-size:clamp(36px,9.3vw,57px);letter-spacing:-.045em;margin-bottom:32px}.footer-email{font-size:clamp(19px,5.2vw,29px)}.location{font-size:13px}.footer-bottom{margin-top:75px;flex-direction:column;align-items:center;gap:25px;text-align:center}.copyright{order:2}.legal-links{justify-content:center;font-size:13px;gap:14px 20px}.legal-page{padding-top:35px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}

/* The opening uses the photograph's negative space; portraits form a staggered pair. */
.photo{display:block}.image-trigger{cursor:zoom-in}.image-trigger:focus-visible{outline:2px solid currentColor;outline-offset:5px}
.hero .photo::after{background:linear-gradient(180deg,rgba(9,20,27,.18),transparent 25%,transparent 78%,rgba(8,13,16,.12))}
.signature{top:43%;bottom:auto;transform:translateY(-50%);right:auto;width:49%;max-width:720px;font-size:clamp(64px,7.4vw,114px);line-height:.99;letter-spacing:-.065em;font-weight:500;text-shadow:0 2px 22px rgba(0,0,0,.06);pointer-events:none}
html[lang=en] .signature{font-size:clamp(56px,6.4vw,98px)}
.portrait-pair{grid-template-columns:42% 49%;justify-content:space-between;gap:0}.portrait-pair .finale{margin-top:clamp(75px,10vw,160px)}
.viewer{border:0;background:#101010;color:#fff;padding:24px 32px;margin:0;width:100vw;height:100dvh;max-width:none;max-height:none;overflow:hidden}.viewer::backdrop{background:#101010}.viewer[open]{display:grid;grid-template-rows:48px minmax(0,1fr) 48px;gap:16px}.viewer-top,.viewer-bottom{display:flex;align-items:center;justify-content:space-between}.viewer-brand{font-size:16px;font-weight:600;letter-spacing:-.045em}.viewer button{border:1px solid #555;background:transparent;color:inherit;width:44px;height:44px;border-radius:50%;font:25px/1 Arial,sans-serif;cursor:pointer;display:grid;place-items:center}.viewer button:hover{background:#282828}.viewer button:focus-visible{outline:2px solid #fff;outline-offset:4px}.viewer img{width:100%;height:100%;min-height:0;object-fit:contain;transition:none}.viewer-count{font-size:12px;letter-spacing:.08em;font-variant-numeric:tabular-nums}.viewer-nav{display:flex;gap:12px}.viewer button:disabled{opacity:.25;cursor:default}
@media(max-width:700px){.signature,html[lang=en] .signature{top:auto;bottom:82px;transform:none;width:auto;max-width:calc(100% - 48px);font-size:clamp(38px,10.8vw,60px);line-height:1.02;letter-spacing:-.05em}.hero .photo::after{background:linear-gradient(180deg,rgba(9,20,27,.18),transparent 24%,transparent 62%,rgba(8,13,16,.32))}.portrait-pair{grid-template-columns:1fr;gap:65px}.portrait-pair .finale{margin-top:0}.viewer{padding:18px 20px}.viewer[open]{gap:12px}.viewer-brand{font-size:15px}}
