/* Rental photographs retain their complete framing and their natural proportions. */
.gallery-intro{padding-block:30px 62px}.gallery-intro .breadcrumb{margin-bottom:45px}.gallery-intro h1{font-size:clamp(42px,5vw,70px);max-width:850px;margin-bottom:25px}.gallery-intro h1 em{color:var(--gold)}.gallery-lead{max-width:710px;font-size:17px;line-height:1.8;color:var(--muted);margin-bottom:28px}.gallery-intro .actions{gap:28px}.gallery-collection{padding-bottom:75px;scroll-margin-top:25px}.gallery-section-heading{display:grid;grid-template-columns:1.4fr 1fr;gap:50px;align-items:end;margin-bottom:32px}.gallery-section-heading h2{font-size:33px;line-height:1.25;max-width:520px;margin-bottom:0}.gallery-section-heading>p{font-size:12px;line-height:1.9;color:var(--muted);margin-bottom:0;max-width:420px}.rental-gallery-grid{columns:3;column-gap:24px}.gallery-photo{display:inline-block;vertical-align:top;width:100%;margin:0 0 25px;break-inside:avoid;min-width:0}.gallery-photo-open{display:block;position:relative;overflow:hidden;background:var(--panel);isolation:isolate}.gallery-photo-open img{width:100%;height:auto;max-height:none;object-fit:contain}.gallery-enlarge{position:absolute;right:10px;bottom:10px;display:flex;align-items:center;gap:12px;padding:8px 11px;background:#fffffff0;border-radius:3px;font-size:10px;line-height:1.6;color:var(--ink);opacity:0;transition:opacity .15s}.gallery-enlarge span{font-size:16px}.gallery-photo-open:hover .gallery-enlarge,.gallery-photo-open:focus-visible .gallery-enlarge{opacity:1}.gallery-photo-caption{padding-top:10px;overflow-wrap:anywhere}.gallery-photo-caption>p{font-size:12px;line-height:1.8;color:var(--muted);margin:0 0 3px}.gallery-empty{font-size:14px;color:var(--muted);padding:35px 0;max-width:580px}.gallery-planner{background:var(--warm);padding-block:65px}.gallery-planner-inner{display:grid;grid-template-columns:1fr 1fr;gap:90px}.gallery-planner-inner h2{font-size:39px;line-height:1.2}.gallery-planner-inner>div>p:last-child{font-size:14px;line-height:1.9;color:var(--muted);max-width:430px}.gallery-plan-details ol{counter-reset:gallery-plan;list-style:none;padding:0;margin:0 0 28px}.gallery-plan-details li{counter-increment:gallery-plan;position:relative;padding:0 0 24px 47px}.gallery-plan-details li::before{content:'0' counter(gallery-plan);position:absolute;left:0;top:0;color:var(--gold);font-size:13px}.gallery-plan-details strong{display:block;font-weight:500;font-size:15px;margin-bottom:6px}.gallery-plan-details li span{display:block;color:var(--muted);font-size:13px;line-height:1.8}.gallery-faq{padding-block:70px;display:grid;grid-template-columns:1fr 1.2fr;gap:90px}.gallery-faq h2{font-size:38px;line-height:1.25}.gallery-faq details{border-bottom:1px solid var(--line)}.gallery-faq details:first-child{border-top:1px solid var(--line)}.gallery-faq summary{display:flex;justify-content:space-between;gap:20px;list-style:none;padding-block:20px;font-weight:500;font-size:15px;cursor:pointer}.gallery-faq summary::-webkit-details-marker{display:none}.gallery-faq summary>span{font-size:24px;line-height:1;flex:0 0 20px;text-align:center;color:var(--gold)}.gallery-faq details[open] summary>span{transform:rotate(45deg)}.gallery-faq details>p{font-size:13px;line-height:1.9;color:var(--muted);padding-right:30px;margin-bottom:22px}
/* A small collage, rather than catalogue cards, on the homepage. */
.gallery-preview{display:grid;grid-template-columns:1.4fr 1fr;grid-template-rows:1fr 1fr;gap:10px;height:320px;columns:auto;column-gap:10px}.gallery-preview .gallery-photo{position:relative;display:flex;flex-direction:column;width:100%;height:100%;margin:0;min-height:0;background:var(--panel);overflow:hidden}.gallery-preview .gallery-photo:first-child{grid-row:span 2}.gallery-preview .gallery-photo-open{display:flex;flex:1;min-height:0;align-items:center;justify-content:center}.gallery-preview .gallery-photo-open img{height:100%;width:100%;object-fit:contain}.gallery-preview .gallery-enlarge{display:none}.gallery-preview .gallery-photo-caption{display:none}.gallery-preview .gallery-photo-caption>p{display:none}
/* Native modal gives keyboard users an inert background and built-in focus containment. */
.gallery-lightbox{position:fixed;inset:0;width:min(1240px,calc(100% - 48px));max-width:none;max-height:calc(100dvh - 36px);margin:auto;padding:0;border:0;border-radius:var(--radius);background:#fff;color:var(--ink);box-shadow:0 20px 100px #0005}.gallery-lightbox::backdrop{background:#121212df}.gallery-lightbox-inner{padding:18px 24px 20px}.gallery-lightbox-header{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:10px}.gallery-lightbox-title{font-size:15px;letter-spacing:-.02em;margin:0}.gallery-lightbox-close{display:flex;align-items:center;justify-content:center;width:44px;height:44px;flex-shrink:0;background:var(--warm);border:1px solid var(--line);border-radius:var(--radius);font-size:26px;line-height:1;cursor:pointer}.gallery-lightbox-figure{margin:0}.gallery-lightbox-image{width:100%;height:min(68dvh,780px);max-height:calc(100dvh - 225px);object-fit:contain;background:#F6F5F2}.gallery-lightbox-caption{padding-top:12px;font-size:13px;color:var(--muted);overflow-wrap:anywhere}.gallery-lightbox-caption:empty{display:none}.gallery-lightbox-toolbar{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:12px}.gallery-lightbox-navigation{display:flex;align-items:center;gap:14px}.gallery-lightbox-nav{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid var(--line);border-radius:var(--radius);background:#fff;font-size:23px;line-height:1}.gallery-lightbox-count{font-size:12px;color:var(--muted);min-width:90px;text-align:center}.gallery-lightbox-links{display:flex;align-items:center;gap:22px}.gallery-lightbox-original{font-size:11px;color:var(--muted);display:inline-flex;align-items:center;min-height:44px}.gallery-lightbox-status{font-size:12px;color:var(--muted);margin:10px 0 0}.gallery-lightbox-status:empty{display:none}body.gallery-modal-open{overflow:hidden}
/* A simple photographic workspace for staff, using the established native field geometry. */
.gallery-manager-intro{display:flex;align-items:center;justify-content:space-between;gap:35px;margin-bottom:25px}.gallery-manager-intro p{font-size:13px;line-height:1.9;max-width:650px;color:var(--muted);margin:0}.gallery-manager-intro>a{flex-shrink:0}.gallery-upload h2{font-size:27px;margin-bottom:12px}.gallery-upload h3{font-size:17px;margin-bottom:20px}.gallery-upload-form .field{margin-bottom:19px}.gallery-upload-form .field-help{font-size:11px;line-height:1.8;color:var(--muted);margin:7px 0 0}.gallery-upload-words{display:grid;grid-template-columns:1fr 1fr;gap:25px}.gallery-manager input:not([type=hidden]):not([type=checkbox]),.gallery-manager select,.gallery-manager textarea{display:block;width:100%;max-width:100%;min-height:50px;border:1px solid var(--line);border-radius:6px;background:var(--field);color:var(--ink);padding:12px 14px;font:inherit;font-size:16px;box-shadow:0 1px 2px #12121212}.gallery-manager input[type=file]{padding:10px;font-size:13px!important}.gallery-manager input[type=file]::file-selector-button{padding:6px 11px;margin-right:14px;border:1px solid var(--line);border-radius:4px;background:#fff;color:var(--ink);font:inherit}.gallery-manager textarea{min-height:140px;resize:vertical}.gallery-manager select{appearance:auto;padding-right:44px}.gallery-manager input:focus-visible,.gallery-manager select:focus-visible,.gallery-manager textarea:focus-visible{outline:3px solid var(--gold);outline-offset:3px}.gallery-manager .field label{display:block;font-size:12px;font-weight:500;margin-bottom:7px}.gallery-manager-collection{padding-top:20px}.gallery-manager-heading{display:flex;align-items:baseline;justify-content:space-between;gap:20px;margin-bottom:22px}.gallery-manager-heading h2{font-size:25px;margin-bottom:0}.gallery-manager-heading p{font-size:11px;color:var(--muted);margin:0}.gallery-editor{display:grid;grid-template-columns:minmax(180px,.8fr) minmax(0,1.5fr);gap:32px;padding:28px;background:#fff;border:1px solid var(--line);border-radius:var(--radius);margin-bottom:24px}.gallery-editor-visual{min-width:0}.gallery-editor-visual>a{display:block;background:var(--panel)}.gallery-editor-visual img{width:100%;height:330px;object-fit:contain}.gallery-editor-position{display:block;padding-top:13px;color:var(--muted);font-size:11px}.gallery-editor-hidden .gallery-editor-visual img{opacity:.65}.gallery-editor-controls{min-width:0}.gallery-edit-form>.field{margin-bottom:18px}.gallery-edit-save{display:flex;gap:20px;align-items:flex-end;margin-top:22px}.gallery-edit-save>.field{flex:1;margin:0;min-width:0}.gallery-edit-save button{flex-shrink:0}.gallery-editor-actions{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:22px;padding-top:20px;border-top:1px solid var(--line)}.gallery-reorder{display:flex;gap:10px}.gallery-reorder .button{font-size:11px;padding-inline:14px;min-height:44px;gap:7px}.gallery-text-button{background:none;border:0;border-bottom:1px solid var(--gold);border-radius:0;padding:10px 0;color:var(--gold);font-size:12px;min-height:44px;cursor:pointer}.gallery-remove{border-top:1px solid var(--line);margin-top:20px;padding-top:15px}.gallery-remove summary{font-size:11px;cursor:pointer;color:var(--muted);min-height:44px}.gallery-remove>p{font-size:12px;line-height:1.8;margin:12px 0}.gallery-remove-confirm{display:flex;gap:10px;align-items:center;font-size:12px;margin:15px 0}.gallery-remove-confirm input{width:20px;height:20px;accent-color:var(--gold)}.gallery-remove .button{font-size:11px;min-height:44px}
@media(max-width:1000px){.rental-gallery-grid:not(.gallery-preview){columns:2}.gallery-section-heading{gap:35px}.gallery-planner-inner,.gallery-faq{gap:45px}.gallery-planner-inner h2,.gallery-faq h2{font-size:34px}.gallery-preview{height:280px}.gallery-editor{gap:24px;padding:24px;grid-template-columns:minmax(160px,.75fr) minmax(0,1.5fr)}.gallery-editor-actions{flex-wrap:wrap}.gallery-manager-intro{align-items:flex-start;flex-direction:column;gap:12px}.gallery-manager-heading{align-items:flex-start;flex-direction:column;gap:8px}}
@media(max-width:600px){.gallery-intro{padding-block:24px 40px}.gallery-intro .breadcrumb{margin-bottom:28px}.gallery-intro h1{font-size:42px;line-height:1.12;margin-bottom:22px}.gallery-lead{font-size:14px;line-height:1.9}.gallery-intro .actions{gap:20px;flex-wrap:wrap}.gallery-intro .actions .button{font-size:12px;padding-inline:16px;gap:16px}.gallery-intro .text-link{font-size:11px}.gallery-section-heading{grid-template-columns:1fr;gap:16px;margin-bottom:25px}.gallery-section-heading h2{font-size:29px}.gallery-section-heading>p{font-size:12px}.rental-gallery-grid{column-gap:14px}.gallery-photo{margin-bottom:18px}.gallery-photo-caption{padding-top:7px}.gallery-photo-caption>p{font-size:11px}.gallery-enlarge{display:none}.gallery-collection{padding-bottom:38px}.gallery-preview{height:295px;grid-template-columns:1fr 1fr;grid-template-rows:180px 105px;gap:10px}.gallery-preview .gallery-photo:first-child{grid-row:auto;grid-column:span 2}.gallery-preview .gallery-photo-caption{padding-inline:9px}.gallery-planner{padding-block:40px}.gallery-planner-inner{grid-template-columns:1fr;gap:22px}.gallery-planner-inner h2{font-size:32px;margin-bottom:20px}.gallery-planner-inner>div>p:last-child{font-size:13px}.gallery-plan-details li{padding-left:38px}.gallery-plan-details strong{font-size:14px}.gallery-plan-details li span{font-size:12px}.gallery-faq{grid-template-columns:1fr;gap:20px;padding-block:42px}.gallery-faq h2{font-size:32px}.gallery-faq summary{font-size:14px}.gallery-faq details>p{font-size:12px}.gallery-lightbox{width:calc(100% - 20px);max-height:calc(100dvh - 24px)}.gallery-lightbox-inner{padding:10px 12px 14px}.gallery-lightbox-header{margin-bottom:8px}.gallery-lightbox-title{font-size:13px}.gallery-lightbox-image{height:60dvh;max-height:calc(100dvh - 245px)}.gallery-lightbox-caption{font-size:12px;line-height:1.6}.gallery-lightbox-toolbar{flex-direction:column;gap:9px;align-items:stretch}.gallery-lightbox-navigation{justify-content:center}.gallery-lightbox-count{font-size:11px;min-width:80px}.gallery-lightbox-links{justify-content:space-between;gap:12px}.gallery-lightbox-original{font-size:10px}.gallery-upload-words{grid-template-columns:1fr;gap:0}.gallery-editor{grid-template-columns:1fr;gap:20px;padding:18px}.gallery-editor-visual img{height:270px}.gallery-editor-position{padding-top:10px}.gallery-edit-save{flex-direction:column;align-items:stretch;gap:15px}.gallery-editor-actions{gap:14px}.gallery-reorder{gap:8px}.gallery-reorder .button{font-size:11px;padding-inline:11px}.gallery-manager-intro p{font-size:12px}.gallery-manager-heading h2{font-size:23px}}
@media(max-width:350px){.rental-gallery-grid:not(.gallery-preview){columns:1}.gallery-intro h1{font-size:37px}.gallery-preview{height:270px;grid-template-rows:165px 95px}.gallery-lightbox-original{font-size:9px}.gallery-editor{padding:15px}.gallery-reorder .button{font-size:10px;padding-inline:8px}}
@media(hover:none){.gallery-enlarge{display:none}}@media(prefers-reduced-motion:reduce){.gallery-enlarge{transition:none}}@media(forced-colors:active){.gallery-lightbox,.gallery-lightbox-nav,.gallery-lightbox-close{border:1px solid CanvasText}.gallery-manager select{appearance:auto}.gallery-editor-hidden .gallery-editor-visual img{opacity:1}}

/* A quiet, manually controlled viewer. Natural proportions stay visible at every size. */
.gallery-slideshow{border:1px solid var(--line);background:var(--warm);padding:22px;border-radius:var(--radius)}
.gallery-slide-image{position:relative;display:flex;align-items:center;justify-content:center;width:100%;height:clamp(360px,47vw,640px);background:#fff;min-width:0}
.gallery-slide-image img{display:block;width:100%;height:100%;object-fit:contain}
.gallery-slide-enlarge{position:absolute;right:14px;bottom:14px;font-size:11px;background:#fffffff0;padding:10px 13px;border:1px solid var(--line);color:var(--ink)}
.gallery-slide-toolbar{display:flex;justify-content:space-between;align-items:center;gap:28px;padding-top:16px;min-height:60px}
.gallery-slide-caption{font-size:13px;line-height:1.7;color:var(--muted);margin:0;overflow-wrap:anywhere;max-width:650px}
.gallery-slide-navigation{display:flex;gap:12px;align-items:center;margin-left:auto;flex-shrink:0}
.gallery-slide-navigation button{width:44px;height:44px;display:flex;align-items:center;justify-content:center;background:#fff;color:var(--ink);border:1px solid var(--line);border-radius:var(--radius);font-size:22px;cursor:pointer}
.gallery-slide-navigation button:hover{background:var(--ink);color:#fff}
.gallery-slide-count{font-size:12px;min-width:60px;text-align:center;font-variant-numeric:tabular-nums;color:var(--muted)}
.rental-gallery-grid.gallery-filmstrip{position:relative;display:flex;gap:10px;columns:auto;overflow-x:auto;padding:15px 2px 12px;scrollbar-width:thin;scrollbar-color:var(--gold) var(--warm)}
.gallery-filmstrip .gallery-photo{display:block;width:92px;flex:0 0 92px;margin:0;break-inside:auto}
.gallery-filmstrip .gallery-photo-open{border:2px solid transparent;padding:3px;height:82px;background:var(--warm)}
.gallery-filmstrip .gallery-photo-open[aria-current=true]{border-color:var(--gold);background:#fff}
.gallery-filmstrip .gallery-photo-open img{display:block;width:100%;height:100%;object-fit:contain}
.gallery-filmstrip .gallery-photo-caption,.gallery-filmstrip .gallery-enlarge{display:none}
.gallery-slide-image:focus-visible,.gallery-filmstrip .gallery-photo-open:focus-visible,.gallery-slide-navigation button:focus-visible{outline:3px solid var(--gold);outline-offset:3px}
@media(max-width:600px){.gallery-slideshow{padding:10px}.gallery-slide-image{height:360px;max-height:57dvh;min-height:240px}.gallery-slide-toolbar{gap:12px;flex-wrap:wrap;padding:12px 4px 2px}.gallery-slide-caption{font-size:12px;width:100%}.gallery-slide-caption:empty{display:none}.gallery-slide-navigation{margin-inline:auto}.gallery-slide-enlarge{right:8px;bottom:8px;font-size:10px;padding:8px 10px}.gallery-filmstrip .gallery-photo{width:76px;flex-basis:76px}.gallery-filmstrip .gallery-photo-open{height:70px}}
@media(forced-colors:active){.gallery-filmstrip .gallery-photo-open[aria-current=true]{border-color:Highlight}}

.gallery-faq-action{padding-block:28px 0}.gallery-plan-details li a{color:var(--gold);text-decoration:underline;text-underline-offset:3px}
