@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500&family=Italiana&display=swap');
:root{--paper:#f3f4f0;--ink:#272b28;--line:#d9dcd4}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:25px}body{margin:0;background:var(--paper);color:var(--ink);font:16px 'DM Sans',sans-serif}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}header{padding:32px 4.5%;display:flex;justify-content:space-between;align-items:center}.brand{font-size:23px;letter-spacing:-.6px}.brand span{display:block;font-size:10px;letter-spacing:3.5px;margin-top:7px}nav{display:flex;gap:32px;font-size:14px}nav a:hover{opacity:.6}.heading{padding:36px 4.5% 30px;display:flex;justify-content:space-between;align-items:end;gap:30px}.eyebrow{font-size:12px;letter-spacing:2px;font-weight:400;margin:0 0 24px}h1{font:clamp(62px,6.8vw,100px)/1 'Italiana',Georgia,serif;letter-spacing:-1.5px;margin:0}.collection-meta>p{font-size:14px;color:#6d736b;line-height:1.65;margin:0 0 34px}.filters{display:flex;gap:23px}.filters button{font-size:14px;border:0;border-bottom:1px solid transparent;padding:0 0 7px;background:none;color:#747a72}.filters button.active{color:#222;border-color:#222}.gallery{display:flex;gap:30px;overflow-x:auto;scroll-snap-type:x mandatory;padding:0 4.5% 14px;scrollbar-width:none;scroll-padding:4.5%;overscroll-behavior-x:contain}.gallery::-webkit-scrollbar{display:none}.project{flex:0 0 58%;padding:0;border:0;background:none;scroll-snap-align:start;text-align:left;min-width:0}.project.portrait{flex-basis:30%}.photo{height:clamp(330px,46vh,580px);position:relative;overflow:hidden;background:#e0e3db}.photo img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .7s}.project:hover img{transform:scale(1.025)}.view{position:absolute;bottom:20px;right:20px;padding:12px 16px;background:var(--paper);font-size:12px;opacity:0;transition:opacity .25s}.project:hover .view,.project:focus-visible .view{opacity:1}.project-caption{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:17px 0}.project-caption span{font-size:12px;color:#6d736b}.project-caption h2{font-size:14px;font-weight:400;margin:0}.gallery-controls{margin:6px 4.5% 38px;display:flex;gap:40px;align-items:center;justify-content:space-between}.gallery-controls .eyebrow{margin:0;font-size:10px;white-space:nowrap}.track{height:1px;background:#d0d4cb;width:100%;max-width:450px}.track span{height:1px;display:block;background:#353e31;width:20%}.gallery-buttons{display:flex;gap:10px}.gallery-buttons button{width:42px;height:42px;border:1px solid #b9c0b3;background:transparent;border-radius:50%;font-size:24px}.gallery-buttons button:disabled{opacity:.25;cursor:default}.about{border-top:1px solid var(--line);padding:80px 9%;display:grid;grid-template-columns:1fr 2fr;gap:50px}.about h2{font:56px/1.12 'Italiana',Georgia,serif;margin:0 0 30px}.about em{font-family:Georgia,serif;font-size:.86em;font-weight:400}.about div>p{max-width:520px;line-height:1.8;color:#6d736b}.signature{display:block;margin-top:30px;font:italic 21px Georgia,serif}.contact{border-top:1px solid var(--line);padding:65px 9%;display:flex;justify-content:space-between;align-items:end;gap:40px}.contact h2{font:52px/1.1 'Italiana',Georgia,serif;margin:0}.contact div:last-child{font-size:14px;color:#6d736b;line-height:1.8}.contact span{border-bottom:1px solid #bcc3b6;padding-bottom:10px}footer{padding:30px 4.5%;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;font-size:12px;color:#6d736b}footer a:first-child{font-size:18px;color:#272b28}dialog{padding:60px 30px 20px;border:0;background:#181b19;color:white;width:94vw;max-width:1500px;max-height:95vh}dialog::backdrop{background:#000d}dialog>img{width:100%;height:72vh;object-fit:contain}.close{position:absolute;right:24px;top:18px}dialog button{background:none;border:0;color:white;font-size:14px;padding:8px}.dialog-bottom{display:flex;justify-content:space-between;align-items:center}.counter{font-size:13px}[hidden]{display:none!important}a:focus-visible,button:focus-visible,.gallery:focus-visible{outline:2px solid #76866a;outline-offset:4px}@media(max-width:700px){header{padding:24px 6%;align-items:start}.brand{font-size:19px}nav{gap:18px;font-size:13px}nav a:nth-child(2){display:none}.heading{padding:32px 6% 25px;display:block}h1{font-size:66px}.eyebrow{font-size:10px;margin-bottom:20px}.collection-meta>p{display:none}.filters{margin-top:28px;gap:25px}.filters button{font-size:13px}.gallery{padding-left:6%;padding-right:6%;gap:18px;scroll-padding:6%}.project{flex-basis:86%}.project.portrait{flex-basis:72%}.photo{height:390px}.project-caption{gap:8px}.project-caption h2{font-size:13px}.project-caption span{font-size:11px}.view{opacity:1;font-size:11px;bottom:15px;right:15px}.gallery-controls{margin:4px 6% 30px;gap:20px}.track{max-width:100px}.about{grid-template-columns:1fr;padding:55px 6%;gap:8px}.about h2{font-size:45px}.contact{padding:50px 6%;display:block}.contact h2{font-size:46px}.contact div:last-child{margin-top:30px}footer{padding:25px 6%;flex-wrap:wrap}footer a:first-child{width:100%}dialog{padding:55px 12px 15px}dialog>img{height:65vh}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Preserve every original composition in the horizontal collection. */
.gallery{--image-height:clamp(330px,46vh,580px)}.project,.project.portrait{flex:0 0 auto;width:calc(var(--image-height)*var(--ratio))}.photo{height:var(--image-height)}.photo img{object-fit:contain}.project:hover img{transform:none}@media(max-width:700px){.gallery{--image-height:clamp(230px,55vw,360px)}.project-caption{align-items:start;flex-direction:column;gap:7px}.counter{max-width:55%;text-align:center;font-size:12px}}

.contact-details{font-style:normal;display:flex;flex-direction:column;gap:14px;margin:24px 0}.contact-details a{font-size:1rem;font-weight:400;letter-spacing:.025em;line-height:1.7;color:#62695f;overflow-wrap:anywhere;text-decoration:none}.contact-details a:hover{color:var(--ink);text-decoration:underline;text-underline-offset:5px}.contact-button{display:inline-block;background:var(--ink);color:var(--paper);padding:14px 22px;margin-top:8px;font-size:14px}.contact-button:hover{background:#444b42}

.contact-details .instagram-link{display:inline-flex;align-items:center;gap:10px;align-self:flex-start;font-size:.875rem;min-height:44px}.instagram-link svg{flex:none}

.contact-details .instagram-link{width:44px;height:44px;min-height:44px;justify-content:center;padding:0;gap:0;border:1px solid #aeb5a8;border-radius:50%;margin-top:6px;color:#62695f;text-decoration:none;transition:background .2s,color .2s,border-color .2s}.contact-details .instagram-link:hover{background:var(--ink);color:var(--paper);border-color:var(--ink);text-decoration:none}@media(prefers-reduced-motion:reduce){.contact-details .instagram-link{transition:none}}

.contact-details{width:fit-content;max-width:100%}.contact-details .instagram-link{align-self:center}
