.compact-page{min-height:calc(100svh - 115px);padding:112px max(6%,calc((100% - 1280px) / 2)) 56px}.compact-page>:not(.reference-artwork):not(.wedding-nav){position:relative!important;inset:auto!important}.compact-page .reference-artwork>div{top:var(--layer-top)!important;height:var(--layer-height)!important}.compact-page .reference-artwork>div:not([data-asset^=MAG]):not([data-asset=MAHAaZOOBug]){left:0!important;width:100%!important}.compact-page .reference-artwork>div:not([data-asset^=MAG]):not([data-asset=MAHAaZOOBug]) img{inset:0!important;width:100%!important;height:100%!important;object-fit:cover}.compact-page h1{font-size:clamp(42px,4.8vw,76px);line-height:1.08;margin:0 0 24px}.compact-page h2{font-size:clamp(28px,2.8vw,40px);margin-bottom:16px}.compact-page .reference-copy p,.compact-page p{font-size:18px;line-height:1.5;margin-bottom:16px}.compact-page .venue-title{padding:0;max-width:800px}.compact-page .venue-title p{margin-bottom:12px}.compact-page .venue-setting{margin:68px 0 0;width:min(560px,52%)}.compact-page .venue-transport{margin:72px 0 0 auto;width:min(760px,66%)}.compact-page.stay-gateway{display:grid;grid-template-columns:44% 44%;column-gap:10%;align-content:center}.compact-page.stay-gateway>header:not(.wedding-nav){padding:0;grid-column:1}.compact-page .stay-letter{width:auto;margin:8px 0 0;grid-column:1}.compact-page .stay-code-box{width:100%;margin:0;padding:32px;grid-column:2;grid-row:1/span 2;align-self:center}.compact-page .stay-code-box h2{font-size:22px;margin-bottom:24px}.compact-page .stay-code-input input{height:56px;font-size:18px;padding:0 44px 0 14px}.compact-page .stay-code-input svg{width:22px;height:22px;right:14px}.compact-page .stay-code-box button{font-size:15px;padding:16px 36px 16px 12px;margin-top:20px}.compact-page .stay-code-box button span{font-size:22px;right:14px}.compact-page.stay-details>h1{margin:0 0 28px}.compact-page .stay-intro{margin:0;width:min(820px,75%)}.compact-page .stay-benefits{margin:64px 0 0;gap:48px}.compact-page .castle-meals{margin:64px 0 0;width:min(720px,65%)}.compact-page .private-dinner{margin:72px 0 0}.compact-page .private-dinner>div{display:grid;grid-template-columns:1fr 1fr;gap:0 40px;width:min(980px,90%);margin:28px auto 0;text-align:left}.compact-page .hotel-location{margin:64px 0 0;width:min(820px,80%)}.compact-page .hotel-notes{margin:48px 0 0;gap:48px}.compact-page .stay-actions{margin:44px 0 0}.compact-page.stay-tier-3{display:grid;grid-template-columns:1fr 1fr;column-gap:64px;align-content:start}.compact-page.stay-tier-3 .gubbio-intro,.compact-page.stay-tier-3 .stay-actions,.compact-page.stay-tier-3>h1{grid-column:1/-1}.compact-page .gubbio-intro{width:100%;margin:0;gap:64px}.compact-page .gubbio-hotel,.compact-page .gubbio-options{width:auto;margin:48px 0 0}.compact-page .gubbio-options a{font-size:18px}.compact-page .gubbio-options li{margin:14px 0}.compact-page.dress-design{padding-bottom:64px}.compact-page.dress-design>h1{margin:0}.compact-page .dress-intro{width:min(740px,72%);margin:40px auto 0}.compact-page .dress-intro h2{font-size:24px}.compact-page .dress-notes{margin:120px 0 0;gap:64px}.compact-page .dress-closing{margin:32px auto 0;width:90%}.compact-page.agenda-design{display:grid;grid-template-columns:42% 50%;column-gap:8%;align-content:start}.compact-page.agenda-design>header:not(.wedding-nav){margin:0;padding:0}.compact-page.agenda-design>header:not(.wedding-nav) p{font-size:16px}.compact-page .agenda-schedule{width:auto;margin:0}.compact-page .agenda-schedule h2{font-size:20px;margin-bottom:12px}.compact-page .agenda-schedule p{font-size:16px;line-height:1.5;margin-bottom:12px}.compact-page .agenda-schedule li{padding-bottom:18px;margin-bottom:18px}.compact-page .calendar-link{margin:0;grid-column:2}.compact-page.faq-design>header:not(.wedding-nav){margin:0;padding:0}.compact-page .faq-grid{margin:36px 0 0;gap:64px}.compact-page .faq-grid h2{font-size:22px;margin-bottom:8px}.compact-page .faq-grid section{margin-bottom:24px}.compact-page .faq-closing{margin:24px 0 0!important}.compact-page .form-layout{margin:0;grid-template-columns:40% 52%;gap:8%;align-items:start}.compact-page .form-intro{padding:28px 0 0;max-width:540px}.compact-page .form-intro .eyebrow,.compact-page.rsvp-design .form-intro>p{font-size:16px;font-weight:300}.compact-page .form-panel{padding:24px 28px}.compact-page .form-panel .attendance-options,.compact-page .form-panel .wedding-field{font-size:18px;margin-bottom:16px}.compact-page .form-panel .attendance-options label,.compact-page .form-panel .wedding-field input,.compact-page .form-panel .wedding-field select{max-width:none}.compact-page .form-panel .wedding-field textarea{min-height:80px}.compact-page .form-panel .attendance-options{gap:12px}.compact-page .form-panel .attendance-options label{flex:1 1;width:auto;min-width:175px;margin:0}.compact-page .form-panel .meal-preferences{margin-bottom:16px;padding-bottom:4px}.compact-page .form-preview-note{font-size:14px;margin:14px 0 0}.compact-page .airport-copy{margin-top:40px}.compact-page .airport-copy h2{font-size:24px;margin-bottom:8px}.compact-page .airport-copy p+h2{margin-top:40px}.compact-page .travel-dates{display:grid;grid-template-columns:1fr 1fr;gap:16px}.compact-page .travel-notes{margin:40px 0 0;gap:64px}.compact-page .travel-notes h2{font-size:28px}@media (min-width:801px){.home-hero{min-height:min(100svh,900px)}.home-design .gift-letter{margin:64px auto}}@media (max-width:800px){.compact-page{padding:108px 6% 36px}.compact-page h1{font-size:clamp(36px,9vw,54px)}.compact-page h2{font-size:28px}.compact-page .venue-setting,.compact-page .venue-transport{width:auto;margin:48px 0 0}.compact-page .form-layout,.compact-page.agenda-design,.compact-page.stay-gateway,.compact-page.stay-tier-3{display:block}.compact-page .stay-code-box{margin:28px 0 0;padding:24px 20px}.compact-page .castle-meals,.compact-page .dress-closing,.compact-page .dress-intro,.compact-page .hotel-location,.compact-page .private-dinner>div,.compact-page .stay-intro{width:auto}.compact-page .dress-notes,.compact-page .faq-grid,.compact-page .gubbio-intro,.compact-page .hotel-notes,.compact-page .private-dinner>div,.compact-page .stay-benefits,.compact-page .travel-notes{grid-template-columns:1fr;gap:16px}.compact-page .agenda-schedule,.compact-page .castle-meals,.compact-page .dress-intro,.compact-page .dress-notes,.compact-page .gubbio-hotel,.compact-page .gubbio-options,.compact-page .hotel-location,.compact-page .hotel-notes,.compact-page .private-dinner,.compact-page .stay-benefits{margin-top:36px}.compact-page .form-intro{padding:0}.compact-page .form-panel{margin-top:24px;padding:20px 16px}.compact-page .travel-dates{grid-template-columns:1fr;gap:0}.compact-page .faq-grid{margin-top:28px}.compact-page .faq-grid section{margin-bottom:24px}.compact-page .airport-copy{margin-top:24px;max-width:none}.compact-page .stay-actions{margin-top:32px}}.compact-page.rsvp-design .reference-artwork>[data-asset=MAHVvDUsBvY]{top:40%!important;height:60%!important;background:#000}.compact-page.form-design.rsvp-design .reference-artwork>div[data-asset=MAHVvDUsBvY] img{left:50%!important;width:min(100%,1600px)!important;transform:translateX(-50%);object-position:center 78%;-webkit-mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent);mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent)}.compact-page.dress-design .reference-artwork:after,.compact-page.faq-design .reference-artwork:after,.compact-page.stay-details .reference-artwork:after,.compact-page.venue-design .reference-artwork:after{content:"";position:absolute;inset:0;background:#0006}.compact-page .wedding-nav{color:#fff;text-shadow:0 1px 4px #000}.compact-page.agenda-design .reference-artwork>[data-asset=MAHAaZOOBug]{display:none}.compact-page.agenda-design .reference-artwork:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#0003,#0009 65%),linear-gradient(0deg,#000,transparent 30%)}.compact-page.agenda-design .reference-artwork>[data-asset=MAHVvEOfAl0] img{object-position:center 76%}@media (min-width:801px) and (max-width:1100px){.compact-page .form-layout{grid-template-columns:36% 58%;gap:6%}.compact-page .travel-dates{grid-template-columns:1fr;gap:0}.compact-page .form-panel{padding:20px}}.photo-page{background:#000;min-height:0;padding:0}.photo-page>.wedding-nav{position:absolute;inset:0 0 auto;color:#fff;text-shadow:0 1px 4px #000}.photo-page .photo-content{position:relative;z-index:2;width:min(1280px,88%);margin:0 auto}.photo-page h1{font-size:clamp(42px,6.1vw,88px);line-height:1.12;margin:0 0 24px}.photo-page h2{font-size:clamp(30px,4.5vw,64px);line-height:1.15;margin:0 0 24px}.photo-page .reference-copy p,.photo-page p{font-size:21px;font-weight:400;line-height:1.4;margin:0 0 18px}.photo-page p:last-child{margin-bottom:0}.photo-page p a{text-decoration:underline;text-underline-offset:4px}.photo-hero,.photo-scene{position:relative;isolation:isolate}.photo-media{position:absolute;inset:0 0 1px;z-index:0;overflow:hidden}.photo-hero{display:flex;flex-direction:column;justify-content:flex-start;min-height:clamp(640px,52vw,800px);padding:clamp(140px,12vw,180px) 0 64px}.photo-page .photo-hero-image,.photo-page .section-background{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;object-position:center;z-index:0}.photo-hero:after,.photo-scene:after{content:"";position:absolute;inset:-2px 0;z-index:1;pointer-events:none}.photo-hero:after{background:linear-gradient(180deg,#0002,#0002 42%,#000)}.photo-hero .reference-copy{max-width:720px}.venue-photo-page .reference-copy p,.venue-photo-page p{font-size:19px;font-weight:300}.venue-transport-section .reference-copy p{font-size:21px}.castle-photo-page .photo-hero-image,.venue-photo-page .photo-hero-image{object-position:center top}.photo-section{position:relative}.photo-scene{height:clamp(380px,44vw,720px)}.photo-scene:after{background:linear-gradient(180deg,#000,transparent 20%,transparent 76%,#000)}.photo-band{position:relative;z-index:2;background:#000;padding:32px 0}:is(.venue-photo-page,.castle-photo-page,.hotel-photo-page,.gubbio-photo-page) .photo-band{padding:16px 0}:is(.venue-photo-page,.castle-photo-page,.hotel-photo-page,.gubbio-photo-page) .photo-band h2{margin-bottom:14px}:is(.venue-photo-page,.castle-photo-page,.hotel-photo-page,.gubbio-photo-page) .photo-band p{line-height:1.35;margin-bottom:12px}:is(.venue-photo-page,.castle-photo-page,.hotel-photo-page,.gubbio-photo-page) .photo-band p:last-child{margin-bottom:0}.photo-narrow{width:min(580px,52%)}.venue-setting-section .photo-narrow{width:min(760px,64%)}.photo-columns{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:64px}.photo-page .stay-actions{position:relative!important;inset:auto!important;margin:0;gap:24px;font-size:16px}.photo-page .photo-caption{max-width:440px;margin:0 auto;text-align:center}.venue-transport-section .photo-narrow{width:min(960px,80%);margin-left:auto;text-align:right}.venue-transport-section .photo-scene{height:clamp(380px,40vw,640px)}.venue-transport-section .section-background{object-position:center 70%}.venue-transport-section .text-link{display:inline-block;margin-top:10px}.castle-photo-page h1,.hotel-photo-page h1{font-size:clamp(42px,7.2vw,104px);line-height:1.35}.hotel-photo-page .photo-hero{padding-top:130px}.castle-photo-page .photo-hero:after,.hotel-photo-page .photo-hero:after{background:linear-gradient(90deg,#00000030,transparent),linear-gradient(180deg,#0002,#0003 42%,#000)}.castle-stay-facts,.hotel-stay-facts{text-align:center}.castle-stay-facts .reference-copy,.hotel-stay-facts .reference-copy{max-width:440px;margin:auto}.hotel-photo-page .photo-caption{max-width:600px}.hotel-information p{text-align:left}.hotel-information{grid-template-columns:minmax(0,38fr) minmax(0,58fr);gap:4%}.hotel-double-room .section-background{object-position:center 60%}.hotel-double-room .photo-scene,.hotel-twin-room .photo-scene{--photo-top-fade-height:min(70%,clamp(220px,30vw,460px))}.hotel-dining-room .photo-scene{height:clamp(370px,40vw,630px)}.castle-dinner h2{text-align:center;font-size:clamp(28px,3.8vw,52px)}.castle-dinner .photo-narrow{width:min(720px,100%);margin:0 auto;text-align:center}.castle-dinner .photo-scene{height:clamp(380px,41vw,640px)}.dress-photo-page .photo-hero{justify-content:center;text-align:center}.dress-photo-page .photo-hero-image{object-position:center 56%}.dress-overview .photo-narrow{width:min(700px,100%);margin:0 auto;text-align:center}.dress-overview h2{font-size:28px}.dress-overview .section-background{object-position:center 40%}.dress-overview .photo-media:before{background-position:center 40%}.dress-overview .photo-scene{height:clamp(380px,43vw,670px)}.dress-guidance .section-background{object-position:center bottom}.dress-guidance .photo-scene{height:clamp(350px,40vw,650px)}.photo-page .photo-closing{text-align:center;margin:36px auto 0;max-width:1000px}.photo-page.faq-photo-page .reference-copy p,.photo-page.faq-photo-page p{font-size:16px}.faq-photo-page .photo-content{width:min(1160px,80%)}.faq-photo-page .photo-hero{justify-content:flex-end;padding-bottom:0}.faq-photo-page .photo-hero-image{object-position:center 43%}.faq-photo-page .photo-hero-copy>p{text-transform:uppercase;margin-bottom:8px}.faq-photo-page h1{font-size:clamp(42px,5.45vw,78px);margin-bottom:0}.faq-photo-page .faq-grid{margin:0;gap:10%}.faq-photo-page .faq-closing,.faq-photo-page .faq-grid p{font-family:var(--font-editorial);font-weight:400}.faq-photo-page .photo-hero-copy>p{font-weight:300}.faq-photo-page .faq-grid h2{font-family:var(--font-display);font-weight:400;font-size:20px;margin-bottom:8px}.faq-photo-page .faq-grid section{margin-bottom:40px}.faq-portrait .photo-scene{height:clamp(680px,60vw,880px)}.faq-portrait .section-background{object-position:center 74%}.faq-portrait .photo-scene:after{background:linear-gradient(180deg,#000,transparent 22%,transparent 82%,#000)}.faq-photo-page .faq-closing{margin:0!important;text-align:center}.reference-site:has(.agenda-photo-page){display:flex;flex-direction:column;min-height:100svh}.agenda-photo-page{--agenda-width:min(100vw,1600px);--agenda-photo-height:clamp(1050px,154svh,2100px);--agenda-bottom-clip:linear-gradient(0deg,transparent 1px,#000 2px);flex:1 1;display:grid;align-items:start;min-height:0;isolation:isolate}.agenda-photo-page>.agenda-backdrop{position:absolute;inset:0 auto 0 50%;width:var(--agenda-width);transform:translateX(-50%);overflow:hidden;-webkit-mask-image:var(--agenda-bottom-clip);mask-image:var(--agenda-bottom-clip);z-index:0}.agenda-backdrop img{position:absolute;height:var(--agenda-photo-height);width:auto;max-width:none;left:calc(31% - var(--agenda-photo-height) * .39);bottom:calc(72px - var(--agenda-photo-height) * .11);-webkit-mask-image:linear-gradient(90deg,transparent,#000 12%,#000 76%,transparent);mask-image:linear-gradient(90deg,transparent,#000 12%,#000 76%,transparent)}.agenda-photo-page:before{content:"";position:absolute;inset:-12px;z-index:0;background:linear-gradient(0deg,#000,transparent 25%),url(/design/updated/MAHVvEOfAl0.webp) center 65% /cover;filter:blur(8px) brightness(.65);-webkit-mask-image:linear-gradient(0deg,transparent 14px,#000 16px);mask-image:linear-gradient(0deg,transparent 14px,#000 16px)}.agenda-backdrop:after{content:"";position:absolute;inset:0;background:linear-gradient(to top,var(--photo-edge-fade-stops)) bottom /100% 25% no-repeat}.agenda-photo-page .agenda-content{display:grid;grid-template-columns:minmax(0,44fr) minmax(0,50fr);gap:18px 6%;align-items:start;padding:clamp(96px,9svh,130px) 0 24px}.agenda-photo-page .agenda-heading{grid-column:1/-1;display:block;padding:0;margin:0}.agenda-heading>p{font-family:var(--font-editorial);font-weight:400;text-transform:none;max-width:30em}.agenda-photo-page .agenda-heading p{font-size:clamp(13px,1.15vw,16px);line-height:1.4;margin-bottom:8px}.agenda-photo-page .agenda-heading h1{font-size:clamp(46px,min(5.4vw,6.4svh),78px);line-height:1.04;margin:0}.agenda-photo-page .agenda-details{grid-column:2;width:min(100%,30em);font-size:clamp(13px,min(1.25vw,1.25svh),16px);--copy-fade-opacity:0.2}.agenda-photo-page .agenda-schedule{width:100%;margin:0}.agenda-photo-page .agenda-schedule li{padding-bottom:1em;margin-bottom:1em;border-color:#ffffff60}.agenda-photo-page .agenda-schedule li:last-child{border-bottom:0;padding-bottom:0;margin-bottom:16px}.agenda-photo-page .agenda-schedule h2{font-size:clamp(14px,1.35vw,18px);margin-bottom:8px}.agenda-photo-page .agenda-schedule .reference-copy{font-size:inherit;line-height:1.3;max-width:29.3em;margin:0 auto}.agenda-photo-page .agenda-schedule li:first-child .reference-copy{max-width:21.5em}.agenda-photo-page .agenda-schedule li:nth-child(3) .reference-copy{max-width:22.25em}.agenda-photo-page .agenda-schedule li:last-child .reference-copy{max-width:25.4em}.agenda-photo-page .agenda-schedule p{font-family:var(--font-editorial);font-weight:400;text-transform:none;font-size:inherit;line-height:1.35;margin:0 0 1em;white-space:pre-line}.agenda-photo-page .agenda-schedule p:last-child{margin-bottom:0}.agenda-photo-page .calendar-link{display:block;width:100%;margin:0;font:inherit;font-size:15px;color:#fff;border:0}.reference-site:has(.agenda-photo-page) .wedding-footer{margin-top:80px;padding:12px 0 16px;font-size:13px}.compact-page.rsvp-design{--rsvp-portrait-height:clamp(580px,47vw,740px);background:#000;padding:170px max(6%,calc((100% - 1280px) / 2)) 240px;min-height:1320px}.compact-page.rsvp-design>.rsvp-artwork{position:absolute!important;inset:0!important;z-index:0;overflow:hidden;pointer-events:none}.rsvp-dinner{position:absolute;inset:0 0 auto;height:calc(100% - var(--rsvp-portrait-height) + 32px);isolation:isolate}.rsvp-dinner img,.rsvp-portrait img{display:block;width:100%;height:100%;max-width:none;object-fit:cover}.rsvp-dinner img{object-position:center 48%}.rsvp-dinner:after{content:"";position:absolute;inset:-2px 0;background:linear-gradient(to top,var(--photo-edge-fade-stops)) bottom /100% 70% no-repeat,linear-gradient(#0003,#0003)}.rsvp-portrait{position:absolute;width:100%;height:var(--rsvp-portrait-height);bottom:0;left:50%;transform:translateX(-50%);isolation:isolate}.rsvp-portrait img{object-position:center 84%}.rsvp-portrait:after{content:"";position:absolute;inset:-2px 0;background:linear-gradient(to bottom,var(--photo-edge-fade-stops)) top /100% 30% no-repeat,linear-gradient(to top,var(--photo-edge-fade-stops)) bottom /100% 32% no-repeat,linear-gradient(90deg,transparent 42%,#0006 68%)}.compact-page.rsvp-design .form-layout{grid-template-columns:minmax(0,42fr) minmax(0,46fr);gap:12%}.compact-page.rsvp-design .form-intro{padding-top:50px}.compact-page.rsvp-design h1{font-size:clamp(56px,6.1vw,88px);margin-bottom:26px}.compact-page.rsvp-design .form-intro>p{font-size:18px;font-weight:300;line-height:1.5}.compact-page.rsvp-design .form-panel{padding:28px;background:#0009}.compact-page.rsvp-design .attendance-options,.compact-page.rsvp-design .wedding-field{margin-bottom:24px}.compact-page.rsvp-design .wedding-field{gap:10px}.compact-page.rsvp-design .attendance-options label,.compact-page.rsvp-design .wedding-field input,.compact-page.rsvp-design .wedding-field select{min-height:48px}.compact-page.rsvp-design .wedding-field textarea{min-height:120px}.compact-page.rsvp-design .meal-preferences{padding-bottom:16px;margin-bottom:24px}@media (min-width:1700px){.photo-media:before{content:"";position:absolute;inset:-12px;background:var(--photo-url) center /cover;filter:blur(8px) brightness(.6);z-index:0}.photo-page .photo-hero-image,.photo-page .section-background{left:50%;width:1600px;transform:translateX(-50%);-webkit-mask-image:var(--soft-photo-edge);mask-image:var(--soft-photo-edge)}.agenda-photo-page>.agenda-backdrop{-webkit-mask-image:var(--soft-photo-edge),var(--agenda-bottom-clip);mask-image:var(--soft-photo-edge),var(--agenda-bottom-clip);-webkit-mask-composite:source-in,xor;mask-composite:intersect}.rsvp-dinner img,.rsvp-portrait img{position:relative;left:50%;width:1600px;transform:translateX(-50%);-webkit-mask-image:var(--soft-photo-edge);mask-image:var(--soft-photo-edge)}}@media (max-width:1000px){.photo-columns{gap:36px}}@media (max-width:800px){.photo-page .reference-copy p,.photo-page p{font-size:18px;line-height:1.5}.photo-page h1{font-size:clamp(36px,8vw,58px);text-wrap:balance}.photo-page h2{font-size:30px}.photo-hero{padding:120px 0 48px;min-height:clamp(520px,68svh,620px)}.photo-page .photo-hero .reference-copy{max-width:none}.photo-page .photo-narrow,.venue-transport-section .photo-narrow{width:100%;text-align:left}.faq-photo-page .faq-grid,.photo-columns{grid-template-columns:1fr;gap:28px}.photo-page .photo-scene{height:clamp(340px,85vw,520px)}.castle-stay-facts,.hotel-stay-facts{text-align:left}.castle-stay-facts .reference-copy,.hotel-stay-facts .reference-copy{max-width:none;margin:0}.castle-dinner .photo-narrow,.dress-overview .photo-narrow{text-align:center}.photo-page .stay-actions{flex-wrap:wrap;gap:20px}.faq-photo-page .photo-content{width:88%}.faq-photo-page .faq-grid h2{font-size:20px}.faq-photo-page .faq-portrait .photo-scene{height:clamp(450px,105vw,680px)}.faq-portrait .section-background{object-position:60% 85%}.agenda-photo-page:before{display:none}.agenda-photo-page>.agenda-backdrop{height:560px;width:100%}.agenda-backdrop img{height:650px;left:calc(50% - 250px);bottom:0}.agenda-backdrop:after{background:linear-gradient(to top,var(--photo-edge-fade-stops)) bottom /100% 35% no-repeat,linear-gradient(#0004,transparent 40%)}.agenda-photo-page .agenda-content{display:block;padding:110px 0 28px}.agenda-photo-page .agenda-heading h1{font-size:clamp(34px,8vw,48px)}.agenda-photo-page .agenda-heading p{font-size:14px}.agenda-photo-page .agenda-details{margin-top:300px;font-size:16px;margin-inline:auto}.agenda-photo-page .agenda-schedule p{font-size:16px}.agenda-photo-page .agenda-schedule li{padding-bottom:14px;margin-bottom:14px}.reference-site:has(.agenda-photo-page) .wedding-footer{width:88%;font-size:11px}.compact-page.rsvp-design{padding:112px 6% 430px;min-height:0}.compact-page.rsvp-design .form-layout{display:block}.compact-page.rsvp-design .form-intro{padding-top:0}.compact-page.rsvp-design .form-panel{padding:28px 20px;margin-top:28px;background:#000}.compact-page.rsvp-design h1{font-size:52px}.rsvp-dinner{height:560px}.rsvp-portrait{height:440px;bottom:0;width:100%}.rsvp-portrait img{position:relative;left:calc(50% - 240px);width:640px;object-fit:cover;object-position:center 87%}.rsvp-portrait:after{background:linear-gradient(to bottom,var(--photo-edge-fade-stops)) top /100% 30% no-repeat,linear-gradient(to top,var(--photo-edge-fade-stops)) bottom /100% 32% no-repeat}}.faq-photo-page>.wedding-nav,.venue-photo-page>.wedding-nav{color:#222;text-shadow:0 1px 3px #fff6}.photo-page .nav-account>div{color:#fff;text-shadow:none}.castle-stay-facts .reference-copy:first-child,.hotel-stay-facts .reference-copy:first-child{max-width:400px}.castle-dinner .photo-narrow p,.castle-dinner .reference-copy p{font-size:20px}.agenda-schedule sup{font-size:.6em;vertical-align:super}.gubbio-photo-page .photo-hero{padding-top:180px}.gubbio-photo-page .reference-copy p,.gubbio-photo-page p{font-weight:300}.gubbio-photo-page .gubbio-copy-columns{max-width:980px;gap:64px}.gubbio-photo-page .gubbio-hotel,.gubbio-photo-page .gubbio-options{position:static!important;width:auto;margin:0}.gubbio-photo-page .gubbio-hotel{text-align:right}.gubbio-photo-page .gubbio-recommendations h2{font-size:clamp(30px,3.7vw,52px)}.gubbio-photo-page .gubbio-options li{margin:14px 0}.gubbio-photo-page .gubbio-options a{font-size:21px;font-weight:400}.gubbio-landscape .photo-scene{height:clamp(360px,37vw,590px)}@media (min-width:1700px){.home-hero .photo-media:before{content:"";position:absolute;inset:-12px;z-index:0;background:url(/design/updated/MAHVkCgugDM.webp) top/cover;filter:blur(8px) brightness(.55)}.reference-site .home-hero-photo{width:1600px;left:50%;transform:translateX(-50%);-webkit-mask-image:var(--soft-photo-edge);mask-image:var(--soft-photo-edge)}.agenda-photo-page:before{content:"";position:absolute;inset:-12px;z-index:0;background:linear-gradient(0deg,#000,transparent 28%),url(/design/updated/MAHVvEOfAl0.webp) center 70% /cover;filter:blur(12px) brightness(.25)}}@media (max-width:800px){.gubbio-photo-page .photo-hero{padding-top:120px}.gubbio-photo-page .gubbio-copy-columns{gap:28px}.gubbio-photo-page .gubbio-hotel{text-align:left}.gubbio-photo-page .gubbio-options a{font-size:18px}.castle-stay-facts .reference-copy:first-child,.hotel-stay-facts .reference-copy:first-child{max-width:none}}.reference-site{--photo-edge-fade-stops:rgb(0 0 0/100%) 0%,rgb(0 0 0/99.21875%) 5%,rgb(0 0 0/96.875%) 10%,rgb(0 0 0/92.96875%) 15%,rgb(0 0 0/87.5%) 20%,rgb(0 0 0/81.25%) 25%,rgb(0 0 0/75%) 30%,rgb(0 0 0/68.75%) 35%,rgb(0 0 0/62.5%) 40%,rgb(0 0 0/56.25%) 45%,rgb(0 0 0/50%) 50%,rgb(0 0 0/43.75%) 55%,rgb(0 0 0/37.5%) 60%,rgb(0 0 0/31.25%) 65%,rgb(0 0 0/25%) 70%,rgb(0 0 0/18.75%) 75%,rgb(0 0 0/12.5%) 80%,rgb(0 0 0/7.03125%) 85%,rgb(0 0 0/3.125%) 90%,rgb(0 0 0/0.78125%) 95%,rgb(0 0 0/0%) 100%;--soft-photo-edge:linear-gradient(90deg,transparent,#0000001a 3%,#00000066 9%,#000000cc 17%,#000 26%,#000 74%,#000000cc 83%,#00000066 91%,#0000001a 97%,transparent)}.photo-page .photo-scene:after{--fade-height:min(45%,clamp(150px,20vw,320px));background:linear-gradient(to bottom,var(--photo-edge-fade-stops)) top /100% var(--photo-top-fade-height,var(--fade-height)) no-repeat,linear-gradient(to top,var(--photo-edge-fade-stops)) bottom /100% var(--fade-height) no-repeat}.photo-page .photo-hero:after{background:linear-gradient(to top,var(--photo-edge-fade-stops)) bottom /100% clamp(180px,25vw,380px) no-repeat,linear-gradient(#0001,#0001)}.dress-photo-page .reference-copy p,.dress-photo-page p{font-size:20px}@media (min-width:1700px){:is(.venue-photo-page,.castle-photo-page,.hotel-photo-page,.gubbio-photo-page) :is(.photo-hero-image,.section-background){-webkit-mask-image:var(--soft-photo-edge);mask-image:var(--soft-photo-edge)}}.reference-site{--copy-fade:linear-gradient(180deg,transparent,#0003 10%,#0009 20%,#000e 30%,#000 40%,#000 60%,#000e 70%,#0009 80%,#0003 90%,transparent)}.reference-site :where(.agenda-details,.home-heading){position:relative;isolation:isolate}.reference-site :where(.agenda-details,.home-heading):before{content:"";position:absolute;inset:-16px -24px;z-index:-1;pointer-events:none;background:var(--copy-fade);opacity:var(--copy-fade-opacity,1);-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}.home-heading{--copy-fade-opacity:0.35}.reference-site .compact-page .form-panel,.reference-site .compact-page .stay-code-box{background:transparent}.reference-site .stay-gateway :is(.stay-letter,.stay-code-box,.stay-code-box h2){text-shadow:none;box-shadow:none}@media (min-width:801px) and (max-height:850px){.agenda-photo-page .agenda-content{grid-template-columns:minmax(0,36fr) minmax(0,58fr);row-gap:0;padding:80px 0 10px}.agenda-photo-page .agenda-heading{grid-column:1}.agenda-photo-page .agenda-heading p{font-size:13px}.agenda-photo-page .agenda-heading h1{font-size:clamp(36px,4.3vw,56px)}.agenda-photo-page .agenda-schedule li{padding-bottom:4px;margin-bottom:4px}.agenda-photo-page .agenda-schedule p{font-size:13px;line-height:1.25;margin-bottom:4px}.agenda-photo-page .agenda-schedule p:last-child{margin-bottom:0}.agenda-photo-page .agenda-schedule h2{font-size:14px;margin-bottom:6px}.agenda-photo-page .agenda-schedule li:last-child{margin-bottom:10px}.reference-site:has(.agenda-photo-page) .wedding-footer{padding:8px 0 10px}}.invitation-welcome{--invitation-paper-grain:url(/design/invitation/paper-grain.svg);position:fixed;inset:0;width:100%;max-width:none;height:100%;max-height:none;margin:0;padding:32px 24px;border:0;color:#f0e8d8;background:radial-gradient(ellipse at 50% 48%,#29251f 0,#121210 48%,#080909 100%);overflow:auto;overscroll-behavior:contain;text-align:center;transition:opacity .65s ease}.invitation-welcome::backdrop{background:transparent}.invitation-welcome:after{content:"";position:fixed;inset:0;background:var(--invitation-paper-grain);opacity:.3;mix-blend-mode:soft-light;pointer-events:none}.invitation-welcome:before{content:"";position:fixed;inset:20px;border:1px solid #b5a17b38;pointer-events:none}.invitation-welcome[open]{display:grid;place-items:center}.invitation-welcome-content{width:min(100%,760px);margin:auto}.invitation-welcome-heading{transition:opacity .35s ease,transform .45s ease}.invitation-welcome .invitation-kicker{margin:0 0 18px;font:400 13px/1.5 Cinzel,Wedding Display Cyrillic,Georgia,serif;letter-spacing:.24em;color:#c6bba8}.invitation-welcome h1{margin:0;font:400 clamp(30px,4vw,54px)/1.25 Cinzel,Wedding Display Cyrillic,Georgia,serif;letter-spacing:-.025em;color:inherit}.invitation-welcome h1 span{font-size:.75em;color:#c5b28a}.invitation-welcome .invitation-date{margin:18px 0 0;font:300 15px/1.5 Neue Montreal,Wedding Body Cyrillic,sans-serif;letter-spacing:.12em;color:#c6bba8}.invitation-envelope{position:relative;display:block;width:min(510px,90%);aspect-ratio:1.6;margin:clamp(120px,17svh,190px) auto 42px;padding:0;border:0;border-radius:3px;background:transparent;cursor:pointer;-webkit-tap-highlight-color:transparent;isolation:isolate;transform:none;box-shadow:0 1px 1px #fff1,0 3px 5px #0005,6px 22px 35px #0005,12px 38px 70px #0003}.invitation-envelope:disabled{opacity:1;cursor:default}.invitation-envelope:focus-visible{outline:none}.invitation-envelope:focus-visible .envelope-seal{outline:1px solid #d6b88b88;outline-offset:4px}.envelope-back,.envelope-pocket{position:absolute;inset:0;border-radius:3px}.envelope-back{background:var(--invitation-paper-grain),linear-gradient(180deg,#b9aa8f,#d3c6ae 35%,#e6dac1);box-shadow:inset 0 2px 4px #75644c45,inset 1px 0 #f5ecd9,inset -1px -2px #8f806980;z-index:1}.envelope-back:before{content:"";position:absolute;inset:1px 2px auto;height:1px;background:linear-gradient(90deg,#f6efde66,#8a775d80,#fff5df88)}.envelope-letter{position:absolute;inset:6% 7% 5%;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:14px;border:1px solid #c6b99f;outline:1px solid #b8a78670;outline-offset:-12px;color:#514537;background:var(--invitation-paper-grain),linear-gradient(115deg,#fffcf3,#f5eddf 65%,#e8decb);font:400 clamp(11px,1.4vw,15px)/1.5 Cinzel,Wedding Display Cyrillic,Georgia,serif;box-shadow:inset 0 1px #fff,0 1px #d3c5a9,0 2px #b9aa8c,1px 3px 5px #57442d30;text-shadow:0 1px #fff9;transition:transform .85s cubic-bezier(.32,.05,.22,1),box-shadow .7s ease;pointer-events:none}.envelope-letter-ornament{color:#9b855d;font-size:22px;text-shadow:0 1px #fff,0 -1px #86755230}.envelope-letter-names{font:400 clamp(23px,3vw,36px)/1.2 Alex Brush,Wedding Script Cyrillic,cursive}.envelope-pocket{z-index:3;pointer-events:none}.envelope-pocket>span{position:absolute;inset:0;border-radius:3px}.envelope-pocket-left{background:var(--invitation-paper-grain),linear-gradient(30deg,#cbbb9f,#e9dfcb 65%,#f4ebd8);clip-path:polygon(0 0,51% 54%,0 100%);box-shadow:inset 1px 0 #fff9}.envelope-pocket-right{background:var(--invitation-paper-grain),linear-gradient(-32deg,#d0c1a6,#ece3cf 65%,#f6eedf);clip-path:polygon(100% 0,49% 54%,100% 100%);box-shadow:inset -1px 0 #a28e6d55}.envelope-pocket-bottom{background:var(--invitation-paper-grain),linear-gradient(175deg,#d3c4a9 35%,#eee5d2 55%,#e6dac3);clip-path:polygon(0 100%,50% 51%,100% 100%);box-shadow:inset 0 -1px #ad9b7c88,inset 0 -2px #f7efdfaa}.envelope-flap{position:absolute;inset:0 0 auto;height:54%;z-index:4;perspective:1200px;pointer-events:none}.envelope-flap-fold{position:absolute;inset:0;transform-origin:center top;transform-style:preserve-3d;transition:transform .75s cubic-bezier(.4,0,.2,1)}.envelope-flap-back,.envelope-flap-front{position:absolute;inset:0;clip-path:polygon(0 0,100% 0,50% 100%);backface-visibility:hidden;-webkit-backface-visibility:hidden}.envelope-flap-front{background:var(--invitation-paper-grain),linear-gradient(165deg,#f6efde 10%,#eae0ca 65%,#c5b394);box-shadow:inset 0 1px #fff9}.envelope-flap-back{transform:rotateX(180deg);clip-path:polygon(0 100%,100% 100%,50% 0);background:var(--invitation-paper-grain),linear-gradient(0deg,#ac9879,#d5c8ae 16%,#e7dcc6 82%)}.envelope-seal{position:absolute;left:50%;top:97%;z-index:5;display:grid;place-items:center;width:clamp(72px,8vw,96px);aspect-ratio:1;transform:translate(-50%,-50%) translateZ(3px) rotate(-8deg);border-radius:46% 51% 47% 49%;border:0;color:#5f2330;background:url(/design/invitation/wax-seal.svg) 50%/contain no-repeat;filter:drop-shadow(1px 3px 2px #3c241c70);backface-visibility:hidden;-webkit-backface-visibility:hidden;transition:transform .24s ease}.envelope-seal span{font:400 clamp(17px,2vw,22px)/1 Cinzel,Wedding Display Cyrillic,Georgia,serif;text-shadow:0 1px 1px #d9958199,0 -1px 1px #3f1127;letter-spacing:-.05em}@media (hover:hover){.invitation-welcome[data-phase=sealed] .invitation-envelope:hover .envelope-seal{transform:translate(-50%,-50%) translateZ(5px) rotate(-7deg) scale(1.025)}}.invitation-welcome .invitation-instruction{margin:0 0 20px;font:400 16px/1.5 Versailles,Wedding Editorial Cyrillic,Georgia,serif;color:#e0d5c2;transition:opacity .25s ease}.invitation-skip{min-height:44px;padding:10px 18px;background:none;border:0;color:#baaf9d;font:300 14px/1.5 Neue Montreal,Wedding Body Cyrillic,sans-serif;text-decoration:underline;text-underline-offset:5px;cursor:pointer}.invitation-skip:focus-visible{outline:1px solid #e0d5c2;outline-offset:3px}.invitation-welcome:is([data-phase=unfolding],[data-phase=drawing],[data-phase=presenting],[data-phase=leaving]) .envelope-flap-fold{transform:rotateX(-180deg)}.invitation-welcome:is([data-phase=drawing],[data-phase=presenting],[data-phase=leaving]) .envelope-flap{z-index:0}.invitation-welcome[data-phase=drawing] .envelope-letter{transform:translateY(-118%);box-shadow:inset 0 1px #fff,0 1px #c5b595,0 2px #ad9c7c,2px 8px 14px #35291d44}.invitation-welcome:is([data-phase=presenting],[data-phase=leaving]) .envelope-letter{z-index:4;transform:translateY(-16%) scale(1.04);box-shadow:inset 0 1px #fff,0 1px #c6b797,0 2px #ad9b7d,2px 5px 8px #35291d44,4px 12px 20px #35291d22;transition-duration:.7s}.invitation-welcome[data-phase=unsealing] .envelope-seal{transform:translate(-50%,-50%) translateZ(6px) rotate(-6deg) scale(1.025)}.invitation-welcome:is([data-phase=unfolding],[data-phase=drawing],[data-phase=presenting],[data-phase=leaving]) .invitation-welcome-heading{opacity:0;transform:translateY(-12px)}.invitation-welcome:not([data-phase=sealed]):not([data-phase=hidden]) .invitation-instruction,.invitation-welcome[data-phase=leaving]{opacity:0}@media (max-width:600px){.invitation-welcome{padding:36px 22px}.invitation-welcome:before{inset:12px}.invitation-welcome .invitation-kicker{font-size:11px}.invitation-welcome .invitation-date{font-size:12px;letter-spacing:.06em}.invitation-envelope{width:96%;margin-top:132px;margin-bottom:36px}.envelope-letter{gap:6px}.invitation-welcome .invitation-instruction{font-size:14px}}@media (max-height:900px) and (min-width:601px){.invitation-envelope{width:min(440px,60svh)}}@media (max-height:650px) and (min-width:601px){.invitation-envelope{width:300px;margin-top:112px;margin-bottom:22px}.invitation-welcome h1{font-size:30px}}@media (max-width:600px) and (max-height:740px){.invitation-welcome{padding:24px 22px}.invitation-welcome h1{font-size:26px}.invitation-welcome .invitation-kicker{margin-bottom:12px}.invitation-welcome .invitation-date{margin-top:12px}.invitation-envelope{margin-top:100px;margin-bottom:24px}.invitation-welcome .invitation-instruction{margin-bottom:8px}}@media (min-width:601px) and (max-height:500px){.invitation-welcome{padding:16px}.invitation-welcome h1{font-size:24px}.invitation-welcome .invitation-kicker{font-size:10px;margin-bottom:6px}.invitation-welcome .invitation-date{font-size:11px;margin-top:6px}.invitation-envelope{width:min(300px,54svh);margin-top:76px;margin-bottom:16px}.envelope-letter{gap:3px;padding:8px;font-size:10px;line-height:1.35}.envelope-letter-ornament{font-size:14px;line-height:1.2}.envelope-letter-names{font-size:20px}.envelope-seal{width:52px}.envelope-seal span{font-size:14px}.invitation-welcome .invitation-instruction{font-size:13px;margin-bottom:2px}.invitation-skip{min-height:36px;padding:8px}}@media (prefers-reduced-motion:reduce){.invitation-welcome,.invitation-welcome *{transition:none!important}}.page-image-content{display:contents}.page-load-overlay{position:fixed;inset:0;z-index:10000;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:28px;background:#080808;color:#e0d5c2;opacity:1;visibility:visible;transition:opacity .35s ease,visibility .35s}.page-load-overlay[data-loading=false]{opacity:0;visibility:hidden;pointer-events:none}.page-load-overlay [role=status]{display:grid;justify-items:center;gap:24px}.page-load-monogram{font:400 32px/1.2 var(--font-display);letter-spacing:.08em}.page-load-spinner{width:32px;height:32px;border:1px solid #e0d5c22b;border-top-color:#e0d5c2;border-radius:50%;animation:page-load-turn 1s linear infinite}.page-load-label,.page-load-overlay button{font:400 14px/1.4 var(--font-body)}.page-load-overlay button{background:none;border:0;color:inherit;text-decoration:underline;cursor:pointer;padding:12px}html:has(.page-load-overlay[data-loading=true]){overflow:hidden}@keyframes page-load-turn{to{transform:rotate(1turn)}}@media (prefers-reduced-motion:reduce){.page-load-spinner{animation:none}.page-load-overlay{transition:none}}