.wedding-album-section{background:#eeebe4;padding-block:82px 0;overflow:clip}.wedding-album-heading{grid-template-columns:1.1fr .7fr;align-items:end;gap:50px;margin-bottom:45px;display:grid}.wedding-album-heading>p{color:#65695d;max-width:390px;font-size:14px}.wedding-album-table{background:radial-gradient(at 50% 30%,#f8f6f0,#dfdbd1);padding:38px 28px 25px}.photo-album,.photo-album-loading{color:#343c32;width:min(100%,1000px);margin-inline:auto}.photo-album-stage{width:100%;aspect-ratio:var(--album-spread-ratio,2);perspective:2400px;touch-action:pan-y;-webkit-user-select:none;user-select:none;isolation:isolate;outline-offset:10px;position:relative}.photo-album-book{width:100%;height:100%;transform:translateX(var(--album-shift));transform-style:preserve-3d;transition:transform var(--album-duration) cubic-bezier(.32, .04, .22, 1);position:relative}.photo-album-board{background:#314335;border-radius:2px 5px 5px 2px;position:absolute;inset:2px -4px -9px;transform:translateZ(-3px);box-shadow:0 30px 40px -18px #25271f65,0 6px 8px #302e2830}.photo-album-board:after{content:"";background:repeating-linear-gradient(#ece6da 0 1px,#c6bfb0 1px 2px);border-radius:0 0 2px 2px;height:6px;position:absolute;inset:auto 3px 3px}.photo-album-book[data-view=cover]:not([data-turning=true]) .photo-album-board{left:50%}.photo-album-book[data-view=back]:not([data-turning=true]) .photo-album-board{right:50%}.photo-album-left,.photo-album-right{width:50%;position:absolute;top:0;bottom:0}.photo-album-left{left:0}.photo-album-right{right:0}.photo-album-page{background:#fffdf7 radial-gradient(#cfc7b019 .6px,#0000 .6px) 0 0/4px 4px;position:absolute;inset:0;overflow:hidden}.photo-album-left>.photo-album-page{box-shadow:inset -13px 0 17px -19px #302e28}.photo-album-right>.photo-album-page{box-shadow:inset 13px 0 17px -19px #302e28}.photo-album-under .photo-album-page--blank{visibility:hidden}.photo-album-page--cover,.photo-album-page--back,.photo-album-static-cover{color:#dfd7b9;background-color:#2d4035;background-image:repeating-linear-gradient(15deg,#ffffff04 0 1px,#0000 1px 3px),repeating-linear-gradient(105deg,#00000008 0 1px,#0000 1px 3px);background-position:0 0;background-repeat:repeat;background-size:auto;background-attachment:scroll;background-origin:padding-box;background-clip:border-box;box-shadow:inset 8px 0 10px -9px #101c16,inset -2px 0 3px #a4af8e20}.photo-album-cover-content{text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:14% 12%}.photo-album-brand{letter-spacing:.3em;font-size:clamp(10px,1.3vw,16px)}.photo-album-cover-rule{background:#dfd7b965;width:24px;height:1px;margin-block:11%}.photo-album-cover-title{font-family:Georgia,serif;font-size:clamp(24px,3.4vw,43px);font-style:italic;line-height:1.15}.photo-album-cover-caption{letter-spacing:.12em;margin-top:12%;font-size:10px;line-height:1.7}.photo-album-page--back .photo-album-cover-title{letter-spacing:.05em;font-family:inherit;font-size:clamp(11px,1.2vw,15px);font-style:normal;line-height:1.8}.photo-album-page--back .photo-album-cover-caption{letter-spacing:0;max-width:210px;font-family:Georgia,serif;font-size:clamp(12px,1.5vw,18px);font-style:italic}.photo-album-statement{flex-direction:column;justify-content:center;display:flex;position:absolute;inset:15% 13%}.photo-album-statement>span{text-transform:uppercase;letter-spacing:.15em;font-size:9px;line-height:1.8}.photo-album-statement>p{margin-top:15%;font-family:Georgia,serif;font-size:clamp(21px,3.1vw,38px);font-style:italic;line-height:1.25}.photo-album-statement>small{max-width:230px;margin-top:12%;font-size:11px;line-height:1.8}.photo-album-images{justify-content:center;align-items:center;display:flex;position:absolute;inset:10%}.photo-album-images img{object-fit:contain;pointer-events:none;width:100%;height:100%;display:block}.photo-album-page--pair .photo-album-images{grid-template-rows:.7fr 1.3fr;gap:6%;display:grid;inset:8% 12%}.photo-album-page--pair img{min-height:0}.photo-album-page--full .photo-album-images{inset:0}.photo-album-page--full img{object-fit:cover}.photo-album-page--panorama .photo-album-images{inset:0}.photo-album-page--panorama img{object-fit:cover;width:200%;max-width:none;position:absolute;left:0}.photo-album-page--panorama[data-panorama=right] img{left:-100%}.photo-album-caption{letter-spacing:.12em;text-transform:uppercase;text-align:center;font-size:8px;position:absolute;bottom:4%;left:10%;right:10%}.photo-album-folio{color:#87887b;font-size:8px;position:absolute;bottom:3%;right:6%}.photo-album-gutter{pointer-events:none;opacity:0;z-index:5;background:linear-gradient(90deg,#0000,#312f2220 40%,#22201535 50%,#f7f4e360 57%,#0000);width:24px;transition:opacity .3s;position:absolute;top:0;bottom:0;left:calc(50% - 12px)}.photo-album-book[data-open=true] .photo-album-gutter,.photo-album-book[data-turning=true] .photo-album-gutter{opacity:1}.photo-album-sheet{width:50%;transform-style:preserve-3d;transform:rotateY(var(--album-angle));transition:transform var(--album-duration) cubic-bezier(.32, .04, .22, 1);z-index:6;will-change:transform;position:absolute;top:0;bottom:0}.photo-album-sheet--forward{transform-origin:0;left:50%}.photo-album-sheet--backward{transform-origin:100%;left:0}.photo-album-sheet-front,.photo-album-sheet-back{backface-visibility:hidden;transform-style:preserve-3d;position:absolute;inset:0}.photo-album-sheet-front{transform:translateZ(.2px)}.photo-album-sheet-back{transform:rotateY(180deg)translateZ(.2px)}.photo-album-sheet-front:after,.photo-album-sheet-back:after{content:"";opacity:var(--album-shade);pointer-events:none;background:linear-gradient(90deg,#241f12,#241f1250 20%,#0000 75%);position:absolute;inset:0;box-shadow:16px 6px 25px #28221838}.photo-album-sheet-back:after{background:linear-gradient(270deg,#241f12,#241f1250 20%,#0000 75%)}.photo-album-sheet[data-settling=true] .photo-album-sheet-front:after,.photo-album-sheet[data-settling=true] .photo-album-sheet-back:after{animation:.7s both album-leaf-light}@keyframes album-leaf-light{0%,to{opacity:0}45%{opacity:.3}}.photo-album-corner{z-index:7;cursor:grab;background:0 0;border:0;width:60px;height:60px;padding:0;position:absolute;bottom:0}.photo-album-corner--left{left:0}.photo-album-corner--right{right:0}.photo-album-corner:after{content:"";opacity:0;width:29px;height:29px;transition:opacity .2s;position:absolute;bottom:0}.photo-album-corner--left:after{background:linear-gradient(45deg,#c3bb9c90,#0000 65%);left:0}.photo-album-corner--right:after{background:linear-gradient(-45deg,#c3bb9c90,#0000 65%);right:0}.photo-album-corner:hover:after,.photo-album-corner:focus-visible:after{opacity:1}.photo-album-help{text-align:center;color:#64695d;min-height:48px;padding-top:27px;font-size:11px;line-height:1.6}.photo-album-controls{justify-content:center;align-items:center;gap:26px;margin-top:12px;display:flex}.photo-album-controls button,.photo-album-secondary button{color:inherit;background:0 0;border:0;justify-content:center;align-items:center;gap:10px;min-height:44px;padding:9px 12px;font-size:12px;display:inline-flex}.photo-album-controls button{border:1px solid #92988870}.photo-album-controls button:hover:not(:disabled){background:#ffffff70}.photo-album-controls button:disabled{opacity:.35}.photo-album-position{text-align:center;flex:0 130px;min-width:0;font-size:11px}.photo-album-secondary{flex-wrap:wrap;justify-content:center;gap:10px 24px;min-height:44px;margin-top:10px;display:flex}.photo-album-secondary button{text-underline-offset:4px;font-size:11px;text-decoration:underline}.photo-album-load-error{text-align:center;margin-top:12px;font-size:12px}.photo-album :focus-visible{outline-offset:4px;outline:3px solid #63843a}.wedding-album-credit{color:#666b60;text-align:center;max-width:760px;padding-block:19px 0;font-size:10px}.wedding-album-cta{justify-content:space-between;align-items:center;gap:30px;padding-block:45px 70px;display:flex}.wedding-album-cta>p{letter-spacing:-.8px;font-size:clamp(24px,3vw,36px);line-height:1.25}.wedding-album-cta em{font-family:Georgia,serif}.wedding-album-cta>div{max-width:350px}.wedding-album-cta small{color:#666b60;margin-top:13px;font-size:10px;line-height:1.7;display:block}.photo-album-loading{padding-bottom:154px}.photo-album-static-cover{aspect-ratio:1;text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:35px;width:50%;margin-inline:auto;display:flex;box-shadow:0 20px 30px -15px #25271f65}.photo-album-static-cover>span{letter-spacing:.3em;font-size:12px}.photo-album-static-cover>p{font-family:Georgia,serif;font-size:clamp(24px,3.4vw,43px);font-style:italic}.photo-album-static-cover>small{letter-spacing:.12em;font-size:10px}.photo-album-loading>p{text-align:center;margin-top:28px;font-size:11px}.photo-album-expanded-note{place-items:center;min-height:300px;font-size:13px;display:grid}.photo-album-dialog{color:#343c32;background:0 0;border:0;width:100vw;max-width:none;height:100dvh;max-height:none;padding:0;overflow:auto}.photo-album-dialog::backdrop{background:#141e18e8}.photo-album-dialog-content{width:min(1200px, calc(100% - 100px), calc((100dvh - 240px) * var(--album-spread-ratio,2)));background:#e5e2d9;margin:65px auto 35px;padding:25px;position:relative}.photo-album-dialog-close{z-index:10;color:#f8f7f3;background:#25352c;border:1px solid #ffffff60;place-items:center;min-width:44px;min-height:44px;display:grid;position:fixed;top:16px;right:16px}@media (width<=900px){.wedding-album-section{padding-top:60px}.wedding-album-heading{grid-template-columns:1fr;gap:25px;margin-bottom:30px}.wedding-album-heading>p{max-width:560px}.wedding-album-table{padding:25px 18px 18px}.wedding-album-cta{padding-block:35px 50px}.photo-album-dialog-content{width:min(calc(100% - 40px), calc((100dvh - 230px) * var(--album-spread-ratio,2)));padding:20px}}@media (width<=640px){.wedding-album-table{width:calc(100% - 24px);padding:22px 12px 15px}.photo-album-stage{aspect-ratio:var(--album-page-ratio,1)}.photo-album-left,.photo-album-right,.photo-album-sheet{width:100%;left:0;right:0}.photo-album-book[data-view=cover]:not([data-turning=true]) .photo-album-board,.photo-album-book[data-view=back]:not([data-turning=true]) .photo-album-board{left:0;right:0}.photo-album-gutter{display:none}.photo-album-sheet--forward{transform-origin:0}.photo-album-sheet--backward{transform-origin:100%}.photo-album-cover-title{font-size:clamp(27px,8vw,40px)}.photo-album-statement>p{font-size:clamp(26px,7vw,38px)}.photo-album-page--panorama img,.photo-album-page--panorama[data-panorama=right] img{object-fit:contain;width:100%;left:0}.photo-album-controls{justify-content:space-between;gap:4px}.photo-album-controls button{gap:5px;padding-inline:9px;font-size:11px}.photo-album-position{flex:1;min-width:0;font-size:10px}.photo-album-help{min-height:57px;padding-top:23px;font-size:10px}.photo-album-secondary{gap:0 6px}.photo-album-secondary button{font-size:10px}.photo-album-static-cover{width:100%}.photo-album-brand{font-size:13px}.wedding-album-cta{flex-direction:column;align-items:flex-start;gap:22px}.photo-album-dialog-content{width:min(calc(100% - 28px), calc((100dvh - 290px) * var(--album-page-ratio,1)));padding:14px}}@media (height<=500px) and (width>=641px){.photo-album-dialog-content{width:min(100% - 70px,900px)}}@media (prefers-reduced-motion:reduce){.photo-album *,.photo-album :after{transition:none!important;animation:none!important}}
