@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500&family=Lora:wght@400&display=swap');
:root{--paper:#f3ede5;--ink:#515342;--olive:#62634d;--body:#79756b}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:'Lora',Georgia,serif}a{color:inherit;text-decoration:none}button{font:inherit}img{display:block;max-width:100%}header{position:absolute;top:0;left:0;width:100%;z-index:10;display:flex;align-items:center;justify-content:center;gap:4%;height:clamp(100px,12.5vw,180px);padding:0 7%;background:linear-gradient(#f2ededaa,transparent)}header nav{display:flex;gap:clamp(20px,3.8vw,55px);align-items:center}header nav a,.eyebrow,.button,.tagline{font-family:Georgia,serif;letter-spacing:.21em;text-transform:uppercase}header nav a{font-size:clamp(9px,1.1vw,16px);white-space:nowrap;padding:10px 0}header nav a[aria-current=page]{border-bottom:1px solid var(--ink)}.brand{width:25%;flex-shrink:0;mix-blend-mode:multiply}.brand img{width:100%}.instagram{width:19px;height:19px}.menu{display:none}.hero{height:75.9vw;max-height:1093px;min-height:520px;position:relative;isolation:isolate}.hero-photo{position:absolute;width:100%;height:100%;object-fit:cover;object-position:center top;z-index:-2}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(to bottom,transparent 58%,#f3ede52e 68%,var(--paper) 95%);z-index:-1}.hero-brand{position:absolute;bottom:2.8%;width:46%;left:27%;mix-blend-mode:multiply}.hero-brand img{width:100%}.story-row{position:relative;min-height:49.2vw;max-height:710px;display:flex;align-items:center;overflow:hidden}.photo-panel{position:absolute;inset:0 auto 0 0;width:63%;height:100%;object-fit:cover;object-position:center;mask-image:linear-gradient(to right,#000 65%,transparent 100%)}.story-row:after{content:'';position:absolute;bottom:0;left:0;right:0;height:13%;background:linear-gradient(transparent,var(--paper));pointer-events:none}.story-row .copy{position:relative;margin-left:60.8%;width:35%;padding:5% 0;z-index:1}.eyebrow{font-size:clamp(10px,1.35vw,19px);letter-spacing:.24em;margin:0 0 12px}h1,h2{font-family:'Cormorant Garamond',Georgia,serif;font-weight:400}h2{font-size:clamp(36px,5.1vw,74px);line-height:1.02;margin:0;letter-spacing:-.035em}.rule{height:1px;width:45px;background:#868977;margin:22px 0 17px}.copy p:not(.eyebrow){font-size:clamp(14px,1.72vw,24px);line-height:1.57;color:var(--body);margin:0 0 16px}.button{display:inline-block;border:1px solid #7c7c6c;padding:10px 15px;font-size:clamp(11px,1.36vw,19px);letter-spacing:.15em;transition:background .2s,color .2s;background:transparent;cursor:pointer}.button:hover,.button:focus-visible{background:var(--ink);color:var(--paper)}.reverse .photo-panel{left:auto;right:0;mask-image:linear-gradient(to left,#000 64%,transparent 100%);object-position:center 55%}.reverse .copy{margin-left:8%;width:42%;padding-top:6%}.cake{min-height:47vw}.cake .photo-panel{width:55%;object-position:center 52%}.champagne{min-height:47vw}.champagne .photo-panel{object-position:center 46%}.champagne .copy{margin-left:63%;width:33%}.cta{text-align:center;position:relative;isolation:isolate;padding:6.5% 5% 7.5%;color:var(--paper);overflow:hidden;background:#62634d}.cta:before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(#62634deb,#62634de8),url('assets/welcome.jpg') center/cover;filter:blur(2px)}.cta .eyebrow{color:#d9d6ca;margin-bottom:15px}.cta h2{font-size:clamp(34px,5.2vw,75px);letter-spacing:-.04em}.cta p:not(.eyebrow){font-size:clamp(14px,1.8vw,26px);margin:14px 0 22px}.cta .button{border-color:#e6e1d6;padding:10px 20px;color:var(--paper)}.cta .button:hover{background:var(--paper);color:var(--ink)}.cta:after{content:'';position:absolute;left:8%;right:8%;bottom:9%;border-bottom:1px solid #e6e1d644}.inner header{position:relative;background:#e9e4de}.page-content{min-height:65vh;max-width:1100px;margin:auto;padding:75px 6% 95px}.page-content h1{font-size:clamp(48px,7vw,80px);margin:0 0 20px}.page-content h2{font-size:36px}.page-content p{line-height:1.7;color:var(--body)}.pending{border-top:1px solid #c9c5b9;padding:25px 0;margin-top:25px}.pending-label{font-size:12px;letter-spacing:.15em;text-transform:uppercase;color:#817d70}.cards{display:grid;grid-template-columns:repeat(2,1fr);gap:35px}.gallery-cover{height:320px;width:100%;object-fit:cover}.gallery-items{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-top:30px}.gallery-items img{height:360px;width:100%;object-fit:cover;cursor:zoom-in}dialog{padding:0;border:0;background:transparent;max-width:90vw;max-height:92vh}dialog::backdrop{background:#222b}dialog img{max-height:88vh;object-fit:contain}dialog button{position:fixed;top:18px;right:25px;color:white;background:#333;border:0;font-size:28px;cursor:pointer}.back{display:inline-block;margin-bottom:30px;text-decoration:underline}.notice{font-style:italic}.footer-small{text-align:center;padding:24px;font-size:12px;color:#77776c}.skip{position:fixed;top:-100px;left:15px;z-index:50;padding:12px;background:var(--paper)}.skip:focus{top:10px}a:focus-visible,button:focus-visible{outline:2px solid var(--ink);outline-offset:5px}
@media(min-width:1440px){.hero{height:1093px}.story-row{min-height:708px}.cake,.champagne{min-height:677px}body{max-width:1440px;margin:auto}header{max-width:1440px;left:50%;transform:translateX(-50%)}}
@media(max-width:600px){header{height:95px;justify-content:space-between;padding:0 6%}.brand{width:190px;order:-1}header nav{display:none}header.open nav{display:flex;position:absolute;top:95px;left:0;right:0;background:var(--paper);padding:20px;justify-content:center;flex-wrap:wrap;gap:18px}header.open nav a{font-size:11px}.menu{display:block;border:0;background:transparent;color:var(--ink);font-size:12px;letter-spacing:.15em;text-transform:uppercase}.hero{min-height:580px;height:115vw;max-height:720px}.hero-photo{object-position:54% center}.hero-brand{width:74%;left:13%;bottom:4%}.hero:after{background:linear-gradient(transparent 55%,var(--paper) 96%)}.story-row,.cake,.champagne{display:flex;flex-direction:column;min-height:0;max-height:none}.photo-panel,.reverse .photo-panel,.cake .photo-panel,.champagne .photo-panel{position:relative;width:100%;height:350px;mask-image:linear-gradient(#000 65%,transparent 100%);object-position:center 45%;order:0}.story-row .copy,.reverse .copy,.champagne .copy{margin:-20px 0 0;width:100%;padding:0 9% 45px;order:1}.story-row:after{display:none}.eyebrow{font-size:11px}h2{font-size:43px}.copy p:not(.eyebrow){font-size:16px;line-height:1.7}.button{font-size:12px;padding:12px 16px}.cta{padding:55px 8% 65px}.cta h2{font-size:40px;line-height:1.1}.cta p:not(.eyebrow){font-size:16px;line-height:1.6}.cards,.gallery-items{grid-template-columns:1fr}.page-content{padding-top:50px}.gallery-items img{height:auto}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
@media(min-width:601px){.hero-photo{height:auto;object-fit:initial}.hero:after{background:linear-gradient(to bottom,transparent 62%,#f3ede540 74%,var(--paper) 94%)}}
@media(min-width:601px){.hero:after{background:linear-gradient(to bottom,transparent 60%,#f3ede570 74%,var(--paper) 87%)}.hero-photo{opacity:.94}.story-row .copy{width:36%;padding-top:4%;padding-bottom:4%}.copy p:not(.eyebrow){font-size:1.68vw}.cake .photo-panel,.champagne .photo-panel{object-fit:cover}.reverse .copy{width:42%}.champagne .copy{width:33%}.story-row{min-height:49.2vw}.cake,.champagne{min-height:47vw}}
@media(min-width:1440px){.copy p:not(.eyebrow){font-size:24px}.story-row{min-height:708px}.cake,.champagne{min-height:677px}}
.cta:before{background:linear-gradient(90deg,#62634df5,#62634df5 65%,#62634dd9),url('assets/welcome.jpg') right/cover}
.cta{background-image:url('assets/branch.svg');background-repeat:no-repeat;background-position:left bottom;background-size:23% 90%}.cta:before{z-index:-2}.story-row:first-of-type:before{content:'';position:absolute;right:-4%;top:0;width:14%;height:45%;background:url('assets/branch.svg') center/contain no-repeat;opacity:.35;transform:rotate(145deg)}
.hero+.story-row:before{content:'';position:absolute;right:-4%;top:0;width:14%;height:45%;background:url('assets/branch.svg') center/contain no-repeat;opacity:.35;transform:rotate(145deg)}
@media(max-width:600px){header.open nav[aria-label="More navigation"]{top:145px;padding-top:10px}.hero+.story-row:before{display:none}.desktop{display:none}}

/* Keep the original photograph proportions within the approved photo panels. */
.cake .photo-panel{object-fit:cover;object-position:50% 62%}.champagne .photo-panel{object-fit:cover;object-position:50% 48%}

/* Fit six navigation destinations while retaining the centered brand. */
header{gap:3%}header nav{gap:clamp(12px,2.3vw,33px)}
