@import "https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400&family=Manrope:wght@400;500;600&display=swap";:root{color:#2e2724;font-synthesis:none;background:#f7f0e4;font-family:Manrope,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;line-height:1.65}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:5rem}body{background:var(--ivory);min-width:320px;color:var(--ink);margin:0}a{color:inherit}button,input,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible{outline:3px solid var(--gold);outline-offset:4px}a:focus-visible{outline:3px solid var(--gold);outline-offset:4px}select:focus-visible{outline:3px solid var(--gold);outline-offset:4px}img{max-width:100%;display:block}h1,h2,h3,.script,.footerNames{font-family:Cormorant Garamond,Georgia,serif;font-weight:500;line-height:1.08}h1{font-size:clamp(3rem,10vw,7rem)}h2{margin:.2em 0;font-size:clamp(2.5rem,7vw,4.8rem)}h3{margin:.4em 0;font-size:clamp(1.8rem,4vw,2.6rem)}p{white-space:pre-line}.skip{z-index:1000;background:var(--burgundy);color:#fff;padding:.75rem 1rem;position:fixed;top:-5rem;left:1rem}.skip:focus{top:1rem}.siteHeader{z-index:10;border-bottom:1px solid color-mix(in srgb,var(--gold) 35%,transparent);background:color-mix(in srgb,var(--ivory) 91%,transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);justify-content:space-between;align-items:center;height:5rem;padding:0 clamp(1rem,5vw,5rem);display:flex;position:relative}.brand{align-items:center;gap:.35rem;font-family:Cormorant Garamond,serif;font-size:1.6rem;font-weight:600;text-decoration:none;display:flex}.brand i{color:var(--gold);font-weight:400}.siteHeader nav,.storyNav{gap:clamp(1rem,4vw,2.5rem);display:flex}.siteHeader nav a,.storyNav a,footer nav a{letter-spacing:.12em;text-transform:uppercase;font-size:.78rem;font-weight:600;text-decoration:none}.siteHeader a:hover,.storyNav a:hover,footer a:hover{color:var(--burgundy)}.eyebrow{text-transform:uppercase;letter-spacing:.24em;color:var(--burgundy);margin:0;font-size:.72rem;font-weight:600}.ornament{color:var(--gold);justify-content:center;align-items:center;gap:.7rem;width:min(16rem,80%);margin:1.2rem auto;display:flex}.ornament span{background:var(--gold);opacity:.55;flex:1;height:1px}.ornament b{font-size:.7rem}.button{border:1px solid var(--burgundy);min-height:3.25rem;color:var(--burgundy);text-transform:uppercase;letter-spacing:.11em;cursor:pointer;background:0 0;justify-content:space-between;align-items:center;gap:2rem;padding:.8rem 1.25rem;font-size:.76rem;font-weight:600;text-decoration:none;transition:all .2s;display:inline-flex}.button:hover{transform:translateY(-2px);box-shadow:0 8px 22px #541f2c18}.button.primary{background:var(--burgundy);color:#fffaf1}.button.secondary{background:#fffaf0}.button.light{color:#fff;background:0 0;border-color:#e3cb9e}.button.large{width:100%;min-height:4rem;font-size:.88rem}.homeHero{text-align:center;min-height:100svh;padding:max(3rem,env(safe-area-inset-top)) max(1.2rem,env(safe-area-inset-right)) max(3rem,env(safe-area-inset-bottom)) max(1.2rem,env(safe-area-inset-left));background:radial-gradient(circle at 50% 35%,#fffdf7 0,#f7f0e4 48%,#eadbc3 100%);flex-direction:column;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.homeHero:before{content:"";border:1px solid color-mix(in srgb,var(--gold) 45%,transparent);pointer-events:none;position:absolute;top:1rem;bottom:1rem;left:1rem;right:1rem}.corner{border-color:var(--gold);opacity:.35;width:8rem;height:8rem;position:absolute}.cornerA{border-top:1px solid;border-left:1px solid;top:1.8rem;left:1.8rem}.cornerB{border-bottom:1px solid;border-right:1px solid;bottom:1.8rem;right:1.8rem}.homeMonogram{border:1px solid var(--gold);width:4rem;height:4rem;color:var(--burgundy);border-radius:50%;place-items:center;margin:1.25rem;font-family:Cormorant Garamond,serif;font-size:1.2rem;display:grid}.homeMonogram i{color:var(--gold)}.homeHero h1{color:var(--burgundy);align-items:center;gap:clamp(.6rem,3vw,2rem);margin:.1em 0;display:flex}.homeHero h1 em{color:var(--gold);font-size:.48em;font-weight:400}.homeHero time,.largeDate{text-transform:uppercase;letter-spacing:.16em;font-family:Cormorant Garamond,serif;font-size:clamp(1.15rem,3vw,1.55rem)}.invitation{max-width:32rem;margin:1.3rem auto;font-family:Cormorant Garamond,serif;font-size:clamp(1.15rem,3vw,1.4rem);line-height:1.5}.countdown{gap:clamp(.8rem,4vw,2.4rem);margin:1.5rem 0;display:flex}.countdown div{min-width:3rem}.countdown strong{color:var(--burgundy);font-family:Cormorant Garamond,serif;font-size:2rem;line-height:1;display:block}.countdown span{letter-spacing:.12em;text-transform:uppercase;margin-top:.4rem;font-size:.6rem;display:block}.countdownPassed{color:var(--burgundy);font-family:Cormorant Garamond,serif;font-size:1.6rem}.heroActions{flex-wrap:wrap;justify-content:center;gap:.75rem;display:flex}.locationLine{letter-spacing:.2em;text-transform:uppercase;color:#6b5b52;margin-top:1.5rem;font-size:.7rem}.pageHero{background:var(--forest);color:#fff;grid-template-columns:1fr 1.25fr;min-height:70vh;display:grid}.pageHero>div{flex-direction:column;justify-content:center;padding:clamp(3rem,8vw,8rem);display:flex}.pageHero .eyebrow{color:#e7c985}.pageHero h1{margin:.15em 0}.pageHero figure{height:100%;margin:0}.pageHero img{object-fit:cover;width:100%;height:100%}.imageFallback{color:var(--burgundy);background:linear-gradient(135deg,#eee1cc,#d9c29f);flex-direction:column;justify-content:center;align-items:center;gap:.5rem;min-height:16rem;display:flex;position:relative;overflow:hidden}.imageFallback:after{content:"❦";color:#fff5;font-size:14rem;position:absolute;transform:rotate(-18deg)}.imageFallback .monogram{z-index:1;font-family:Cormorant Garamond,serif;font-size:clamp(2.5rem,8vw,5rem)}.imageFallback small{z-index:1;text-transform:uppercase;letter-spacing:.18em}.section{padding:clamp(4rem,9vw,8rem) max(1.2rem,50vw - 560px);scroll-margin-top:4rem}.section.narrow{max-width:900px;margin:auto}.section.tint{background:#efe3d0}.sectionHeading{text-align:center;max-width:720px;margin:0 auto 3rem}.sectionHeading>p:last-child{font-family:Cormorant Garamond,serif;font-size:1.25rem}.venueCard{background:#fffaf1;border:1px solid #b8935360;max-width:680px;margin:auto;padding:clamp(1.5rem,5vw,3.5rem);box-shadow:0 18px 55px #4b2e1c14}.venueCard address{margin:1rem 0 2rem;font-size:1.05rem;font-style:normal}.venueCard dl{border-block-start:1px solid #b8935340;border-block-end:1px solid #b8935340;grid-template-columns:1fr 1fr;margin:1.5rem 0 2rem;display:grid}.venueCard dl div{padding:1rem 0}.venueCard dt{text-transform:uppercase;letter-spacing:.15em;color:#79685d;font-size:.68rem}.venueCard dd{margin:0;font-family:Cormorant Garamond,serif;font-size:1.2rem}.mapButtons{grid-template-columns:1fr 1fr;gap:.7rem;margin-top:.7rem;display:grid}.textButton{border-color:#0000;justify-content:center}.notice{text-align:center;color:var(--forest);font-weight:600}.mapPlaceholder{background:var(--forest);color:#fff;justify-content:center;align-items:center;gap:2rem;max-width:900px;min-height:15rem;margin:3rem auto 0;padding:clamp(2rem,5vw,4rem);display:flex}.mapPlaceholder>span{color:#e7c985;font-size:4rem}.mapPlaceholder iframe{border:0;width:100%;height:24rem}.backStory{text-align:center;background:#e8d7bb;padding:3rem 1rem}.backStory p{margin:0;font-family:Cormorant Garamond,serif;font-size:1.6rem}.backStory a{color:var(--burgundy);font-weight:600}.storyHero{background:#eaddc7;grid-template-columns:1.4fr 1fr;align-items:center;min-height:76vh;display:grid}.storyHeroImage{height:100%}.storyHeroImage>*{height:100%;margin:0}.storyHeroImage img{object-fit:cover;width:100%;height:100%}.storyHeroCard{text-align:center;z-index:1;background:#fffaf1;border:1px solid #b8935360;margin-left:-5rem;padding:clamp(2rem,6vw,5rem);box-shadow:0 20px 55px #43210f18}.storyHeroCard h1{color:var(--burgundy);margin:.25em 0;font-size:clamp(3rem,7vw,5rem)}.storyHeroCard h1 span,.storyHeroCard h1 em{display:block}.storyHeroCard h1 em{color:var(--gold);margin:.3em;font-size:.35em}.storyNav{z-index:9;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffaf0ee;border-bottom:1px solid #b8935340;justify-content:center;padding:1rem;position:sticky;top:0;overflow:auto}.storyNav a{white-space:nowrap}.timelineSection{position:relative}.timelineSection:after{content:"";background:#b8935360;width:1px;position:absolute;top:15rem;bottom:4rem;left:50%}.timelineItem{z-index:1;grid-template-columns:1fr 1fr;align-items:center;gap:clamp(2rem,7vw,6rem);margin:4rem 0;display:grid;position:relative}.timelineItem.reverse .timelineMedia{order:2}.timelineMedia{background:var(--ivory);padding:.7rem;box-shadow:0 10px 35px #3a24131a}.timelineMedia figure{margin:0}.timelineMedia img{object-fit:cover;width:100%}.timelineCopy{background:var(--ivory);padding:clamp(1rem,3vw,2.5rem)}.timelineCopy p{font-size:1rem}.emptyState{text-align:center;background:#fffaf090;border:1px dashed #b8935380;max-width:700px;margin:2rem auto;padding:2.5rem}.emptyState>span{color:var(--gold);font-size:2rem}.centeredCopy{text-align:center;max-width:680px;margin:auto}.closingQuote{text-align:center;max-width:760px;margin:5rem auto 0}.closingQuote>p{font-family:Cormorant Garamond,serif;font-size:1.45rem}.closingQuote h3{text-transform:uppercase;letter-spacing:.08em;font-size:1.25rem}.closingQuote time{color:var(--burgundy);font-family:Cormorant Garamond,serif;font-size:2rem}.closingQuote .countdown{justify-content:center}.weddingDay{text-align:center;background:var(--burgundy);color:#fff;padding:clamp(5rem,10vw,9rem) 1rem}.weddingDay h2{margin:.3em}.weddingDay h3,.weddingDay .eyebrow{color:#e7c985}.weddingDay .button{margin-top:1rem}.thankYou{text-align:center;max-width:760px;margin:auto;padding:clamp(5rem,10vw,9rem) 1rem}.thankYou>p{font-family:Cormorant Garamond,serif;font-size:1.35rem}.thankYou .script{font-size:1.8rem}.gallery{grid-template-columns:repeat(3,1fr);gap:.75rem;display:grid}.gallery button{cursor:zoom-in;background:0 0;border:0;padding:0}.gallery img{aspect-ratio:4/5;object-fit:cover;width:100%}.galleryGroup{margin:4rem 0}.lightbox{z-index:1000;color:#fff;background:#170d0bef;grid-template-columns:4rem 1fr 4rem;place-items:center;padding:1rem;display:grid;position:fixed;top:0;bottom:0;left:0;right:0}.lightbox figure{text-align:center;max-height:92vh;margin:0}.lightbox img{max-height:82vh;margin:auto}.lightbox figcaption span{display:block}.lightbox button{color:#fff;cursor:pointer;background:0 0;border:0;font-size:3rem}.lightboxClose{position:absolute;top:1rem;right:1rem}.familyGrid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.5rem;display:grid}.familyGrid article{text-align:center;background:#fffaf1;padding:1rem}.familyGrid figure{margin:0}.video,.videoPoster{aspect-ratio:16/9;border:0;width:100%}.videoPoster{background:var(--forest);color:#fff;cursor:pointer;flex-direction:column;justify-content:center;align-items:center;display:flex}.videoPoster span{color:#e7c985;font-size:3rem}.videoPoster small{opacity:.75}.qrHero{padding:5rem 1rem 1rem}.warning{color:#562c00;background:#fff2cf;border-left:4px solid #a26912;max-width:800px;margin:2rem auto;padding:1.2rem}.warning p{margin:.25rem 0}.qrGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem;max-width:1100px;margin:auto;padding:2rem 1rem 7rem;display:grid}.qrCard{background:#fffaf1;border:1px solid #b8935360;padding:clamp(1.2rem,4vw,2.5rem)}.qrCard code{overflow-wrap:anywhere;background:#eee3d2;padding:.75rem;font-size:.76rem;display:block}.qrCanvas{width:min(100%,400px);height:auto;margin:2rem auto;display:block}.qrCard label{text-transform:uppercase;letter-spacing:.1em;gap:.35rem;margin:1rem 0;font-size:.8rem;font-weight:600;display:grid}.qrCard select{background:#fff;border:1px solid #9d8461;padding:.8rem}.qrActions{flex-wrap:wrap;gap:.5rem;display:flex}.finePrint{color:#685b53;font-size:.78rem}.notFound{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:75vh;padding:2rem;display:flex}.notFound .homeMonogram{flex:none}.notFound h1{margin:.2em;font-size:clamp(2.8rem,8vw,5rem)}footer{text-align:center;color:#f8f1e4;background:#1f352e;padding:4rem 1rem}footer .ornament{max-width:10rem}footer .footerNames{margin:.3rem;font-size:2rem}footer>p:nth-of-type(2){letter-spacing:.2em;font-size:.7rem}footer .script{font-size:1.2rem}footer nav{justify-content:center;gap:1.5rem;margin-top:2rem;display:flex}@media (max-width:760px){.siteHeader{height:4rem}.siteHeader nav a:first-child{display:none}.homeHero h1{flex-direction:column;gap:0}.homeHero h1 em{line-height:.65}.homeHero .button{width:min(100%,22rem)}.pageHero{grid-template-columns:1fr}.pageHero>div{padding:3rem 1.5rem}.pageHero figure{min-height:17rem}.storyHero{flex-direction:column;display:flex}.storyHeroImage{width:100%;height:auto}.storyHeroCard{width:calc(100% - 2rem);margin:-2rem 1rem 1rem;padding:2rem 1rem}.storyNav{justify-content:flex-start}.storyNav a{font-size:.7rem}.timelineSection:after{left:1.3rem}.timelineItem,.timelineItem.reverse{margin:3rem 0 3rem 1.3rem;display:block}.timelineItem.reverse .timelineMedia{order:initial}.timelineMedia{margin-left:1rem}.timelineCopy{margin-top:-1rem;position:relative}.mapButtons,.qrGrid{grid-template-columns:1fr}.gallery{grid-template-columns:repeat(2,1fr)}.lightbox{grid-template-columns:2.5rem 1fr 2.5rem;padding:.5rem}.heroActions{flex-direction:column;align-items:stretch;width:min(100%,24rem)}.heroActions .button{justify-content:center}.countdown{gap:.6rem}.countdown strong{font-size:1.7rem}footer nav{flex-direction:column;gap:.75rem}}@media (max-width:360px){.siteHeader nav{gap:.6rem}.siteHeader nav a{font-size:.65rem}.countdown div{min-width:2.7rem}.countdown span{font-size:.52rem}.section{padding-inline-start:1rem;padding-inline-end:1rem}.mapButtons .button{letter-spacing:.06em;padding-inline-start:.7rem;padding-inline-end:.7rem}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}.qrLabel{white-space:pre-line;text-align:center;letter-spacing:.16em;font-size:.78rem;font-weight:600}.homeWithPhoto{text-align:center;grid-template-columns:minmax(0,1fr) minmax(20rem,.72fr);gap:clamp(1.5rem,4vw,4rem);padding:clamp(1.5rem,4vw,4rem);display:grid}.homeContent{z-index:1;flex-direction:column;justify-content:center;align-items:center;padding:1rem;display:flex;position:relative}.homeFeature{border:1px solid color-mix(in srgb, var(--gold) 55%, transparent);background:#fffaf1;place-self:center;width:100%;max-width:34rem;margin:0;padding:.65rem;transform:rotate(1.25deg);box-shadow:0 1.5rem 4rem #3f261b20}.homeFeature img{object-fit:cover;object-position:center 40%;width:100%;max-height:calc(100svh - 5rem)}.venueHeroName{color:#e7c985;margin:1.2rem 0 0;font-size:clamp(1.7rem,3vw,2.6rem)}.videoGrid{grid-template-columns:minmax(0,1fr);gap:2.5rem;max-width:62rem;margin:3rem auto 0;display:grid}.videoGrid article{border:1px solid color-mix(in srgb, var(--gold) 42%, transparent);background:#fffaf1;min-width:0;padding:clamp(.7rem,2vw,1.15rem);box-shadow:0 1.2rem 3.4rem #3f261b16}.videoGrid h3{color:var(--burgundy);margin:.25rem 0 1rem;padding-inline-start:.35rem;padding-inline-end:.35rem;font-size:clamp(1.5rem,3vw,2rem)}.videoShell{border:1px solid color-mix(in srgb, var(--gold) 40%, transparent);background:#16110f;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #fff1}.videoShell:before{content:"";z-index:1;pointer-events:none;border:1px solid #b8935345;position:absolute;top:.45rem;bottom:.45rem;left:.45rem;right:.45rem}.videoShell .video{background:#16110f;min-height:18rem;display:block;position:relative}@media (max-width:760px){.homeWithPhoto{min-height:auto;padding:1.25rem 1rem 3rem;display:flex}.homeFeature{order:-1;width:min(86vw,24rem);transform:rotate(.75deg)}.homeFeature img{max-height:48svh}.homeContent{padding:.75rem 0}.videoGrid{gap:1.5rem;margin-top:2rem}.videoGrid article{padding:.45rem}.videoGrid h3{padding-inline-start:.5rem;padding-inline-end:.5rem}.videoShell .video{min-height:13rem}}
