
/* Homepage sections: champagne, photography and native editable blocks. */
.lux-section{--gold:#d9bc82;--paper:#f7f6f2;--ink:#171e1c;--line:#e4e1d9}
.lux-section h2{font-size:clamp(34px,3.4vw,49px);line-height:1.2;letter-spacing:-.7px}
.lux-section .eyebrow{color:#876b37;font-size:10px;letter-spacing:2.3px}
.lux-section .wp-block-button__link{background:linear-gradient(115deg,#eed6a1,#c1a064);border-radius:1px;font-size:11px;letter-spacing:.8px;padding:16px 24px}
.lux-section .section-heading{margin-bottom:40px}.lux-section .section-heading h2{margin-top:15px}
.lux-about-grid{display:grid;grid-template-columns:1fr 1fr;gap:85px;align-items:center;padding-bottom:110px}
.lux-about-photos{position:relative;padding:0 60px 60px 0}
.lux-about-photos>.wp-block-image img{width:100%;height:430px;object-fit:cover}
.lux-about-inset{position:absolute;right:0;bottom:0;width:55%;border:8px solid white}
.lux-about-inset img{width:100%;height:230px;object-fit:cover}
.lux-about-copy h2{margin:16px 0 23px}.lux-about-copy h3{font-size:16px;margin-bottom:20px}
.lux-about-copy>p:not(.eyebrow){font-size:14px;color:#65706a;line-height:1.9}
.lux-values{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;border-top:1px solid var(--line);margin-top:27px;padding-top:20px}
.lux-values p{font-size:11px;color:#68726c;margin:0}.lux-values strong{display:inline-block;color:#8a6b32;font-size:14px;margin-bottom:5px}
.lux-services{background:var(--paper)}
.lux-service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.lux-service-card{position:relative;isolation:isolate;min-height:285px;background:#151e1a;overflow:hidden}
.lux-service-card>.wp-block-image{position:absolute;inset:0;z-index:-2}
.lux-service-card img{width:100%;height:100%;object-fit:cover;transition:transform .35s}
.lux-service-card::before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,transparent 38%,#06110d45 62%,#06110df2 100%)}
.lux-service-card:hover img{transform:scale(1.035)}
.lux-service-copy{position:absolute;inset:auto 25px 25px;color:#fff}
.lux-card-kicker{font-size:10px;letter-spacing:1px;color:#e0c692;margin-bottom:9px}
.lux-service-copy h3{font-size:22px;line-height:1.4;font-weight:600}.lux-service-copy h3 span{color:#e0c692;margin-left:12px}
.lux-service-copy h3 a::after{content:'';position:absolute;inset:-210px -25px -25px}
.lux-promise{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-top:35px;padding-top:28px;border-top:1px solid #d8d4c9}
.lux-promise p{margin:0;font-size:12px}.lux-promise p:not(.eyebrow)::before{content:'✓';color:#876b37;margin-right:10px}
.lux-album{background:#111a17;color:#f6f3ea}.lux-album .eyebrow{color:#d4b77d}.lux-album .section-heading>.wp-block-group:last-child>p{color:#b7c0b9}
.lux-album-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:18px;grid-auto-rows:240px}
.lux-album-grid>.wp-block-image{position:relative;overflow:hidden;margin:0}
.lux-album-grid>.wp-block-image:first-child{grid-row:span 2}
.lux-album-grid>.wp-block-image:last-child{grid-column:span 2;height:240px}
.lux-album-grid a{display:block;height:100%;cursor:zoom-in}
.lux-album-grid img{width:100%;height:100%;object-fit:cover;transition:transform .3s}.lux-album-grid a:hover img{transform:scale(1.035)}
.lux-album-grid figcaption{position:absolute;bottom:0;left:0;right:0;padding:35px 18px 15px;background:linear-gradient(transparent,#000b);color:white;font-size:12px;pointer-events:none;margin:0}
.lux-tour-label{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding-bottom:15px;margin:0 0 25px;gap:15px}
.lux-tour-label h3{font-size:18px}.lux-tour-label p{font-size:11px;color:#68726c;margin:0}
.lux-domestic-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}
.lux-tour-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}
.lux-international{margin-top:50px}
.lux-tour-card{min-width:0;background:var(--paper);border-bottom:2px solid #d5bd8f}
.lux-tour-card img{width:100%;height:195px;object-fit:cover}.lux-domestic-grid img{height:295px}
.lux-tour-copy{padding:25px}.lux-tour-copy h3{font-size:18px;line-height:1.5;margin-top:14px;font-weight:600}.lux-tour-copy .eyebrow::before{display:none}
.lux-tour-copy .text-link{font-size:11px;letter-spacing:.3px}
.lux-tour-note{font-size:12px;color:#68726c;text-align:center;margin-top:35px}
.lux-cta{position:relative;background:linear-gradient(90deg,#0c1515e8,#0c1515d9),url('assets/banner-fleet.webp') center 60%/cover;color:#fff;text-align:center}
.lux-cta-inner{max-width:820px}.lux-cta .eyebrow{color:#d9bc82}.lux-cta h2{font-size:clamp(38px,4vw,56px);margin:20px 0 24px}.lux-cta-inner>p:not(.eyebrow){max-width:560px;margin-inline:auto;color:#cbd0c9;font-size:14px}
.lux-cta .wp-block-buttons{justify-content:center}.lux-cta .is-style-outline .wp-block-button__link{background:transparent;border-color:#a58d60;color:#f4e8ce}.lux-cta .is-style-outline .wp-block-button__link:hover{background:#ffffff15}.lux-cta .lux-cta-note{font-size:10px!important;letter-spacing:.8px;margin-top:25px}
.dtl-lightbox{background:#101815;color:#fff;border:1px solid #c4aa73;padding:20px;width:min(1100px,94vw);max-height:94vh}
.dtl-lightbox::backdrop{background:#020504eb}.dtl-lightbox-top{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:15px}.dtl-lightbox button{border:1px solid #bba16c;background:transparent;color:#fff;padding:10px 16px;cursor:pointer;min-height:44px}.dtl-lightbox img{max-height:70vh;max-width:100%;width:auto;object-fit:contain;margin:auto}.dtl-lightbox-bottom{display:flex;justify-content:space-between;align-items:center;margin-top:15px;gap:12px}.dtl-lightbox-caption{font-size:13px;text-align:center}.dtl-gallery-open{overflow:hidden}
@media(max-width:1100px){.lux-about-grid{gap:40px}.lux-service-copy h3{font-size:19px}.lux-tour-grid{grid-template-columns:1fr 1fr}.lux-promise{flex-wrap:wrap}.lux-about-photos{padding-right:35px}}
@media(max-width:780px){.lux-about-grid{grid-template-columns:1fr;padding-bottom:60px;gap:35px}.lux-about-photos{max-width:550px;width:100%}.lux-about-photos>.wp-block-image img{height:340px}.lux-about-inset img{height:180px}.lux-section .section-heading{margin-bottom:28px}.lux-service-grid{grid-template-columns:1fr 1fr;gap:12px}.lux-service-card{min-height:240px}.lux-service-copy{inset:auto 16px 18px}.lux-service-copy h3{font-size:17px}.lux-card-kicker{font-size:9px;letter-spacing:0}.lux-promise{gap:16px}.lux-promise>.eyebrow{width:100%}.lux-promise p{font-size:11px}.lux-album-grid{grid-template-columns:1fr 1fr;grid-auto-rows:210px;gap:12px}.lux-album-grid>.wp-block-image:first-child{grid-row:auto}.lux-album-grid>.wp-block-image:last-child{grid-column:auto;height:auto}.lux-album-grid figcaption{font-size:10px;padding-inline:12px}.lux-domestic-grid{gap:18px}.lux-domestic-grid img{height:220px}.lux-tour-copy{padding:18px}.lux-tour-copy h3{font-size:16px}.lux-tour-label{display:block}.lux-tour-label p{margin-top:8px}.lux-cta .eyebrow{font-size:9px;letter-spacing:1.5px}.lux-cta-inner>p:not(.eyebrow){font-size:13px}}
@media(max-width:480px){.lux-section h2{font-size:34px}.lux-service-card{min-height:225px}.lux-domestic-grid,.lux-tour-grid{grid-template-columns:1fr}.lux-tour-card img{height:235px}.lux-album-grid{grid-auto-rows:175px}.lux-values{gap:10px}.lux-values p{font-size:10px}.lux-values strong{font-size:12px}.lux-lightbox{padding:12px}.dtl-lightbox-caption{font-size:11px}}
.lux-album-grid{grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:260px}
.lux-album-grid>.wp-block-image:first-child{grid-row:auto;grid-column:span 2}
.lux-album-grid>.wp-block-image:last-child{grid-column:span 2;height:auto}
@media(max-width:780px){.lux-album-grid{grid-template-columns:1fr 1fr;grid-auto-rows:210px}.lux-album-grid>.wp-block-image:first-child,.lux-album-grid>.wp-block-image:last-child{grid-column:auto}}
@media(max-width:480px){.lux-album-grid{grid-auto-rows:175px}.dtl-lightbox{padding:12px}}

/* Equal photo rows; the lightbox retains each original image in full. */
.lux-album-grid{display:grid;columns:auto;grid-template-columns:repeat(5,minmax(0,1fr));grid-auto-rows:210px;gap:14px}
.lux-album-grid>.wp-block-image,.lux-album-grid>.wp-block-image:first-child,.lux-album-grid>.wp-block-image:last-child{grid-column:auto;grid-row:auto;break-inside:auto;margin:0;height:100%;overflow:hidden;border-radius:3px;isolation:isolate}
.lux-album-grid img{width:100%;height:100%;object-fit:cover;transition:transform .65s cubic-bezier(.2,.7,.3,1),filter .65s}
.lux-album-grid a{height:100%}.lux-album-grid a::after{content:'+';position:absolute;right:12px;bottom:12px;display:grid;place-items:center;width:32px;height:32px;border:1px solid #edd5a0aa;border-radius:50%;background:#101815bb;color:#edd5a0;opacity:0;transition:opacity .25s;pointer-events:none}
.lux-album-grid a:is(:hover,:focus-visible) img{transform:scale(1.04);filter:brightness(1.06)}
.lux-album-grid a:is(:hover,:focus-visible)::after{opacity:1}.lux-album-grid a:focus-visible{outline:2px solid #edd5a0;outline-offset:-3px}
@media(max-width:1000px){.lux-album-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:240px}}
@media(max-width:600px){.lux-album-grid{grid-auto-rows:190px;gap:10px}}
@media(prefers-reduced-motion:reduce){.lux-album-grid img,.lux-album-grid a::after{transition:none}.lux-album-grid a:is(:hover,:focus-visible) img{transform:none}}

/* Four owner photographs, with a full-width panorama below the portrait pair. */
.lux-about-photos.lux-about-collage{display:grid;grid-template-columns:40% minmax(0,1fr);grid-template-rows:190px 190px 160px;gap:10px;padding:0;max-width:none;min-width:0;width:100%}
.lux-about-photo{min-width:0;min-height:0;overflow:hidden;border-radius:3px}
.lux-about-photo .wp-block-image{height:100%;margin:0}
.lux-about-photo img{width:100%;height:100%;object-fit:cover}
.about-comfort{grid-column:1;grid-row:1 / span 2}.about-comfort img{object-position:50% 55%}
.about-limousine{grid-column:2;grid-row:1}.about-limousine img{object-position:52% 55%}
.about-fleet{grid-column:2;grid-row:2}.about-fleet img{object-position:center 70%}
.about-team{grid-column:1 / -1;grid-row:3}.about-team img{object-position:center 68%}
.lux-service-links{margin-top:28px;padding-top:25px;border-top:1px solid #d8d4c9}
.lux-service-link-list{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}
.lux-service-link-list p{margin:0}.lux-service-link-list a{display:block;border:1px solid #d1c6b1;padding:11px 16px;font-size:13px;transition:background .2s,border-color .2s}
.lux-service-link-list a:is(:hover,:focus-visible){background:#ecdfc4;border-color:#9f7c3d}
.lux-tour-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:18px}
.lux-tour-grid .lux-tour-copy{padding:20px 16px}.lux-tour-grid .lux-tour-copy h3{font-size:16px}
.lux-tours .shell>.wp-block-buttons{justify-content:center;margin-top:25px}
@media(max-width:1100px){.lux-tour-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.lux-tour-grid>.lux-tour-card:last-child{grid-column:1 / -1}}
@media(max-width:780px){.lux-about-photos.lux-about-collage{grid-template-rows:180px 180px 140px}}
@media(max-width:480px){.lux-about-photos.lux-about-collage{grid-template-rows:155px 155px 115px}.lux-tour-grid{grid-template-columns:1fr}.lux-tour-grid>.lux-tour-card:last-child{grid-column:auto}.lux-album-grid{grid-auto-rows:170px}.lux-service-link-list a{padding:10px 12px;font-size:12px}}
/* Current collection: two domestic journeys and three international journeys. */
.lux-tour-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}
.lux-tour-grid .lux-tour-copy{padding:25px}.lux-tour-grid .lux-tour-copy h3{font-size:19px}
.lux-tour-grid .lux-tour-card{display:flex;flex-direction:column}.lux-tour-grid .lux-tour-copy{display:flex;flex-direction:column;flex:1}.lux-tour-grid .text-link{margin-top:auto;padding-top:20px}
.lux-tour-grid .lux-tour-card img{height:245px}.lux-tour-grid>.lux-tour-card:last-child{grid-column:auto}
@media(max-width:780px){.lux-tour-grid{grid-template-columns:1fr;gap:20px}.lux-tour-grid .lux-tour-card img{height:260px}}

/* Consistent landscape crops; keep vehicles and destinations clear above the labels. */
.lux-service-card:nth-child(1) img{object-position:50% 45%}.lux-service-card:nth-child(2) img{object-position:50% 65%}.lux-service-card:nth-child(3) img{object-position:50% 35%}.lux-service-card:nth-child(4) img{object-position:50% 45%}.lux-service-card:focus-within{outline:2px solid #bf9c5b;outline-offset:4px}

/* Consistent landscape crops; keep vehicles and destinations clear above the labels. */
.lux-service-card:nth-child(1) img{object-position:50% 45%}.lux-service-card:nth-child(2) img{object-position:50% 65%}.lux-service-card:nth-child(3) img{object-position:50% 35%}.lux-service-card:nth-child(4) img{object-position:50% 45%}.lux-service-card:focus-within{outline:2px solid #bf9c5b;outline-offset:4px}
