@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500&family=Fraunces:opsz,wght@9..144,400;9..144,500&display=swap";:root{--plum:#301c3f;--ink:#171522;--paper:#f9f5ef;--turquoise:#5fc5c2;--gold:#c89952;--muted:#766f7d;color:var(--ink);background:var(--paper);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;font-family:DM Sans,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);margin:0}a{color:inherit}.site-header{z-index:2;justify-content:space-between;align-items:center;width:100%;max-width:1440px;height:82px;margin:auto;padding:0 5.5vw;display:flex;position:absolute;top:0}.monogram{color:var(--paper);width:42px;height:42px;display:block}.monogram img{object-fit:cover;border-radius:50%;width:42px;height:42px;display:block}.monogram span,.hero h1 em,h2 em{color:var(--turquoise);font-style:normal}nav{gap:36px;display:flex}nav a,.header-date,.text-link{color:var(--paper);letter-spacing:1.8px;text-transform:uppercase;font-size:11px;text-decoration:none}nav a{opacity:.65;padding:8px 0}nav a:hover,nav a.active{border-bottom:1px solid var(--turquoise);opacity:1}.header-date span,.text-link span,button span{color:var(--turquoise);margin-left:5px;font-size:17px}.hero{background:var(--plum);color:var(--paper);grid-template-columns:50% 50%;min-height:700px;padding-top:82px;display:grid;position:relative;overflow:hidden}.hero-copy{z-index:1;align-self:center;max-width:600px;padding:70px 5vw 120px 11vw;position:relative}.eyebrow,.detail-label,.section-kicker,fieldset legend{color:var(--gold);letter-spacing:2.6px;text-transform:uppercase;margin:0 0 20px;font-size:10px}h1,h2{letter-spacing:-3px;margin:0;font-family:Fraunces,serif;font-weight:400;line-height:.9}h1{font-size:clamp(65px,8vw,132px)}.hero-note{color:#d8ced8;margin:28px 0 35px;font-family:Fraunces,serif;font-size:16px;line-height:1.5}.text-link{border-bottom:1px solid #786986;padding-bottom:10px;display:inline-block}.hero-day-link{margin-top:16px;display:table}.hero-photo{background:linear-gradient(90deg,#301c3f24,#301c3f00),url(/gallery/WhatsApp%20Image%202026-09-27%20at%2016.49.42.jpeg) 50%/cover;min-height:618px}.hero-stamp{border:1px solid var(--gold);color:var(--gold);text-align:center;z-index:1;border-radius:50%;width:100px;height:100px;padding-top:25px;font-family:Fraunces,serif;font-size:25px;line-height:1;position:absolute;bottom:65px;right:47%;transform:rotate(-12deg)}.hero-stamp span{color:var(--turquoise)}.hero-stamp small{letter-spacing:2px;font-family:DM Sans,sans-serif;font-size:8px}.scroll-cue{color:#b2a8b6;letter-spacing:1.5px;text-transform:uppercase;font-size:9px;position:absolute;bottom:33px;left:11vw}.scroll-cue span{border-left:1px solid var(--turquoise);vertical-align:middle;height:25px;margin-right:12px;display:inline-block}.details-band{background:var(--turquoise);grid-template-columns:repeat(2,1fr);padding:26px 11vw;display:grid}.details-band>div{border-left:1px solid #17152240;padding-left:25px}.details-band>div:first-child{border:0}.detail-label{color:var(--plum);margin-bottom:8px;font-size:9px;display:block}.details-band strong{font-family:Fraunces,serif;font-size:18px;font-weight:400}.section-grid{grid-template-columns:18% 52% 30%;max-width:1440px;min-height:660px;margin:auto;padding:120px 11vw;display:grid}.section-kicker{color:var(--muted);margin-top:8px}.section-kicker span{color:var(--gold);margin-right:14px}.story-content{padding-left:4vw}.story h2,.rsvp h2{color:var(--plum);font-size:clamp(62px,7vw,105px)}.story .eyebrow,.rsvp .eyebrow{color:var(--gold)}.body-copy{color:var(--muted);max-width:370px;margin-top:34px;font-family:Fraunces,serif;font-size:17px;line-height:1.65}.story-link{color:var(--plum);letter-spacing:1.8px;text-transform:uppercase;margin-top:24px;font-size:11px;font-weight:500;text-decoration:none;display:inline-block}.story-link span{color:var(--turquoise);margin-left:6px;font-size:17px}.story-signature{color:var(--plum);margin-top:50px;font-family:Fraunces,serif;font-size:28px}.story-signature span{color:var(--gold);letter-spacing:2px;text-transform:uppercase;margin-top:6px;font-family:DM Sans,sans-serif;font-size:9px;display:block}.story-aside{color:var(--plum);align-self:end;padding-bottom:3px;font-family:Fraunces,serif;font-size:20px;line-height:1.4}.story-aside span{color:var(--gold);letter-spacing:1px;margin-top:18px;font-family:DM Sans,sans-serif;font-size:9px;display:block}.photos{background:#eee6dc;max-width:none;padding-left:11vw;padding-right:11vw}.photos-content{padding-left:4vw}.photos h2{color:var(--plum);font-size:clamp(62px,7vw,105px)}.photo-grid{grid-template-columns:repeat(2,1fr);align-self:center;gap:12px;padding-left:4vw;display:grid}.photo-card{color:var(--gold);letter-spacing:1.5px;text-align:center;text-transform:uppercase;background:repeating-linear-gradient(135deg,#e2d8cc 0 2px,#eee6dc 2px 8px);border:1px solid #d2c4b5;justify-content:center;align-items:center;height:150px;font-family:DM Sans,sans-serif;font-size:9px;display:flex}.photo-card:first-child{grid-row:span 2;height:312px}.photo-card-logo{background:var(--plum);border:0;overflow:hidden}.photo-card-logo img{object-fit:cover;opacity:.9;width:100%;height:100%}.rsvp{background:var(--plum);color:var(--paper);max-width:none;padding-left:11vw;padding-right:11vw}.rsvp .section-kicker{color:#b2a8b6}.rsvp-intro{padding-left:4vw}.rsvp h2{color:var(--paper)}.rsvp .body-copy{color:#b2a8b6}.rsvp-form{align-self:center;padding-left:4vw}.rsvp-form>label,fieldset legend{color:var(--gold);letter-spacing:1.8px;margin-bottom:6px;font-size:9px;display:block}.rsvp-form input[type=text],.rsvp-form input[type=email]{color:var(--paper);background:0 0;border:0;border-bottom:1px solid #79687e;border-radius:0;outline:0;width:100%;margin-bottom:25px;padding:8px 0;font-family:Fraunces,serif;font-size:17px;display:block}.rsvp-form fieldset{border:0;margin:35px 0 27px;padding:0}.choice{color:#d8ced8;align-items:center;margin:0 20px 10px 0;font-family:Fraunces,serif;font-size:15px;display:inline-flex}.choice input{accent-color:var(--turquoise);margin-right:8px}.rsvp-form button{background:var(--turquoise);color:var(--plum);cursor:pointer;letter-spacing:1.8px;text-transform:uppercase;border:0;padding:16px 22px;font-family:DM Sans,sans-serif;font-size:10px;transition:background .2s,transform .2s}.rsvp-form button:hover{background:#9be1da;transform:translateY(-2px)}.form-message{color:var(--turquoise);min-height:22px;margin-top:18px;font-family:Fraunces,serif;font-size:15px}footer{color:#b2a8b6;letter-spacing:2px;text-transform:uppercase;background:#21142b;justify-content:space-between;padding:25px 11vw;font-size:9px;display:flex}footer span:first-child{color:var(--turquoise);letter-spacing:0;font-family:Fraunces,serif;font-size:16px}@media (width<=760px){.site-header{height:68px;padding:0 7vw}.header-date{display:none}nav{gap:8px}nav a{letter-spacing:1px;font-size:9px}.hero{min-height:780px;padding-top:68px;display:block}.hero-copy{padding:90px 7vw 50px}.hero h1{font-size:70px}.hero-photo{min-height:300px}.hero-stamp{bottom:240px;right:9vw}.scroll-cue{left:7vw}.details-band{grid-template-columns:1fr;gap:20px;padding:30px 7vw}.details-band>div{border-top:1px solid #17152240;border-left:0;padding:14px 0 0}.details-band>div:first-child{padding-top:0}.section-grid{min-height:0;padding:85px 7vw;display:block}.section-kicker{margin-bottom:60px}.story-content,.photos-content,.rsvp-intro,.rsvp-form{padding-left:0}.story h2,.photos h2,.rsvp h2{font-size:64px}.story-aside{margin-top:70px}.photo-grid{margin-top:60px;padding-left:0}.photo-card:first-child{height:260px}.photo-card{height:124px}.rsvp-form{margin-top:60px}footer{align-items:flex-start;gap:18px;padding:24px 7vw}footer span:nth-child(2){letter-spacing:1px;flex:1;font-size:7px;line-height:1.5}}:root{--plum:#39758f;--ink:#39758f;--paper:#fff;--turquoise:#a7d8ed;--gold:#8b641d;--muted:#547b8b}body,.hero,.details-band,.photos,.rsvp,footer,.big-day-hero,.story-page-hero,.big-day-note,.dress-card{background-color:var(--paper)}body,.hero,.big-day-hero,.story-page-hero,.rsvp,footer{color:var(--plum)}.site-header,.big-day-header{background:var(--paper)}.monogram,nav a,.header-date,.text-link,.hero-note,.scroll-cue,.section-kicker,.body-copy,.story-aside,.rsvp .section-kicker,.rsvp .body-copy,.choice,.story-page-content p,.big-day-card p:last-child{color:var(--plum)}h1,h2,.details-band strong,.story-link,.story-signature,.big-day-card h2,.big-day-card strong,.big-day-note h2,.story-page-content .dark-link,.dark-link{color:var(--gold)}.hero h1 em,h2 em,.hero-stamp span,.big-day-seal span,.story-page-seal span,.header-date span,.text-link span,.story-link span,button span,footer span:first-child{color:var(--turquoise)}.hero-stamp,.big-day-seal,.story-page-seal{border-color:var(--gold);color:var(--gold)}.details-band>div{border-color:#d7eaf2}.hero,.details-band,.story,.photos,.rsvp{border-bottom:1px solid var(--turquoise)}.details-band a{color:var(--plum);letter-spacing:1px;text-transform:uppercase;margin-top:10px;font-size:10px;text-decoration:none;display:block}.details-band a span{color:var(--gold);margin-left:5px;font-size:15px}.event-countdown{grid-template-columns:repeat(4,minmax(44px,max-content));gap:20px;margin-top:16px;display:grid}.ceremony-details .event-countdown{margin:30px 0 34px}.event-countdown-unit{gap:4px;display:grid}.event-countdown-value{color:var(--plum);font-variant-numeric:tabular-nums;font-family:Fraunces,serif;font-size:32px;line-height:1}.event-countdown-label{color:var(--plum);text-transform:uppercase;font-size:10px}.event-countdown-finished{color:var(--plum);margin:16px 0 0;font-family:Fraunces,serif;font-size:20px}.rsvp-event-links{align-self:center;gap:12px;padding-left:4vw;display:grid}.rsvp-event-link{color:var(--plum);border-bottom:1px solid #b5d9e8;grid-template-columns:1fr auto;align-items:center;gap:5px 16px;padding:16px 0;text-decoration:none;display:grid}.rsvp-event-link>span:first-child{color:var(--gold);letter-spacing:1.3px;text-transform:uppercase;grid-column:1;font-size:9px}.rsvp-event-link strong{color:var(--plum);grid-column:1;font-family:Fraunces,serif;font-size:18px;font-weight:400}.rsvp-event-link .rsvp-link-arrow{color:var(--gold);grid-area:1/2/span 2;font-size:22px}.rsvp-event-link:hover strong{color:var(--gold)}.photos{background-color:var(--paper)}.photo-card{color:var(--gold);background:repeating-linear-gradient(135deg,#f5fbfd 0 2px,#fff 2px 8px);border-color:#d7eaf2}.photo-card-logo{background:var(--paper)}.rsvp-form input[type=text],.rsvp-form input[type=email]{color:var(--plum);border-bottom-color:#b5d9e8}.rsvp-form input::placeholder{color:#7795a2}.rsvp-form input:focus{border-color:var(--turquoise)}.choice input{accent-color:var(--turquoise)}.rsvp-form .choice{margin-right:0;display:flex}.rsvp-form button{background:var(--turquoise);color:#244f62}.rsvp-form button:hover{background:#c4e6f3}.rsvp-contacts{margin-top:30px}.rsvp-contacts .eyebrow{margin-bottom:14px}.rsvp-contacts p:not(.eyebrow){color:var(--plum);margin:0 0 12px;font-family:DM Sans,sans-serif;font-size:14px;line-height:1.5}.rsvp-contacts strong,.rsvp-contacts a{display:block}.rsvp-contacts strong{color:var(--gold);font-weight:500}.rsvp .rsvp-form input[type=text],.rsvp .rsvp-form input[type=email]{caret-color:var(--plum);color:var(--plum)}.rsvp .rsvp-form input::placeholder{color:var(--muted)}.rsvp-contacts a{color:var(--plum);text-underline-offset:3px}.form-message{color:var(--plum)}footer{border-top:1px solid #d7eaf2}.big-day-card{border-color:#d7eaf2}.event-overview{grid-template-columns:repeat(2,minmax(0,1fr))}.event-overview-card{border-right:1px solid #d7eaf2;min-height:270px}.event-overview-card:last-child{border-right:0}.event-page-link{color:var(--plum);letter-spacing:1px;text-transform:uppercase;margin-top:22px;font-size:11px;text-decoration:none;display:inline-block}.event-page-link span{color:var(--gold);margin-left:6px;font-size:17px}.dress-card .eyebrow{color:var(--gold)}.dress-card h2,.dress-card p:last-child{color:var(--plum)}.dark-link{border-color:#b5d9e8}.big-day-card,.story-page-content{background-color:var(--paper)}@media (width<=760px){.rsvp-event-links{margin-top:45px;padding-left:0}.event-overview{display:block}.event-overview-card,.event-overview-card:last-child{border-bottom:1px solid #d7eaf2;border-right:0;min-height:auto}.big-day-card,.big-day-card+.big-day-card{border-color:#d7eaf2}body .site-header{align-items:flex-start;gap:0 12px;height:auto;min-height:68px;padding:10px 7vw}body .site-header .monogram{flex:0 0 42px}body .site-header nav{flex-wrap:wrap;flex:auto;justify-content:flex-end;gap:8px 14px;min-width:0;max-width:calc(100% - 54px)}body .site-header nav a{letter-spacing:.6px;white-space:nowrap;min-height:32px;padding:8px 2px;font-size:10px;line-height:1.4}.hero{padding-top:150px}}.photo-card{margin:0;overflow:hidden}.photo-card img{object-fit:cover;width:100%;height:100%;display:block}.photo-card-feature img{object-position:center}@media (width<=760px){.photo-card img{object-position:center}}.gallery-page-main{padding-top:82px}.gallery-intro{background:#e8f4f5;padding:72px 11vw 54px}.gallery-intro .eyebrow{margin-bottom:18px}.gallery-intro h1{color:var(--gold);font-size:76px}.gallery-intro h1 em{color:var(--plum);font-style:italic}.gallery-count{color:var(--muted);margin:22px 0 0;font-size:12px}.gallery-archive{max-width:1440px;margin:0 auto;padding:54px 11vw 100px}.gallery-archive-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.gallery-archive-photo{aspect-ratio:4/5;margin:0;overflow:hidden}.gallery-archive-photo img{object-fit:cover;width:100%;height:100%;display:block}@media (width<=760px){.gallery-page-main{padding-top:68px}.gallery-intro{padding:54px 7vw 38px}.gallery-intro h1{font-size:58px}.gallery-archive{padding:30px 7vw 64px}.gallery-archive-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}}.story-page{background:var(--paper)}.story-page-hero{background:var(--plum);color:var(--paper);justify-content:space-between;align-items:center;min-height:510px;padding:80px 18vw 90px 11vw;display:flex}.story-page-hero h1{font-size:clamp(76px,11vw,160px)}.story-page-seal{border:1px solid var(--gold);color:var(--gold);text-align:center;border-radius:50%;width:155px;height:155px;padding-top:40px;font-family:Fraunces,serif;font-size:37px;line-height:1;transform:rotate(9deg)}.story-page-seal span{color:var(--turquoise)}.story-page-seal small{letter-spacing:2px;font-family:DM Sans,sans-serif;font-size:10px}.story-page-content{max-width:760px;margin:auto;padding:100px 7vw 120px}.story-page-content p{color:var(--muted);margin:0 0 28px;font-family:Fraunces,serif;font-size:17px;line-height:1.8}.story-page-content h2{color:var(--gold);margin:0 0 28px;font-size:42px}.story-page-content h2:not(:first-child){margin-top:72px}.story-page-content .story-poem{border-left:3px solid var(--gold);color:var(--plum);background:#f1ece5;margin:40px 0;padding:28px 32px 28px 42px;font-style:italic;position:relative}.story-page-content .story-poem:before{color:var(--gold);content:"“";font-family:Fraunces,serif;font-size:56px;font-style:normal;line-height:1;position:absolute;top:19px;left:12px}.story-inline-image{margin:46px -80px;overflow:hidden}.story-inline-image img{aspect-ratio:16/10;object-fit:cover;width:100%;display:block}.story-page-content p:first-of-type{margin-top:0}.story-page-content p:nth-last-child(2){margin-bottom:36px}.story-page-content .dark-link{color:var(--plum);border-bottom:1px solid #baaa97;margin-top:10px;padding-bottom:10px;text-decoration:none;display:inline-block}.story-page-content .dark-link span{color:var(--plum);margin-left:6px}@media (width<=760px){.story-page-hero{align-items:flex-start;min-height:440px;padding:95px 7vw 70px;display:block}.story-page-hero h1{font-size:80px}.story-page-seal{margin:55px 0 0 auto}.story-page-content{padding:120px 7vw 100px}.story-page-content .story-poem{padding:24px 22px 24px 34px}.story-inline-image{margin:38px 0}.story-inline-image img{aspect-ratio:4/3}}.faq-page{background:var(--paper)}.faq-header{background:var(--paper);max-width:none;position:relative}.faq-hero{background:var(--paper);padding:105px 11vw 75px}.faq-hero h1{color:var(--gold);font-size:clamp(68px,10vw,132px)}.faq-hero h1 em{color:var(--turquoise);font-style:normal}.faq-hero .hero-note{color:var(--plum);margin:26px 0 0}.faq-content{max-width:940px;margin:0 auto;padding:0 7vw 110px}.faq-content details{border-top:1px solid #d7eaf2;padding:22px 0}.faq-content details:last-child{border-bottom:1px solid #d7eaf2}.faq-content summary{color:var(--gold);cursor:pointer;font-family:Fraunces,serif;font-size:22px;line-height:1.35}.faq-content details p{color:var(--plum);margin:16px 30px 0 0;font-family:DM Sans,sans-serif;font-size:15px;line-height:1.7}.faq-content a{color:var(--plum);text-underline-offset:3px}@media (width<=760px){.faq-hero{padding:75px 7vw 55px}.faq-content{padding-bottom:80px}.faq-content summary{font-size:19px}}.gifts-page{background:var(--paper)}.gifts-header{background:var(--paper);max-width:none;position:relative}.gift-details{max-width:1120px;margin:0 auto;padding:85px 8vw 105px}.gift-details>h1{color:var(--gold);letter-spacing:-2px;margin:0 0 36px;font-family:Fraunces,serif;font-size:clamp(48px,7vw,82px);font-weight:400;line-height:1}.gift-details h2{color:var(--gold);font-size:clamp(42px,6vw,74px);line-height:1.05}.gift-details h2 em{color:var(--turquoise);font-style:normal}.gift-intro{color:var(--plum);max-width:760px;margin:24px 0 0;font-family:Fraunces,serif;font-size:17px;line-height:1.7}.gift-methods{grid-template-columns:repeat(2,minmax(0,1fr));gap:44px;max-width:850px;margin-top:38px;display:grid}.gift-methods article{border-top:1px solid #b5d9e8;padding-top:18px}.gift-methods h3{color:var(--gold);margin:0 0 18px;font-family:Fraunces,serif;font-size:23px;font-weight:400}.gift-methods dl{margin:0}.gift-methods dl>div{grid-template-columns:110px 1fr;gap:15px;padding:8px 0;display:grid}.gift-methods dt{color:var(--muted);letter-spacing:1px;text-transform:uppercase;font-size:10px}.gift-methods dd{color:var(--plum);margin:0;font-family:DM Sans,sans-serif;font-size:14px}.gift-methods a{color:inherit;text-underline-offset:3px}.gift-thanks{color:var(--plum);margin:48px 0 0;font-family:Fraunces,serif;font-size:18px;line-height:1.7}.gift-motto{color:var(--gold);margin:36px 0 8px;font-family:Fraunces,serif;font-size:20px}.gift-scripture{color:var(--muted);margin:0;font-size:11px;line-height:1.6}.gift-rsvp-links{flex-wrap:wrap;gap:24px;margin-top:42px;display:flex}.gift-rsvp-links a{color:var(--plum);letter-spacing:1px;text-transform:uppercase;font-size:11px;text-decoration:none}.gift-rsvp-links span{color:var(--gold);margin-left:5px;font-size:17px}@media (width<=760px){.gift-details{padding:70px 7vw 85px}.gift-methods{grid-template-columns:1fr;gap:28px}.gift-methods dl>div{grid-template-columns:100px 1fr;gap:10px}}.ceremony-header{background:var(--paper)}.ceremony-page .ceremony-header{background:var(--paper);max-width:none;position:relative}.ceremony-page .ceremony-header nav a,.ceremony-page .ceremony-header .header-date{color:var(--plum)}.ceremony-page .ceremony-header nav a:hover,.ceremony-page .ceremony-header nav a.active{border-bottom-color:var(--gold)}.ceremony-details{max-width:1120px;margin:0 auto;padding:95px 8vw 105px}.ceremony-details h2,.ceremony-rsvp h2{color:var(--gold);font-size:clamp(42px,6vw,74px);line-height:1.05}.ceremony-details dl{border-top:1px solid #d7eaf2;max-width:760px;margin:38px 0 0}.ceremony-details dl>div{border-bottom:1px solid #d7eaf2;grid-template-columns:150px 1fr;gap:22px;padding:18px 0;display:grid}.ceremony-details dt{color:var(--gold);letter-spacing:1.7px;text-transform:uppercase;font-size:10px}.ceremony-details dd{color:var(--plum);margin:0;font-family:Fraunces,serif;font-size:18px;line-height:1.5}.ceremony-location{align-items:center;gap:22px;margin-top:22px;display:flex}.ceremony-location .location-map-link{margin:0}.location-qr{border:1px solid #d7eaf2}.intimate-note{color:var(--plum);max-width:620px;margin-top:32px;font-family:Fraunces,serif;font-size:18px;line-height:1.6}.ceremony-rsvp{background:var(--lavender,#f4eff8);padding:85px max(8vw,50vw - 560px) 100px}.ceremony-rsvp h2 em{color:var(--turquoise);font-style:normal}.ceremony-rsvp-intro{color:var(--plum);max-width:520px;margin:20px 0 35px;font-family:Fraunces,serif;font-size:17px;line-height:1.6}.ceremony-rsvp .rsvp-form{max-width:620px;padding-left:0}.ceremony-rsvp .rsvp-form button{text-transform:uppercase}.ceremony-contact{color:var(--plum);margin-top:28px;font-size:13px}.ceremony-contact a{color:var(--plum);text-underline-offset:3px}@media (width<=760px){.ceremony-header{align-items:flex-start;height:auto;min-height:68px;padding-top:12px;padding-bottom:12px}.ceremony-header nav{flex-wrap:wrap;justify-content:flex-end;gap:4px 10px;max-width:calc(100% - 54px)}.ceremony-details{padding:75px 7vw 80px}.ceremony-details dl>div{grid-template-columns:1fr;gap:7px}.ceremony-rsvp{padding:75px 7vw 85px}}
