@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{--paper:#f5f1e9;--ink:#463b32;--olive:#555e45;--line:#d9d0c2;--muted:#797065;--pink:#e9d6d0;--serif:'Cormorant Garamond',Georgia,'Times New Roman',serif;--sans:'Manrope',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:88px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:14px;line-height:1.7;-webkit-font-smoothing:antialiased}body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:10;opacity:.11;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23000' filter='url(%23n)' opacity='.3' d='M0 0h180v180H0z'/%3E%3C/svg%3E")}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--olive);outline-offset:5px}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400}h2{font-size:64px;line-height:1.02;letter-spacing:-1.5px}em{font-weight:400}svg{display:block}.svg-library{position:absolute;width:0;height:0;overflow:hidden}.site-header{height:88px;display:flex;align-items:center;justify-content:space-between;max-width:1400px;padding:0 6%;margin:auto;border-bottom:1px solid var(--line);position:relative;z-index:2}.monogram{font-family:var(--serif);font-size:30px;letter-spacing:-2px}.monogram span{font-style:italic;font-size:22px;margin:0 3px;color:var(--olive)}nav{display:flex;gap:35px;font-size:11px}nav a{transition:color .2s}nav a:hover{color:#89906d}.header-rsvp{font-size:11px;border-bottom:1px solid var(--ink);padding:8px 0;display:flex;gap:26px}.header-rsvp span{font-size:17px}.hero{position:relative;min-height:795px;overflow:hidden;text-align:center;padding:68px 24px 36px;display:flex;flex-direction:column;align-items:center}.eyebrow,.section-index{font-size:9px;letter-spacing:2.5px;font-weight:500}.hero-eyebrow{color:var(--olive);margin-bottom:32px}.hero-title-wrap{position:relative;width:min(760px,100%)}h1{font-size:clamp(80px,9.8vw,142px);letter-spacing:-5px;line-height:.96}h1>span{display:block}.name-second{margin-left:40px}h1 i{font-size:.72em;font-weight:400;color:var(--olive);margin-right:14px}.hero-aside{position:absolute;left:-28px;top:47%;writing-mode:vertical-rl;font-size:8px;letter-spacing:3px;color:var(--muted)}.aside-right{right:-28px;left:auto}.hero-copy{margin-top:36px;line-height:1.9;font-size:12px;color:var(--muted)}.hero-date{display:flex;align-items:center;gap:22px;font-family:var(--serif);font-size:37px;line-height:1;margin-top:32px;letter-spacing:1px}.date-dot{font-size:19px;color:#a69b88}.hero-location{font-size:8px;letter-spacing:2px;margin-top:15px}.hero-location span{margin:0 12px;color:#a49d86}.text-link{border:0;background:none;border-bottom:1px solid currentColor;display:inline-flex;align-items:center;justify-content:space-between;gap:35px;font-size:11px;padding:11px 0;line-height:1.5}.text-link span{font-size:19px;line-height:1}.hero-scroll{margin-top:auto;padding-top:35px;border-bottom:0;gap:20px}.hero-branch{position:absolute;width:260px;height:485px;color:#7f876d;opacity:.65;pointer-events:none}.branch-left{left:-77px;bottom:100px;transform:rotate(14deg)}.branch-right{right:-76px;top:76px;transform:rotate(196deg)}.section-pad{padding:100px max(7%,calc((100% - 1110px)/2))}.invitation{text-align:center;border-top:1px solid var(--line);padding-top:73px;padding-bottom:85px}.section-index{color:var(--muted)}.little-heart{width:38px;height:36px;color:var(--olive);margin:33px auto 20px}.invitation h2{font-size:50px}.invitation-lead{font-family:var(--serif);font-size:30px;line-height:1.15;margin:23px 0}.body-copy{font-size:12px;line-height:2;color:var(--muted)}.signature{font-family:var(--serif);font-size:24px;font-style:italic;color:var(--olive);margin-top:30px}.calendar-section{background:var(--olive);color:var(--paper);padding:87px max(9%,calc((100% - 1050px)/2));display:grid;grid-template-columns:1fr 420px;align-items:center;gap:65px;position:relative}.calendar-intro .section-index{color:#d0d3c4;margin-bottom:31px}.calendar-intro h2{font-size:76px}.calendar-intro>p{font-size:12px;line-height:1.9;margin:25px 0 22px;color:#e0e0d3}.light-link:focus-visible{outline-color:var(--paper)}.calendar-paper{background:#f4efe5;color:var(--ink);padding:31px 35px 23px;transform:rotate(3deg);box-shadow:1px 12px 22px #17200d18}.calendar-top{display:flex;justify-content:space-between;font-family:var(--serif);font-size:33px;line-height:1;padding-bottom:20px;border-bottom:1px solid var(--line)}.calendar{width:100%;border-collapse:collapse;text-align:center;margin-top:15px;table-layout:fixed;font-family:var(--serif);font-size:21px}.calendar th{font:10px var(--sans);color:var(--muted);height:25px;font-weight:400}.calendar td{height:45px;position:relative}.calendar td:nth-child(7){color:var(--olive)}.wedding-day>span{position:relative;z-index:1}.wedding-day svg{position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%) rotate(-10deg);width:57px;height:57px;stroke:#8b5347;stroke-width:1.2;fill:none}.calendar-note{font-family:var(--serif);font-style:italic;text-align:center;font-size:23px;margin-top:20px}.calendar-note span{color:#8b5347;margin-left:6px}.venue{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center;padding-top:110px;padding-bottom:100px}.venue-art{padding:0 30px}.venue-arch{background:#e8dfd0;border-radius:220px 220px 0 0;padding:15px;height:395px;max-width:330px;margin:auto}.arch-inner{border:1px solid #b9ac93;border-radius:210px 210px 0 0;height:100%;position:relative;display:flex;align-items:center;justify-content:center;color:#84765c}.arch-inner svg{width:90%;height:90%;margin-top:25px}.arch-inner>span{position:absolute;top:43px;font-family:var(--serif);font-size:30px;letter-spacing:-2px}.art-caption{font:italic 21px var(--serif);text-align:center;margin-top:23px;color:var(--muted)}.venue-copy .section-index{margin-bottom:30px}.venue-copy h2{font-size:72px}.venue-description{font-family:var(--serif);font-size:31px;line-height:1.3;margin-top:23px}.address{font-size:12px;margin:29px 0 18px;color:var(--muted)}.schedule{border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1.2fr;gap:80px;padding-top:85px;padding-bottom:85px}.schedule-heading .section-index{margin-bottom:30px}.schedule-heading h2{font-size:68px}.schedule-heading>p{font-size:12px;color:var(--muted);line-height:1.9;margin-top:19px}.schedule-spark{color:#a69b7b;width:26px;height:26px;margin-top:25px}.timeline-item{display:grid;grid-template-columns:82px 1fr;gap:30px;padding:27px 0;border-bottom:1px solid var(--line)}.timeline-item:first-child{padding-top:8px}.timeline time{font-family:var(--serif);font-size:32px;line-height:1.1;color:var(--olive)}.timeline h3{font-size:26px;line-height:1.15}.timeline-item p{font-size:11px;line-height:1.8;color:var(--muted);margin-top:9px}.schedule-note{font-size:10px;color:var(--muted);margin-top:24px}.dresscode{background:#eae5da;text-align:center;padding-top:83px;padding-bottom:73px}.dresscode h2{font-size:61px;margin-top:25px}.dress-intro{font-family:var(--serif);font-size:25px;line-height:1.35;margin-top:27px}.palette{display:grid;grid-template-columns:repeat(7,1fr);gap:20px;max-width:960px;margin:47px auto 0}.palette-item{font-size:9px;line-height:1.5;display:flex;align-items:center;flex-direction:column;gap:17px}.swatch{display:block;width:84px;height:104px;border-radius:60px 60px 5px 5px;background:var(--swatch);position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #00000006;transform:rotate(-3deg)}.palette-item:nth-child(even) .swatch{transform:rotate(4deg)}.swatch:after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,#ffffff12 0%,transparent 28%,#ffffff20 38%,transparent 57%,#00000010 80%,#ffffff18 100%)}.dress-footnote{font-size:10px;letter-spacing:.2px;color:var(--muted);margin-top:32px}.rsvp{display:grid;grid-template-columns:1fr 1.1fr;gap:100px;padding-top:90px;padding-bottom:90px}.rsvp-copy{position:relative;overflow:hidden;min-height:480px}.rsvp-copy .section-index{margin-bottom:30px}.rsvp-copy h2{font-size:73px}.rsvp-copy>p{font-size:12px;color:var(--muted);line-height:1.9;margin-top:25px}.rsvp-branch{width:160px;height:295px;position:absolute;bottom:-90px;left:180px;transform:rotate(42deg);color:#969b81;opacity:.75}.rsvp-form{max-width:480px;padding-top:2px}.form-preview{font-size:9px;line-height:1.5;color:var(--muted);border-bottom:1px solid var(--line);padding-bottom:17px;margin-bottom:21px}.field-label,legend{font-size:11px;font-weight:500;display:block;margin-bottom:10px}.field-label span{font-weight:400;color:var(--muted)}input:not([type=radio]),select,textarea{background:transparent;border:0;border-bottom:1px solid #bab09f;width:100%;padding:10px 0 12px;border-radius:0;font-size:12px;line-height:1.6;outline-offset:3px}input::placeholder,textarea::placeholder{color:#958b7e;opacity:1}textarea{resize:vertical;min-height:67px}fieldset{border:0;padding:0;margin:27px 0}.radio-option{display:flex;align-items:center;position:relative;cursor:pointer;font-size:11px;line-height:1.5;min-height:43px;padding:10px 35px 10px 0}.radio-option input{position:absolute;opacity:0;inset:0;width:100%;height:100%;margin:0;cursor:pointer}.radio-mark{border:1px solid #a79e8d;width:18px;height:18px;border-radius:50%;position:absolute;right:2px;top:12px;pointer-events:none}.radio-option input:checked~.radio-mark{border-color:var(--olive);background:radial-gradient(circle,var(--olive) 0 4px,transparent 5px)}.radio-option:has(input:focus-visible){outline:2px solid var(--olive);outline-offset:2px}#guest-count-field{margin-bottom:25px}#guest-count-field[hidden]{display:none}.primary-button{width:100%;padding:19px 22px;border:1px solid var(--olive);background:var(--olive);color:var(--paper);display:flex;justify-content:space-between;align-items:center;font-size:11px;margin-top:26px;transition:background .2s}.primary-button:hover{background:#424b34}.primary-button span{font-size:20px;line-height:1}.form-result{font-size:11px;line-height:1.8;margin-top:18px;color:var(--olive)}footer{text-align:center;background:#e9ded5;padding:49px 24px 31px;position:relative}.footer-heart{width:30px;height:30px;margin:0 auto 18px;color:#856454}footer p{font-family:var(--serif);font-size:30px;line-height:1.2}footer>span{display:block;font-size:8px;letter-spacing:2px;margin-top:21px}footer>a{position:absolute;bottom:26px;right:6%;font-size:23px;padding:8px}button:disabled{cursor:default;opacity:.7}::selection{background:#d7bcb0;color:var(--ink)}

@media(min-width:1500px){.hero{min-height:850px;padding-top:88px}.hero-branch{width:320px;height:560px}.branch-left{left:-45px}.branch-right{right:-55px}}
@media(max-width:1000px){.calendar-section{grid-template-columns:1fr 360px;gap:35px;padding-left:6%;padding-right:6%}.calendar-paper{padding:28px 25px}.calendar-intro h2{font-size:66px}.venue{gap:45px}.venue-art{padding:0}.venue-copy h2{font-size:62px}.section-pad{padding-left:6%;padding-right:6%}.schedule{gap:45px}.rsvp{gap:50px}.swatch{width:68px;height:90px}.palette{gap:12px}.dresscode h2{font-size:53px}.hero-branch{opacity:.45;width:220px}.branch-left{left:-110px}.branch-right{right:-110px}.hero-aside{left:10px}.aside-right{left:auto;right:10px}h1{font-size:110px}.hero-title-wrap{max-width:650px}}
@media(max-width:700px){html{scroll-padding-top:24px}.site-header{height:73px;padding:0 23px}.monogram{font-size:27px}nav{display:none}.header-rsvp{font-size:10px;gap:24px}.hero{min-height:730px;padding:65px 20px 26px}.hero-eyebrow{font-size:8px;letter-spacing:2px;margin-bottom:45px}.hero-title-wrap{width:100%;max-width:430px}h1{font-size:clamp(69px,15vw,102px);letter-spacing:-3px;line-height:1.03}.name-second{margin-left:4px;white-space:nowrap}h1 i{margin-right:2px;font-size:.66em}.hero-aside{display:none}.hero-copy{margin-top:35px;max-width:290px;font-size:11px}.hero-date{font-size:34px;gap:16px;margin-top:35px}.hero-location{font-size:7px;letter-spacing:1.6px;margin-top:18px}.hero-location span{margin:0 8px}.hero-scroll{font-size:10px}.hero-branch{width:175px;height:330px;opacity:.45}.branch-left{left:-98px;bottom:75px;transform:rotate(12deg)}.branch-right{right:-102px;top:18px}.desktop-break{display:none}.section-pad{padding:65px 25px}.section-index{font-size:8px;letter-spacing:2px}.invitation{padding-top:48px;padding-bottom:60px}.little-heart{margin-top:30px}.invitation h2{font-size:43px}.invitation-lead{font-size:27px;margin:22px 0;line-height:1.2}.body-copy{max-width:360px;margin:auto;font-size:11px;line-height:1.95}.signature{font-size:23px;margin-top:27px}.calendar-section{grid-template-columns:1fr;gap:39px;padding:56px 30px 65px}.calendar-intro{text-align:center}.calendar-intro .section-index{margin-bottom:24px}.calendar-intro h2{font-size:58px}.calendar-intro h2 br{display:none}.calendar-intro h2 em{display:block}.calendar-intro>p{font-size:11px;margin-top:23px;margin-bottom:12px}.calendar-paper{width:min(345px,100%);margin:auto;padding:27px 24px 22px;transform:rotate(2deg)}.calendar-top{font-size:30px}.calendar td{height:41px}.calendar-note{font-size:22px}.venue{grid-template-columns:1fr;gap:44px;text-align:center;padding-top:65px;padding-bottom:62px}.venue-art{order:2}.venue-arch{max-width:290px;height:350px}.venue-copy .section-index{margin-bottom:22px}.venue-copy h2{font-size:62px}.venue-description{font-size:28px;margin-top:19px}.address{margin-top:23px;margin-bottom:12px}.art-caption{font-size:20px;margin-top:21px}.schedule{grid-template-columns:1fr;gap:30px;padding-top:54px;padding-bottom:54px}.schedule-heading{text-align:center}.schedule-heading .section-index{margin-bottom:21px}.schedule-heading h2{font-size:56px}.schedule-heading h2 br{display:none}.schedule-heading>p{font-size:11px;margin-top:18px}.schedule-spark{display:none}.timeline-item{grid-template-columns:70px 1fr;gap:19px;padding:24px 0}.timeline-item:first-child{padding-top:12px}.timeline time{font-size:29px}.timeline h3{font-size:24px;line-height:1.1}.timeline-item p{font-size:10px;margin-top:9px}.schedule-note{font-size:9px;margin-top:21px;max-width:260px}.dresscode{padding-top:54px;padding-bottom:49px}.dresscode h2{font-size:46px;max-width:340px;margin:23px auto 0}.dresscode h2 em{display:block}.dress-intro{font-size:24px;line-height:1.4;max-width:380px;margin:25px auto 0}.palette{display:flex;flex-wrap:wrap;justify-content:center;gap:25px 16px;margin-top:34px}.palette-item{width:calc((100% - 48px)/4);max-width:91px;font-size:8px;gap:12px}.swatch{width:64px;height:82px}.dress-footnote{font-size:9px;max-width:290px;margin:26px auto 0}.rsvp{grid-template-columns:1fr;gap:31px;padding-top:56px;padding-bottom:62px}.rsvp-copy{text-align:center;min-height:auto;overflow:visible}.rsvp-copy .section-index{margin-bottom:24px}.rsvp-copy h2{font-size:60px}.rsvp-copy h2 br{display:none}.rsvp-copy h2 em{display:block}.rsvp-copy>p{font-size:11px;margin-top:24px}.rsvp-branch{display:none}.rsvp-form{width:100%;max-width:440px;margin:auto}.form-preview{font-size:8px;padding-bottom:17px;margin-bottom:24px}.field-label,legend{font-size:11px}.radio-option{min-height:47px}.radio-mark{top:14px}.primary-button{padding-top:19px;padding-bottom:19px}footer{padding:39px 24px 34px}footer p{font-size:26px;max-width:300px;margin:auto}footer>span{font-size:7px;letter-spacing:1.5px}footer>a{right:12px;bottom:20px}}
@media(max-width:700px){.schedule-heading h2 em{display:block}.palette-item{font-size:10px}.form-preview{font-size:10px}.body-copy,.timeline-item p,.rsvp-copy>p,.schedule-heading>p,.calendar-intro>p{font-size:12px}.schedule-note,.dress-footnote{font-size:10px}.field-label,legend,.radio-option,.primary-button{font-size:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
