.tf-mobile-selection-dock{display:none}
.tf-wedding-gallery .tf-gallery-tools{top:var(--tf-gallery-header-height,92px)}
.tf-wedding-gallery .tf-gallery-chapter{scroll-margin-top:calc(var(--tf-gallery-header-height,92px) + 80px)}
.tf-wedding-gallery .tf-wedding-date{margin:12px 0 16px;font:400 17px/1.5 Georgia,serif;color:#416253}
.tf-wedding-gallery .tf-wedding-date time{font-family:Georgia,serif!important}
.tf-wedding-gallery .tf-justified-grid{position:relative;display:block;columns:auto;column-gap:0;isolation:isolate}
.tf-wedding-gallery .tf-justified-grid>.tf-photo-item{position:absolute;margin:0;break-inside:auto;isolation:isolate}
.tf-wedding-gallery .tf-justified-grid .tf-gallery-photo{width:100%;height:100%;margin:0;display:block;border-radius:2px;background:transparent}
.tf-wedding-gallery .tf-justified-grid .tf-gallery-photo img{display:block;width:100%;height:100%;object-fit:contain}
.tf-wedding-gallery .tf-justified-grid .tf-photo-select{z-index:3}
@media(max-width:767px){
 .tf-wedding-gallery.has-mobile-dock{padding-bottom:110px}
 .tf-wedding-gallery.has-mobile-dock.has-selection,.tf-wedding-gallery.has-mobile-dock.is-selecting{padding-bottom:230px}
 .tf-wedding-gallery .tf-wedding-date{font-size:16px;margin:10px 0 14px}
 .tf-wedding-gallery.has-mobile-dock .tf-gallery-tools{padding:6px 0;margin-bottom:28px;min-height:58px}
 .tf-wedding-gallery .tf-gallery-tools{top:var(--tf-gallery-header-height,68px)}
 .tf-wedding-gallery.has-mobile-dock .tf-gallery-tools .tf-moment-label{flex-basis:100%;width:100%}
 .tf-wedding-gallery.has-mobile-dock .tf-moment-label select{width:100%;font-size:16px;min-height:44px}
 .tf-wedding-gallery.has-mobile-dock .tf-mobile-selection-dock{display:block;position:fixed;z-index:990;left:50%;bottom:max(14px,env(safe-area-inset-bottom));transform:translateX(-50%);width:max-content;max-width:calc(100% - 24px);border-radius:8px;transition:background-color .2s,box-shadow .2s}
 .tf-wedding-gallery .tf-mobile-selection-controls{display:flex;align-items:center;justify-content:center;gap:6px;flex-wrap:wrap}
 .tf-wedding-gallery .tf-mobile-selection-controls .tf-selection-toggle{width:auto;flex-basis:auto;min-height:50px;padding:13px 19px;border:1px solid #ffffffa0;border-radius:999px;background:#244e42;color:#fff;font:500 13px/1.4 Arial,sans-serif;gap:9px;box-shadow:0 5px 22px #133c302b}
 .tf-wedding-gallery .tf-mobile-selection-controls button:not(.tf-selection-toggle){display:none}
 .tf-wedding-gallery.has-selection .tf-mobile-selection-dock,.tf-wedding-gallery.is-selecting .tf-mobile-selection-dock{width:calc(100% - 24px);max-width:620px;padding:10px 12px;background:#fffffff7;border:1px solid #d5e1da;box-shadow:0 6px 34px #153d3026;backdrop-filter:blur(14px)}
 .tf-wedding-gallery.has-selection .tf-mobile-selection-controls,.tf-wedding-gallery.is-selecting .tf-mobile-selection-controls{justify-content:space-between}
 .tf-wedding-gallery.has-selection .tf-mobile-selection-controls .tf-selection-toggle,.tf-wedding-gallery.is-selecting .tf-mobile-selection-controls .tf-selection-toggle{min-height:44px;font-size:12px;padding:10px 14px;box-shadow:none}
 .tf-wedding-gallery.is-selecting .tf-mobile-selection-controls button:not(.tf-selection-toggle){display:block;flex:0 1 auto;min-height:44px;border:0;border-radius:4px;padding:8px;background:transparent;color:#244e42;font:400 11px/1.3 Arial,sans-serif;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
 .tf-wedding-gallery .tf-mobile-selection-dock .tf-selection-bar{position:static;left:auto;bottom:auto;transform:none;max-width:none;width:100%;padding:10px 0 0;margin:8px 0 0;border:0;border-top:1px solid #dce5e1;border-radius:0;background:transparent;box-shadow:none;backdrop-filter:none;gap:8px}
 .tf-wedding-gallery .tf-mobile-selection-dock .tf-selection-bar strong{flex:1;width:auto;font-size:12px}
 .tf-wedding-gallery .tf-mobile-selection-dock .tf-download-primary{max-width:68%;min-height:46px;font-size:11px;gap:7px}
 .tf-wedding-gallery .tf-mobile-selection-controls button:focus-visible{outline:3px solid #478ac9;outline-offset:3px}
 .tf-wedding-gallery .tf-mobile-selection-controls button:disabled{opacity:.6;cursor:wait}
 .tf-wedding-gallery~.u-back-to-top{bottom:90px!important}
 .tf-wedding-gallery.has-selection~.u-back-to-top,.tf-wedding-gallery.is-selecting~.u-back-to-top{bottom:215px!important}
}
@media(max-width:359px){.tf-wedding-gallery.is-selecting .tf-mobile-selection-controls .tf-selection-toggle{flex-basis:100%;border-radius:4px}.tf-wedding-gallery.is-selecting .tf-mobile-selection-controls button:not(.tf-selection-toggle){flex:1}.tf-wedding-gallery .tf-mobile-selection-dock .tf-selection-bar strong{font-size:11px}}
@media(prefers-reduced-motion:reduce){.tf-wedding-gallery .tf-mobile-selection-dock{transition:none}}
