.gallery-controls{display:flex;gap:28px;align-items:end;flex-wrap:wrap;padding-block:24px;border-block:1px solid var(--line)}.gallery-controls label{min-width:220px;flex:1}.gallery-controls select{margin-top:8px}.gallery-album{padding-block:55px;border-bottom:1px solid var(--line)}.gallery-album[hidden]{display:none}.gallery-album h2{max-width:850px}.gallery-album>p{max-width:800px}.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin-top:30px}.gallery-grid figure{margin:0}.gallery-photo{padding:0;border:0;background:var(--pale);width:100%;cursor:zoom-in;display:block}.gallery-photo img{width:100%;height:270px;object-fit:cover;display:block}.gallery-grid figcaption{font-size:1rem;line-height:1.5;color:var(--muted)}#photo-viewer{width:min(1100px,96vw);max-height:94vh;border:0;padding:22px;background:white;color:var(--ink)}#photo-viewer::backdrop{background:#062316e8}#photo-viewer img{width:100%;height:min(65vh,700px);object-fit:contain;background:#f4f7f4}.viewer-close{display:block;margin-left:auto;margin-bottom:12px}.viewer-nav{display:flex;justify-content:space-between;align-items:center;gap:20px}.viewer-caption{font-size:1rem}.social-grid{display:grid;grid-template-columns:1fr 1fr;gap:50px}.social-embed iframe{border:0;width:100%;max-width:500px}.social-embed .youtube-frame{aspect-ratio:16/9;height:auto}.gallery-invitation{border-top:1px solid var(--line)}.admin-login{max-width:600px}.admin-login form{display:grid;gap:20px;margin-block:25px}.admin-login [hidden]{display:none}.admin-bar,.admin-section-title{display:flex;justify-content:space-between;align-items:center;gap:20px}.admin-bar{border-block:1px solid var(--line);padding:20px 0}.admin-tabs{display:flex;gap:10px;flex-wrap:wrap;margin-top:30px}.admin-tabs button{background:white;border:1px solid var(--green);color:var(--forest);padding:10px 16px;cursor:pointer}.admin-tabs .selected{background:var(--forest);color:white}#admin-panel{padding-block:25px}#admin-status{padding:10px 0;color:var(--green)}#admin-status.error{color:#a42718}.admin-album{border:1px solid var(--line);padding:22px;margin-block:25px}.admin-album summary{cursor:pointer;font-size:1.25rem;font-weight:600}.admin-album-fields{display:grid;grid-template-columns:1fr 1fr;gap:20px;padding-block:25px}.admin-photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}.admin-photo{border-top:1px solid var(--line);padding-block:20px}.admin-photo img{width:100%;height:180px;object-fit:cover}.admin-photo label{display:block;margin-block:15px}.admin-check{display:flex!important;align-items:center;gap:10px;font-weight:400!important}.admin-check input{width:auto!important;margin:0!important}.admin-add-photo{margin-top:30px;padding:25px;background:var(--pale);display:grid;gap:20px}.admin-preview{display:block;width:100%;max-width:600px;height:280px;object-fit:cover}.admin-users,.audit-list{display:grid;gap:20px}.admin-users article,.admin-update{border-top:1px solid var(--line);padding-block:25px}.admin-update{display:grid;gap:18px}.audit-list{padding-left:22px}#home-form,#user-form,#admin-panel>form{display:grid;gap:22px;max-width:850px}.admin-photo button,.viewer-nav button,.viewer-close,.admin-users button{padding:8px 12px;border:1px solid var(--green);background:white;color:var(--forest);cursor:pointer}button:disabled{opacity:.55;cursor:default}input,textarea,select{max-width:100%;box-sizing:border-box}.notice{padding:20px;border-left:4px solid var(--green);background:var(--pale)}@media(max-width:850px){.gallery-grid,.admin-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.social-grid{grid-template-columns:1fr}}@media(max-width:580px){.gallery-grid,.admin-photo-grid,.admin-album-fields{grid-template-columns:1fr}.gallery-photo img{height:260px}.admin-bar,.admin-section-title{align-items:flex-start;flex-direction:column}.admin-album{padding:16px}.admin-add-photo{padding:16px}.admin-tabs button{font-size:1rem}.gallery-controls label{min-width:100%}#photo-viewer{padding:14px}}

.gallery-invitation .gallery-grid img{width:100%;height:240px;object-fit:cover}.gallery-album{scroll-margin-top:110px}

.social-load[hidden]{display:none}
.collection-intro,.entry-fields{display:grid;gap:22px;max-width:900px;margin-block:28px}.entry-fields [name=body]{min-height:380px}.collection-card-title{font-size:1.8rem;line-height:1.2}.collection-card-title a{text-decoration:none}.grid>.card>a>img{width:100%;height:260px;object-fit:cover}
