:root{color:#263e33;font-synthesis:none;--green:#304e3e;--sage:#dfe6d9;--gold:#927033;--cream:#fffefa;--serif:"Iowan Old Style", Baskerville, "Palatino Linotype", Georgia, serif;background:#fffefa;font-family:Avenir Next,Avenir,Segoe UI,Arial,sans-serif}*{box-sizing:border-box}body{min-width:320px;margin:0}a{color:inherit;text-underline-offset:5px}button,input,textarea{font:inherit}button{cursor:pointer}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--serif);letter-spacing:-.025em;font-weight:400;line-height:1.12}h1{font-size:clamp(44px,5.4vw,80px)}h2{font-size:clamp(32px,3.7vw,55px)}h3{font-size:29px}p,li{font-size:17px;line-height:1.85}em{color:#54705b;font-weight:400}img{max-width:100%;height:auto;display:block}.responsive-image{display:block;overflow:hidden}.responsive-image img{object-fit:cover;object-position:var(--media-focal);width:100%;height:100%}.arch{border:1px solid #b59657;border-radius:50% 50% 0 0/36% 36% 0 0}.oval{border-radius:50%}.eyebrow{text-transform:uppercase;letter-spacing:.19em;color:var(--gold);margin-bottom:23px;font-size:11px;font-weight:650;line-height:1.5}.section{max-width:1600px;margin:auto;padding:100px max(6vw,24px)}.header{background:#fffefa;align-items:center;gap:38px;padding:26px 4.5vw;display:flex}.brand{flex-shrink:0;align-items:center;gap:12px;text-decoration:none;display:flex}.brand img{object-fit:contain;width:83px;height:80px}.brand>span{font-family:var(--serif);white-space:nowrap;font-size:29px;line-height:1.2}.brand small{text-align:center;letter-spacing:.4em;color:var(--gold);margin-top:5px;font:10px/2.1 Avenir Next,Arial,sans-serif;display:block}.nav{flex-wrap:wrap;justify-content:center;gap:14px 23px;max-width:595px;margin-left:auto;display:flex}.nav a{white-space:nowrap;font-size:12px;line-height:1.6;text-decoration:none}.nav a:hover,.nav a.active{color:var(--gold);text-decoration:underline}.button{color:var(--green);letter-spacing:.12em;text-transform:uppercase;background:0 0;border:1px solid #9d7b3b;justify-content:center;align-items:center;gap:25px;max-width:100%;min-height:54px;padding:17px 25px;font-size:11px;font-weight:650;line-height:1.6;text-decoration:none;transition:background .2s,color .2s;display:inline-flex}.button:hover{background:var(--green);color:#fff;border-color:var(--green)}.button span{font-size:18px;line-height:1}.header-contact{flex-shrink:0;padding:16px 20px}.menu-button{display:none}.hero{background:linear-gradient(#fffefa 0%,#eff0e5 40%,#c4d2bb 100%);grid-template-columns:1.1fr 1fr;align-items:center;gap:6vw;min-height:720px;padding:68px 8vw 80px;display:grid}.hero-copy{max-width:660px}.hero h1{margin:0 0 30px;font-size:clamp(48px,5.4vw,82px);line-height:1.1}.hero-subtitle{font-family:var(--serif);max-width:510px;margin-bottom:34px;font-size:clamp(23px,2.3vw,33px);line-height:1.4}.hero-portrait{justify-self:end;width:100%;max-width:480px}.hero-portrait .arch{aspect-ratio:4/5}.welcome{grid-template-columns:1fr 260px;align-items:center;gap:10vw;display:grid}.welcome h2{max-width:830px;margin-bottom:32px;font-size:clamp(34px,4vw,56px);line-height:1.3}.welcome .oval{height:360px}.text-link{text-transform:uppercase;letter-spacing:.09em;align-items:center;gap:26px;font-size:12px;line-height:1.6;display:inline-flex}.ceremony-section{background:#f0f2ea;max-width:none}.section-heading{text-align:center;margin-bottom:50px}.ceremony-grid{grid-template-columns:repeat(3,1fr);gap:32px;max-width:1300px;margin:auto;display:grid}.ceremony-card{text-decoration:none}.ceremony-card .responsive-image{border-radius:48% 48% 0 0/37% 37% 0 0;height:340px}.ceremony-card:first-child img{object-position:57% 50%}.ceremony-card>div{border-bottom:1px solid #b8c1ae;justify-content:space-between;gap:20px;padding:25px 0;display:flex}.ceremony-card h3{font-size:28px}.ceremony-card>div>span{font-size:25px}.more-ceremonies{justify-content:space-between;align-items:center;gap:35px;max-width:1300px;margin:40px auto 0;display:flex}.meet{grid-template-columns:1fr 1fr;align-items:center;gap:9vw;display:grid}.meet>.arch{aspect-ratio:3/4;max-height:680px}.meet h2{margin-bottom:28px}.meet p:not(.eyebrow){margin-bottom:30px}.process-preview{text-align:center;background:#e1e7da;max-width:none}.steps{text-align:left;grid-template-columns:repeat(3,1fr);gap:55px;max-width:1280px;margin:55px auto 45px;display:grid}.steps span{font-family:var(--serif);color:var(--gold);font-size:34px}.steps h3{margin:18px 0}.steps p{font-size:16px}.closing{text-align:center;background:var(--green);color:#fffefa;padding:85px 24px}.closing .eyebrow{color:#e1c487}.closing h2{margin-bottom:32px}.closing .button{color:#fffefa;border-color:#d3b775}.closing .button:hover{color:var(--green);background:#fffefa}footer{background:#fffefa;padding:65px 6vw 22px}.footer-grid{grid-template-columns:1.3fr 1fr .8fr;align-items:center;gap:65px;display:grid}.footer-grid .brand{margin-bottom:20px}.footer-grid p{font-size:14px}.footer-grid h2{margin-bottom:20px;font-size:31px}.footer-grid>div>a:not(.brand){width:-moz-fit-content;width:fit-content;margin:13px 0;display:block}.phone{font-family:var(--serif);letter-spacing:.025em;font-size:32px;text-decoration:none}.apc{text-align:center;justify-self:end;max-width:225px;font-size:12px;line-height:1.7;text-decoration:none}.apc img{width:115px;height:auto;margin:0 auto 14px}.footer-bottom{border-top:1px solid #d6dacd;justify-content:space-between;gap:25px;margin-top:50px;padding-top:20px;font-size:11px;line-height:1.7;display:flex}.page-intro{background:linear-gradient(150deg,#fffefa,#e0e7d8);grid-template-columns:1.1fr 1fr;align-items:center;gap:9vw;padding:65px 8vw 75px;display:grid}.page-intro h1{margin-bottom:26px}.page-intro p:not(.eyebrow){max-width:630px;margin:20px 0}.page-intro .intro-image{justify-self:end;width:100%;max-width:460px;height:480px}.page-intro .intro-image.meet-jo-portrait{aspect-ratio:1080/2340;justify-self:center;max-width:300px;height:auto}.meet-jo-portrait img{object-fit:contain}.page-intro .phone{margin:30px 0;display:block}.story{grid-template-columns:.8fr 1.25fr;align-items:start;gap:8vw;display:grid}.story aside .responsive-image{max-height:650px}.story aside .responsive-image img{object-fit:contain;height:auto}.caption{color:#62705c;margin-top:14px;font-size:12px}.prose{max-width:780px}.prose p{margin-bottom:24px}.prose h2{margin:42px 0 22px;font-size:35px}.prose h2:first-child{margin-top:0}.prose .button{margin-top:16px}.narrow{max-width:850px}.all-services{padding-top:30px;padding-bottom:30px}.all-services article{border-bottom:1px solid #d6dacd;grid-template-columns:1fr 1.15fr;align-items:center;gap:8vw;padding:65px 0;display:grid}.all-services article:nth-child(2n)>.service-image{order:2}.all-services .responsive-image{border-radius:45% 45% 0 0/35% 35% 0 0;height:420px}.all-services h2{margin-bottom:24px}.all-services p:not(.eyebrow){margin-bottom:28px}.fee-band{background:#e6ebdf;justify-content:space-between;align-items:center;gap:45px;padding:55px 8vw;display:flex}.fee-band h2{font-size:36px}.wedding-gallery{grid-template-columns:1.4fr 1fr;align-items:center;gap:30px;display:grid}.wedding-gallery .responsive-image{height:360px}.fee-cards{grid-template-columns:1fr 1fr;gap:70px;padding-bottom:30px;display:grid}.fee-cards h2{margin-bottom:22px}.fee-cards li{margin-bottom:12px;font-size:16px}.fee-cards ul{margin:26px 0;padding-left:22px}.fees-list{padding-top:30px}.fees-list>div{border-bottom:1px solid #cad1c3;justify-content:space-between;gap:30px;padding:24px 0;font-size:20px;display:flex}.fees-list>div>span{text-align:right}.faq-list{max-width:1200px}.faq-list details{border-bottom:1px solid #c8d0c0;padding:25px 0}.faq-list summary{cursor:pointer;font:25px/1.4 var(--serif);align-items:center;gap:25px;min-height:44px;list-style:none;display:flex}.faq-list summary::-webkit-details-marker{display:none}.faq-number{color:var(--gold);font:12px/1.5 Arial,sans-serif}.plus{flex-shrink:0;margin-left:auto;font-size:26px}.faq-list details[open] .plus{transform:rotate(45deg)}.faq-list .prose{padding:25px 0 0 40px}.links-list{max-width:1180px}.links-list>a{border-bottom:1px solid #cad1c3;justify-content:space-between;align-items:center;gap:40px;padding:30px 0;text-decoration:none;display:flex}.links-list h2{margin-bottom:12px;font-size:32px}.links-list a>span{font-size:27px}.contact-note{text-align:center;max-width:850px}.contact-note h2{margin-bottom:25px}.not-found{min-height:50vh}.not-found p{margin:20px 0}.skip-link{z-index:99;background:#fff;padding:15px;position:fixed;top:-100px;left:15px}.skip-link:focus{top:15px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}a:focus-visible,button:focus-visible,summary:focus-visible{outline-offset:5px;outline:3px solid #8d641b}::selection{color:#20382a;background:#e5d5ad}@media (min-width:1500px){.hero{padding-left:max(8vw,50vw - 660px);padding-right:max(8vw,50vw - 660px)}}@media (max-width:1150px){.header{gap:22px;padding:22px 4vw}.brand>span{font-size:24px}.brand img{width:65px;height:65px}.nav{gap:12px 17px}.header-contact{padding:14px}.hero{gap:5vw;min-height:650px;padding:55px 6vw 65px}.hero h1{font-size:56px}.welcome{grid-template-columns:1fr 220px;gap:6vw}.footer-grid{gap:30px}.footer-grid .brand{flex-wrap:wrap}.ceremony-card .responsive-image{height:290px}}@media (max-width:900px){.header{flex-wrap:wrap;justify-content:space-between}.menu-button{color:var(--green);background:0 0;border:0;align-items:center;gap:12px;min-height:44px;padding:12px;font-size:12px;display:flex}.menu-button span{font-size:24px}.header-contact{display:none}.nav{width:100%;max-width:none;margin:0;display:none}.nav.open{border-top:1px solid #d6dacd;flex-direction:column;align-items:stretch;gap:0;display:flex}.nav a{padding:15px 8px;font-size:15px}.nav.open:after{content:none}.hero h1{font-size:48px}.hero-subtitle{font-size:26px}.section{padding:70px 6vw}.welcome{grid-template-columns:1fr 190px}.steps{gap:25px}.footer-grid{grid-template-columns:1fr 1fr}.apc{text-align:left;grid-column:1/-1;justify-self:start;align-items:center;gap:20px;max-width:420px;display:flex}.apc img{width:90px;margin:0}.page-intro{gap:5vw;padding:45px 6vw 55px}.page-intro h1{font-size:48px}.page-intro .intro-image{height:400px}.story{gap:5vw}.fee-cards{gap:35px}}@media (max-width:760px){h1{font-size:43px}h2{font-size:36px}p,li{font-size:16px;line-height:1.8}.header{padding:19px 6vw}.brand img{width:65px;height:63px}.brand>span{font-size:25px}.brand small{font-size:9px}.menu-button{padding-right:0}.hero{grid-template-columns:1fr;gap:40px;min-height:0;padding:45px 6vw 55px}.hero h1{margin-bottom:23px;font-size:clamp(42px,9.8vw,64px);line-height:1.15}.hero-subtitle{max-width:450px;margin-bottom:29px;font-size:26px;line-height:1.4}.hero .eyebrow{letter-spacing:.14em;font-size:10px}.hero-portrait{justify-self:center;max-width:450px}.hero-portrait .arch{aspect-ratio:4/5}.section{padding:60px 6vw}.welcome{grid-template-columns:1fr;gap:35px}.welcome h2{font-size:34px;line-height:1.35}.welcome .oval{justify-self:center;width:65%;height:260px}.section-heading{margin-bottom:32px}.ceremony-grid{grid-template-columns:1fr;gap:35px}.ceremony-card .responsive-image{aspect-ratio:1.15;height:auto}.ceremony-card .responsive-image img{aspect-ratio:1.15;height:100%}.ceremony-card h3{font-size:28px}.more-ceremonies{flex-direction:column;align-items:flex-start;gap:23px;margin-top:32px}.meet{grid-template-columns:1fr;gap:38px}.meet>.arch{justify-self:center;width:100%;max-width:450px}.meet h2 br{display:none}.meet h2 br:after{content:" "}.meet h2{line-height:1.2}.steps{text-align:center;grid-template-columns:1fr;gap:32px;margin-top:35px}.steps h3{margin:10px 0}.steps p{max-width:500px;margin:auto}.process-preview h2 br{display:none}.closing{padding:65px 24px}.footer-grid{grid-template-columns:1fr;gap:38px}.footer-grid .brand{flex-wrap:nowrap}.footer-grid .phone{font-size:29px}.footer-bottom{flex-direction:column;gap:12px;margin-top:35px}.page-intro{grid-template-columns:1fr;gap:30px;padding:42px 6vw 50px}.page-intro h1{font-size:43px}.page-intro .intro-image{justify-self:center;max-width:420px;height:410px}.page-intro .intro-image.meet-jo-portrait{max-width:280px}.page-intro .eyebrow{margin-bottom:18px}.story{grid-template-columns:1fr;gap:35px}.story aside{width:100%;max-width:420px;margin:auto}.story aside .responsive-image{max-height:none}.story aside .responsive-image img{object-fit:contain;max-height:560px}.story .prose{order:-1}.prose h2{font-size:31px}.all-services article{grid-template-columns:1fr;gap:28px;padding:35px 0}.all-services article:nth-child(2n)>.service-image{order:0}.all-services .responsive-image{height:360px}.fee-band{flex-direction:column;align-items:flex-start;gap:25px;padding:45px 6vw}.fee-band h2{font-size:30px}.fee-cards{grid-template-columns:1fr;gap:45px}.fees-list>div{gap:20px;font-size:17px}.fees-list>div>*{flex:1}.faq-list summary{gap:15px;font-size:22px}.faq-list .prose{padding-left:0}.wedding-gallery{grid-template-columns:1fr;gap:20px}.wedding-gallery .responsive-image{height:auto}.links-list h2{font-size:27px}.button{padding:16px 22px}.apc{grid-column:auto}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}main:focus{outline:none}@media (min-width:901px){.nav a:last-child{display:none}}main,.hero,.page-intro{overflow:clip}.motion-ribbon{color:var(--green);background:#e1e7da;border-block:1px solid #c0c9b5;padding:28px 0 35px;overflow:hidden}.motion-ribbon-track{font:italic clamp(32px, 5.2vw, 84px)/1.25 var(--serif);letter-spacing:-.035em;text-align:center;flex-wrap:wrap;justify-content:center;align-items:center;gap:.15em .5em;padding-inline:20px;display:flex}.ribbon-phrase{white-space:nowrap}.ribbon-flower{color:var(--gold);font-style:normal}@media (max-width:760px){.motion-ribbon-track{flex-direction:column}.ribbon-flower{font-size:22px}}.closing{isolation:isolate;padding-block:120px;position:relative;overflow:hidden}.closing>:not(.motion-lotus){position:relative}.motion-lotus{opacity:.14;z-index:-1;pointer-events:none;width:min(46vw,550px);height:auto;position:absolute;top:-15%;right:-5%}@media (min-width:761px){.ceremony-grid{padding-block:40px}.welcome{padding-block:135px}.welcome h2{font-size:clamp(40px,4.5vw,68px)}.closing h2{font-size:clamp(48px,6vw,86px)}}@media (max-width:760px){.motion-ribbon{padding-block:22px}.motion-lotus{width:300px;top:0;right:-100px}.closing{padding-block:85px}}@media (prefers-reduced-motion:reduce){.motion-ribbon-track{transform:none!important}}.ceremony-card{translate:0 var(--card-drift,0px)}.chapter{padding:95px max(6vw,24px)}.chapter:nth-of-type(odd){background:#edf0e6}.chapter-inner{grid-template-columns:minmax(0,.8fr) minmax(0,1.15fr);align-items:start;gap:32px 8vw;max-width:1220px;margin:auto;display:grid}.chapter-heading h2{font-size:clamp(34px,4vw,58px);line-height:1.16}.chapter-copy{max-width:660px}.chapter-copy p{font-size:18px;line-height:1.85}.chapter-image .chapter-heading{grid-column:2}.chapter-photo{grid-area:1/1/span 2;width:100%;height:540px}.chapter-image .chapter-copy,.chapter-image:nth-of-type(odd) .chapter-photo{grid-column:2}.chapter-image:nth-of-type(odd) .chapter-heading,.chapter-image:nth-of-type(odd) .chapter-copy{grid-column:1}.chapter-image:nth-of-type(odd) .chapter-inner{grid-template-columns:minmax(0,1.15fr) minmax(0,.8fr)}.ceremony-promise{text-align:center;max-width:1100px;padding-block:105px}.ceremony-promise>p{max-width:690px;margin:0 auto 35px}.ceremony-promise h2{max-width:950px;margin:0 auto 35px;font-size:clamp(38px,4.5vw,65px)}.ceremony-introduction .prose{max-width:760px;margin:auto}.source-paragraph+.source-paragraph{margin-top:24px}.process-fees{width:-moz-fit-content;width:fit-content;margin:26px 0 0;display:flex}@media (max-width:760px){.chapter{padding:58px 6vw}.chapter-inner,.chapter-image:nth-of-type(odd) .chapter-inner{grid-template-columns:minmax(0,1fr);gap:25px}.chapter .chapter-heading,.chapter .chapter-copy,.chapter .chapter-photo,.chapter-image:nth-of-type(odd) .chapter-heading,.chapter-image:nth-of-type(odd) .chapter-copy,.chapter-image:nth-of-type(odd) .chapter-photo{grid-area:auto/1}.chapter-heading{order:0}.chapter-copy{order:1}.chapter-photo{order:2;justify-self:center;max-width:450px;height:370px}.chapter-copy p{font-size:16px}.ceremony-promise{padding-block:65px}}.contact-details{scroll-margin-top:30px}.contact-options{flex-wrap:wrap;gap:18px 32px;margin-top:28px;display:flex}.contact-options a{overflow-wrap:anywhere;font-size:19px;line-height:1.7}
