@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=Manrope:wght@400;500;600&display=swap');
:root{--brown:#281a16;--deep:#201511;--gold:#d4b684;--ivory:#f4edde;--ink:#392820;--line:rgba(212,182,132,.28);--serif:'Cormorant Garamond',Georgia,serif;--sans:'Manrope',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:35px}body{margin:0;background:var(--brown);color:var(--ivory);font-family:var(--sans);font-size:16px}a{color:inherit}a:focus-visible{outline:2px solid var(--gold);outline-offset:7px}.topbar{max-width:1520px;margin:auto;padding:26px 5%;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line)}.monogram{text-decoration:none;font-family:var(--serif);font-size:31px;letter-spacing:6px;color:var(--gold)}.monogram span{font-size:20px}.toplink{text-decoration:none;font-size:14px;letter-spacing:.08em}.toplink:hover,.email:hover{color:var(--gold)}.hero{max-width:1520px;margin:auto;display:grid;grid-template-columns:1fr 1.12fr;align-items:center;gap:5%;padding:60px 5% 75px}.invitation-copy{text-align:center}.eyebrow{text-transform:uppercase;letter-spacing:.22em;font-size:13px;font-weight:500;color:var(--gold);margin:0 0 30px}.parents{font-family:var(--serif);font-size:25px;line-height:1.35;margin:0 0 22px}.parents span{font-style:italic;color:var(--gold);font-size:21px}.invite-line{font-family:var(--serif);font-style:italic;font-size:21px;line-height:1.5;margin:0;color:#e3d7c5}h1{font-family:var(--serif);font-weight:400;font-size:clamp(64px,7vw,112px);line-height:.98;letter-spacing:-.035em;margin:26px 0 30px}h1 span{display:block;color:var(--gold);font-style:italic;font-size:.45em;line-height:1.25}.date-rule{display:flex;justify-content:center;align-items:center;gap:15px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);width:230px;max-width:100%;padding:12px 0;margin:0 auto 24px}.date-rule>span{font-family:var(--serif);font-size:62px;line-height:1}.date-rule>div{text-align:left;letter-spacing:.17em;font-size:13px;line-height:1.7;font-weight:400}.date-rule b{font-weight:400;letter-spacing:.24em}.church{font-family:var(--serif);font-size:24px;margin:0 0 8px}.place{font-size:14px;letter-spacing:.11em;margin:0;color:#d3c2ae}.button{display:inline-block;text-decoration:none;border:1px solid var(--gold);padding:14px 26px;font-size:14px;margin-top:30px;transition:background .2s,color .2s}.button:hover{background:var(--gold);color:var(--deep)}.hero-art{margin:0;min-width:0}.hero-art img{display:block;width:100%;height:auto;border:1px solid var(--line);box-shadow:0 24px 65px #120a0755}.hero-art figcaption{font-family:var(--serif);font-size:29px;text-align:center;line-height:1.3;padding-top:25px;color:var(--gold)}.hero-art em{color:var(--ivory);font-size:1.3em}.day{background:var(--ivory);color:var(--ink);padding:75px 7% 85px}.section-head{text-align:center}.day .eyebrow{color:#876944;margin:0 0 16px}h2{font-family:var(--serif);font-weight:400;font-size:clamp(42px,5vw,62px);line-height:1.08;margin:0}.section-head>p:last-child{font-family:var(--serif);font-size:22px;font-style:italic;color:#79614b;margin:18px 0 0}.schedule{max-width:1160px;margin:48px auto 0;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #bd9b6a;border-bottom:1px solid #bd9b6a}.schedule article{padding:28px 24px 32px;text-align:center}.schedule article+article{border-left:1px solid #c5b497}.church-event{background:#e8ddc9}.number{display:flex;align-items:center;justify-content:center;gap:12px;margin:0 0 30px;font-family:var(--serif);font-style:italic;color:#806039;font-size:24px}.number span{font-family:var(--sans);font-style:normal;font-size:12px;letter-spacing:.17em}.time{font-family:var(--serif);font-size:62px;line-height:1;margin:0 0 23px}.time small{font-size:24px;font-style:italic}.schedule h3{font-family:var(--serif);font-size:28px;font-weight:500;line-height:1.2;margin:0 0 8px}.venue{font-size:14px;letter-spacing:.035em;margin:0;color:#6c5844}.calendar{display:inline-block;font-size:13px;text-underline-offset:5px;margin-top:22px}.closing{text-align:center;padding:65px 24px 55px;background:var(--deep)}.small-mark{font-family:var(--serif);color:var(--gold);font-size:25px;letter-spacing:6px;border:1px solid var(--line);width:87px;height:87px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 28px}.small-mark span{padding:0 3px}.closing h2{font-size:48px}.closing>p{color:#c4b099;font-size:14px;margin:28px 0 8px}.email{text-decoration:none;font-size:16px;overflow-wrap:anywhere}.closing .closing-date{font-size:12px;letter-spacing:.18em;margin-top:40px}footer{text-align:center;font-family:var(--serif);font-style:italic;font-size:18px;padding:23px 18px;border-top:1px solid var(--line);color:var(--gold)}
@media(min-width:1600px){.hero{padding-top:85px;padding-bottom:90px}}@media(max-width:850px){.hero{grid-template-columns:1fr;gap:50px;padding:44px 6% 50px}.invitation-copy{max-width:560px;margin:auto}.hero-art{max-width:650px;margin:auto}h1{font-size:82px}.hero-art figcaption{font-size:26px}.day{padding:55px 6%}.schedule{grid-template-columns:1fr;max-width:530px;margin-top:32px}.schedule article{padding:30px 20px}.schedule article+article{border-left:0;border-top:1px solid #c5b497}.number{margin-bottom:20px}.time{margin-bottom:16px;font-size:56px}.closing{padding-top:50px}}@media(max-width:400px){.topbar{padding:20px 6%}.toplink{font-size:12px}.parents{font-size:23px}.invite-line{font-size:20px}h1{font-size:72px}.church{font-size:22px}.eyebrow{font-size:12px}.hero-art figcaption{font-size:23px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}

.response{margin:38px auto 0;max-width:500px}.response h3,.gifts h3{font-family:var(--serif);font-weight:400;font-size:30px;margin:0 0 12px}.response p,.gifts p{font-size:16px;line-height:1.7;color:#d3c2ae}.response .button{margin:8px 0 20px}.response .email{display:block}.gifts{border-top:1px solid var(--line);max-width:520px;margin:38px auto 0;padding-top:32px}.gifts .email{color:var(--ivory)}

/* Invitation slideshow */
body{height:100dvh;overflow:hidden}.topbar{height:78px}.slides{display:flex;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scroll-behavior:smooth;height:calc(100dvh - 150px);scrollbar-width:none;overscroll-behavior-x:contain}.slides::-webkit-scrollbar{display:none}.slides>section{flex:0 0 100%;width:100%;max-width:none;height:100%;margin:0;overflow-y:auto;scroll-snap-align:start;scroll-snap-stop:always;overscroll-behavior-y:contain}.slides .hero{padding:28px 5%;gap:4%;align-items:center}.hero-art img{max-height:48vh;object-fit:contain;box-shadow:none;border:0}.hero-art figcaption{font-size:24px;padding-top:16px}.slides .day{padding:44px 7%}.slides .closing{padding:35px 24px}.slides h1{font-size:clamp(60px,6vw,88px);margin:18px 0 22px}.slides .eyebrow{margin-bottom:18px}.slides .parents{margin-bottom:16px}.slides .date-rule{padding:7px 0;margin-bottom:18px}.slides .date-rule>span{font-size:48px}.slides .button{margin-top:20px}.slides .closing h2{font-size:40px}.slides .small-mark{height:58px;width:58px;font-size:20px;margin-bottom:18px}.slides .response{margin-top:28px}.slides .gifts{margin-top:28px;padding-top:24px}.slide-controls{height:54px;display:flex;justify-content:center;align-items:center;gap:22px;border-top:1px solid var(--line);background:var(--deep);padding:4px 16px}.slide-controls button{font-family:var(--sans);cursor:pointer;background:none;color:#d4c5b2;border:0}.slide-tabs{display:flex;gap:22px;align-items:center}.slide-tabs button{padding:10px 0;font-size:14px;border-bottom:1px solid transparent}.slide-tabs button[aria-current="true"]{color:var(--gold);border-bottom-color:var(--gold)}.slide-controls .step{font-family:Georgia,serif;font-size:34px;line-height:1;padding:0 10px;min-width:44px;min-height:44px;color:var(--gold)}.step:disabled{opacity:.25;cursor:default}.slide-controls button:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.slide-status{height:18px;font-size:12px;text-align:center;color:var(--gold);margin:0;background:var(--deep);line-height:18px}@media(max-width:850px){.slides .hero{display:block;padding:28px 6%}.hero-art{margin:30px auto 10px}.hero-art img{max-height:42vh}.slides .invitation-copy{max-width:500px}.slides .day{padding:32px 6%}.slides .schedule{margin-top:26px}.slides .schedule article{padding:22px 16px}.slide-controls{gap:4px}.slide-tabs{gap:16px}.slide-tabs button{font-size:12px}.slides .church{font-size:22px}.slides .closing{padding-top:28px}}@media(prefers-reduced-motion:reduce){.slides{scroll-behavior:auto}}

.response .email + .email{margin-top:10px}.response .contact-label{margin:24px 0 8px;font-size:14px;color:var(--gold)}

.bible-verse{margin:0 auto 26px;max-width:420px;padding-bottom:24px;border-bottom:1px solid var(--line)}.bible-verse p{font-family:var(--serif);font-style:italic;font-size:30px;line-height:1.25;margin:0 0 12px;color:var(--gold)}.bible-verse cite{font-family:var(--sans);font-style:normal;font-size:12px;letter-spacing:.12em;color:#d3c2ae}.slides .number{margin-bottom:26px}.slide-status{font-size:12px;letter-spacing:.05em}@media(max-width:850px){.bible-verse p{font-size:27px}.bible-verse{margin-bottom:24px}.slides .number{margin-bottom:20px}}

.gifts .gift-recipient{font-size:13px;letter-spacing:.1em;color:var(--gold);margin:20px 0 4px}.gifts .email{margin:0}
