/* Shared design gallery, scoped to keep enquiry forms and campaign controls intact. */
.site-gallery{grid-column:1/-1;order:4;min-width:0;padding:36px 0 54px;color:#173e59;border-top:1px solid #c8dce9;scroll-margin-top:24px;font-family:'DM Sans','Noto Sans Devanagari',Arial,sans-serif}
.site-gallery.wrap{padding-block:52px 80px}
.gallery-heading{display:flex;justify-content:space-between;align-items:end;gap:32px;margin-bottom:18px}
.gallery-eyebrow{font-size:12px;font-weight:600;line-height:1.5;color:#356c90;margin:0 0 14px}
.gallery-heading h2{font-family:Manrope,'Noto Sans Devanagari',Arial,sans-serif;font-size:clamp(27px,3vw,42px);font-weight:600;letter-spacing:-.045em;line-height:1.2;margin:0;max-width:560px}
.gallery-heading>p{max-width:360px;font-size:14px;line-height:1.75;color:#527084;margin:0}
.gallery-note{font-size:12px;line-height:1.65;color:#527084;margin:0 0 24px}
.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.gallery-card{display:block;min-width:0;border:1px solid #d3e3ed;border-radius:14px;overflow:hidden;background:#f4faff;color:#173e59;text-decoration:none;scroll-margin-block:100px}
.gallery-thumb{display:block;position:relative;aspect-ratio:16/10;overflow:hidden;background:#d4e8f4}
.gallery-thumb img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .2s}
.gallery-card:hover .gallery-thumb img{transform:scale(1.025)}
.gallery-zoom{display:grid;place-items:center;position:absolute;right:12px;bottom:12px;width:34px;height:34px;border-radius:50%;background:#ffffffed;font-size:21px}
.gallery-card-title{display:block;padding:14px 16px;font-size:14px;line-height:1.6;font-weight:500}
.site-gallery [hidden]{display:none!important}
.gallery-more{display:flex;justify-content:center;align-items:center;gap:20px;min-height:48px;margin:26px auto 0;padding:12px 24px;border:1px solid #a9c9de;border-radius:50px;background:#eef7fd;color:#173e59;font-family:inherit;font-size:14px;font-weight:600;line-height:1.6;cursor:pointer}
.gallery-more:hover{background:#dceefa}.gallery-more>span{font-size:20px}
.gallery-jump{display:inline-flex;align-items:center;gap:12px;min-height:44px;font-size:14px;margin-top:12px;color:#235c83;text-decoration:underline;text-underline-offset:4px}
.gallery-dialog{width:min(1120px,calc(100vw - 36px));max-width:none;max-height:calc(100dvh - 32px);padding:0;border:1px solid #bfd6e5;border-radius:18px;background:#f1f8fc;color:#173e59;overflow:auto;overscroll-behavior:contain;box-shadow:0 20px 90px #062b4b50}
.gallery-dialog::backdrop{background:#102b42dc;backdrop-filter:blur(5px)}
.gallery-dialog-header{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 20px}
.gallery-dialog-header h2{margin:0;font-family:Manrope,'Noto Sans Devanagari',Arial,sans-serif;font-weight:600;font-size:17px;line-height:1.5;letter-spacing:0}
.gallery-close,.gallery-navigation button{display:grid;place-items:center;flex-shrink:0;min-width:44px;height:44px;padding:0;border:1px solid #b6d1e3;background:#fff;border-radius:50%;font-size:26px;line-height:1;color:#173e59;cursor:pointer}
.gallery-figure{margin:0}
.gallery-image-stage{position:relative;display:grid;place-items:center;min-height:180px;background:#d6e5ee;touch-action:pan-y}
.gallery-full{display:block;width:100%;height:auto;max-height:min(65dvh,650px);object-fit:contain}
.gallery-full.is-loading{opacity:0}
.gallery-caption{text-align:center;padding:16px 20px 0;font-size:15px;line-height:1.6;font-weight:600;min-height:40px}
.gallery-navigation{display:flex;justify-content:center;align-items:center;gap:24px;padding:12px 20px}
.gallery-count{min-width:110px;text-align:center;font-size:13px;margin:0;color:#527084}
.gallery-dialog-note{margin:0;padding:0 20px 18px;text-align:center;font-size:11px;line-height:1.6;color:#527084}
.gallery-error{position:absolute;max-width:80%;padding:20px;background:#fff;border-radius:10px;font-size:14px;text-align:center}.gallery-original{display:block;text-decoration:underline;margin-top:10px}
.gallery-is-open{overflow:hidden}
.site-gallery :is(a,button):focus-visible{outline:3px solid #428cbd;outline-offset:3px}
html[lang=hi] .gallery-heading h2,html[lang=mr] .gallery-heading h2{letter-spacing:0;line-height:1.5}
@media(max-width:900px){.gallery-heading{display:block}.gallery-heading>p{margin-top:16px;max-width:580px}.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.site-gallery,.site-gallery.wrap{padding-block:30px 40px}.gallery-heading h2{font-size:29px}.gallery-heading>p{font-size:14px}.gallery-note{font-size:11px}.gallery-grid{gap:12px}.gallery-card{border-radius:11px}.gallery-card-title{padding:10px;font-size:12px;line-height:1.55}.gallery-zoom{right:8px;bottom:8px;width:28px;height:28px;font-size:18px}.gallery-more{width:100%;font-size:14px;padding-inline:16px}.gallery-dialog{width:calc(100vw - 20px);max-height:calc(100dvh - 20px);border-radius:14px}.gallery-dialog-header{padding:12px}.gallery-dialog-header h2{font-size:14px}.gallery-full{max-height:min(52dvh,460px)}.gallery-caption{font-size:14px;padding-inline:14px}.gallery-navigation{gap:16px;padding-block:14px}.gallery-dialog-note{padding-inline:14px}.gallery-heading{margin-bottom:16px}}
@media(prefers-reduced-motion:reduce){.gallery-thumb img{transition:none}.gallery-card:hover .gallery-thumb img{transform:none}}
