.luxe-gallery{--lg-accent:#f5b7a8;--lg-ink:#313131;background:#fff;color:var(--lg-ink);font-family:Lato,Arial,sans-serif;padding-bottom:30px}.luxe-gallery *{box-sizing:border-box}.luxe-gallery h1,.luxe-gallery h2,.luxe-gallery h3{font-family:Montserrat,Lato,Arial,sans-serif;color:var(--lg-ink);font-weight:400;letter-spacing:-.04em}.luxe-gallery a{color:inherit}.lg-intro{max-width:1170px;margin:auto;padding:64px 24px 48px;text-align:center}.lg-eyebrow{font-size:11px;letter-spacing:.22em;text-transform:uppercase;margin:0 0 18px}.luxe-gallery h1{font-size:clamp(64px,9vw,116px);line-height:1.1;margin:0 0 18px}.lg-lead{font-size:19px;color:#666;margin:0 0 20px}.lg-text-link{font-size:13px;border-bottom:1px solid var(--lg-accent);padding-bottom:6px;display:inline-flex;gap:22px}.lg-feature{max-width:1170px;margin:0 auto;position:relative;overflow:hidden}.lg-feature>img{width:100%;height:490px;object-fit:cover;display:block}.lg-feature:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.65),transparent 80%);pointer-events:none}.lg-feature-copy{position:absolute;z-index:1;left:6%;bottom:12%;color:#fff}.lg-feature-copy h2{color:#fff;font-size:clamp(30px,4.4vw,58px);line-height:1.15;margin:0 0 20px}.lg-feature-copy p{font-size:15px;line-height:1.8;margin:0;color:#fff}.lg-collection{max-width:1170px;margin:auto;padding:88px 24px 72px;scroll-margin-top:90px}.lg-section-intro{max-width:560px;margin:0 0 40px}.lg-section-intro h2,.lg-booking h2{font-size:clamp(28px,3.3vw,42px);line-height:1.25;margin:0 0 16px}.lg-section-intro p{font-size:16px;line-height:1.8;color:#666;margin:0}.lg-grid{display:grid;grid-template-columns:1fr 1fr;gap:42px 30px}.lg-photo{margin:0;min-width:0}.lg-photo:nth-child(even){transform:translateY(48px)}.lg-open{display:block;overflow:hidden;background:#f5f5f5}.lg-photo img{width:100%;aspect-ratio:1.3;object-fit:cover;display:block;transition:transform .35s ease}.lg-open:hover img{transform:scale(1.035)}.lg-photo figcaption{display:flex;align-items:center;justify-content:space-between;padding-top:16px}.lg-photo h3{font-size:18px;letter-spacing:0;margin:0}.lg-photo figcaption span{font-size:22px}.lg-booking{max-width:1122px;margin:64px auto 30px;padding:64px 24px;text-align:center;background:#fdf3f0;border-top:3px solid var(--lg-accent)}.lg-booking p{font-size:17px;color:#626262;margin:0 0 28px}.lg-button{background:var(--lg-accent);color:#313131!important;display:inline-flex;align-items:center;gap:32px;padding:17px 25px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;white-space:nowrap;transition:background .2s}.lg-button:hover{background:#edaa99}.lg-booking address{font-size:13px;line-height:1.9;font-style:normal;margin:26px 0 0;color:#666}.luxe-gallery a:focus-visible,.luxe-gallery button:focus-visible{outline:3px solid #313131;outline-offset:5px}.lg-dialog{position:fixed;inset:0;margin:auto;width:fit-content;height:fit-content;padding:50px 64px 24px;border:0;background:#fff;max-width:94vw;max-height:94dvh;overflow:auto}.lg-dialog::backdrop{background:rgba(0,0,0,.85)}.lg-dialog figure{margin:0}.lg-dialog img{display:block;max-width:75vw;max-height:72dvh;object-fit:contain;margin:auto}.lg-dialog figcaption{padding-top:16px;text-align:center;font-size:15px}.lg-dialog button{position:absolute;border:0;background:#fff;color:#313131;cursor:pointer;font:32px/1 Arial;padding:8px 12px}.lg-close{right:8px;top:4px}.lg-prev{left:4px;top:45%}.lg-next{right:4px;top:45%}body.lg-modal-open{overflow:hidden}@media(max-width:767px){.lg-intro{padding:42px 20px 34px}.lg-lead{font-size:16px}.lg-feature{margin:0 16px}.lg-feature>img{height:390px}.lg-feature-copy{left:7%;bottom:9%}.lg-collection{padding:54px 20px 30px}.lg-grid{gap:28px 16px}.lg-photo:nth-child(even){transform:translateY(28px)}.lg-photo img{aspect-ratio: .8}.lg-photo h3{font-size:14px;line-height:1.5}.lg-photo figcaption span{display:none}.lg-booking{margin:64px 16px 16px;padding:42px 18px}.lg-dialog{padding:48px 34px 20px}.lg-dialog img{max-width:74vw}}@media(prefers-reduced-motion:reduce){.lg-photo img,.lg-button{transition:none}}

/* Uniform portrait thumbnails crop from the top; lightbox keeps the full image. */
.lg-categories{display:flex;flex-wrap:wrap;gap:14px 30px;margin:0 0 48px;padding:18px 0;border-top:1px solid #eee;border-bottom:1px solid #eee}.lg-categories a{font-size:14px;padding:6px 0;border-bottom:2px solid transparent}.lg-categories a:hover{border-color:var(--lg-accent)}.lg-service-group{scroll-margin-top:100px;margin-bottom:64px}.luxe-gallery .lg-group-title{font-family:Montserrat,Lato,Arial,sans-serif;font-weight:400;letter-spacing:-.02em;font-size:26px;margin:0 0 28px}.lg-group-title span{font-family:Lato,Arial,sans-serif;font-size:12px;color:#666;letter-spacing:0;display:inline-block;margin-left:14px}.lg-service-group .lg-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 24px;align-items:start}.lg-service-group .lg-photo{break-inside:avoid;transform:none;margin:0 0 28px;display:inline-block;width:100%}.lg-service-group .lg-open{position:relative;aspect-ratio:3/4}.lg-service-group .lg-photo img{position:absolute;inset:0;width:100%;height:100%;max-height:none;aspect-ratio:auto;object-fit:cover;object-position:center top;transform-origin:center top}.lg-service-group .lg-photo figcaption{padding-top:12px}.lg-service-group .lg-photo h4{font-family:Lato,Arial,sans-serif;font-weight:400;font-size:14px;letter-spacing:0;line-height:1.5;margin:0}.lg-feature>img{object-position:center 48%}@media(max-width:767px){.lg-service-group .lg-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 16px}.luxe-gallery .lg-group-title{font-size:23px}.lg-categories{gap:8px 20px}.lg-categories a{font-size:13px}.lg-service-group{margin-bottom:44px}}@media(max-width:420px){.lg-service-group .lg-grid{grid-template-columns:1fr}.lg-service-group .lg-photo{margin-bottom:24px}}
