.gallery-page{background:#fff}.gallery-hero{background:#eaf6fa;border-bottom:1px solid #d6e9f0;overflow:hidden}.gallery-hero-grid{display:grid;grid-template-columns:.9fr 1.25fr;gap:50px;align-items:center;padding-top:58px;padding-bottom:65px}.gallery-hero h1{font-size:clamp(44px,4.4vw,64px);line-height:1.08;margin:15px 0 25px;letter-spacing:-.025em}.gallery-hero h1 em{color:#147b9b}.gallery-hero .works-intro{font-size:17px;max-width:390px}.gallery-hero .works-button{margin-top:10px}.gallery-cover{position:relative;min-width:0;box-shadow:12px 12px 0 #cce5ee;border-radius:100px 10px 10px 10px}.gallery-cover>img{display:block;width:100%;height:380px;object-fit:cover;object-position:55% 50%;border-radius:100px 10px 10px 10px}.gallery-cover-label{display:flex;align-items:center;gap:14px;position:absolute;bottom:23px;left:-25px;padding:14px 21px;background:#ffcd46;color:#16475e;border-radius:6px;box-shadow:0 7px 20px #143a4d17}.gallery-cover-label strong{font:46px/1 Georgia,serif}.gallery-cover-label>span{font-size:12px;font-weight:700;line-height:1.5}.gallery-cover-label .gallery-cover-arrow{font-size:25px;padding-left:14px}.gallery-toolbar{display:flex;align-items:end;justify-content:space-between;gap:25px;padding:48px 0 24px}.gallery-toolbar .works-kicker{margin-bottom:9px}.gallery-toolbar h2{font-size:28px;margin:0}.gallery-page .gallery-help{font-size:12px;color:#536c79;margin:0 0 4px}.gallery-help>span{display:inline-block;background:#fff3ca;border-radius:50%;padding:3px 8px;margin-right:7px;color:#16475e;font-size:17px}.gallery-filters{display:flex;flex-wrap:wrap;gap:9px}.gallery-filters button{display:inline-flex;align-items:center;gap:12px;border:1px solid #c7dfe9;background:#fff;color:#16475e;padding:11px 15px;border-radius:30px;cursor:pointer;font:650 12px/1.5 system-ui,sans-serif;transition:background .2s,border-color .2s}.gallery-filters button span{background:#edf6fa;border-radius:20px;padding:1px 7px;font-size:10px}.gallery-filters button[aria-pressed=true]{background:#105f83;border-color:#105f83;color:#fff}.gallery-filters button[aria-pressed=true] span{background:#ffcd46;color:#16475e}.gallery-filters button:hover{border-color:#105f83}.gallery-page .gallery-results{font-size:11px;color:#536c79;margin:16px 0 0}.gallery-group{padding-top:44px}.gallery-grid{display:grid;gap:22px;margin-top:30px;align-items:start}.gallery-grid--ciel{grid-template-columns:repeat(3,minmax(0,1fr))}.gallery-card{margin:0;min-width:0;border:1px solid #d3e5ed;border-radius:9px;background:#fff;overflow:hidden;box-shadow:0 3px 14px #16475e05;transition:box-shadow .2s,transform .2s}.gallery-photo{display:block;text-decoration:none;color:#16475e}.gallery-image{display:flex;align-items:center;justify-content:center;position:relative;aspect-ratio:16/9;overflow:hidden;background:#eaf4f8}.gallery-image>img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .35s}.gallery-zoom{position:absolute;bottom:13px;right:13px;width:34px;height:34px;display:grid;place-items:center;border-radius:50%;font-size:23px;background:#ffcd46;color:#16475e;box-shadow:0 2px 9px #143b4e25}.gallery-caption{display:flex;align-items:baseline;gap:12px;padding:17px 19px;min-height:70px;font-size:13px;font-weight:700;line-height:1.5}.gallery-photo-number{font:14px Georgia,serif;color:#548499;flex-shrink:0}.gallery-card:hover{box-shadow:0 8px 25px #16475e14;transform:translateY(-3px)}.gallery-photo:hover .gallery-image>img{transform:scale(1.035)}.gallery-photo:focus-visible{outline-offset:-4px;outline-width:4px}.gallery-grid--mer{grid-template-columns:.85fr 1.3fr}.gallery-grid--mer .gallery-image{aspect-ratio:auto;height:420px}.gallery-grid--mer img{object-fit:contain}.gallery-grid--association{grid-template-columns:1fr 1fr}.gallery-card--poster .gallery-image{height:540px;aspect-ratio:auto;background:#f2f7fa}.gallery-card--poster img{object-fit:contain}.gallery-card--small .gallery-image{height:330px;aspect-ratio:auto}.gallery-card--small img{max-width:300px;max-height:225px;object-fit:contain}.gallery-card--poster .gallery-photo:hover img,.gallery-card--small .gallery-photo:hover img,.gallery-card--plan .gallery-photo:hover img{transform:none}.gallery-grid--plan{grid-template-columns:1.55fr 1fr;align-items:center;gap:35px}.gallery-card--plan .gallery-image{aspect-ratio:4/3}.gallery-card--plan img{object-fit:contain}.gallery-plan-note{background:#fff4cf;border:1px solid #f0d782;border-radius:9px;padding:32px}.gallery-plan-note .works-kicker{font-size:10px;color:#59614a}.gallery-plan-note h3{font-size:32px;margin:0 0 20px}.gallery-plan-note p:not(.works-kicker){font-size:14px;color:#4c6269}.gallery-tip{display:block;border-top:1px solid #ddcb8c;padding-top:19px;font-size:12px;line-height:1.8}.gallery-tip>span{font-size:20px;padding-right:5px}.gallery-page .works-end h2{font-size:31px}
.gallery-lightbox{border:0;padding:0;width:calc(100vw - 40px);max-width:1420px;max-height:calc(100dvh - 30px);background:#112f40;color:#fff;border-radius:12px;box-shadow:0 15px 60px #0007}.gallery-lightbox::backdrop{background:#071923e8}.gallery-viewer{padding:16px 22px 20px}.gallery-viewer-bar{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-bottom:10px}.gallery-viewer-label{font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#c5dfe8}.gallery-close{display:flex;align-items:center;gap:13px;padding:8px 12px;background:#234d63;color:#fff;border:1px solid #547c90;border-radius:6px;font:650 12px system-ui;cursor:pointer}.gallery-close span{font:25px/1 system-ui}.gallery-viewer-stage{display:grid;grid-template-columns:46px minmax(0,1fr) 46px;align-items:center;gap:12px;min-height:150px;height:min(73dvh,880px)}.gallery-viewer-image{display:block;width:100%;height:100%;min-height:0;object-fit:contain}.gallery-prev,.gallery-next{width:44px;height:44px;border-radius:50%;background:#ffcd46;border:0;color:#16475e;font-size:24px;cursor:pointer}.gallery-prev:hover,.gallery-next:hover{background:#ffe395}.gallery-viewer-footer{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:18px 58px 0}.gallery-counter{font-size:11px;color:#b9d9e6}.gallery-viewer-footer h2{font-family:system-ui,sans-serif;font-size:15px;line-height:1.4;margin:5px 0 0;color:#fff}.gallery-original{font-size:12px;white-space:nowrap;text-underline-offset:4px;color:#ffdc71}.gallery-viewer-error{font-size:13px;color:#ffe395}.gallery-modal-open{overflow:hidden}
@media(max-width:1000px){.gallery-hero-grid{gap:35px;grid-template-columns:1fr 1fr}.gallery-cover>img{height:370px}.gallery-cover-label{left:-15px}.gallery-grid{gap:17px}.gallery-caption{padding:15px;font-size:12px}.gallery-toolbar{align-items:start;flex-direction:column;gap:14px}.gallery-grid--plan{grid-template-columns:1.3fr 1fr;gap:22px}.gallery-plan-note{padding:25px}}
@media(max-width:900px){.gallery-grid--ciel{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery-grid--mer .gallery-image{height:350px}.gallery-card--poster .gallery-image{height:440px}}
@media(max-width:650px){.gallery-hero-grid{grid-template-columns:1fr;gap:33px;padding-top:39px;padding-bottom:45px}.gallery-hero h1{font-size:47px}.gallery-hero .works-intro{font-size:16px;max-width:none}.gallery-cover>img{height:260px;border-top-left-radius:65px}.gallery-cover{border-top-left-radius:65px;box-shadow:7px 7px 0 #cce5ee}.gallery-cover-label{left:13px;bottom:15px;padding:11px 16px;gap:10px}.gallery-cover-label strong{font-size:35px}.gallery-cover-label>span{font-size:10px}.gallery-toolbar{padding-top:35px}.gallery-toolbar h2{font-size:28px}.gallery-filters{gap:8px}.gallery-filters button{padding:9px 12px;font-size:11px;gap:8px}.gallery-grid--ciel,.gallery-grid--mer,.gallery-grid--association,.gallery-grid--plan{grid-template-columns:1fr;gap:20px}.gallery-caption{font-size:13px;min-height:61px}.gallery-grid--mer .gallery-image{height:auto;aspect-ratio:auto}.gallery-grid--mer img{height:auto;aspect-ratio:auto}.gallery-card--poster .gallery-image{height:auto;aspect-ratio:auto}.gallery-card--poster img{height:auto}.gallery-card--small .gallery-image{height:270px}.gallery-plan-note{padding:26px}.gallery-plan-note h3{font-size:29px}.gallery-page .works-end h2{font-size:29px}.gallery-lightbox{width:calc(100vw - 14px);max-height:calc(100dvh - 14px);border-radius:8px}.gallery-viewer{padding:12px}.gallery-viewer-label{font-size:9px;letter-spacing:.08em}.gallery-viewer-stage{grid-template-columns:32px minmax(0,1fr) 32px;gap:5px;height:62dvh}.gallery-prev,.gallery-next{width:31px;height:40px;font-size:21px;border-radius:6px}.gallery-viewer-footer{padding:14px 2px 2px;gap:14px;align-items:start;flex-direction:column}.gallery-viewer-footer h2{font-size:14px}.gallery-close{padding:6px 9px}.gallery-original{font-size:12px}}
@media(prefers-reduced-motion:reduce){.gallery-card,.gallery-image>img,.gallery-filters button{transition:none}.gallery-card:hover,.gallery-photo:hover .gallery-image>img{transform:none}}

.gallery-viewer-stage--single{grid-template-columns:minmax(0,1fr)}
