:root{--blue:#28566b;--deep:#244c5d;--paper:#faf8f1;--ink:#284e5b;--muted:#63777a;--line:#cbd2cc;--serif:'Cormorant Garamond',Georgia,serif;--sans:'Manrope',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:25px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:14px;line-height:1.8}a{color:inherit;text-decoration:none}button{font:inherit}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:2px solid #b5883c;outline-offset:6px}::selection{background:#cfdfdc}.svg-library{position:absolute;width:0;height:0;overflow:hidden}.skip-link{position:fixed;top:-100px;left:20px;background:var(--paper);padding:12px;z-index:20}.skip-link:focus{top:12px}.site-header{height:90px;display:flex;align-items:center;justify-content:space-between;padding:0 6%;background:var(--paper)}.monogram{font:35px var(--serif);letter-spacing:-5px;display:inline-flex;align-items:center}.monogram span{font-size:23px;font-style:italic;margin:0 4px 0 1px}nav{display:flex;gap:36px;font-size:11px;letter-spacing:.04em}nav a:hover,.text-link:hover{color:#96713a}.nav-date{border-bottom:1px solid #9baaab;padding-bottom:2px}.nav-date span{margin-left:15px}.hero{background:var(--blue);padding:34px 24px 24px;text-align:center;color:var(--paper);position:relative;overflow:hidden}.hero-note{font-size:9px;letter-spacing:.22em;margin-bottom:27px;display:flex;align-items:center;justify-content:center;gap:14px;color:#d6e2df}.small-star{font-size:24px}.invitation{background:var(--paper);color:var(--ink);position:relative;max-width:820px;margin:auto;padding:58px 50px 35px;box-shadow:0 18px 45px #102d3c33;isolation:isolate}.paper-border{position:absolute;inset:13px;border:1px solid #c3ccbf;pointer-events:none;z-index:-1}.paper-border:after{content:'';position:absolute;inset:5px;border:1px solid #dee1d5}.eyebrow{font-size:10px;font-weight:500;text-transform:uppercase;letter-spacing:.20em;margin:0 0 15px}.intro-line{font:italic 21px var(--serif);margin:0 0 25px}.botanical{position:absolute;width:145px;height:270px;color:#728b83;z-index:-1}.botanical-left{left:24px;bottom:40px;transform:rotate(-12deg)}.botanical-right{right:23px;top:32px;transform:rotate(165deg)}h1{font:500 clamp(65px,7.3vw,96px)/.94 var(--serif);margin:0 auto 26px;letter-spacing:-.035em}h1>span{display:block}h1 .ampersand{font-size:40px;line-height:1.25;font-weight:400;font-style:italic;color:#8a997b;margin:3px 0 2px}.date-line{display:flex;align-items:center;justify-content:center;gap:18px;margin-top:23px}.date-line>span:not(.date-number){font-size:10px;letter-spacing:.14em;line-height:1.7;text-align:left;min-width:62px}.date-line>span:first-child{text-align:right}.date-number{font:52px/1 var(--serif);padding:0 18px;border-left:1px solid #c7cebf;border-right:1px solid #c7cebf}.hero-place{font-size:11px;letter-spacing:.04em;margin:18px 0}.hero-place span{margin:0 6px}.text-link{display:inline-flex;align-items:center;gap:16px;border-bottom:1px solid #aebfb9;font-size:11px;padding:4px 0;transition:color .2s}.hero-footer{font:italic 19px var(--serif);color:#d7e2df;margin:25px 0 4px}.content-section{padding:95px 24px;text-align:center}h2{font:500 clamp(42px,4.8vw,60px)/1.08 var(--serif);letter-spacing:-.025em;margin:0 0 25px}h2 em{font-weight:400}p{margin:0 0 18px}.welcome{max-width:750px;margin:auto;padding-bottom:90px}.welcome>p{max-width:525px;margin:0 auto 26px;font-size:13px;line-height:1.95;color:var(--muted)}.signature{font:italic 25px var(--serif)}.signature span{color:#8a997b;margin:0 9px}.celebration{background:#edf0e9;padding-top:72px;padding-bottom:65px}.timezone{font-size:11px;color:var(--muted);margin-top:-8px}.schedule{display:grid;grid-template-columns:1fr 1fr;max-width:820px;margin:43px auto 33px;text-align:left}.schedule article{padding:0 46px}.schedule article+article{border-left:1px solid #c8d1c5}.schedule-number{font-size:9px;letter-spacing:.18em}.time{font:64px/1.1 var(--serif);margin:16px 0}.time span{font:11px var(--sans);letter-spacing:.06em}.schedule h3{font:500 26px var(--serif);margin:0 0 10px}.schedule article>p:last-child{font-size:12px;color:var(--muted);max-width:280px;margin:0;line-height:1.85}.button{display:inline-flex;justify-content:center;align-items:center;gap:22px;min-height:49px;padding:12px 25px;font-size:11px;letter-spacing:.035em;transition:background .2s,transform .2s}.button:hover{transform:translateY(-2px)}.button-blue{background:var(--blue);color:white}.button-blue:hover{background:#183f51}.button-outline{border:1px solid #819c9b}.button-outline:hover{background:#e8ede6}.calendar-note{font-size:10px;color:var(--muted);margin:13px 0 0}.venue{display:grid;grid-template-columns:1fr 1fr;max-width:1100px;margin:0 auto;padding:90px 50px;gap:85px;align-items:center}.venue-art{background:#dbe3dc;padding:35px 32px 22px;text-align:center;position:relative}.arch{min-height:370px;border:1px solid #93aaa1;border-radius:200px 200px 0 0;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden}.arch svg{position:absolute;left:-30px;bottom:-80px;width:190px;height:340px;transform:rotate(18deg);color:#8aa398;opacity:.6}.arch-word{font:500 56px/1.05 var(--serif);z-index:1;margin-top:25px}.arch-word em{font-weight:400}.arch-foot{font-size:9px;letter-spacing:.19em;margin-top:35px}.art-caption{display:block;font-size:7px;letter-spacing:.12em;margin-top:19px}.venue h2{font-size:55px;margin-bottom:3px}.hall{font:italic 27px var(--serif)}.fine-rule{height:1px;width:45px;background:#9cae9b;margin:26px 0}address{font-style:normal;font-size:13px;line-height:1.95}.local-address{font-size:10px;line-height:1.85;color:var(--muted);margin:18px 0 28px}.closing{padding-top:57px;padding-bottom:70px;border-top:1px solid #d8ddd3;margin:0 6%}.closing-flower{font-size:40px;color:#91a08b;display:block;margin-bottom:20px}.closing>p:not(.eyebrow):not(.copy-status){font-size:13px;color:var(--muted)}.guest-note{margin:32px auto 22px}.guest-note p{font:italic 23px var(--serif);margin-bottom:8px}.guest-note span{font-size:11px;color:var(--muted)}.copy-button{background:none;border-top:0;border-left:0;border-right:0;cursor:pointer;color:var(--ink)}[hidden]{display:none!important}.copy-status{font-size:11px;min-height:20px;margin:9px 0 0}footer{background:var(--blue);color:var(--paper);padding:28px 6%;display:flex;justify-content:space-between;align-items:center}footer>span{font-size:9px;letter-spacing:.18em}@media(min-width:1500px){.hero{padding-top:45px;padding-bottom:35px}.invitation{padding-top:65px;padding-bottom:42px}}@media(max-width:700px){.site-header{height:72px;padding:0 23px}nav{gap:20px;font-size:10px}.nav-date{display:none}.monogram{font-size:30px}.hero{padding:22px 16px}.hero-note{font-size:7px;letter-spacing:.12em;gap:8px;margin-bottom:20px}.invitation{padding:45px 23px 34px}.paper-border{inset:10px}.paper-border:after{inset:4px}.eyebrow{font-size:8px;letter-spacing:.17em}.intro-line{font-size:17px;margin-bottom:26px}h1{font-size:67px}.botanical{width:86px;height:170px;opacity:.7}.botanical-left{left:10px;bottom:44px}.botanical-right{right:7px;top:70px}.date-number{font-size:45px}.hero-place{font-size:9px}.hero-footer{font-size:17px}.content-section{padding:65px 24px}.welcome>p{font-size:12px;max-width:350px}.signature{font-size:21px}.signature span{margin:0 3px}h2{font-size:43px}.schedule{margin:30px auto;gap:24px;max-width:400px}.schedule article{padding:0}.schedule article+article{padding-left:24px}.time{font-size:49px}.schedule-number{font-size:8px;letter-spacing:.08em}.schedule h3{font-size:23px;line-height:1.05;min-height:49px}.schedule article>p:last-child{font-size:11px}.calendar-note{font-size:9px}.venue{grid-template-columns:1fr;padding:55px 24px;gap:36px;max-width:450px}.venue-art{padding:26px 27px 19px}.arch{min-height:320px}.venue-copy{text-align:center}.venue h2{font-size:50px}.fine-rule{margin:22px auto}.closing{margin:0 24px;padding-left:0;padding-right:0}.closing h2{font-size:44px}footer{gap:20px;flex-wrap:wrap}footer>span{font-size:8px;letter-spacing:.09em}}@media(max-width:360px){nav{gap:12px}h1{font-size:58px}.hero-note{font-size:6px}.signature{font-size:18px}.schedule{gap:16px}.schedule article+article{padding-left:16px}.schedule h3{font-size:21px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}@media print{.site-header,.hero-note,.hero-footer,.text-link,.button,.calendar-note,.copy-status,footer{display:none!important}.hero{background:white;padding:0}.invitation{box-shadow:none}.content-section{padding:30px 0}.venue{padding:30px 0}.venue-art{display:none}.venue{display:block}.closing{break-inside:avoid}}
.invited-guest{margin:0 auto 22px;max-width:620px}.invited-guest span{display:block;font:500 9px var(--sans);letter-spacing:.2em;margin-bottom:5px;color:var(--muted)}.invited-guest strong{display:block;font:italic 31px/1.1 var(--serif);overflow-wrap:anywhere}.maker-link{margin:6px 14px 0}.maker-page{min-height:100vh;display:flex;flex-direction:column}.maker-main{flex:1;display:grid;place-items:center;padding:55px 24px}.maker-card{width:min(100%,680px);padding:clamp(34px,7vw,70px);background:#fffefa;border:1px solid #d9ded5;box-shadow:0 18px 45px #102d3c12;text-align:center;position:relative}.maker-card:before{content:'';position:absolute;inset:10px;border:1px solid #e5e7df;pointer-events:none}.maker-card>*{position:relative}.maker-card h1{font:500 clamp(48px,8vw,76px)/.98 var(--serif);letter-spacing:-.025em;margin:0 0 24px}.maker-card h1 em{font-weight:400}.maker-intro{max-width:430px;margin:0 auto 30px;color:var(--muted);font-size:13px}.maker-card form{max-width:430px;margin:0 auto;display:grid;text-align:left;gap:12px}.maker-card label{font-size:11px;letter-spacing:.08em}.maker-card input{width:100%;padding:15px 16px;border:1px solid #bfcac1;background:var(--paper);color:var(--ink);font:14px var(--sans);border-radius:0}.maker-card input:focus{outline:2px solid #8a997b;outline-offset:2px}.button{display:inline-flex;justify-content:center;align-items:center;gap:9px;min-height:46px;padding:10px 18px;border:1px solid var(--blue);cursor:pointer;font:500 11px var(--sans);letter-spacing:.03em}.maker-card .button{margin-top:7px}.button-blue{background:var(--blue);color:var(--paper)}.button-blue:hover{background:var(--deep)}.button-outline{background:transparent;color:var(--ink)}.invite-result{margin:38px auto 0;padding-top:28px;border-top:1px solid #d8ddd3;max-width:500px}.invite-result .eyebrow{margin-bottom:8px}.invite-url{display:block;padding:11px 14px;background:#edf0e9;overflow-wrap:anywhere;text-align:left;font-size:12px}.result-actions{display:flex;gap:9px;justify-content:center;flex-wrap:wrap;margin-top:14px}.result-actions .button{margin:0}.maker-back{margin:32px 0 0}.maker-page footer{margin-top:auto}@media(max-width:700px){.maker-main{padding:30px 16px}.maker-card{padding:42px 25px}.maker-card:before{inset:7px}.maker-card .button{width:100%}.result-actions{display:grid}.result-actions .button{width:100%}.invited-guest{margin-bottom:18px}.invited-guest strong{font-size:25px}nav a[href='./invite.html']{display:none}}
