/* Salon photography: existing fonts, original logo and approved Alex palette. */
.salon-preview,.salon-gallery-page{--salon-paper:#F2EDE3;--salon-ink:#24201E;--salon-olive:#636A42;--salon-plum:#601F45;background:var(--salon-paper);color:var(--salon-ink)}
.salon-preview{padding:85px 5vw 100px}
.salon-kicker{display:flex;justify-content:space-between;gap:24px;border-top:1px solid #636A4260;padding-top:16px;margin-bottom:48px;font-size:10px;letter-spacing:.12em;text-transform:uppercase}
.salon-heading{display:grid;grid-template-columns:1.5fr 1fr;align-items:end;gap:6vw;margin-bottom:42px}
.salon-heading h2,.salon-page-heading h1{font-weight:400;font-size:clamp(42px,5.8vw,90px);line-height:1;letter-spacing:-.055em;margin:0}
.salon-heading h2 span,.salon-page-heading h1 span{color:var(--salon-olive)}
.salon-heading p,.salon-page-heading p{font-size:15px;line-height:1.7;max-width:430px;margin:0}
.salon-featured{display:grid;grid-template-columns:3.16049fr 1fr 1fr;gap:18px;align-items:start}
.salon-photo{display:block;background:none;border:0;padding:0;width:100%;color:inherit;text-align:left;cursor:zoom-in;position:relative}
.salon-photo picture,.salon-photo img{display:block;width:100%;height:auto}
.salon-photo picture{overflow:hidden;background:#24201E}
.salon-photo img{transition:opacity .35s}
.salon-photo:hover img{opacity:.88}
.salon-photo:focus-visible{outline:2px solid var(--salon-olive);outline-offset:6px}
.salon-photo-label{display:flex;justify-content:space-between;gap:12px;margin-top:14px;padding-bottom:14px;border-bottom:1px solid #636A4250;font-size:11px;line-height:1.5}
.salon-photo-label>span:last-child{color:var(--salon-olive);white-space:nowrap}
.salon-gallery-link{display:flex;align-items:center;justify-content:space-between;gap:35px;width:fit-content;background:var(--salon-plum);color:#fff;padding:18px 25px;margin-top:34px;font-size:13px;text-decoration:none;transition:background .25s}
.salon-gallery-link:hover{background:var(--salon-ink)}
.salon-gallery-link svg{width:20px;height:20px;flex-shrink:0}
.salon-page-main{padding:50px 5vw 100px}
.salon-back{display:inline-block;font-size:12px;border-bottom:1px solid currentColor;padding-bottom:6px;margin-bottom:55px}
.salon-page-heading{display:flex;justify-content:space-between;gap:40px;align-items:end;margin-bottom:65px}
.salon-page-heading h1{font-size:clamp(58px,8.5vw,135px)}
.salon-page-heading .salon-kicker{margin-bottom:24px;display:block;border:0;padding:0}
.salon-gallery-grid{columns:3;column-gap:24px}

.salon-gallery-grid .salon-photo{break-inside:avoid;margin-bottom:34px}
.salon-gallery-close{margin-top:80px;border-top:1px solid #636A4260;padding-top:45px;display:flex;justify-content:space-between;gap:35px;align-items:center}
.salon-gallery-close h2{font-size:clamp(34px,4vw,60px);line-height:1.05;letter-spacing:-.045em;margin:0}
.salon-gallery-close .salon-gallery-link{margin:0}
.noir .salon-preview,.noir.salon-gallery-page{--salon-paper:#24201E;--salon-ink:#F2EDE3;background:#24201E;color:#F2EDE3}
.noir .salon-kicker,.noir .salon-photo-label{border-color:#F2EDE350}
.noir .salon-heading h2 span,.noir .salon-page-heading h1 span{color:#F2EDE3}
.noir .salon-gallery-link:hover{background:#636A42;color:white}
.salon-lightbox{padding:0;border:0;background:#171514;color:white;max-width:none;max-height:none;width:100vw;height:100dvh;position:fixed;inset:0;margin:0;z-index:1000}
.salon-lightbox::backdrop{background:#171514f5}
.salon-lightbox[open]{display:grid;grid-template-rows:auto minmax(0,1fr) auto}
.salon-lightbox-top{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;gap:20px;font-size:12px}
.salon-lightbox-close,.salon-lightbox-nav button{border:1px solid #ffffff60;background:transparent;color:white;padding:10px 17px;font:inherit;cursor:pointer}
.salon-lightbox-close:focus-visible,.salon-lightbox-nav button:focus-visible{outline:2px solid #fff;outline-offset:3px}
.salon-lightbox-image{width:100%;height:100%;min-height:0;object-fit:contain;display:block;padding:0 20px}
.salon-lightbox-nav{display:flex;align-items:center;justify-content:center;gap:25px;padding:15px 20px max(20px,env(safe-area-inset-bottom));font-size:12px}
body.salon-lightbox-open{overflow:hidden}
@media(min-width:1500px){.salon-preview,.salon-page-main{padding-left:max(5vw,calc((100vw - 1600px)/2));padding-right:max(5vw,calc((100vw - 1600px)/2))}}
@media(max-width:900px){.salon-heading{grid-template-columns:1fr;gap:22px}.salon-page-heading{display:block}.salon-page-heading p{margin-top:28px}.salon-gallery-grid{columns:2;column-gap:18px}.salon-gallery-grid .salon-photo:nth-child(6n+1){grid-column:auto}.salon-gallery-grid .salon-photo:first-child{grid-column:1/-1}.salon-gallery-close{align-items:start;flex-direction:column}}
@media(max-width:600px){.salon-preview{padding:55px 25px 65px}.salon-kicker{margin-bottom:32px;gap:12px;font-size:9px}.salon-kicker>span:last-child{text-align:right}.salon-featured{grid-template-columns:1fr;gap:28px}.salon-heading{margin-bottom:30px}.salon-heading h2{font-size:48px}.salon-featured .salon-photo{max-width:100%}.salon-page-main{padding:35px 25px 65px}.salon-back{margin-bottom:40px}.salon-page-heading{margin-bottom:40px}.salon-page-heading h1{font-size:62px}.salon-gallery-grid{columns:1}.salon-gallery-grid .salon-photo:first-child{grid-column:auto}.salon-gallery-link{width:100%}.salon-gallery-close{margin-top:50px}.salon-lightbox-top{padding:12px 15px}.salon-lightbox-image{padding:0 8px}.salon-lightbox-nav{gap:15px;font-size:11px}}
@media(prefers-reduced-motion:reduce){.salon-photo img,.salon-gallery-link{transition:none}}
