.site-header a[aria-current=page]{border-bottom:1px solid currentColor}
.page-hero{height:clamp(330px,33vw,590px);overflow:hidden;background:#222}
.page-hero img{width:100%;height:100%;object-fit:cover}
.pricing-hero img{height:calc(100% + 90px);object-position:center top}
.page-intro{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:start;padding-top:68px;padding-bottom:65px}
.page-intro h1{font-weight:400;white-space:pre-line;font-size:clamp(56px,6vw,88px);line-height:.98;margin:0 0 16px;max-width:500px}
.page-intro p{white-space:pre-line;font-size:20px;line-height:1.45;max-width:550px;margin:0 0 12px}
.page-intro .italic-copy{font-style:italic}
.page-intro>img{width:100%;height:360px;object-fit:cover;filter:grayscale(1)}
.principle{text-align:center;padding-bottom:55px}
.principle h2,.contact-bottom h2{font-weight:400;font-size:34px;margin:0 0 5px}
.principle p{max-width:520px;margin:0 auto;font-size:22px;line-height:1.4}
.wide-photo{padding-bottom:90px}
.wide-photo img{width:100%;max-height:650px;object-fit:cover;filter:grayscale(1)}
.contact-bottom{display:grid;grid-template-columns:1fr 1fr;gap:9%;padding-bottom:100px}
.contact-bottom p{font-size:21px;line-height:1.5;white-space:pre-line}
.contact-bottom label{display:block;font-size:17px;margin:0 0 5px}
.contact-bottom input,.contact-bottom textarea{display:block;width:100%;border:1px solid #aaa;border-radius:24px;padding:11px 18px;background:transparent;font:16px Georgia,serif;margin-bottom:18px}
.contact-bottom textarea{min-height:110px;resize:vertical}
.contact-bottom button{border:0;border-radius:30px;padding:11px 25px;background:#151515;color:white;cursor:pointer}
.contact-bottom button:disabled{opacity:.5}
.contact-bottom #form-status{font-size:15px}
.pricing{text-align:center;padding-top:55px;padding-bottom:100px}
.pricing h1{font-weight:400;font-size:clamp(46px,5vw,68px);margin:0 0 5px}
.pricing-subtitle{font-size:18px;margin:0 0 30px}
.pricing-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:55px 38px}
.pricing-grid article{grid-column:span 2;display:flex;flex-direction:column;align-items:center}
.pricing-grid article:nth-child(4){grid-column:2/span 2}
.pricing-grid article:nth-child(5){grid-column:4/span 2}
.pricing-grid h2{font-weight:400;font-size:19px;margin:0 0 5px}
.pricing-grid strong{font-size:25px;font-weight:400}
.pricing-grid p{font-size:18px;line-height:1.5;max-width:325px;flex:1;margin:12px 0 18px}
.pricing-grid a{border:1px solid #c9c9c9;border-radius:25px;padding:8px 28px;font-size:18px}
.pricing-grid a:hover{background:#191919;color:#fff}
@media(max-width:800px){.page-intro{gap:30px}.page-intro>img{height:310px}.pricing-grid{grid-template-columns:repeat(2,1fr)}.pricing-grid article,.pricing-grid article:nth-child(4),.pricing-grid article:nth-child(5){grid-column:auto}}
@media(max-width:560px){.page-hero{height:300px}.page-intro{grid-template-columns:1fr;padding-top:45px}.page-intro h1{font-size:58px}.page-intro p{font-size:18px}.page-intro>img{height:280px}.principle p{font-size:18px}.wide-photo{padding-bottom:55px}.wide-photo img{height:360px}.contact-bottom{grid-template-columns:1fr;padding-bottom:70px}.pricing{padding-top:45px}.pricing-grid{grid-template-columns:1fr;gap:45px}.pricing-grid p{font-size:17px}}
.gallery-hero{height:clamp(280px,28vw,450px)}
.gallery-page{padding:65px 0 95px}
.gallery-page h1{font-size:clamp(70px,8vw,125px);font-weight:300;line-height:.85;letter-spacing:-.055em;white-space:pre-line;margin:15px 0 45px;max-width:720px}
.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:0 clamp(10px,2vw,32px)}
.gallery-grid img{width:100%;height:clamp(310px,40vw,690px);object-fit:cover;background:#222}
.gallery-grid img:nth-child(8n+1),.gallery-grid img:nth-child(8n+4),.gallery-grid img:nth-child(8n+5),.gallery-grid img:nth-child(8n+8){grid-column:span 2}
@media(max-width:700px){.gallery-page{padding:45px 0 65px}.gallery-grid{grid-template-columns:1fr 1fr;gap:6px}.gallery-grid img{height:50vw}.gallery-grid img:nth-child(n){grid-column:span 1}.gallery-page h1{font-size:70px;margin-bottom:30px}}
.gallery-instruction{font-size:22px;margin:-18px 0 35px;color:#5d5b58}
.gallery-filters{display:flex;flex-wrap:wrap;gap:18px;margin:0 0 65px}
.gallery-filters button{border:0;border-bottom:1px solid transparent;background:none;padding:5px 0;font:500 11px Manrope,sans-serif;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;color:#777}
.gallery-filters button[aria-pressed=true],.gallery-filters button:hover{border-color:#171715;color:#171715}
.gallery-category{margin:0 0 80px}.gallery-category h2{font:400 clamp(39px,4vw,60px) 'Cormorant Garamond',Georgia,serif;margin:0 clamp(10px,2vw,32px) 24px}
.gallery-tile{position:relative;display:block;padding:0;border:0;background:#191919;cursor:zoom-in;overflow:hidden;text-align:left}
.gallery-grid .gallery-tile:nth-child(4n+1),.gallery-grid .gallery-tile:nth-child(4n+4){grid-column:span 2}
.gallery-grid .gallery-tile img{width:100%;height:clamp(310px,40vw,690px);object-fit:cover;transition:transform .35s ease}
.gallery-tile:hover img{transform:scale(1.025)}
.gallery-tile span{position:absolute;left:22px;right:22px;bottom:22px;color:#fff;font:400 24px 'Cormorant Garamond',Georgia,serif;text-shadow:0 2px 10px #000b;opacity:0;transition:opacity .2s}
.gallery-tile:hover span,.gallery-tile:focus-visible span{opacity:1}
.lightbox[hidden]{display:none}.lightbox{position:fixed;inset:0;z-index:100;background:rgba(9,9,9,.96);display:grid;grid-template-rows:minmax(0,1fr) auto;place-items:center;padding:35px 75px;color:#fff}
.lightbox img{max-width:100%;max-height:calc(100vh - 200px);object-fit:contain;grid-row:1}
.lightbox-close,.lightbox-arrow{position:absolute;border:0;background:none;color:#fff;cursor:pointer}.lightbox-close{top:15px;right:30px;font:42px Arial,sans-serif}.lightbox-arrow{top:45%;font:60px Georgia,serif}.lightbox-arrow.prev{left:20px}.lightbox-arrow.next{right:20px}
.lightbox-info{text-align:center;padding:15px 0 5px}.lightbox-info p{font:500 10px Manrope,sans-serif;letter-spacing:.18em;text-transform:uppercase;color:#bcbab6;margin:0 0 5px}.lightbox-info h2{font:400 30px 'Cormorant Garamond',Georgia,serif;margin:0 0 8px}.lightbox-info a{font:500 11px Manrope,sans-serif;text-transform:uppercase;letter-spacing:.11em;border-bottom:1px solid #fff;padding-bottom:4px}
@media(max-width:700px){.gallery-instruction{font-size:18px}.gallery-filters{margin-bottom:40px}.gallery-category{margin-bottom:55px}.gallery-grid .gallery-tile:nth-child(n){grid-column:span 1}.gallery-grid .gallery-tile img{height:55vw}.gallery-tile span{font-size:17px;opacity:1;left:10px;right:10px;bottom:10px}.lightbox{padding:45px 10px 20px}.lightbox img{max-height:calc(100vh - 200px)}.lightbox-arrow{top:40%;font-size:43px}.lightbox-arrow.prev{left:6px}.lightbox-arrow.next{right:6px}.lightbox-close{right:16px}.lightbox-info h2{font-size:24px}}
.pricing-grid .price-details{border:1px solid #c9c9c9;border-radius:25px;padding:8px 28px;background:none;color:#171715;font:400 21px 'Cormorant Garamond',Georgia,serif;cursor:pointer}
.pricing-grid .price-details:hover{background:#191919;color:#fff}
.price-dialog[hidden]{display:none}.price-dialog{position:fixed;inset:0;z-index:100;background:rgba(15,15,15,.72);display:grid;place-items:center;padding:20px}
.price-dialog-panel{position:relative;background:#faf9f7;color:#171715;width:min(620px,100%);max-height:90vh;overflow:auto;padding:clamp(35px,5vw,65px)}
.price-dialog-panel>#price-dialog-close{position:absolute;right:25px;top:15px;border:0;background:none;font:42px Georgia,serif;cursor:pointer}
.price-dialog-panel h2{font:400 clamp(42px,5vw,65px)/.95 'Cormorant Garamond',Georgia,serif;letter-spacing:-.04em;margin:18px 0 10px}
.price-dialog-value{font-size:31px!important;margin:0 0 28px!important}
.price-dialog-panel p:not(.eyebrow){font:400 23px/1.35 'Cormorant Garamond',Georgia,serif;white-space:pre-line;margin:0 0 18px}
.price-dialog-panel #price-dialog-details{border-top:1px solid #ddd;padding-top:20px;color:#555}
.price-dialog-panel>a{display:inline-block;margin-top:16px;padding-bottom:5px;border-bottom:1px solid #171715;font:500 11px Manrope,sans-serif;text-transform:uppercase;letter-spacing:.12em}
