@import"https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@500;600;700&family=DM+Sans:wght@400;500;600;700&display=swap";:root{font-family:DM Sans,sans-serif;color:#30423a;background:#fbf7f4;font-synthesis:none;--cream: #fbf7f4;--paper: #fffdfb;--alice-blue: #eef5fb;--blush: #f3d9e1;--soft-rose: #e7b5c3;--rose: #c66f86;--deep-rose: #a44e65;--green: #4b6957;--sage: #86a188;--gold: #c7ad7a;--line: rgba(75, 105, 87, .16)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;background:linear-gradient(180deg,var(--cream),var(--alice-blue))}button,input,select,textarea{font:inherit}a{color:inherit}.nav{position:fixed;inset:0 0 auto;z-index:20;height:78px;padding:0 clamp(20px,6vw,90px);display:flex;align-items:center;justify-content:space-between;color:#fff;background:linear-gradient(to bottom,rgba(25,35,29,.62),transparent)}.monogram{font-family:Cormorant Garamond,serif;font-size:1.8rem;font-weight:600;text-decoration:none;letter-spacing:.08em}.nav-links{display:flex;align-items:center;gap:28px}.nav-links a{text-decoration:none;font-size:.9rem}.nav-rsvp{border:1px solid rgba(255,255,255,.8);padding:9px 16px;border-radius:999px}.menu-button{display:none;border:0;background:transparent;color:#fff;font-size:1.6rem}.hero{min-height:100vh;display:grid;place-items:center;position:relative;color:#fff;text-align:center;background:url(/photos/hero-lake.jpg) 63% 48% / cover}.hero-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(#18211b47,#18211ba6)}.hero-content{position:relative;z-index:1;padding:120px 20px 70px}.eyebrow{margin:0 0 14px;text-transform:uppercase;letter-spacing:.22em;font-size:.72rem;font-weight:600}h1,h2,.footer-names{font-family:Cormorant Garamond,serif;font-weight:600}h1{margin:0;font-size:clamp(4rem,10vw,8rem);line-height:.95}h1 span{color:var(--blush);font-style:italic}.hero-date{margin:28px 0 8px;font-size:clamp(1rem,2vw,1.25rem)}.countdown{margin:0 0 32px;color:#ffffffd1}.three-stone{display:flex;align-items:center;justify-content:center;gap:8px;margin:24px auto 4px}.oval-stone,.pear{display:block;border:1px solid rgba(255,255,255,.92);background:linear-gradient(145deg,#fffffff2,#f0f8ffb3 55%,#e7b5c3d9)}.oval-stone{width:25px;height:35px;border-radius:50%}.pear{width:18px;height:25px;border-radius:58% 58% 58% 10%}.pear-left{transform:rotate(38deg)}.pear-right{transform:scaleX(-1) rotate(38deg)}.primary-button,.secondary-button,.honeymoon-button{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:14px 25px;text-decoration:none;font-weight:600;border:1px solid transparent;cursor:pointer}.primary-button{background:linear-gradient(135deg,var(--paper),#ffeef3);color:var(--green)}.secondary-button{margin-top:36px;border-color:var(--green);background:transparent;color:var(--green)}.section{padding:clamp(75px,10vw,130px) clamp(22px,7vw,110px)}.section-heading{text-align:center;margin-bottom:55px}.intro{text-align:center;max-width:900px;margin:auto}h2{margin:0 0 20px;font-size:clamp(2.7rem,6vw,5rem);line-height:1.05}.lead{max-width:700px;margin:0 auto;font-size:1.1rem;line-height:1.8;color:#536058}.narrow{max-width:650px}.story{padding-top:20px;display:grid;grid-template-columns:1.08fr .92fr;gap:clamp(35px,8vw,110px);align-items:center}.story-image{min-height:620px;background:url(/photos/story-portrait.jpg) center 42% / cover;border-radius:220px 220px 14px 14px;box-shadow:0 24px 60px #4b695724}.story-copy p:not(.eyebrow){color:#566159;line-height:1.8;font-size:1.05rem}.details{background:linear-gradient(140deg,#44644f,#62826b 65%,#88a188);color:#fff}.detail-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#ffffff3d}.detail-card{min-height:360px;padding:42px;background:#345542e6}.detail-card h3,.confirmation h3,.selected-household-heading h3,.address-block h3{font-family:Cormorant Garamond,serif;font-size:1.9rem;font-weight:600}.detail-card p{color:#ffffffc2;line-height:1.7}.detail-number{color:#efe1be;font-size:.8rem;letter-spacing:.15em}.schedule{max-width:1180px;margin:auto}.weekend-schedule{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;max-width:960px;margin:0 auto;align-items:stretch}.schedule-day{min-width:0;border-radius:20px;padding:34px clamp(20px,3vw,34px);background:linear-gradient(180deg,var(--paper),#fff7fa);border:1px solid rgba(198,111,134,.18);box-shadow:0 18px 48px #31594317}.schedule-day:nth-child(2){background:linear-gradient(180deg,#fffafb,#fce8ef)}.schedule-day-top{padding-bottom:18px;border-bottom:1px solid var(--line)}.schedule-day-top span{color:var(--deep-rose);text-transform:uppercase;letter-spacing:.16em;font-size:.72rem;font-weight:600}.schedule-date{margin:8px 0 0;color:#6b7d71;font-size:.95rem}.day-events{display:grid;gap:18px;margin-top:24px}.schedule-event{display:grid;grid-template-columns:78px 1fr;gap:14px;align-items:start}.schedule-event time{color:var(--green);font-size:.8rem;font-weight:700}.schedule-event h3{margin:0;font-family:Cormorant Garamond,serif;font-size:1.45rem}.schedule-event p{margin:5px 0 0;color:#5f6f65;line-height:1.5;font-size:.9rem}.gallery{background:linear-gradient(180deg,var(--paper),#fff1f5)}.photo-grid{max-width:1250px;margin:0 auto;display:grid;grid-template-columns:repeat(12,1fr);grid-auto-rows:110px;gap:14px}.photo-tile{margin:0;overflow:hidden;border-radius:4px;background:#ddd8ce;box-shadow:0 14px 34px #4b695714}.photo-tile img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .5s ease}.photo-tile:hover img{transform:scale(1.025)}.photo-1{grid-column:span 4;grid-row:span 5}.photo-2{grid-column:span 4;grid-row:span 3}.photo-3{grid-column:span 4;grid-row:span 4}.photo-4{grid-column:span 8;grid-row:span 4}.photo-5{grid-column:span 4;grid-row:span 3}.photo-6,.photo-7,.photo-8,.photo-10{grid-column:span 4;grid-row:span 4}.photo-9{grid-column:span 8;grid-row:span 4}.registry{background:linear-gradient(145deg,var(--alice-blue),#f8e7ef);text-align:center}.registry-button{font-size:1rem;padding:16px 30px}.honeymoon{text-align:center;background:linear-gradient(145deg,#fffdfb,var(--alice-blue) 55%,#f8e7ef)}.honeymoon-card{position:relative;max-width:820px;margin:0 auto;padding:clamp(42px,7vw,74px) clamp(24px,7vw,76px);overflow:hidden;border:1px solid var(--line);border-radius:28px;background:#fffdfbeb;box-shadow:0 24px 70px #4b695717}.honeymoon-card:before{content:"";position:absolute;width:170px;height:170px;top:-95px;right:-70px;border:22px solid rgba(231,181,195,.22);border-radius:50%}.honeymoon-copy{position:relative;z-index:1;max-width:650px;margin:0 auto;color:#59675e;font-size:1.08rem;line-height:1.8}.honeymoon-actions{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;margin-top:34px}.honeymoon-button{min-height:50px;background:var(--green);color:#fff;border-color:var(--green);transition:transform .16s ease,box-shadow .16s ease}.honeymoon-button:hover{transform:translateY(-2px);box-shadow:0 12px 28px #4b69572e}.honeymoon-username{margin:14px 0 0;color:#68746c;font-size:.9rem}.honeymoon-note{position:relative;z-index:1;max-width:560px;margin:30px auto 0;padding-top:23px;border-top:1px solid var(--line);color:#7a847d;font-size:.84rem;line-height:1.6}.rsvp{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(45px,9vw,120px);align-items:start}.small-note,.field-help{font-size:.86rem;color:#6b776e;line-height:1.6}legend{margin-bottom:10px;font-weight:700}.form-button:disabled{opacity:.6;cursor:not-allowed}.search-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:20px}.search-results-heading{grid-column:1/-1;margin:0;font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.12em}.household-result{border:1px solid var(--line);background:var(--paper);padding:18px;text-align:left;cursor:pointer;display:grid;gap:6px;color:var(--green)}.household-result span{color:#6a756d;font-size:.84rem}.selected-household-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:20px}.selected-household-heading h3{margin:0}.text-button,.confirmation button{border:0;border-bottom:1px solid currentColor;background:transparent;color:var(--deep-rose);cursor:pointer}.guest-check-list{display:grid;gap:10px}.check-label{display:flex!important;grid-template-columns:none!important;flex-direction:row;align-items:center;gap:10px!important;font-weight:500!important}.check-label input{width:auto}.address-block{display:grid;gap:18px;padding:22px;background:#f8faf8;border:1px solid var(--line)}.address-block h3{margin:0}.address-grid{display:grid;grid-template-columns:1fr 120px 140px;gap:14px}.rsvp-summary{padding:14px 16px;background:var(--alice-blue);border-left:3px solid var(--rose)}.faq{background:var(--paper)}.faq-grid{max-width:900px;margin:auto;display:grid;gap:12px}.faq details{border-top:1px solid var(--line);padding:18px 0}.faq summary{cursor:pointer;font-weight:700}.faq p{color:#657067;line-height:1.7}footer{padding:70px 25px;text-align:center;background:#385041;color:#fff}.footer-names{margin:0 0 12px;font-size:2.4rem}footer p{color:#ffffffc7}footer a{display:inline-block;margin-top:12px}@media(max-width:900px){.nav-links{display:none;position:absolute;top:70px;right:18px;left:18px;padding:20px;border-radius:16px;background:#31483af7;flex-direction:column;align-items:stretch;gap:16px}.nav-links.open{display:flex}.menu-button{display:block}.story,.rsvp{grid-template-columns:1fr}.story-image{min-height:520px}.detail-grid,.weekend-schedule{grid-template-columns:1fr}.rsvp-copy{position:static}.address-grid{grid-template-columns:1fr}}@media(max-width:680px){.hero{background-position:68% 48%}.photo-grid{grid-template-columns:1fr 1fr;grid-auto-rows:220px}.photo-tile{grid-column:auto!important;grid-row:auto!important}.search-results{grid-template-columns:1fr}.honeymoon-card{border-radius:20px}.honeymoon-button{width:100%}}@media(max-width:480px){.hero-content{padding-left:16px;padding-right:16px}h1{font-size:clamp(3.2rem,16vw,5rem)}.photo-grid{grid-template-columns:1fr}.selected-household-heading{flex-direction:column}}.schedule-oval,.schedule-pear{display:block;flex-shrink:0;border:1px solid rgba(199,173,122,.8);background:linear-gradient(145deg,#fff,#eef8fffa 38%,#cfe8faeb 68%,#fffffffa)}.schedule-pear{border-radius:58% 58% 58% 10%}.schedule-pear-left{transform:rotate(38deg)}.schedule-pear-right{transform:scaleX(-1) rotate(38deg)}.schedule-flourish{display:flex;align-items:center;justify-content:center;gap:10px;margin:-4px auto 34px}.ring-band{width:clamp(80px,13vw,170px);height:3px;border-radius:999px;background:linear-gradient(90deg,#c7ad7a33,#c7ad7abf,#c7ad7a33)}.schedule-oval{width:30px;height:42px;border-color:#c7ad7acc;border-radius:50%;box-shadow:0 10px 26px #a44e6529}.schedule-pear{width:22px;height:30px;border-color:#c7ad7acc;box-shadow:0 10px 26px #a44e6524}.jordan-ring-flourish{display:flex;justify-content:center;align-items:center;margin:30px auto 38px}.jordan-ring-line{width:clamp(170px,32vw,340px);display:flex;flex-direction:column;gap:2px}.jordan-gold-line{display:block;width:100%;height:3px;border-radius:999px;background:linear-gradient(90deg,#c7ad7a00,#c7ad7a38 10%,#dec58fbf 25%,#ebd39e 42%,#c7ad7a,#ebd39e 58%,#dec58fbf 75%,#c7ad7a38 90%,#c7ad7a00);box-shadow:0 1px 3px #976f2729}.jordan-black-line{display:block;width:94%;height:2px;margin:0 auto;border-radius:999px;background:linear-gradient(90deg,#16161600,#1c1c1c59 12%,#191919e6 30%,#181818,#191919e6 70%,#1c1c1c59 88%,#16161600)}@media(max-width:680px){.schedule-flourish{gap:8px}.ring-band{width:48px}}.attendance-options{display:flex;flex-wrap:wrap;gap:10px}.attendance-options button{padding:12px 16px;border:1px solid var(--green);border-radius:8px;background:transparent;color:var(--green);font:inherit;cursor:pointer}.attendance-options button[aria-pressed=true]{background:var(--green);color:#fff}.attendance-options button:focus-visible{outline:3px solid var(--rose);outline-offset:3px}.attendance-options button:disabled{opacity:.6;cursor:wait}.rsvp{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(45px,9vw,120px);align-items:start}.rsvp-copy{position:sticky;top:120px}.rsvp>div,.rsvp-form,.rsvp-form fieldset{min-width:0}.rsvp-copy p:not(.eyebrow){color:#626e65;line-height:1.7}.small-note{font-size:.86rem}.rsvp-form{display:grid;gap:24px;padding:clamp(28px,5vw,54px);background:var(--paper);border:1px solid var(--line);box-shadow:0 20px 60px #28332c12}.rsvp-form label,fieldset{display:grid;gap:9px;font-size:.88rem;font-weight:600}input,select,textarea{width:100%;border:0;border-bottom:1px solid #aab1ab;background:transparent;padding:12px 2px;color:var(--green);outline:none}input:focus,select:focus,textarea:focus{border-color:var(--rose)}fieldset{margin:0;padding:0;border:0}legend{margin-bottom:10px}.radio-label{display:flex!important;grid-template-columns:auto 1fr;align-items:center;font-weight:400!important}.radio-label input{width:auto}.form-button{background:var(--green);color:#fff;justify-self:start}.confirmation{padding:70px 30px;text-align:center;background:var(--paper);border:1px solid var(--line)}.confirmation span{display:grid;place-items:center;width:52px;height:52px;margin:auto;border-radius:50%;background:var(--green);color:#fff;font-size:1.4rem}.confirmation button{border:0;border-bottom:1px solid;background:transparent;cursor:pointer}.rsvp-lookup,.household-rsvp{width:100%;max-width:760px}.search-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:28px}.search-results-heading{grid-column:1 / -1;margin:0 0 4px;font-size:.86rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--green)}.household-result{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;min-width:0;padding:20px 22px;border:1px solid rgba(75,105,87,.18);border-radius:16px;background:var(--paper);color:#30423a;font:inherit;text-align:left;cursor:pointer;display:flex;flex-direction:column;align-items:flex-start;gap:8px;box-shadow:0 1px 2px #30423a08,0 8px 24px #30423a0a;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease,background .16s ease}.household-result:hover{transform:translateY(-2px);border-color:#c66f86b3;background:#fff9fa;box-shadow:0 4px 12px #30423a0d,0 14px 32px #30423a14}.household-result:focus-visible{outline:3px solid rgba(198,111,134,.22);outline-offset:3px}.household-result strong{display:block;width:100%;font-family:Cormorant Garamond,serif;font-size:1.7rem;font-weight:600;line-height:1.12;color:var(--green)}.household-result .invitation-count{display:inline-flex;align-items:center;width:fit-content;padding:4px 10px;border-radius:999px;background:var(--alice-blue);color:var(--green);font-size:.76rem;font-weight:700;letter-spacing:.025em}.household-result .invitation-members{display:-webkit-box;width:100%;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;color:#30423ab3;font-size:.88rem;line-height:1.45}.selected-household{margin-bottom:28px;padding-bottom:22px;border-bottom:1px solid rgba(75,105,87,.16)}.selected-household h3{margin:3px 0 8px;font-family:Cormorant Garamond,serif;font-size:clamp(1.9rem,4vw,2.5rem);font-weight:600;color:var(--green)}.change-invitation{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;padding:0;background:transparent;color:var(--deep-rose);font:inherit;font-size:.88rem;cursor:pointer;text-decoration:underline;text-underline-offset:3px}.guest-selection{border:0;padding:0;margin:0 0 28px}.guest-selection legend{margin-bottom:5px;font-family:Cormorant Garamond,serif;font-size:1.6rem;font-weight:600;color:var(--green)}.guest-checkbox{display:flex;align-items:center;gap:12px;padding:14px 16px;margin-top:9px;border:1px solid rgba(75,105,87,.16);border-radius:13px;background:var(--paper);cursor:pointer;transition:border-color .16s ease,background .16s ease}.guest-checkbox:hover{border-color:#c66f8680;background:#fff9fa}.guest-checkbox input{flex:0 0 auto;width:19px;height:19px;accent-color:var(--rose)}.decline-note{margin:0 0 28px;padding:16px 18px;border-radius:13px;background:var(--alice-blue);color:#30423a}.decline-note p{margin:5px 0 0}.address-section{padding:28px 0;margin:8px 0 26px;border-top:1px solid rgba(75,105,87,.16);border-bottom:1px solid rgba(75,105,87,.16)}.address-heading{margin-bottom:18px}.address-heading h3{margin:3px 0 5px;font-family:Cormorant Garamond,serif;font-size:1.6rem;font-weight:600;color:var(--green)}.address-grid{display:grid;grid-template-columns:minmax(0,1.8fr) 95px 120px;gap:12px}.rsvp-summary{margin:21px 0;padding:15px 17px;border-radius:13px;background:var(--blush);color:var(--green)}.rsvp-form button:disabled{opacity:.6;cursor:wait}.seat-allowance{margin:4px 0 12px;color:#66736a;font-size:.95rem}.additional-guest-section{display:grid;gap:18px;padding:24px;border:1px solid rgba(198,111,134,.22);border-radius:16px;background:#fff9fa}.additional-guest-heading{display:flex;justify-content:space-between;gap:22px;align-items:flex-start}.additional-guest-heading h3{margin:2px 0 8px;font-family:Cormorant Garamond,serif;font-size:1.75rem}.add-guest-button,.remove-guest-button{border:1px solid rgba(75,105,87,.28);background:var(--paper);color:var(--green);cursor:pointer;font:inherit;font-weight:700}.add-guest-button{flex:0 0 auto;padding:10px 14px;border-radius:999px}.additional-guest-row{display:grid;grid-template-columns:1fr auto;gap:14px;align-items:end}.remove-guest-button{padding:10px 12px;border:0;border-bottom:1px solid rgba(75,105,87,.35);background:transparent;font-size:.78rem}.rsvp-summary{display:flex;justify-content:space-between;gap:18px;align-items:center;padding:16px 18px;border-radius:12px;background:#4b695712;color:var(--green)}.rsvp-summary span{color:#69756d;font-size:.82rem}@media(max-width:560px){.additional-guest-heading,.rsvp-summary{align-items:stretch;flex-direction:column}.add-guest-button{align-self:flex-start}.additional-guest-row{grid-template-columns:1fr}.remove-guest-button{justify-self:start}}.individual-address-list{display:grid;gap:1rem}.individual-address-card{border:1px solid rgba(88,100,70,.2);border-radius:18px;padding:1rem;background:#ffffff73}.individual-address-card h4{margin:0 0 .8rem;font-family:var(--font-serif);font-size:1.15rem}.person-address-fields{display:grid;gap:.8rem}.rsvp-form .guest-checkbox{display:flex}@media(max-width:900px){.rsvp{grid-template-columns:1fr}.rsvp-copy{position:static}.address-grid{grid-template-columns:1fr}}@media(max-width:680px){.search-results{grid-template-columns:1fr}}.copy-address-options{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:16px}.copy-address-options .small-note{flex-basis:100%;margin:0}.venue{background:linear-gradient(180deg,#f8fbf8,#eef5f1)}.venue-heading{margin-bottom:42px}.venue-layout{max-width:1160px;margin:0 auto;display:grid;grid-template-columns:minmax(0,1.55fr) minmax(280px,.65fr);min-height:470px;border:1px solid rgba(75,105,87,.16);background:var(--paper);box-shadow:0 22px 60px #31594317;overflow:hidden}.venue-map-shell{min-height:470px;background:#e5ece7}.venue-map{display:block;width:100%;height:100%;min-height:470px;border:0;filter:saturate(.8) contrast(.96)}.venue-card{display:flex;flex-direction:column;justify-content:center;padding:clamp(34px,5vw,62px);background:linear-gradient(155deg,#fffdfb,#fff7fa)}.venue-card h3{margin:2px 0 4px;font-family:Cormorant Garamond,serif;font-size:clamp(2rem,3vw,2.7rem);color:var(--green)}.venue-card>p:not(.eyebrow){margin:0;color:#647067;line-height:1.7}.venue-divider{width:58px;height:2px;margin:26px 0;background:linear-gradient(90deg,var(--rose),rgba(198,111,134,.12))}.venue-note{margin-bottom:26px!important}.venue-directions{align-self:flex-start;background:var(--green);color:#fff}@media(max-width:850px){.venue-layout{grid-template-columns:1fr}.venue-map-shell,.venue-map{min-height:360px}}@media(max-width:560px){.venue-map-shell,.venue-map{min-height:310px}.venue-card{padding:30px 24px 34px}}.parking-map-slot{position:relative;width:100%;min-height:280px;margin-top:18px;overflow:hidden;border:1px dashed rgba(75,105,87,.35);border-radius:18px;background:#eef5f1a6}.parking-map-slot img{display:block;width:100%;max-height:520px;object-fit:contain}.parking-map-placeholder{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;text-align:center;color:var(--green)}.parking-map-placeholder span{font-family:Cormorant Garamond,serif;font-size:1.8rem;font-weight:600}.parking-map-placeholder small{color:#718078}.parking-map-slot.has-parking-map{min-height:0;border-style:solid;background:var(--paper)}.parking-map-slot.has-parking-map .parking-map-placeholder{display:none}
