.public-gallery{--pg-max-width: 1240px;--pg-header-clearance: 6rem;--pg-bg: #d5d7ca;--pg-surface-muted: #f7f0e8;--pg-border: #d6c6b2;--pg-border-strong: color-mix(in srgb, var(--pg-accent) 28%, var(--pg-border) 72%);--pg-text-muted: #736b5f;--pg-text-inverse: var(--text-inverse, #fff);--pg-accent: #9b642c;--pg-shadow-panel: 0 30px 80px rgb(80 58 36 / 14%);--pg-focus-ring: 0 0 0 3px rgb(217 162 106 / 28%);background:var(--pg-bg);isolation:isolate;min-height:100vh;overflow:hidden;padding:calc(var(--pg-header-clearance) + clamp(.85rem,2.3vw,1.45rem)) clamp(1rem,3vw,2.75rem) clamp(2.15rem,5vw,4.75rem);position:relative}.public-layout--gallery #main-content{background:#d5d7ca;padding-top:0}.public-gallery__container{margin:0 auto;max-width:var(--pg-max-width);position:relative;z-index:1}.public-gallery__container:before{background:repeating-linear-gradient(0deg,rgba(80,58,36,.035) 0,rgba(80,58,36,.035) 1px,transparent 1px,transparent 3px),repeating-linear-gradient(90deg,rgba(80,58,36,.028) 0,rgba(80,58,36,.028) 1px,transparent 1px,transparent 4px);content:"";inset:0;-webkit-mask-image:linear-gradient(180deg,rgba(0,0,0,.18),transparent 40%,rgba(0,0,0,.14));mask-image:linear-gradient(180deg,rgba(0,0,0,.18),transparent 40%,rgba(0,0,0,.14));opacity:.24;pointer-events:none;position:absolute}.public-gallery__intro{margin:0 auto;max-width:min(100%,76rem);padding:0;position:relative;width:100%}.public-gallery__content{display:flex;flex-direction:column;gap:clamp(1.3rem,2.7vw,2.45rem);position:relative;z-index:1}.public-gallery-header{margin:0 auto;max-width:min(100vw - 1.5rem,68.5rem);padding:0 1rem clamp(.85rem,1.8vw,1.45rem);position:relative;text-align:left;width:100%}.public-gallery-header:before{background:var(--pg-bg);border-radius:0 0 50% 50%/0 0 100% 100%;box-shadow:0 1px 0 var(--pg-border-strong);content:"";height:.42rem;left:50%;position:absolute;top:0;transform:translate(-50%);width:9%;z-index:1}.public-gallery-header__hero{aspect-ratio:970/522;background-color:#f2e7d9;border:1px solid var(--pg-border-strong);border-radius:1.7rem;box-shadow:var(--pg-shadow-panel),inset 0 1px #ffffff9e;isolation:isolate;margin-inline:auto;overflow:hidden;position:relative}.public-gallery-header__spread{background-image:url(/media/gallery/wedding-films-hero-spread-2400w-v2.webp);background-position:52% 51%;background-repeat:no-repeat;background-size:106% auto;inset:0;position:absolute}.public-gallery-header__character-stage{height:55.4%;left:61.5%;margin:0;pointer-events:none;position:absolute;top:36.2%;width:29.7%;z-index:1}.public-gallery-header__character-halo{background:radial-gradient(circle,rgba(255,253,248,.62) 0%,transparent 52%);border-radius:999px;filter:blur(10px);height:74%;left:50%;position:absolute;top:48%;transform:translate(-50%,-50%);width:88%;z-index:0}.public-gallery-header__character-frame{height:100%;isolation:isolate;overflow:visible;position:relative;transform-origin:center bottom;width:100%;z-index:1}.public-gallery-header__character-frame:before{background:radial-gradient(ellipse 56% 44% at 47% 50%,rgba(122,84,56,.3) 0%,transparent 70%),radial-gradient(ellipse at center,rgba(139,98,62,.22) 0%,transparent 62%);bottom:1.2rem;content:"";filter:blur(1px);height:clamp(1.6rem,3.4vw,2.4rem);left:50%;opacity:.92;position:absolute;transform:translate(-50%);width:76%;z-index:-1}@media(pointer:fine){.public-gallery-header__character-frame{animation:gallery-character-stage-float 7.8s ease-in-out infinite}}.public-gallery-header__character-stage--image-fallback .public-gallery-header__character-frame{animation:none;transform:translateZ(0)}.public-gallery-header__character-stage--image-fallback .public-gallery-header__character-halo{filter:blur(8px);opacity:.7}.public-gallery-header__character-crop{clip-path:inset(0 0 2.4% 0);contain:paint;height:100%;overflow:hidden;position:relative;width:100%}.public-gallery-header__character-picture{contain:paint;display:block;height:100%;width:100%}.public-gallery-header__character-video,.public-gallery-header__character-poster{display:block;height:100%;object-fit:contain;object-position:center bottom;transform:translate3d(0,1%,0);transform-origin:center bottom;width:100%}.public-gallery-header__copy{border:0!important;clip-path:inset(50%)!important;height:1px!important;margin:-1px!important;overflow:hidden!important;padding:0!important;position:absolute!important;white-space:nowrap!important;width:1px!important}.public-gallery-grid{align-items:start;display:grid;gap:clamp(.58rem,1.25vw,.82rem);grid-template-columns:1fr;list-style:none;margin:0;padding:0}.public-gallery-grid__item{display:flex;min-width:0}.public-gallery-grid__item>.public-gallery-card{width:100%}.public-gallery-card{--pg-card-media-ratio: 4 / 5;background:linear-gradient(180deg,#fffaf2fa,#f4ebdef5),linear-gradient(145deg,rgba(217,162,106,.08) 0%,transparent 100%);border:1px solid rgba(155,100,44,.12);border-radius:.82rem;box-shadow:0 8px 18px #503a241a,inset 0 1px #ffffff94;display:flex;flex-direction:column;gap:.18rem;min-height:0;overflow:hidden;padding:.18rem;position:relative;transition:border-color .22s ease,box-shadow .22s ease,transform .22s ease}.public-gallery-card:before{border:1px solid rgba(255,248,237,.34);border-radius:inherit;content:"";inset:1px;pointer-events:none;position:absolute;z-index:1}@media(hover:hover)and (pointer:fine){.public-gallery-card:hover{border-color:color-mix(in srgb,var(--pg-accent) 24%,var(--pg-border) 76%);box-shadow:0 16px 34px #503a242e,inset 0 1px #ffffffd1;transform:translateY(-2px)}}.public-gallery-card--featured{border-color:color-mix(in srgb,var(--pg-accent) 34%,rgba(255,250,242,.72) 66%)}.public-gallery-card-media{aspect-ratio:var(--pg-card-media-ratio);background:color-mix(in srgb,var(--pg-border) 52%,var(--pg-surface-muted) 48%);border-radius:.68rem;display:flex;flex:1 1 auto;flex-direction:column;justify-content:flex-end;min-height:clamp(10.8rem,52vw,15.8rem);overflow:hidden;position:relative}.public-gallery-card-media__image{display:block;filter:saturate(.98) contrast(1.02) brightness(.95);height:100%;inset:0;object-fit:cover;object-position:var(--pg-card-object-position, center center);position:absolute;transition:filter .5s ease,transform .6s ease;width:100%}.public-gallery-card-media__fallback{align-items:center;background:radial-gradient(circle at var(--pg-card-object-position, center center),rgba(217,162,106,.22) 0%,transparent 26%),linear-gradient(180deg,#fffaf2eb,#eee6daf5);display:flex;height:100%;inset:0;justify-content:center;position:absolute;width:100%}.public-gallery-card-media__fallback-label{background:#fffaf2b8;border:1px solid rgba(155,100,44,.22);border-radius:999px;color:#2a2d27d1;font-size:.72rem;font-weight:700;letter-spacing:.12em;padding:.55rem .8rem;text-transform:uppercase}@media(hover:hover)and (pointer:fine){.public-gallery-card:hover .public-gallery-card-media__image{filter:saturate(1) contrast(1.05) brightness(.98);transform:scale(1.02)}}.public-gallery-card-media__overlay{background:radial-gradient(circle at 50% 10%,rgba(217,162,106,.12) 0%,transparent 30%),radial-gradient(circle at 50% 118%,#281c1200,#281c121f 54%,#281c1252),linear-gradient(180deg,#281c1229,#281c120a 18%,#281c1200 34%),linear-gradient(90deg,#281c121f,#281c1200 26% 74%,#281c121f),linear-gradient(0deg,#25190fd6,#25190fad 24%,#25190f6b 46%,#25190f1a 72%,#25190f00);inset:0;pointer-events:none;position:absolute}.public-gallery-card-media__open{appearance:none;background:transparent;border:0;color:inherit;cursor:pointer;display:block;height:100%;inset:0;padding:0;position:absolute;text-align:left;touch-action:manipulation;width:100%;z-index:1}.public-gallery-card-media__play{align-items:center;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:linear-gradient(180deg,#fff8edf0,#f7f0e8db);border:1px solid rgba(255,248,237,.74);border-radius:999px;box-shadow:0 7px 16px #2a1a0e3d,inset 0 1px #ffffffc7,0 0 0 1px #9b642c29;display:inline-flex;justify-content:center;inset:auto .52rem .56rem auto;padding:.12rem;position:absolute;transition:background-color .2s ease,border-color .2s ease,transform .2s ease;pointer-events:none;z-index:3}@media(hover:hover)and (pointer:fine){.public-gallery-card:hover .public-gallery-card-media__play{background:linear-gradient(180deg,#fffaf2eb,#f7f0e8d6);border-color:#d9a26a70;transform:translateY(-1px)}}.public-gallery-card-media__play-icon{align-items:center;background:linear-gradient(135deg,#dfa463,#a8682e);border-radius:999px;box-shadow:inset 0 1px #ffffff57,inset 0 -2px 4px #502d122e;color:#fff8ed;display:inline-flex;font-size:.4rem;font-weight:800;height:1.08rem;justify-content:center;letter-spacing:.18em;min-width:1.08rem}.public-gallery-card-media__meta{bottom:0;color:var(--pg-text-inverse);display:grid;gap:.16rem;inset-inline:0;padding:.66rem 2.55rem .66rem .56rem;pointer-events:none;position:absolute;z-index:2}.public-gallery-card-media__title{color:#fffaf4;font-family:var(--font-family-script);font-size:clamp(1.06rem,1.32vw,1.36rem);font-weight:400;letter-spacing:.01em;line-height:1.12;margin:0;max-width:14ch;text-shadow:0 1px 0 rgba(255,255,255,.18),0 2px 8px rgba(24,15,8,.4),0 8px 24px rgba(24,15,8,.55);text-wrap:balance}.public-gallery-card-media__location{color:#fff4e6eb;font-family:"Cormorant Garamond",var(--font-family-serif);font-size:clamp(.56rem,.68vw,.72rem);font-style:italic;font-weight:400;letter-spacing:.05em;line-height:1.18;margin:0;max-width:100%;overflow:hidden;text-overflow:ellipsis;text-shadow:0 1px 4px rgba(24,15,8,.35),0 4px 16px rgba(24,15,8,.5);white-space:nowrap}.public-gallery-card-footer{align-items:center;background:linear-gradient(180deg,#fffbf4f5,#f7ecdeeb);border-top:1px solid rgba(155,100,44,.11);display:flex;gap:.22rem;justify-content:space-between;margin:0 .06rem .04rem;min-width:0;padding:.38rem .22rem .16rem;width:100%}.public-gallery-card-footer__couple{color:#2b302b;font-size:clamp(.58rem,.7vw,.76rem);font-weight:720;letter-spacing:-.01em;line-height:1.08;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.public-gallery-card-footer__entry{align-items:center;color:var(--pg-text-muted);display:flex;flex-wrap:nowrap;gap:.56rem;margin-top:0;min-width:0;white-space:nowrap}.public-gallery-card-footer__entry--date{margin-left:auto}.public-gallery-card-footer__date{color:#665c4fb3;font-size:clamp(.46rem,.56vw,.6rem);font-variant-numeric:tabular-nums;font-weight:500;letter-spacing:0;line-height:1.08;margin:0;text-align:right;white-space:nowrap}.public-gallery-video-player{background:#030303;color:#fffaf2;display:grid;inset:0;isolation:isolate;min-height:100dvh;overflow:hidden;padding:0;place-items:stretch;position:fixed;touch-action:manipulation;z-index:10000}.public-gallery-video-player__stage{align-items:center;background:#030303;display:flex;height:100dvh;justify-content:center;overflow:hidden;position:relative;width:100dvw}.public-gallery-video-player__video,.public-gallery-video-player__poster{background:#030303;display:block;height:100%;max-height:100dvh;max-width:100dvw;object-fit:contain;width:100%}.public-gallery-video-player__poster{-webkit-user-select:none;user-select:none}.public-gallery-video-player__close{align-items:center;appearance:none;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#03030394;border:1px solid rgba(255,250,242,.3);border-radius:999px;box-shadow:0 12px 30px #00000057,inset 0 1px #ffffff2e;color:#fff8ed;cursor:pointer;display:inline-flex;justify-content:center;min-height:2.45rem;min-width:2.45rem;padding:0;position:fixed;right:calc(.7rem + env(safe-area-inset-right,0px));top:calc(.7rem + env(safe-area-inset-top,0px));z-index:2}.public-gallery-video-player__close-icon{align-items:center;display:inline-flex;font-size:1.28rem;font-weight:800;height:1em;justify-content:center;line-height:1;transform:translateY(-.03em);width:1em}.public-gallery-video-player__error{background:#fffaf2eb;border:1px solid rgba(155,100,44,.18);border-radius:.85rem;box-shadow:0 20px 40px #0000004d;color:#2b302b;display:grid;gap:.75rem;max-width:min(22rem,100dvw - 2rem);padding:1rem;place-items:center;text-align:center}.public-gallery-video-player__error-title{font-size:1rem;font-weight:720;margin:0}.public-gallery-video-player__error-link{color:#9b642c;font-size:.82rem;font-weight:700;text-decoration:underline;text-underline-offset:.22em}@supports not (height: 100dvh){.public-gallery-video-player,.public-gallery-video-player__stage{min-height:100vh}.public-gallery-video-player__stage{height:100vh;width:100vw}.public-gallery-video-player__video,.public-gallery-video-player__poster{max-height:100vh;max-width:100vw}}@media(orientation:landscape)and (pointer:coarse){.public-gallery-video-player__video,.public-gallery-video-player__poster{object-fit:cover}.public-gallery-video-player__close{min-height:2.28rem;min-width:2.28rem;right:calc(.58rem + env(safe-area-inset-right,0px));top:calc(.58rem + env(safe-area-inset-top,0px))}.public-gallery-video-player__close-icon{font-size:1.18rem}}.public-gallery-video-player--safari .public-gallery-video-player__close{top:calc(5.5rem + env(safe-area-inset-top,0px))}@media(pointer:coarse){.public-gallery-video-player__close{-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:0 5px 14px #0000005c}}html.public-gallery-video-player-open .header,html.public-gallery-video-player-open .bottom-tab-bar,body.public-gallery-video-player-open .header,body.public-gallery-video-player-open .bottom-tab-bar{display:none!important;pointer-events:none;visibility:hidden!important}.public-gallery-card-media__open:focus-visible,.public-gallery-video-player__close:focus-visible,.public-gallery-video-player__error-link:focus-visible{box-shadow:var(--pg-focus-ring);outline:none}@keyframes gallery-character-stage-float{0%,to{transform:rotateY(-2deg) rotateX(1deg) translateZ(0)}48%{transform:rotateY(2deg) rotateX(0) translate3d(.35rem,-.45rem,1rem)}}@media(min-width:768px){.public-gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(min-width:1024px){.public-gallery-grid__item{grid-column:auto}.public-gallery-card--featured{border-color:color-mix(in srgb,var(--pg-accent) 34%,var(--pg-border) 66%)}.public-gallery-card-media__meta{gap:.22rem;padding:.82rem 3rem .82rem .74rem}.public-gallery-card-media__title{font-size:clamp(1.02rem,1.12vw,1.28rem);line-height:.98}.public-gallery-card-media__location{font-size:clamp(.62rem,.68vw,.76rem);line-height:1.22}.public-gallery-card-footer{padding:.46rem .38rem .22rem}.public-gallery-card-footer__couple{font-size:clamp(.76rem,.82vw,.92rem)}.public-gallery-card-footer__date{font-size:clamp(.58rem,.62vw,.68rem)}}@media(max-width:768px){.public-gallery{--pg-header-clearance: 4.5rem;min-height:auto;padding:calc(var(--pg-header-clearance) + clamp(1.25rem,7vw,2.1rem)) 1rem 1rem}.public-gallery__content{gap:clamp(1.05rem,5vw,1.45rem)}.public-gallery-header{max-width:min(100vw - .75rem,36rem);padding:0 .35rem clamp(.55rem,3vw,.9rem)}.public-gallery-header__hero{aspect-ratio:970/522;border-radius:1.25rem}.public-gallery-header__spread{background-image:url(/media/gallery/wedding-films-hero-spread-1440w-v2.webp);background-position:52% 51%;background-size:106% auto}.public-gallery-grid{gap:.42rem .22rem;grid-template-columns:repeat(3,minmax(0,1fr))}.public-gallery-card{border-radius:clamp(.42rem,2vw,.82rem);gap:.08rem;padding:clamp(.1rem,.75vw,.18rem)}.public-gallery-card-media{border-radius:clamp(.36rem,1.75vw,.68rem);min-height:0}.public-gallery-card-media__meta{padding:clamp(.34rem,1.2vw,.5rem) clamp(1.7rem,5vw,2rem) clamp(.34rem,1.2vw,.5rem) clamp(.32rem,1.2vw,.46rem)}.public-gallery-card-media__title{font-size:clamp(.38rem,2vw,.58rem);line-height:1.02}.public-gallery-card-media__location{font-size:clamp(.24rem,1.1vw,.38rem);line-height:1.24}.public-gallery-card-media__play{bottom:clamp(.28rem,1.2vw,.44rem);padding:clamp(.04rem,.3vw,.08rem);right:clamp(.24rem,1vw,.38rem)}.public-gallery-card-media__play-icon{font-size:clamp(.18rem,.75vw,.28rem);height:clamp(.52rem,2.6vw,.82rem);min-width:clamp(.52rem,2.6vw,.82rem)}.public-gallery-card-footer{gap:.12rem;padding:clamp(.18rem,.55vw,.24rem) clamp(.12rem,.4vw,.18rem) clamp(.07rem,.25vw,.1rem)}.public-gallery-card-footer__entry{gap:.16rem;min-width:0;overflow:hidden}.public-gallery-card-footer__date{font-size:clamp(.18rem,.82vw,.34rem);overflow:hidden;text-overflow:ellipsis}.public-gallery-card-footer__couple{font-size:clamp(.3rem,1.45vw,.48rem)}.capacitor-android .public-layout--gallery{background-color:#d5d7ca;overflow-x:hidden}.capacitor-android .public-layout--gallery .public-gallery{min-height:auto;overflow-x:hidden;padding-top:max(0px,5.75rem - var(--safe-area-top, 0px))}.public-gallery-card-media__image{object-position:var(--pg-card-object-position-mobile, var(--pg-card-object-position, center center))}}@media(pointer:coarse){.public-gallery-card-media__play{-webkit-backdrop-filter:none!important;backdrop-filter:none!important}}
