*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}img{display:block;max-width:100%}a{text-decoration:none}button{cursor:pointer;border:none;background:none}:root{--bg:#f3ede2;--ink:#1b1916;--ink-soft:#6a6055;--ink-faint:rgba(27,25,22,0.12);--radius:4px;--gap:clamp(7px, 1.2vw, 14px)}html{scroll-behavior:smooth}body{font-family:'Jost',sans-serif;font-weight:300;background-color:var(--bg);background-image:url(background.png);background-repeat:repeat;color:var(--ink);min-height:100dvh;overflow-x:hidden}body::before{content:'';position:fixed;inset:0;background-color:rgb(243 237 226 / .45);pointer-events:none;z-index:0}body::after{display:none}body>*{position:relative;z-index:1}@keyframes fadeUp{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}footer{display:flex;justify-content:center;align-items:center;gap:clamp(16px, 3vw, 32px);padding:clamp(18px, 2.5vw, 28px) clamp(20px, 4vw, 52px);font-family:'Jost',sans-serif;font-weight:200;font-size:10px;letter-spacing:.35em;text-transform:uppercase;color:var(--ink-soft);border-top:1px solid var(--ink-faint)}.footer-legal{color:var(--ink);border-bottom:1px solid rgb(27 25 22 / .35);padding-bottom:1px;transition:opacity 0.2s;letter-spacing:.35em}.footer-legal:hover{opacity:.5}.footer-right{color:var(--ink-soft)}@media (max-width:640px){footer{flex-direction:column;align-items:center;gap:10px;padding:24px 20px}}.page-header{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 clamp(16px, 4vw, 52px);height:clamp(56px, 8vw, 76px);border-bottom:1px solid var(--ink-faint);position:sticky;top:0;z-index:100;background-color:rgb(243 237 226 / .92);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);margin-bottom:20px}.nav-back{display:flex;align-items:center;gap:8px;font-size:11px;font-weight:300;letter-spacing:.3em;text-transform:uppercase;color:var(--ink-soft);transition:color 0.2s;justify-self:start}.nav-back:hover{color:var(--ink)}.page-header-title{font-family:'Cormorant Garamond',serif;font-weight:300;font-size:clamp(14px, 2.5vw, 22px);letter-spacing:.22em;text-transform:uppercase;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:0 8px}.gallery-nav{display:flex;gap:12px;justify-content:flex-end}.gallery-nav a{font-size:10px;font-weight:300;letter-spacing:.3em;text-transform:uppercase;color:var(--ink-soft);display:flex;align-items:center;gap:5px;transition:color 0.2s}.gallery-nav a:hover{color:var(--ink)}.gallery-nav a.disabled{display:none}@media (max-width:600px){.gallery-nav span{display:none}.page-header{padding:0 12px}}body.page-index{max-width:1750px;margin-left:auto;margin-right:auto}body.page-index header{text-align:center;padding:clamp(24px, 4vw, 48px) 24px clamp(24px, 3.5vw, 40px)}.site-name{font-family:'Cormorant Garamond',serif;font-weight:400;font-size:clamp(22px, 3.5vw, 44px);letter-spacing:.2em;color:var(--ink);line-height:1;font-variant-alternates:swash(1);font-variant-ligatures:common-ligatures contextual;font-feature-settings:'swsh' 1,'calt' 1,'clig' 1}.site-name span{font-weight:200;font-size:clamp(13px, 2.8vw, 32px);letter-spacing:.1em;position:relative;bottom:4px}.site-sub{margin-top:12px;font-family:'Jost',sans-serif;font-weight:200;font-size:clamp(11px, 1.1vw, 13px);letter-spacing:.35em;color:var(--ink-soft)}.site-sub b{font-size:clamp(14px, 2vw, 26px)}.header-ornament{display:flex;align-items:center;justify-content:center;gap:14px;margin-top:18px;opacity:.35}.header-ornament span{display:block;width:48px;height:1px;background:var(--ink)}.header-ornament i{font-style:normal;font-size:10px;color:var(--ink)}body.page-index main{padding:0 var(--gap) var(--gap)}.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--gap)}@media (max-width:960px){.gallery-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:480px){.gallery-grid{grid-template-columns:repeat(2,1fr);gap:5px}body.page-index main{padding:0 5px 5px}}.gallery-card{position:relative;display:block;aspect-ratio:1 / 1;overflow:hidden;border-radius:var(--radius);background-color:#d5cfc6;box-shadow:6px 6px 9px -2px rgb(0 0 0 / .32);animation:fadeUp 0.7s cubic-bezier(.22,1,.36,1) both;container-type:inline-size;container-name:card}.gallery-card:first-child{animation:none}.card-media{position:absolute;inset:0;transform-origin:center top;transition:transform 0.52s cubic-bezier(.25,.46,.45,.94);will-change:transform}@media (hover:hover){.gallery-card:hover .card-media{transform:translateY(-50%)}}.card-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.card-title-html{position:absolute;left:0;right:0;top:71%;transform:translateY(-50%);padding:0 5%;margin:0;font-family:'Jost',sans-serif;font-weight:400;font-size:10.5cqw;text-transform:uppercase;color:rgb(255 255 255 / .97);text-shadow:0 0 3px rgb(0 0 0),0 0 5px rgb(0 0 0),0 0 7px rgb(0 0 0),0 0 8px rgb(0 0 0 / .9),0 0 14px rgb(0 0 0 / .6);text-align:center;pointer-events:none;line-height:1.3}@supports not (font-size:1cqw){.card-title-html{font-size:clamp(14px, 2vw, 30px)}}.card-overlay{display:none}.preview-strip{position:absolute;bottom:0;left:0;right:0;height:55%;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;gap:4px;padding:6px;background:rgb(247 242 236);pointer-events:none;z-index:2;transform:translateY(101%);visibility:hidden;transition:transform 0.52s cubic-bezier(.25,.46,.45,.94),visibility 0s linear .52s}@media (hover:hover){.gallery-card:hover .preview-strip{transform:translateY(0);visibility:visible;transition:transform 0.52s cubic-bezier(.25,.46,.45,.94),visibility 0s linear 0s}}.preview-strip img{width:100%;height:100%;object-fit:cover;aspect-ratio:1/1}.preview-strip img:only-child{grid-column:1 / -1;grid-row:1 / -1}.preview-strip img:nth-child(3):last-child{grid-column:1 / -1}.contact-section{padding:clamp(52px, 8vw, 100px) clamp(24px, 8vw, 96px);border-top:1px solid var(--ink-faint);margin-top:calc(var(--gap) * 2);display:flex;flex-direction:column;align-items:center;text-align:center;gap:clamp(32px, 5vw, 52px)}@media (max-width:480px){.contact-section{padding:48px 20px}}.contact-heading{font-family:'Cormorant Garamond',serif;font-weight:300;font-size:clamp(26px, 3.5vw, 42px);letter-spacing:.12em;line-height:1.15;color:var(--ink);margin-bottom:0}.contact-heading em{font-family:'Jost',sans-serif;font-size:clamp(20px, 2.5vw, 33px);font-style:normal;color:var(--ink-soft)}.contact-details{display:flex;flex-direction:column;gap:20px}.contact-row{display:flex;flex-direction:column;gap:5px}.contact-label{font-size:11px;font-weight:300;letter-spacing:.45em;text-transform:uppercase;color:var(--ink-soft)}.contact-value{font-family:'Cormorant Garamond',serif;font-size:clamp(16px, 1.8vw, 20px);font-weight:400;letter-spacing:.04em;color:var(--ink)}.contact-value a{color:var(--ink);transition:opacity 0.2s;border-bottom:1px solid var(--ink-faint);padding-bottom:1px}.contact-value a:hover{opacity:.55}.count-bar{text-align:center;padding:clamp(16px, 3vw, 28px) 24px clamp(12px, 2vw, 20px);font-size:10px;font-weight:200;letter-spacing:.5em;text-transform:uppercase;color:var(--ink-soft)}.masonry{columns:3;column-gap:clamp(8px, 1.2vw, 16px);padding:0 clamp(8px, 1.2vw, 16px) clamp(8px, 1.2vw, 16px)}@media (max-width:1279px){.masonry{columns:2}}@media (max-width:767px){.masonry{columns:1;padding:0 12px 12px}}.masonry-item{break-inside:avoid;margin-bottom:clamp(8px, 1.2vw, 16px);overflow:hidden;position:relative;background-color:#ddd8cf;cursor:zoom-in;box-shadow:3px 4px 8px -1px rgb(0 0 0 / .22);transition:box-shadow 0.3s ease;animation:fadeIn 0.5s ease both;animation-delay:0.1s}@media (max-width:767px){.masonry-item{cursor:default}}@media (hover:hover){.masonry-item:hover{box-shadow:5px 6px 14px -1px rgb(0 0 0 / .3)}.masonry-item:hover img{transform:scale(1.035)}}.masonry-item img{width:100%;height:auto;display:block;transition:transform 0.65s cubic-bezier(.25,.46,.45,.94);will-change:transform}.empty-gallery{text-align:center;padding:80px 24px 120px;font-family:'Cormorant Garamond',serif;font-size:clamp(18px, 3vw, 26px);color:var(--ink-soft)}#lightbox{position:fixed;inset:0;background:rgb(10 9 7 / .97);z-index:8000;display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity 0.3s ease}#lightbox.active{opacity:1;pointer-events:all}.lb-img-wrap{display:flex;align-items:center;justify-content:center;max-width:92vw;max-height:90vh}#lb-img{max-width:88vw;max-height:88vh;object-fit:contain;transition:opacity 0.18s ease;user-select:none;-webkit-user-drag:none}.lb-btn{position:absolute;color:rgb(255 255 255 / .55);font-family:'Jost',sans-serif;font-weight:200;transition:color 0.2s,transform 0.2s;line-height:1;padding:16px 20px;font-size:40px;user-select:none}.lb-btn:hover{color:#fff;transform:scale(1.1)}#lb-close{top:16px;right:20px;font-size:28px;padding:10px 14px}#lb-prev{left:0;top:50%;transform:translateY(-50%)}#lb-next{right:0;top:50%;transform:translateY(-50%)}#lb-prev:hover{transform:translateY(-50%) scale(1.1)}#lb-next:hover{transform:translateY(-50%) scale(1.1)}#lb-counter{position:absolute;bottom:20px;left:50%;transform:translateX(-50%);color:rgb(255 255 255 / .3);font-size:10px;font-weight:200;letter-spacing:.35em;font-family:'Jost',sans-serif;text-transform:uppercase;white-space:nowrap}.page-wrap{max-width:780px;margin:0 auto;padding:clamp(48px, 7vw, 88px) clamp(20px, 6vw, 56px) clamp(64px, 10vw, 120px);animation:fadeUp 0.7s cubic-bezier(.22,1,.36,1) both;text-align:justify}.page-title{font-family:'Cormorant Garamond',serif;font-weight:300;font-size:clamp(28px, 4vw, 44px);letter-spacing:.15em;text-transform:uppercase;color:var(--ink);margin-bottom:clamp(36px, 5vw, 60px)}.ml-editor{margin-bottom:clamp(32px, 4vw, 52px);padding-bottom:clamp(28px, 4vw, 44px);border-bottom:1px solid var(--ink-faint)}.ml-editor address{font-style:normal;font-size:clamp(13px, 1.5vw, 15px);font-weight:300;line-height:2;color:var(--ink)}.ml-editor .editor-name{font-family:'Cormorant Garamond',serif;font-size:clamp(17px, 2vw, 21px);font-weight:400;letter-spacing:.06em;margin-bottom:10px}.ml-block{margin-bottom:clamp(28px, 4vw, 44px)}.ml-block h2{font-family:'Jost',sans-serif;font-weight:300;font-size:11px;letter-spacing:.5em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:14px;padding-bottom:10px;border-bottom:1px solid var(--ink-faint)}.ml-block p,.ml-block address{font-style:normal;font-size:clamp(13px, 1.5vw, 15px);font-weight:300;line-height:1.9;color:var(--ink)}.ml-block p+p{margin-top:10px}.ml-block strong{font-weight:400;display:block;margin-top:18px;margin-bottom:4px;font-size:clamp(13px, 1.5vw, 15px)}.ml-block a{color:var(--ink);border-bottom:1px solid var(--ink-faint);padding-bottom:1px;transition:opacity 0.2s}.ml-block a:hover{opacity:.5}