:root{--shadow: 0 12px 32px rgba(65,70,62,.08);--script: "Great Vibes",cursive;--serif: "Cormorant Garamond",Georgia,serif;--body: "Lora",Georgia,serif;--line-body: 1.7;--section-gutter: clamp(1rem,3.5vw,3rem)}*{box-sizing: border-box}html{scroll-behavior: smooth}body{margin: 0;background: var(--ds-ivory);color: var(--ds-ink);font-family: var(--body);font-size: var(--type-body);line-height: var(--line-body);overflow-x: hidden}section[id]{scroll-margin-top: 86px}a{color: inherit;text-decoration: none}button,input,textarea,select{font: inherit}button,a{-webkit-tap-highlight-color: transparent}.top-note{padding: 7px 20px;text-align: center;font: 10px/1.5 Arial,sans-serif;letter-spacing: .17em;color: #7c877c;background: #f2eee6;border-bottom: 1px solid rgba(105,119,104,.12)}.site-header{min-height: 78px;padding: 0 clamp(24px,5vw,82px);display: flex;align-items: center;justify-content: space-between;gap: 26px;background: rgba(255,253,249,.96);-webkit-backdrop-filter: blur(8px);backdrop-filter: blur(8px);border-bottom: 1px solid var(--ds-border);position: sticky;top: 0;z-index: 20;transition: box-shadow .2s ease}.brand{display: inline-flex;align-items: center;gap: 7px;min-width: 100px;color: var(--ds-ink);font: 36px/.9 var(--script);white-space: nowrap}.brand-heart{color: var(--ds-olive);font: 14px Arial,sans-serif}.main-nav{display: flex;align-items: center;justify-content: center;gap: clamp(18px,2.7vw,42px);font-size: 12px;color: #53685d}.main-nav a{position: relative;padding: 10px 0;transition: color .2s ease;white-space: nowrap}.main-nav a:hover,.main-nav a.active{color: #243f35;font-weight: 500}.main-nav a.active::after{content: "";position: absolute;bottom: 2px;left: 0;right: 0;margin: auto;width: 24px;height: 2px;border-radius: 1px;background: var(--ds-olive)}.main-nav .nav-cta{padding: 9px 18px;border: 1px solid #d7c5b5;border-radius: 30px;transition: all .2s ease}.main-nav .nav-cta:hover{background: #f5ebe6;border-color: var(--ds-olive)}.main-nav .nav-cta span{color: var(--ds-olive);margin-left: 7px}.main-nav .active-cta{background: var(--ds-olive);color: white;border-color: var(--ds-olive)}.main-nav .active-cta:hover{background: #3a574b;color: white}.header-actions{display: flex;align-items: center;gap: 12px}.lang-toggle{display: inline-flex;align-items: center;gap: 3px;padding: 5px 12px;background: rgba(247,243,237,0.85);border: 1px solid #dfd4c5;border-radius: 20px;cursor: pointer;font-family: inherit;font-size: 11px;font-weight: 500;letter-spacing: 0.08em;color: #7a7268;transition: all 0.25s ease;user-select: none}.lang-toggle:hover{background: var(--ds-white);border-color: var(--ds-olive);box-shadow: 0 2px 8px rgba(184,114,114,0.12)}.lang-toggle .lang-opt{display: inline-block;padding: 1px 4px;border-radius: 4px;transition: all 0.2s ease;color: #8c8378}.lang-toggle .lang-opt.active{color: var(--ds-olive);font-weight: 700;background: rgba(222,169,169,0.22)}.lang-toggle .lang-sep{opacity: 0.4;font-size: 10px;padding: 0 1px}.music-toggle{border: 0;padding: 8px 0 8px 6px;background: transparent;color: var(--ds-ink);font-size: 22px;cursor: pointer;display: flex;align-items: center;gap: 9px}.toggle-pill{display: inline-flex;width: 32px;height: 17px;border-radius: 20px;border: 1px solid var(--ds-accent-muted);align-items: center;padding: 2px;transition: background .25s ease,border-color .25s ease}.toggle-pill i{display: block;width: 11px;height: 11px;border-radius: 50%;background: var(--ds-accent-muted);transition: transform .25s cubic-bezier(0.4,0,0.2,1),background .25s ease}.toggle-pill.active{background: var(--ds-olive);border-color: var(--ds-olive)}.toggle-pill.active i{background: var(--ds-white);transform: translateX(15px)}.section-shell{width: min(1320px,calc(100% - 80px));margin-inline: auto}.section-pad{padding-block: 94px}.hero{position: relative;display: grid;grid-template-columns: .92fr 1.08fr;align-items: center;min-height: 640px;padding: 85px 7.5% 80px;isolation: isolate;overflow: hidden;background: linear-gradient(112deg,rgba(247,244,235,.82),rgba(255,253,248,.98) 48%,rgba(247,239,231,.78));border-inline: 1px solid #f0e7db}.hero-copy{max-width: 490px;padding: 15px 20px 15px 0;text-align: center;z-index: 2}.eyebrow,.section-kicker{margin: 0 0 15px;font: 500 11px/1.5 var(--body);letter-spacing: .2em;color: #718276}.hero h1{display: flex;flex-direction: column;align-items: center;margin: 0;color: var(--ds-ink);font: 400 clamp(54px,5.2vw,80px)/.92 var(--script)}.hero h1 .ampersand{font: 400 34px/1.1 var(--serif);color: var(--ds-olive);padding: 6px 0}.intro{margin: 23px auto 17px;color: #66776d;font-size: 14px;line-height: 1.9}.divider-heart{display: flex;align-items: center;justify-content: center;gap: 13px;margin: 18px auto;color: var(--ds-olive)}.divider-heart span{width: 42px;height: 1px;background: #d9c6b4}.divider-heart b{font-size: 12px;font-weight: 400}.hero-date{margin: 0;color: var(--ds-ink);font: 500 25px/1.5 var(--serif);letter-spacing: .16em}.venue-name{margin: 9px 0 0;font: 600 19px/1.4 var(--serif)}.venue-address{margin: 3px 0 0;font-size: 12px;color: #7a8177}.text-link{display: inline-flex;align-items: center;gap: 9px;margin-top: 29px;font-size: 11px;color: #586e61;transition: color .2s}.text-link:hover{color: var(--ds-ink)}.text-link span{font-size: 18px}.hero .hero-rsvp-cta{margin-top: 1rem;min-height: 46px;padding-inline: 1.25rem;gap: .65rem;font-size: .82rem;letter-spacing: .035em;box-shadow: 0 7px 18px rgba(65,70,62,.13)}.hero .hero-rsvp-cta span{font-size: 1rem}.hero-art{min-height: 470px;position: relative;display: flex;align-items: center;justify-content: center;z-index: 1}.photo-placeholder{position: relative;display: flex;flex-direction: column;align-items: center;justify-content: center;gap: 8px;text-align: center;border: 1px dashed rgba(73,107,94,0.38);background: linear-gradient(135deg,rgba(243,246,239,0.85),rgba(251,244,238,0.92));color: #55665b;overflow: hidden;transition: transform .3s ease,border-color .3s ease,box-shadow .3s ease}.photo-placeholder::after{content: "";position: absolute;inset: 10px;border: 1px solid rgba(255,255,255,0.75);pointer-events: none;border-radius: inherit}.photo-placeholder:hover{border-color: var(--ds-olive);transform: translateY(-2px);box-shadow: 0 12px 28px rgba(73,107,94,0.1)}.photo-placeholder .photo-icon{font: 34px/1 Arial,sans-serif;color: var(--ds-olive);opacity: 0.65}.photo-placeholder strong{font: 600 11px/1.3 var(--body);letter-spacing: .12em;color: var(--ds-ink)}.photo-placeholder small{font-size: 10px;color: #6d7b71;background: rgba(255,255,255,0.85);padding: 2px 10px;border-radius: 12px;border: 1px solid rgba(217,201,185,0.6)}.photo-hero{width: min(100%,525px);height: 430px;border-radius: 48% 48% 8px 8px;box-shadow: 0 16px 30px rgba(60,65,52,.08);transform: rotate(1deg)}.photo-caption{position: absolute;bottom: 2px;right: 12%;font: 22px var(--script);color: #7b887b;transform: rotate(-4deg)}.floral{position: absolute;width: auto;height: auto;object-fit: contain;pointer-events: none;user-select: none}.floral-hero-tl{width: 270px;left: -32px;top: -15px;z-index: 3}.floral-hero-br{width: 310px;right: -42px;bottom: -45px;z-index: 3;transform: rotate(8deg)}.countdown-section{min-height: 245px;padding: 52px 20px 42px;background: #f4eee7;border-block: 1px solid #eee2d6;text-align: center;position: relative;overflow: hidden}.countdown-wrap{position: relative;max-width: 860px;margin: 0 auto;display: flex;align-items: center;justify-content: center;padding-inline: 40px}.countdown-content{position: relative;z-index: 2;width: 100%}.countdown-section .section-kicker{margin-bottom: 4px}h2{margin: 0;font: 500 var(--type-heading)/1.2 var(--serif);color: var(--ds-ink)}.countdown-grid{display: flex;justify-content: center;gap: 15px;margin: 25px auto 7px;position: relative;z-index: 1}.count-card{width: 108px;height: 77px;display: flex;flex-direction: column;align-items: center;justify-content: center;border: 1px solid rgba(217,201,185,.65);background: rgba(255,253,249,.85);-webkit-backdrop-filter: blur(4px);backdrop-filter: blur(4px);border-radius: 12px;transition: transform .2s ease}.count-card:hover{transform: translateY(-2px)}.count-card strong{font: 500 29px/1 var(--serif);color: var(--ds-ink)}.count-card span{margin-top: 5px;font-size: 11px;color: #7c847a}.placeholder-note{margin: 4px 0 0;font-size: 10px;color: #96978d}.floral-count-left{position: absolute;left: -20px;top: 50%;transform: translateY(-50%) rotate(85deg);height: 145px;opacity: .85;pointer-events: none;z-index: 1}.floral-count-right{position: absolute;right: -20px;top: 50%;transform: translateY(-50%) scaleX(-1) rotate(85deg);height: 145px;opacity: .85;pointer-events: none;z-index: 1}.story-section{display: grid;grid-template-columns: 1fr 1fr;align-items: center;gap: 60px;min-height: 480px}.story-copy{max-width: 530px;padding-left: 0}.story-copy .section-kicker{margin-bottom: 8px}.story-copy h2{margin-bottom: 21px;font-size: clamp(30px,2.5vw,40px);text-wrap: balance;line-height: 1.25}.story-copy h2 .title-part{display: inline-block;white-space: nowrap}.story-copy p:not(.section-kicker){font-size: 14px;line-height: 2.05;color: #66756a}.story-copy .subtle-copy,.subtle-copy{font-size: 12px;color: var(--ds-muted)}.outline-button,.primary-button,.accent-button{display: inline-flex;align-items: center;justify-content: center;gap: 14px;min-height: 42px;padding: 10px 22px;border-radius: 28px;border: 1px solid #8ea094;font-size: 12px;cursor: pointer;transition: transform .2s ease,background .2s ease,box-shadow .2s ease}.outline-button{margin-top: 10px;background: transparent;color: var(--ds-ink)}.outline-button:hover{background: #edf0e9;transform: translateY(-1px)}.outline-button span,.primary-button span,.accent-button span{font-size: 17px}.story-visual{min-height: 360px;position: relative;display: flex;align-items: center;justify-content: center}.photo-story{width: 66%;height: 300px;transform: rotate(-3deg);box-shadow: var(--shadow)}.photo-story-small{position: absolute;width: 31%;height: 190px;right: 3%;bottom: 9px;transform: rotate(7deg);box-shadow: var(--shadow)}.story-floral{width: 180px;left: 9%;bottom: -8px;z-index: 2}.story-floral-petal{width: 90px;position: absolute;right: 6%;top: -15px;opacity: .85;pointer-events: none;transform: rotate(25deg);z-index: 2}.schedule-section{position: relative;overflow: hidden;background: #f8f5ee}.schedule-section>.section-kicker,.schedule-section>h2{text-align: center;position: relative;z-index: 1}.schedule-section>h2{margin-bottom: 38px}.floral-schedule{width: 260px;right: -55px;top: -70px;opacity: .7;transform: rotate(15deg)}.event-grid{display: grid;grid-template-columns: repeat(3,minmax(0,1fr));gap: 18px;position: relative;z-index: 1}.event-card{min-height: 230px;padding: 26px 25px 23px;text-align: center;background: rgba(255,253,249,.92);border: 1px solid var(--ds-border);border-radius: 14px;box-shadow: 0 6px 19px rgba(82,68,54,.03);transition: transform .25s ease,box-shadow .25s ease}.event-card:hover{transform: translateY(-3px);box-shadow: 0 12px 26px rgba(82,68,54,.07)}button.event-card.location-option{appearance: none;font: inherit;color: inherit;width: 100%;cursor: pointer;text-align: center}.event-card.location-option.is-selected{border-color: #91a79a;background: rgba(241,246,239,.96);box-shadow: 0 0 0 2px rgba(145,167,154,.16),0 8px 22px rgba(82,68,54,.06)}.event-card.location-option:focus-visible{outline: 3px solid rgba(97,128,111,.55);outline-offset: 3px}.event-card.location-option .event-time,.event-card.location-option .event-venue,.event-card.location-option .event-address{overflow-wrap: anywhere}.map-placeholder{padding: 0}.map-placeholder-state{position: relative;z-index: 1;display: flex;justify-content: center;align-items: center;gap: 17px;padding: 30px;width: 100%;box-sizing: border-box}.map-placeholder-state[hidden]{display: none}.map-placeholder iframe{position: absolute;inset: 0;z-index: 2;width: 100%;height: 100%;min-height: 235px;border: 0;background: #f0ede5}.map-placeholder[data-map-state="loaded"]::before,.map-placeholder[data-map-state="loaded"]::after{display: none}.map-placeholder .map-pin{flex: 0 0 auto}.map-selected-kicker{margin: 0 0 8px;color: #8b9c8d;font-size: 10px;letter-spacing: .16em}.map-copy .map-location-time{color: var(--ds-ink);font-weight: 500;margin-bottom: 3px}.map-copy .map-location-venue{color: var(--ds-sage-deep);font-weight: 600;margin-bottom: 3px}.map-copy .map-location-address{margin-top: 0}.map-btn.is-disabled{opacity: .55;cursor: not-allowed}.event-icon{display: inline-flex;align-items: center;justify-content: center;width: 44px;height: 44px;margin-bottom: 11px;border-radius: 50%;background: var(--ds-sage-pale);color: var(--ds-olive);font: 24px var(--serif)}.event-card h3,.map-copy h3{margin: 0 0 9px;font: 600 23px/1.2 var(--serif)}.event-card p{margin: 3px 0;font-size: 11px;line-height: 1.7;color: var(--ds-sage-soft-text)}.event-card .event-time{color: var(--ds-ink);font-size: 12px;font-weight: 500}.map-row{display: grid;grid-template-columns: 1.25fr .75fr;gap: 34px;align-items: center;margin-top: 34px}.map-placeholder{min-height: 235px;display: flex;justify-content: center;align-items: center;gap: 17px;padding: 30px;background: linear-gradient(130deg,#e8eee7,#f0e9de);border: 1px dashed #aebcae;border-radius: 14px;color: #708273;position: relative;overflow: hidden}.map-placeholder::before,.map-placeholder::after{content: "";position: absolute;width: 140%;height: 1px;background: rgba(160,180,164,.45);transform: rotate(-18deg)}.map-placeholder::after{transform: rotate(25deg)}.map-placeholder>*{z-index: 1}.map-placeholder strong{font-size: 11px;letter-spacing: .1em}.map-placeholder p{max-width: 280px;margin: 6px 0 0;font-size: 12px}.map-pin{font-size: 28px;color: var(--ds-olive)}.map-copy{padding: 15px 20px}.map-copy h3{font-size: 29px}.map-copy p{color: #718075;font-size: 13px;line-height: 1.9}.map-btn{margin-top: 10px}.gallery-section{position: relative;overflow: hidden}.gallery-heading{display: flex;align-items: end;justify-content: space-between;margin-bottom: 27px}.gallery-heading h2{margin-bottom: 6px}.gallery-heading p{margin: 0}.gallery-count{color: #a8aa9f;font: 16px var(--serif);letter-spacing: .12em}.gallery-grid{display: grid;grid-template-columns: 1.12fr 1fr 1fr 1fr;gap: 16px;position: relative;z-index: 1}.gallery-photo{height: 260px;border-radius: 8px}.gallery-photo-tall{height: 310px;margin-top: -25px}.gallery-floral{width: 280px;right: -60px;bottom: -45px;opacity: .75}.rsvp-cta{position: relative;margin-bottom: 70px;padding: 70px 30px 64px;text-align: center;background: linear-gradient(120deg,#f4e7e2,#f6f1e9 57%,#e9eee6);border: 1px solid #eee0d6;border-radius: 20px;overflow: hidden}.rsvp-cta .section-kicker{margin-bottom: 10px}.rsvp-cta h2{max-width: 740px;margin: 0 auto 10px}.rsvp-cta p:not(.section-kicker){color: #6c7c70;font-size: 13px}.primary-button{border-color: var(--ds-olive);background: var(--ds-olive);color: white;min-height: 46px;padding-inline: 25px}.primary-button:hover{transform: translateY(-2px);background: #38584a;box-shadow: 0 8px 20px rgba(56,88,74,0.25)}.cta-floral-left{width: 200px;left: -35px;bottom: -48px}.cta-floral-right{width: 210px;right: -35px;bottom: -45px}.site-footer{text-align: center;padding: 20px 24px 45px;color: #829085}.footer-floral{display: flex;justify-content: center;align-items: center;margin: 0 auto 16px}.floral-footer-center{width: 150px;height: auto;opacity: .85}.site-footer .brand{justify-content: center;margin: 0 auto 9px}.site-footer p{margin: 5px 0;font: 24px var(--script);color: var(--ds-ink)}.site-footer small{font-size: 10px;color: #a4a69b;display: block;margin-top: 4px}.site-footer .outline-button{margin-top: 16px}.rsvp-page{overflow: hidden}.rsvp-hero{position: relative;min-height: 295px;padding: 72px 25px 52px;text-align: center;background: linear-gradient(115deg,#f2e6e0,#fbf7ef 55%,#ecefe6);overflow: hidden}.rsvp-hero h1{margin: 0;font: 400 clamp(58px,6vw,80px)/.95 var(--script);color: var(--ds-ink)}.rsvp-hero>p:not(.section-kicker){margin: 7px 0;color: #617367;font-size: 16px}.rsvp-hero .rsvp-intro{max-width: 530px;margin: 10px auto 0;font-size: 12px;line-height: 1.8}.rsvp-hero .section-kicker{margin-bottom: 12px}.rsvp-hero-left{width: 260px;left: -25px;top: -50px}.rsvp-hero-right{width: 270px;right: -30px;top: -54px}.section-heading-centered{text-align: center;margin-bottom: 29px}.section-heading-centered .section-kicker{margin-bottom: 5px}.section-heading-centered p:last-child{margin: 8px 0 0;color: #758277;font-size: 12px}.rsvp-form-section{padding-top: 65px;padding-bottom: 75px}.rsvp-layout{display: grid;grid-template-columns: 1.5fr .7fr;gap: 25px;align-items: stretch}.form-card{padding: 32px;background: var(--ds-paper);border: 1px solid var(--ds-border);border-radius: 16px;box-shadow: var(--shadow)}.form-grid{display: grid;gap: 17px}.two-col{grid-template-columns: repeat(2,minmax(0,1fr))}.form-card label,.wish-form>label{display: block;font-size: 12px;color: var(--ds-ink)}.form-card label>span,fieldset legend span,.wish-form label>span{color: var(--ds-olive)}.form-card label small{color: #92998f;font-size: 10px}.form-card input:not([type=radio]),.form-card textarea,.form-card select,.wish-form input,.wish-form textarea{display: block;width: 100%;margin-top: 7px;border: 1px solid #e1d9d0;border-radius: 8px;background: #fffefa;color: var(--ds-ink);padding: 11px 13px;outline: none;font: 12px var(--body);transition: border .2s,box-shadow .2s}.form-card input:focus,.form-card textarea:focus,.form-card select:focus,.wish-form input:focus,.wish-form textarea:focus{border-color: #8da396;box-shadow: 0 0 0 3px rgba(106,139,120,.12)}.form-card input::placeholder,.form-card textarea::placeholder,.wish-form input::placeholder,.wish-form textarea::placeholder{color: #b3b4aa}.form-card fieldset{border: 0;padding: 0;margin: 20px 0 12px}.form-card legend{margin-bottom: 8px;font-size: 12px}.radio-line{display: flex;align-items: center;gap: 9px;margin: 5px 0;color: var(--ds-muted)}input[type=radio]{accent-color: var(--ds-olive)}.radio-line input{margin: 0}.form-inline-row{align-items: start}.form-inline-row fieldset{margin-top: 0}.form-inline-row select{max-width: 130px}.radio-options{display: flex;flex-wrap: wrap;gap: 10px}.radio-options label{display: flex;align-items: center;gap: 4px;font-size: 11px;white-space: nowrap}.radio-options input{margin: 0}.form-attend-row{margin-top: 16px;align-items: start}.form-card .attend-fieldset{margin: 0;padding: 0;border: 0}.guest-count-label{display: flex;flex-direction: column;transition: opacity .3s ease,filter .3s ease}.guest-count-label select{width: 100%}.guest-count-label.is-disabled{opacity: .35;filter: grayscale(40%);cursor: not-allowed;user-select: none}.guest-count-label.is-disabled select{cursor: not-allowed;background-color: #f1ece5;border-color: #dfd8cf;color: #9f9b93;pointer-events: none}.form-card>label{margin-top: 14px}.form-card textarea{resize: vertical}.full-button{width: 100%;margin-top: 20px;font-family: var(--body)}.form-disclaimer{font-size: 10px;text-align: center;color: #a4a397;margin: 11px 0 0}.thankyou-card{position: relative;display: flex;flex-direction: column;justify-content: center;align-items: center;overflow: hidden;padding: 36px 24px;text-align: center;background: linear-gradient(135deg,#f8efe9,#edf0e8);border-radius: 16px;border: 1px solid #eee1d5}.envelope-icon{font-size: 68px;line-height: 1.2;color: var(--ds-olive)}.thankyou-card h3{margin: 18px 0 0;font: 500 28px var(--serif)}.thankyou-card p{color: #64766a;font-size: 14px;line-height: 1.9}.thankyou-card .divider-heart{margin: 13px 0}.thankyou-floral{width: 180px;bottom: -50px;right: -30px;opacity: .75}.thankyou-floral-petal{width: 80px;position: absolute;left: -15px;top: 15px;opacity: .8;pointer-events: none;transform: rotate(-20deg);z-index: 2}.guestbook-section{position: relative;padding: 68px clamp(28px,4.5vw,64px) 76px;background: #f8eeeb;border: 1px solid #ebd9d3;border-radius: 24px;margin-bottom: 65px;overflow: hidden}.guestbook-heading{display: flex;justify-content: space-between;align-items: center;gap: 25px;margin-bottom: 25px;position: relative;z-index: 1}.guestbook-heading .section-kicker{margin-bottom: 0}.guestbook-heading h2{margin-bottom: 4px}.guestbook-heading p{margin: 0;font-size: 12px;color: #78877c}.status-pill{display: inline-flex;align-items: center;gap: 7px;border: 1px solid #d7dace;border-radius: 25px;padding: 8px 13px;background: rgba(255,253,249,.8);font-size: 10px;white-space: nowrap}.status-pill i,.realtime-note span{width: 7px;height: 7px;border-radius: 50%;background: #d99b9c;display: inline-block}.guestbook-layout{display: grid;grid-template-columns: minmax(320px,390px) 1fr;gap: clamp(24px,3.5vw,44px);align-items: start;margin-top: 10px;position: relative;z-index: 1}.guestbook-form-col{position: sticky;top: 96px}.wish-form{width: 100%;max-width: none;margin: 0;padding: 24px 22px;background: rgba(255,253,249,.95);border: 1px solid #eedfd6;border-radius: 16px;box-shadow: 0 4px 20px rgba(184,114,114,.06);display: flex;flex-direction: column;gap: 14px;position: relative;z-index: 1}.wish-form label{display: flex;flex-direction: column;gap: 7px;font-size: 11px;color: #4e6056;width: 100%}.wish-form input{width: 100%;height: 44px}.wish-form textarea{width: 100%;min-height: 105px;resize: vertical}.wish-actions{display: flex;justify-content: space-between;align-items: center;width: 100%;margin-top: 2px}.wish-actions .char-count{color: #9ea197;font-size: 10px}.accent-button{background: var(--ds-olive);color: var(--ds-white);border-color: var(--ds-olive);min-height: 42px;padding-inline: 26px;white-space: nowrap}.accent-button:hover{background: var(--ds-olive);transform: translateY(-2px);box-shadow: 0 6px 18px rgba(217,142,145,.35)}.guestbook-list-col{display: flex;flex-direction: column;min-width: 0}.approved-heading{display: flex;justify-content: space-between;gap: 16px;align-items: center;margin: 0 0 14px;position: relative;z-index: 1}.approved-heading h3{margin: 0;font: 500 24px var(--serif);color: var(--ds-ink)}.approved-heading span{font-size: 10px;color: #869186;white-space: nowrap}.wishes-grid,.wishes-list{display: flex;flex-direction: column;gap: 13px;position: relative;z-index: 1;max-height: 520px;overflow-y: auto;padding-right: 6px;scrollbar-width: thin;scrollbar-color: var(--ds-border-warm) transparent}.wishes-grid::-webkit-scrollbar,.wishes-list::-webkit-scrollbar{width: 5px}.wishes-grid::-webkit-scrollbar-thumb,.wishes-list::-webkit-scrollbar-thumb{background: var(--ds-border-warm);border-radius: 10px}.wish-card{background: rgba(255,253,249,.93);border: 1px solid #eee1d9;border-radius: 12px;padding: 16px 20px;transition: transform .2s ease,box-shadow .2s ease}.wish-card:hover{transform: translateY(-2px);box-shadow: 0 8px 20px rgba(66,55,44,.04)}.wish-meta{display: flex;align-items: center;gap: 10px}.avatar{display: flex;align-items: center;justify-content: center;width: 36px;height: 36px;border-radius: 50%;background: #d8c4b3;color: var(--ds-white);font: 19px var(--serif)}.avatar-two{background: #c5d0c0}.avatar-three{background: #dfc5c1}.avatar-four{background: #c8b6a8}.wish-meta strong{display: block;font-size: 11px;font-weight: 500}.wish-meta small{display: block;color: #a1a399;font-size: 9px}.wish-card p{font-size: 12px;line-height: 1.75;margin: 12px 0 0;color: #6b796e}.wish-heart{color: var(--ds-olive)}.realtime-note{margin: 24px 0 0;text-align: center;font-size: 10px;color: #8b9388}.realtime-note span{margin-right: 7px}.toast{position: fixed;right: 24px;bottom: 24px;max-width: min(440px,calc(100% - 48px));background: rgba(48,75,66,0.95);-webkit-backdrop-filter: blur(10px);backdrop-filter: blur(10px);color: white;border-radius: 12px;padding: 14px 20px;box-shadow: 0 16px 40px rgba(48,75,66,0.22);font-size: 13px;line-height: 1.5;display: flex;align-items: center;gap: 12px;opacity: 0;transform: translateY(16px);pointer-events: none;transition: opacity .3s ease,transform .3s cubic-bezier(0.16,1,0.3,1);z-index: 100}.toast.show{opacity: 1;transform: translateY(0)}.toast-icon{font-size: 18px;flex-shrink: 0}.guestbook-floral{width: 245px;right: -56px;top: -62px;opacity: .42;z-index: 0}.guestbook-floral-bl{width: 180px;left: -40px;bottom: -45px;opacity: .55;z-index: 0}.guestbook-floral-br{width: 190px;right: -40px;bottom: -45px;opacity: .55;z-index: 0}.hero.section-shell{width: min(1450px,calc(100% - 48px));position: relative;display: grid;grid-template-columns: minmax(0,var(--hero-info-width,70%)) minmax(0,calc(100% - var(--hero-info-width,70%)));align-items: center;column-gap: 0;min-height: clamp(590px,47vw,735px);padding: clamp(52px,5.4vw,86px) clamp(28px,5vw,74px);margin-inline: auto;overflow: hidden;isolation: isolate;border: 1px solid #eee3d7;border-radius: 2px;background-color: #eee9df;background-image: radial-gradient(ellipse at 82% 38%,rgba(221,216,199,.75) 0,rgba(221,216,199,0) 35%),radial-gradient(ellipse at 67% 80%,rgba(241,223,215,.55) 0,rgba(241,223,215,0) 36%),linear-gradient(110deg,#fbf8f1 0%,#f3efe5 52%,#e9e4d8 100%);background-size: cover;background-position: var(--hero-bg-position,right center)}.hero.section-shell::before{content: "";position: absolute;inset: 0;z-index: 0;pointer-events: none;background: linear-gradient(90deg,rgba(251,248,242,.99) 0%,rgba(251,248,242,.98) 27%,rgba(251,248,242,.94) 45%,rgba(251,248,242,.86) 58%,rgba(251,248,242,.58) 68%,rgba(251,248,242,.18) 79%,rgba(251,248,242,.02) 100%)}.hero.section-shell.has-hero-image{}.hero.section-shell[data-subject-side="left"]::before{background: linear-gradient(270deg,rgba(251,248,242,.99) 0%,rgba(251,248,242,.98) 27%,rgba(251,248,242,.94) 45%,rgba(251,248,242,.86) 58%,rgba(251,248,242,.58) 68%,rgba(251,248,242,.18) 79%,rgba(251,248,242,.02) 100%)}.hero .hero-copy{grid-column: 1 / 2;grid-row: 1;width: 100%;max-width: none;min-width: 0;margin: 0;padding: 14px clamp(14px,2.2vw,34px) 16px 0;position: relative;z-index: 2;align-self: center;text-align: center}.hero[data-subject-side="left"] .hero-copy{grid-column: 2 / 3;padding: 14px 0 16px clamp(14px,2.2vw,34px)}.hero .eyebrow{margin-bottom: 11px;color: #667b6e;font-size: 11px;letter-spacing: .23em}.hero h1.couple-names{display: flex;flex-direction: row;flex-wrap: nowrap;align-items: baseline;justify-content: center;gap: clamp(7px,1.05vw,17px);width: 100%;margin: 6px auto 0;color: var(--ds-forest);font: inherit;line-height: 1}.hero .couple-name{display: inline-block;flex: 0 1 auto;min-width: 0;color: var(--ds-forest);font-family: var(--script);font-size: clamp(38px,3.6vw,60px);font-weight: 400;line-height: 1.08;white-space: nowrap;text-shadow: 0 1px 0 rgba(255,255,255,.35)}.hero h1 .ampersand{flex: 0 0 auto;align-self: baseline;padding: 0;color: var(--ds-olive);font: 500 clamp(18px,1.55vw,25px)/1 var(--serif)}.hero .intro{max-width: 590px;margin: 22px auto 15px;color: var(--ds-sage-deep);font-size: 14px;line-height: 1.9;text-wrap: pretty}.hero .divider-heart{margin: 15px auto 19px}.hero .hero-date{font-size: clamp(23px,2vw,29px);letter-spacing: .15em}.hero-family-grid{display: grid;grid-template-columns: repeat(2,minmax(0,1fr));gap: clamp(8px,1vw,15px);width: 100%;max-width: 760px;margin: 18px auto 0;text-align: center}.hero-family-item{min-width: 0;padding: 12px clamp(8px,1vw,15px) 11px;border: 1px solid rgba(224,211,196,.72);border-radius: 9px;background: rgba(255,253,249,.42)}.hero-family-label{margin: 0 0 7px;color: #b57b7a;font: 600 10px/1.4 var(--body);letter-spacing: .19em}.hero-family-parents{margin: 0;color: #315348;font: 500 clamp(13px,1vw,16px)/1.5 var(--serif);overflow-wrap: anywhere}.hero-family-address{margin: 5px 0 0;color: #778076;font: 400 11px/1.55 var(--body);overflow-wrap: anywhere}.hero-venue-details{margin: 12px auto 0}.hero .venue-name{margin-top: 0;font-size: 16px;line-height: 1.45}.hero .venue-address{max-width: 520px;margin: 3px auto 0;color: #777f75;font-size: 11px;line-height: 1.5}.hero .text-link{margin-top: 14px;padding: 5px 8px}.hero .hero-image-placeholder{grid-column: 2 / 3;grid-row: 1;align-self: center;justify-self: stretch;display: flex;flex-direction: column;align-items: center;justify-content: center;gap: 9px;min-width: 0;min-height: 300px;padding: 24px 8px;position: relative;z-index: 1;color: #607c70;text-align: center;opacity: .88;transition: opacity .25s ease;pointer-events: none}.hero[data-subject-side="left"] .hero-image-placeholder{grid-column: 1 / 2}.hero .hero-image-ornament{font-size: 34px;line-height: 1;opacity: .72}.hero .hero-image-placeholder strong{color: #536d61;font: 600 10px/1.4 var(--body);letter-spacing: .15em}.hero .hero-image-placeholder small{max-width: 245px;padding: 5px 12px;border: 1px solid rgba(221,207,191,.62);border-radius: 999px;background: rgba(255,253,249,.55);color: #7b887e;font-size: 10px;line-height: 1.5;overflow-wrap: anywhere}.hero .hero-image-caption{margin-top: 17px;color: #71887b;font: 24px/1.2 var(--script);transform: rotate(-4deg)}.hero.has-hero-image .hero-image-placeholder{opacity: 0;visibility: hidden}.hero .floral-hero-tl{width: clamp(170px,18vw,275px);left: -46px;top: -30px;z-index: 3;opacity: .9}.hero .floral-hero-br{width: clamp(200px,20vw,310px);right: -48px;bottom: -63px;z-index: 3;opacity: .94;transform: rotate(7deg)}.hero[data-subject-side="left"] .floral-hero-tl{left: auto;right: -46px;transform: scaleX(-1)}.hero[data-subject-side="left"] .floral-hero-br{right: auto;left: -48px;transform: scaleX(-1) rotate(7deg)}:root{color-scheme: light;--ds-ivory: #f3f2e8;--ds-paper: #fbfaf4;--ds-sage: #e5e8d9;--ds-sage-pale: #eef0e6;--ds-olive: #58644d;--ds-ink: #41463e;--ds-muted: #626b5d;--ds-border: #d6d4c5;--ds-blush: #ebe8dd;--ds-focus: #687957;--ds-surface-white: #fffefb;--ds-white: #ffffff;--ds-ink-deep: #294251;--ds-forest: #294b40;--ds-olive-hover: #46523d;--ds-sage-deep: #536e61;--ds-sage-muted: #84937f;--ds-sage-soft-text: #7a8379;--ds-border-warm: #dfd2c6;--ds-accent-muted: #d7a6a1;--ds-paper-soft: #f5f4ec;--ds-paper-warm: #fbf8f2;--ds-card: #fcfaf6;--ds-success-bg: #e6f6ec;--ds-warm-neutral: #f4efea;--ds-black: #000000;--ds-radius-sm: .45rem;--ds-radius-md: .75rem;--ds-radius-lg: 1rem;--ds-space-1: .25rem;--ds-space-2: .5rem;--ds-space-3: .75rem;--ds-space-4: 1rem;--ds-space-5: 1.5rem;--ds-space-6: 2rem;--type-display: clamp(2.35rem,3.55vw,3.45rem);--type-intro-mobile: clamp(.78rem,3.1vw,.85rem);--type-heading: clamp(2rem,1.55rem + 1.15vw,2.65rem);--type-subheading: clamp(1.125rem,1.05rem + .3vw,1.35rem);--type-body: clamp(.95rem,.91rem + .15vw,1rem);--type-small: clamp(.85rem,.82rem + .12vw,.92rem);--type-label: clamp(.72rem,.70rem + .12vw,.8rem);--type-date: clamp(1.4rem,1.2rem + .72vw,1.75rem)}html{font-size: 100%;color-scheme: light;-webkit-text-size-adjust: 100%;text-size-adjust: 100%;scroll-padding-top: 5.5rem;overflow-x: clip}body{background: var(--ds-ivory);color: var(--ds-ink);font-family: var(--body);font-size: var(--type-body);line-height: var(--line-body);overflow-x: hidden}*,*::before,*::after{box-sizing: border-box}img,svg,video,iframe{max-width: 100%}button,input,select,textarea{font-family: var(--body);font-size: inherit}:focus-visible{outline: 2px solid var(--ds-focus);outline-offset: 3px}.site-header{background: rgba(251,250,244,.97);border-bottom-color: var(--ds-border)}.hero.section-shell{background-color: var(--ds-ivory);border-color: var(--ds-border);background-image: radial-gradient(ellipse at 83% 42%,rgba(214,218,199,.52),transparent 36%),linear-gradient(110deg,#f8f7f0 0%,var(--ds-ivory) 55%,#e9ecdf 100%)}.hero.section-shell::before{background: linear-gradient(90deg,rgba(243,242,232,.99) 0%,rgba(243,242,232,.98) 30%,rgba(243,242,232,.94) 43%,rgba(243,242,232,.82) 52%,rgba(243,242,232,.56) 60%,rgba(243,242,232,.28) 67%,rgba(243,242,232,.06) 74%,rgba(243,242,232,0) 80%)}.hero.section-shell[data-subject-side="left"]::before{background: linear-gradient(270deg,rgba(243,242,232,.99) 0%,rgba(243,242,232,.98) 30%,rgba(243,242,232,.94) 43%,rgba(243,242,232,.82) 52%,rgba(243,242,232,.56) 60%,rgba(243,242,232,.28) 67%,rgba(243,242,232,.06) 74%,rgba(243,242,232,0) 80%)}.hero.section-shell.has-hero-image{}.countdown-section{background: var(--ds-sage);border-color: var(--ds-border)}.schedule-section{background: var(--ds-ivory)}.story-section{background: var(--ds-sage-pale)}.gallery-section{background: var(--ds-ivory)}.gallery-frame{border-color: var(--ds-border);background: linear-gradient(145deg,rgba(251,250,244,.98),rgba(238,240,230,.96));box-shadow: 0 14px 36px rgba(65,70,62,.055)}.rsvp-form-section{background: var(--ds-sage)}.form-card,.thankyou-card,.wish-form{background: rgba(251,250,244,.97);border-color: var(--ds-border);box-shadow: 0 8px 28px rgba(65,70,62,.06)}.guestbook-section{background: var(--ds-ivory);border-color: var(--ds-border)}.wish-card,.status-pill,.count-card,.event-card{border-color: var(--ds-border)}.event-card{background: rgba(251,250,244,.94);box-shadow: 0 6px 19px rgba(65,70,62,.035)}.event-card.location-option.is-selected{border-color: #8c9b7c;background: #e9ede2;box-shadow: 0 0 0 2px rgba(88,100,77,.1)}.primary-button,.accent-button{background: var(--ds-olive);border-color: var(--ds-olive);color: #fffdf7}.primary-button:hover,.accent-button:hover{background: var(--ds-olive-hover);border-color: var(--ds-olive-hover)}.brand-heart,.divider-heart,.hero h1 .ampersand,.story-gallery-hint span,.wish-heart,.map-pin,.main-nav .nav-cta span{color: var(--ds-olive)}.main-nav .nav-cta{border-color: var(--ds-border)}.main-nav .nav-cta:hover{background: var(--ds-sage-pale);border-color: #a8b09a}.main-nav a.active::after{background: var(--ds-olive)}.main-nav a:hover,.main-nav a.active{color: var(--ds-olive)}.lang-toggle{color: var(--ds-muted);background: rgba(251,250,244,.92);border-color: var(--ds-border)}.lang-toggle .lang-opt.active{color: var(--ds-olive);background: rgba(140,149,123,.18)}.toggle-pill{border-color: var(--ds-olive)}.toggle-pill i{background: #8c957b}.toggle-pill.active{background: var(--ds-olive);border-color: var(--ds-olive)}.status-pill i,.realtime-note span{background: var(--ds-olive)}.site-footer{background: var(--ds-olive);color: var(--ds-paper-soft);padding-bottom: max(2.5rem,env(safe-area-inset-bottom))}.site-footer .brand{color: var(--ds-paper-soft)}.site-footer p{color: rgba(245,244,236,.86)}body,.form-card label,.wish-form label,.event-card p,.map-copy p,.story-copy p,.guestbook-heading p,.wish-card p,.form-disclaimer{font-family: var(--body);color: var(--ds-ink)}h2,.story-copy h2,.schedule-section>h2,.gallery-heading h2,.countdown-content h2,.section-heading-centered h2,.guestbook-heading h2,.rsvp-cta h2{margin-top: 0;color: var(--ds-ink);font-family: var(--serif);font-size: var(--type-heading);font-weight: 500;line-height: 1.18;letter-spacing: .015em;text-wrap: balance;overflow-wrap: break-word}.hero .intro,.story-copy p:not(.section-kicker),.event-card p,.map-copy p,.section-heading-centered>p:not(.section-kicker),.guestbook-heading>div>p:not(.section-kicker),.wish-card p,.rsvp-cta p:not(.section-kicker){color: var(--ds-muted);font-family: var(--body);font-size: var(--type-body);line-height: var(--line-body)}.subtle-copy,.placeholder-note,.gallery-footer-note,.form-card label small,.wish-actions .char-count,.guestbook-heading p,.section-heading-centered p:last-child{font-size: var(--type-small);line-height: 1.55;color: var(--ds-muted)}.section-kicker,.hero .eyebrow,.hero-family-label,.map-selected-kicker{color: var(--ds-olive);font-family: var(--body);font-size: var(--type-label);font-weight: 500;line-height: 1.45;letter-spacing: .14em;text-transform: uppercase}.hero.section-shell{min-height: clamp(31rem,39vw,39rem);padding-top: clamp(2.25rem,4vw,3.75rem);padding-bottom: clamp(2rem,3.5vw,3.25rem)}.hero .hero-copy{min-width: 0;padding-block: .5rem}.hero .eyebrow{margin-bottom: .7rem}.hero h1.couple-names{display: flex;flex-wrap: nowrap;align-items: baseline;justify-content: center;gap: clamp(.2rem,1.1vw,.85rem);width: 100%;max-width: 100%;min-width: 0;margin: .4rem auto 0;padding-inline: 4px;white-space: nowrap}.hero h1.couple-names>.couple-name{display: block;flex: 0 1 auto;width: auto;min-width: 0;max-width: none;color: var(--ds-olive);font-family: var(--serif);font-size: var(--type-display);font-style: italic;font-weight: 600;letter-spacing: -.025em;line-height: 1.06;text-transform: none;font-variant-caps: normal;white-space: nowrap}.hero h1.couple-names>.couple-name:first-child{text-align: right}.hero h1.couple-names>.couple-name:last-child{text-align: left}.hero h1.couple-names>.ampersand{flex: 0 0 auto;align-self: baseline;margin: 0;padding: 0;color: var(--ds-olive);font: 500 clamp(.8rem,.95vw,1.1rem)/1 var(--serif);text-align: center;white-space: nowrap}.hero .intro{max-width: 38rem;margin: 1.1rem auto .8rem;color: var(--ds-muted);font-size: var(--type-body);line-height: 1.75;text-wrap: pretty}.hero .hero-date{max-width: 100%;margin: 0;color: var(--ds-ink);font-family: var(--serif);font-size: var(--type-date);font-weight: 500;line-height: 1.4;letter-spacing: .055em;font-variant-numeric: lining-nums tabular-nums;font-feature-settings: "lnum" 1,"tnum" 1;text-wrap: balance}.hero-family-grid{display: grid;grid-template-columns: repeat(2,minmax(0,1fr));align-items: start;gap: clamp(.75rem,1.8vw,1.5rem);width: 100%;max-width: 47rem;margin: .9rem auto 0;text-align: center}.hero-family-item{min-width: 0;padding: .1rem .4rem .2rem;border: 0;border-radius: 0;background: transparent;box-shadow: none}.hero-family-label{margin: 0 0 .25rem;color: #697958;font-size: var(--type-label);letter-spacing: .12em}.hero-family-parents{margin: 0;color: var(--ds-ink);font-family: var(--body);font-size: var(--type-small);line-height: 1.5;overflow-wrap: anywhere}.hero-family-address{margin: .15rem 0 0;color: var(--ds-muted);font-family: var(--body);font-size: var(--type-small);line-height: 1.5;overflow-wrap: anywhere}.hero .text-link{margin-top: .65rem;font-size: var(--type-small)}.hero-venue-details{display: none}.hero .hero-image-placeholder{color: var(--ds-olive);opacity: .82}.hero .hero-image-placeholder strong{color: var(--ds-olive);font-family: var(--body);font-size: var(--type-label);letter-spacing: .12em}.hero .hero-image-placeholder small{max-width: 15rem;border-color: var(--ds-border);background: rgba(251,250,244,.72);color: var(--ds-muted);font-size: var(--type-small)}.hero .hero-image-caption{color: #7c8970;font-family: var(--script);font-size: clamp(1.25rem,1.2rem + .6vw,1.8rem)}.countdown-section{min-height: 0;padding-block: clamp(2rem,4vw,3.25rem)}.countdown-wrap{width: min(100%,58rem);padding-inline: clamp(.25rem,2vw,2rem)}.countdown-grid{display: grid;grid-template-columns: repeat(4,minmax(0,1fr));gap: clamp(.4rem,1.3vw,.9rem);width: min(100%,34rem);margin: 1.25rem auto .35rem}.count-card{width: auto;min-width: 0;height: clamp(4rem,7vw,5rem);padding: .35rem .2rem;border-color: var(--ds-border);background: rgba(251,250,244,.96);border-radius: .65rem}.count-card strong{color: var(--ds-ink);font-family: var(--serif);font-size: clamp(1.4rem,2vw,1.85rem);font-variant-numeric: lining-nums tabular-nums;font-feature-settings: "lnum" 1,"tnum" 1}.count-card span{color: var(--ds-muted);font-size: var(--type-small)}.placeholder-note{font-size: var(--type-small)}.event-grid{gap: clamp(.65rem,1.3vw,1.1rem)}.event-card{min-width: 0;padding: clamp(1rem,2vw,1.6rem);border-radius: .8rem}.event-card h3,.map-copy h3{color: var(--ds-ink);font-family: var(--serif);font-size: var(--type-body);font-weight: 500;line-height: 1.35}.event-card p{overflow-wrap: anywhere}.map-row{min-width: 0}.map-placeholder{min-width: 0;overflow: hidden;border-color: var(--ds-border)}.map-placeholder iframe{width: 100%;max-width: 100%}.map-copy{min-width: 0}.map-copy p{overflow-wrap: anywhere}.story-section{position: relative;isolation: isolate;padding: clamp(2.25rem,5vw,4rem);gap: clamp(1.5rem,4vw,3.75rem);border-color: var(--ds-border)}.story-copy{min-width: 0}.story-copy h2{margin-bottom: .9rem}.story-copy p:not(.section-kicker){font-size: var(--type-body);line-height: var(--line-body)}.story-visual{min-width: 0}.story-gallery-hint{max-width: calc(100% - 1rem);white-space: normal;text-align: center;background: rgba(251,250,244,.96);border-color: var(--ds-border);color: var(--ds-olive)}.story-gallery-trigger:focus-visible{outline-color: var(--ds-focus)}.gallery-section[hidden]{display: none}.gallery-section{padding-block: clamp(2.5rem,5vw,4.75rem)}.gallery-frame{position: relative;isolation: isolate;overflow: hidden;width: 100%;min-width: 0;padding: clamp(1rem,3vw,2.75rem);border: 1px solid var(--ds-border);border-radius: clamp(.8rem,1.6vw,1.25rem);background: linear-gradient(145deg,var(--ds-paper),var(--ds-sage-pale));box-shadow: 0 14px 36px rgba(65,70,62,.055)}.gallery-heading{position: relative;z-index: 2;gap: 1rem;margin-bottom: clamp(1rem,2.4vw,1.8rem)}.gallery-heading>div{min-width: 0}.gallery-heading p{margin: .25rem 0 0}.gallery-count{color: var(--ds-muted);font-size: var(--type-small);white-space: nowrap}.gallery-grid{display: grid;position: relative;z-index: 1;grid-template-columns: repeat(4,minmax(0,1fr));grid-auto-rows: clamp(4rem,6.2vw,6.2rem);grid-auto-flow: dense;gap: clamp(.4rem,1vw,.8rem);align-items: stretch}.gallery-photo{position: relative;width: auto;height: auto;min-width: 0;min-height: 0;margin: 0;padding: .65rem;border-radius: .6rem;transform: none;box-shadow: none}.gallery-photo:hover{transform: translateY(-2px)}.gallery-photo::after{inset: .35rem;border-radius: .4rem}.gallery-photo .photo-icon{font-size: clamp(1.35rem,2vw,2rem)}.gallery-photo strong{font-size: var(--type-label)}.gallery-photo small{font-size: var(--type-small)}.gallery-item--tall,.gallery-item--portrait,.gallery-item--tall-small{grid-column: span 1;grid-row: span 3}.gallery-item--wide,.gallery-item--wide-short{grid-column: span 2;grid-row: span 2}.gallery-item--square,.gallery-item--medium{grid-column: span 1;grid-row: span 2}.gallery-photo img{position: absolute;inset: 0;display: block;width: 100%;height: 100%;object-fit: cover;border-radius: inherit}.gallery-floral{z-index: 0;right: -2rem;bottom: -3rem;width: clamp(9rem,20vw,18rem);opacity: .2}.gallery-footer-note{position: relative;z-index: 1;margin: 1.2rem 0 0;text-align: center;color: var(--ds-muted);font: italic var(--type-small)/1.6 var(--serif)}.form-card .attend-fieldset .radio-line{display: flex;align-items: flex-start;justify-content: flex-start;gap: .55rem;width: 100%;margin: .45rem 0;text-align: left}.form-card .attend-fieldset .radio-line input[type="radio"]{appearance: auto;accent-color: var(--ds-olive,var(--ds-olive));display: inline-block;width: 1rem;min-width: 1rem;max-width: 1rem;height: 1rem;flex: 0 0 1rem;margin: .15em 0 0;padding: 0}.form-card .attend-fieldset .radio-line>span{display: block;flex: 1 1 auto;min-width: 0;text-align: left;overflow-wrap: normal}.rsvp-form-section{padding-block: clamp(2.25rem,4.5vw,4.5rem)}.section-heading-centered{margin-bottom: clamp(1.2rem,2vw,1.75rem)}.section-heading-centered>p:last-child{font-size: var(--type-body);color: var(--ds-muted)}.rsvp-layout{grid-template-columns: minmax(0,1.5fr) minmax(14rem,.7fr);gap: clamp(.8rem,2vw,1.6rem)}.form-card{min-width: 0;padding: clamp(1rem,2.5vw,2rem);border-radius: .9rem}.form-card label,.wish-form>label{font-size: var(--type-small);line-height: 1.5}.form-card label small{font-size: var(--type-small)}.form-card input:not([type=radio]),.form-card textarea,.form-card select,.wish-form input,.wish-form textarea{min-width: 0;max-width: 100%;width: 100%;border-color: var(--ds-border);background: var(--ds-surface-white);color: var(--ds-ink);font-size: var(--type-body)}.form-card input:focus,.form-card textarea:focus,.form-card select:focus,.wish-form input:focus,.wish-form textarea:focus{border-color: #889579;box-shadow: 0 0 0 3px rgba(88,100,77,.1)}.thankyou-card{border-radius: .9rem}.guestbook-section{padding: clamp(1.4rem,4vw,3.75rem);margin-bottom: clamp(2.5rem,5vw,4rem);border-radius: clamp(.8rem,1.6vw,1.25rem)}.guestbook-heading{gap: 1rem;margin-bottom: 1.25rem}.guestbook-heading>div{min-width: 0}.guestbook-heading p{font-size: var(--type-body)}.guestbook-layout{grid-template-columns: minmax(16rem,.8fr) minmax(0,1.5fr);gap: clamp(1rem,2.8vw,2.6rem)}.guestbook-form-col{min-width: 0}.wish-form{min-width: 0;padding: clamp(.9rem,2vw,1.5rem);border-radius: .85rem;gap: 1rem}.wish-form label{font-size: var(--type-small)}.wish-form textarea{min-height: 6rem}.wish-actions{flex-wrap: wrap;gap: .65rem}.wish-actions .char-count{font-size: var(--type-small)}.wish-card{min-width: 0;border-radius: .7rem}.botanical-frame-overlay{position: absolute;z-index: 0;pointer-events: none;user-select: none;object-fit: contain;opacity: .13;width: clamp(13rem,28vw,25rem)}.botanical-frame-story{right: -5rem;bottom: -4rem;transform: rotate(-3deg)}.botanical-frame-guestbook{right: -5rem;top: -4.5rem;transform: scaleX(-1);opacity: .1}.floral{pointer-events: none;user-select: none}.floral-hero-tl{width: clamp(7rem,15vw,13rem);left: -.7rem;top: -.9rem;opacity: .72}.floral-hero-br{width: clamp(8rem,18vw,15rem);right: -1.5rem;bottom: -2rem;opacity: .7;transform: rotate(12deg)}.floral-count-left{height: clamp(4.5rem,8vw,7.5rem);left: -.5rem;opacity: .5}.floral-count-right{height: clamp(4.5rem,8vw,7.5rem);right: -.5rem;opacity: .5}.floral-schedule{width: clamp(8rem,15vw,14rem);right: -2.5rem;top: -3rem;opacity: .18}.story-floral{width: clamp(6rem,11vw,10rem);opacity: .5}.story-floral-petal{width: clamp(3.5rem,6vw,5.5rem);opacity: .35}.thankyou-floral{opacity: .24}.thankyou-floral-petal{opacity: .2}.guestbook-floral{width: clamp(7rem,12vw,11rem);opacity: .22}.guestbook-floral-bl,.guestbook-floral-br{width: clamp(6rem,10vw,9rem);opacity: .18}.floral-footer-center{width: clamp(5rem,9vw,8rem);opacity: .7}.thankyou-card[hidden],.hero-family-item[hidden],.hero-family-parents[hidden],.hero-family-address[hidden],.event-card[hidden],.event-time[hidden],.event-venue[hidden],.event-address[hidden],.event-address-part[hidden],.map-location-address-part[hidden]{display: none}.rsvp-form-section .section-heading-centered .rsvp-invitation-message{max-width: 58rem;margin: 0 auto;color: #294638;font-size: clamp(1.12rem,1.55vw,1.38rem);font-weight: 700;line-height: 1.55;letter-spacing: 0;text-wrap: balance}.rsvp-form-section .section-heading-centered .rsvp-welcome-message{margin: .45rem auto 0;color: var(--ds-olive);font-size: clamp(.94rem,1.1vw,1.04rem);font-weight: 600;line-height: 1.5;text-align: center}@media (max-width: 550px){.rsvp-form-section .section-heading-centered .rsvp-invitation-message{max-width: 36rem;font-size: clamp(1.04rem,4.15vw,1.18rem);line-height: 1.55}.rsvp-form-section .section-heading-centered .rsvp-welcome-message{margin-top: .35rem;font-size: .94rem}}:root{--page-gutter: clamp(1rem,3.5vw,2.5rem);--section-space: clamp(2.5rem,6vw,5.75rem);--type-display: clamp(2.45rem,4.2vw,3.35rem);--type-heading: clamp(1.85rem,1.5rem + 1.08vw,2.65rem);--type-subheading: clamp(1.12rem,1.02rem + .35vw,1.35rem);--type-body: clamp(.96rem,.92rem + .15vw,1.03rem);--type-small: clamp(.86rem,.83rem + .12vw,.94rem);--type-label: clamp(.72rem,.70rem + .12vw,.82rem);--type-date: clamp(1.35rem,1.15rem + .7vw,1.8rem)}*,*::before,*::after{box-sizing: border-box}html{width: 100%;max-width: 100%;overflow-x: clip;scroll-padding-top: 6rem;-webkit-text-size-adjust: 100%;text-size-adjust: 100%}body{width: 100%;min-width: 0;margin: 0;overflow-x: clip}img,svg,video,iframe{max-width: 100%}button,input,select,textarea{min-width: 0;max-width: 100%}section[id]{scroll-margin-top: 6rem}.section-shell{width: min(1320px,calc(100% - var(--page-gutter) - var(--page-gutter)));margin-inline: auto}.section-pad{padding-block: var(--section-space)}.hero.section-shell{width: min(1450px,calc(100% - var(--page-gutter) - var(--page-gutter)));min-height: clamp(36rem,47vw,44.5rem)}.brand>span:not(.brand-heart){font-family: "Great Vibes",cursive;font-size: 1em;font-weight: 400;font-style: normal;line-height: 1.05;letter-spacing: 0}.hero h1.couple-names{display: flex;flex-flow: row nowrap;align-items: baseline;justify-content: center;gap: clamp(.28rem,1.05vw,.75rem);width: 100%;max-width: 100%;min-width: 0;margin: .4rem auto 0;padding-inline: .15rem;overflow: visible;text-align: center;white-space: nowrap}.hero h1.couple-names>.couple-name{display: block;flex: 0 1 auto;width: auto;min-width: 0;max-width: none;font-family: "Great Vibes",cursive;font-size: var(--type-display);font-style: normal;font-weight: 400;line-height: 1.22;letter-spacing: 0;word-spacing: .08em;font-kerning: normal;font-variant-caps: normal;font-feature-settings: "kern" 1,"liga" 1,"calt" 1;text-transform: none;white-space: nowrap;overflow-wrap: normal}.hero h1.couple-names>.ampersand{flex: 0 0 auto;margin-inline: .12em;font-family: "Cormorant Garamond",Georgia,serif;font-size: clamp(.9rem,1.15vw,1.18rem);font-style: italic;font-weight: 500;line-height: 1}.hero .intro{max-width: 42rem;margin-inline: auto;text-wrap: pretty}.hero .hero-date-block{display: flex;flex-direction: column;align-items: center;justify-content: center;gap: clamp(.08rem,.28vw,.22rem);width: 100%;max-width: 100%;margin: 0 auto;text-align: center;color: var(--ds-ink-deep)}.hero .hero-date-block p{max-width: 100%;margin: 0;font-family: var(--body,"Lora",Georgia,serif);text-wrap: balance;overflow-wrap: normal}.hero .hero-date-time,.hero .hero-date-lunar{color: #647365;font-size: clamp(.96rem,1.05vw,1.08rem);font-weight: 400;line-height: 1.5;letter-spacing: .015em}.hero .hero-date-main{margin-block: .06rem;color: var(--ds-ink-deep);font-size: clamp(1.3rem,1.55vw,1.48rem);font-weight: 700;line-height: 1.32;letter-spacing: .015em}.hero-family-grid{display: grid;grid-template-columns: repeat(2,minmax(0,1fr));gap: clamp(.45rem,1vw,.9rem);width: 100%;max-width: 760px;min-width: 0;margin: 1rem auto 0}.hero-family-item{min-width: 0}.hero .hero-family-grid .hero-family-label{margin-bottom: .3rem;font-size: clamp(.78rem,.9vw,.86rem);line-height: 1.45}.hero .hero-family-grid .hero-family-parents{font-size: clamp(.94rem,1vw,1.02rem);line-height: 1.48;overflow-wrap: anywhere}.hero .hero-family-grid .hero-family-address{margin-top: .28rem;font-size: clamp(.85rem,.92vw,.94rem);line-height: 1.52;overflow-wrap: anywhere}.floral,.botanical-frame-overlay,.floral-footer-center{height: auto;max-width: none;pointer-events: none;user-select: none}.floral{object-fit: contain}.hero .floral-hero-tl{width: clamp(8.5rem,14vw,13.5rem);left: clamp(-2rem,-2.3vw,-.7rem);top: clamp(-1.2rem,-1vw,-.2rem);opacity: .78}.hero .floral-hero-br{width: clamp(9.5rem,17vw,15rem);right: clamp(-2.3rem,-2.4vw,-.6rem);bottom: clamp(-2.4rem,-2.6vw,-.8rem);opacity: .78;transform: rotate(7deg)}.hero[data-subject-side="left"] .floral-hero-tl{left: auto;right: clamp(-2rem,-2.3vw,-.7rem);transform: scaleX(-1)}.hero[data-subject-side="left"] .floral-hero-br{right: auto;left: clamp(-2.3rem,-2.4vw,-.6rem);transform: scaleX(-1) rotate(7deg)}.countdown-wrap .floral-count-left,.countdown-wrap .floral-count-right{width: auto;height: clamp(4.5rem,8vw,7.5rem)}.schedule-section>.floral-schedule{width: clamp(7.5rem,15vw,14rem);right: clamp(-2.5rem,-3vw,-1rem);top: clamp(-3rem,-4vw,-1.2rem);opacity: .2}.gallery-section .gallery-floral{width: clamp(7rem,18vw,17.5rem);right: clamp(-3.75rem,-4vw,-1.25rem);bottom: clamp(-3rem,-4vw,-1rem);opacity: .2}.rsvp-cta .cta-floral-left,.rsvp-cta .cta-floral-right{width: clamp(6rem,13vw,12.5rem);height: auto}.rsvp-hero .rsvp-hero-left,.rsvp-hero .rsvp-hero-right{width: clamp(8.5rem,18vw,16rem);height: auto;opacity: .65}.thankyou-card .thankyou-floral{width: clamp(7.5rem,13vw,12rem);opacity: .24}.thankyou-card .thankyou-floral-petal{width: clamp(3.5rem,6vw,6rem);opacity: .2}.guestbook-section .guestbook-floral{width: clamp(8rem,15vw,14rem);opacity: .22}.guestbook-section .guestbook-floral-bl,.guestbook-section .guestbook-floral-br{width: clamp(6rem,11vw,10rem);opacity: .18}.floral-footer-center{width: clamp(5.5rem,10vw,9rem);opacity: .7}.botanical-frame-story{display: none}.botanical-frame-guestbook{opacity: .08}.event-grid,.gallery-grid,.countdown-grid,.rsvp-layout,.guestbook-layout,.form-grid,.two-col,.form-inline-row,.map-row{min-width: 0}.event-card,.form-card,.wish-form,.wish-card,.map-copy,.hero-family-item{min-width: 0}.event-card p,.map-copy p,.hero-family-parents,.hero-family-address,.wish-card p,.guestbook-heading p{overflow-wrap: anywhere}.event-icon svg{display: block;width: 1.4rem;height: 1.4rem;fill: none;stroke: currentColor;stroke-width: 1.5;stroke-linecap: round;stroke-linejoin: round}.map-placeholder iframe{width: 100%;max-width: 100%;height: 100%;min-height: inherit;border: 0}.map-placeholder-state{width: 100%;box-sizing: border-box}.map-placeholder-state[hidden]{display: none}.event-address-parts,.map-location-address-parts{display: block;min-width: 0;margin-top: .3rem;line-height: 1.55}.event-address-parts{text-align: center}.map-location-address-parts{text-align: left;line-height: 1.65}.event-address-part,.map-copy .map-location-address-part{display: inline;margin: 0;color: var(--ds-sage-soft-text);font-size: clamp(.9rem,.97vw,.99rem);line-height: inherit;overflow-wrap: normal;word-break: normal}.map-copy .map-location-address-part{color: var(--ds-muted,var(--ds-muted));font-size: .9rem}.event-address-part + .event-address-part::before,.map-copy .map-location-address-part + .map-location-address-part::before{content: " - ";white-space: pre;color: var(--ds-olive,var(--ds-olive))}.event-address-label,.map-location-address-label{color: var(--ds-olive,var(--ds-olive));font-weight: 600}.event-address-parts[hidden],.map-location-address-parts[hidden],.event-venue[hidden],.event-address[hidden],.map-location-venue[hidden],.map-location-address[hidden]{display: none}.schedule-section .location-options .event-card .event-icon{width: clamp(2.65rem,3vw,3rem);height: clamp(2.65rem,3vw,3rem);margin-bottom: .7rem}.schedule-section .location-options .event-card .event-icon svg{width: 1.55rem;height: 1.55rem}.schedule-section .location-options .event-card h3{margin: 0 0 .7rem;font-size: clamp(1.12rem,1.28vw,1.25rem);font-weight: 600;line-height: 1.38}.schedule-section .location-options .event-card .event-time,.schedule-section .location-options .event-card .event-venue,.schedule-section .location-options .event-card .event-address{margin-block: .38rem;font-size: clamp(.98rem,1.02vw,1.06rem);line-height: 1.55}.schedule-section .location-options .event-card .event-address-parts{margin-top: .45rem;line-height: 1.65}.schedule-section .location-options .event-card .event-address-part{font-size: clamp(.9rem,.97vw,.99rem)}.story-section{position: relative;isolation: isolate;min-width: 0;overflow: clip}.story-copy{min-width: 0}.story-visual.story-gallery-trigger{position: relative;display: block;width: 100%;min-width: 0;min-height: clamp(24rem,30vw,26rem);padding: .4rem 0 4.1rem;box-sizing: border-box;isolation: isolate;cursor: pointer}.story-visual.story-gallery-trigger>.photo-story{position: relative;z-index: 1;display: flex;width: min(67%,22rem);max-width: 72%;height: clamp(14rem,20vw,18rem);margin: .15rem auto 0;transform: rotate(-2.5deg)}.story-visual.story-gallery-trigger>.photo-story-small{position: absolute;z-index: 3;right: clamp(.7rem,4%,1.25rem);bottom: 4.05rem;width: clamp(7rem,29%,9rem);height: clamp(8.5rem,15vw,10.5rem);transform: rotate(6deg)}.story-visual.story-gallery-trigger>.story-gallery-hint{position: absolute;z-index: 5;left: 50%;bottom: .35rem;display: block;width: max-content;max-width: calc(100% - 1rem);margin: 0;padding: .45rem .8rem;transform: translateX(-50%);box-sizing: border-box;line-height: 1.4;text-align: center;white-space: normal;overflow-wrap: anywhere;border: 1px solid var(--ds-border,var(--ds-border));border-radius: 999px;background: rgba(251,250,244,.97);box-shadow: 0 3px 12px rgba(65,70,62,.04)}.story-visual.story-gallery-trigger>.story-floral{position: absolute;left: clamp(.5rem,6%,2rem);bottom: 2.4rem;width: clamp(6rem,11vw,8rem);height: auto;opacity: .46;z-index: 2;pointer-events: none}.story-visual.story-gallery-trigger>.story-floral-petal{position: absolute;right: clamp(.9rem,5%,1.8rem);top: .15rem;width: clamp(3rem,6vw,4.5rem);height: auto;opacity: .25;z-index: 0;pointer-events: none;transform: rotate(22deg)}.story-visual.story-gallery-trigger .photo-icon{display: block;width: 1.65rem;height: 1.45rem;color: var(--ds-sage-muted);opacity: .78;font-size: 0;line-height: 0}.story-visual.story-gallery-trigger .photo-icon svg{display: block;width: 100%;height: 100%;fill: none;stroke: currentColor;stroke-width: 1.5;stroke-linecap: round;stroke-linejoin: round}.gallery-section[hidden]{display: none}.gallery-grid{grid-auto-flow: dense;align-items: stretch}.gallery-photo{min-width: 0;min-height: 0}.gallery-photo img{position: absolute;inset: 0;display: block;width: 100%;height: 100%;object-fit: cover;border-radius: inherit}.form-card input[type="radio"],.form-card .attend-fieldset .radio-line input[type="radio"]{appearance: auto;accent-color: var(--ds-olive,var(--ds-olive));display: inline-block;width: 1rem;min-width: 1rem;max-width: 1rem;height: 1rem;flex: 0 0 1rem;margin: .15em 0 0;padding: 0}.form-card .attend-fieldset .radio-line{display: flex;align-items: flex-start;justify-content: flex-start;gap: .55rem;width: 100%;margin: .45rem 0;text-align: left}.form-card .attend-fieldset .radio-line>span{display: block;flex: 1 1 auto;min-width: 0;text-align: left;overflow-wrap: normal}@media (min-width: 1500px){.hero.section-shell{min-height: 44.5rem}.hero .hero-image-placeholder{min-height: 22rem}}@media (max-width: 1099px) and (min-width: 850px){:root{--page-gutter: clamp(1rem,2.2vw,1.5rem);--section-space: clamp(2.5rem,5vw,4rem);--type-display: clamp(2.2rem,3.2vw,2.75rem);--type-heading: clamp(1.8rem,2.5vw,2.2rem);--type-date: clamp(1.35rem,2.2vw,1.65rem)}.site-header{gap: .75rem;padding-inline: clamp(1rem,2vw,1.5rem)}.brand{font-size: clamp(1.9rem,2.8vw,2.25rem)}.main-nav{gap: clamp(.45rem,.9vw,.8rem)}.main-nav a{font-size: var(--type-label)}.main-nav .nav-cta{padding-inline: .6rem}.header-actions{gap: .5rem}.hero.section-shell{padding: clamp(2.2rem,4vw,3.2rem);min-height: clamp(35rem,52vw,39rem)}.hero h1.couple-names{gap: clamp(.25rem,.8vw,.5rem)}.hero h1.couple-names>.couple-name{font-size: clamp(2.1rem,3.35vw,2.75rem)}.hero-family-grid{gap: .6rem}.hero .hero-family-grid .hero-family-item{padding-inline: .15rem}.event-grid{gap: clamp(.65rem,1.3vw,1rem)}.schedule-section .location-options .event-card{padding: clamp(.9rem,1.6vw,1.2rem)}.schedule-section .location-options .event-card h3{font-size: clamp(1.05rem,1.5vw,1.15rem)}.schedule-section .location-options .event-card .event-time,.schedule-section .location-options .event-card .event-venue,.schedule-section .location-options .event-card .event-address{font-size: .95rem}.schedule-section .location-options .event-card .event-address-part{font-size: .88rem}.story-section{gap: clamp(1.5rem,3.3vw,2.5rem)}.gallery-grid{grid-template-columns: repeat(3,minmax(0,1fr))}.rsvp-layout{grid-template-columns: minmax(0,1.25fr) minmax(13rem,.75fr)}.guestbook-layout{grid-template-columns: minmax(14rem,.8fr) minmax(0,1.4fr)}}@media (max-width: 849px) and (min-width: 651px){:root{--page-gutter: clamp(.8rem,2vw,1.25rem);--section-space: clamp(2.2rem,5vw,3.8rem);--type-display: clamp(1.8rem,3.5vw,2.45rem);--type-heading: clamp(1.65rem,2.6vw,2.1rem);--type-body: clamp(.96rem,1.5vw,1.02rem);--type-small: clamp(.84rem,1.3vw,.92rem);--type-label: clamp(.7rem,1.1vw,.78rem);--type-date: clamp(1.12rem,2.7vw,1.45rem)}html{scroll-padding-top: 5.5rem}section[id]{scroll-margin-top: 5.5rem}.site-header{display: grid;grid-template-columns: minmax(0,1fr) auto;grid-template-rows: auto auto;align-items: center;gap: .35rem .65rem;min-height: 0;padding: .55rem clamp(.75rem,2vw,1rem) .3rem}.brand{grid-column: 1;grid-row: 1;min-width: 0;font-size: clamp(1.8rem,4.5vw,2.2rem)}.header-actions{grid-column: 2;grid-row: 1;display: flex;align-items: center;gap: .4rem;margin-left: auto}.lang-toggle{min-width: 44px;min-height: 44px;justify-content: center;padding: .24rem .45rem;font-size: .72rem}.main-nav{grid-column: 1 / -1;grid-row: 2;display: flex;flex-wrap: nowrap;justify-content: flex-start;align-items: center;gap: clamp(.8rem,2vw,1.15rem);width: 100%;min-width: 0;padding: .1rem .2rem .3rem;overflow-x: auto;overflow-y: hidden;-webkit-overflow-scrolling: touch;scrollbar-width: none;mask-image: linear-gradient(to right,var(--ds-black) 94%,transparent 100%);font-size: .76rem}.main-nav::-webkit-scrollbar{display: none}.main-nav a{flex: 0 0 auto;display: inline-flex;align-items: center;min-height: 44px;padding: .25rem 0;font-size: .76rem;white-space: nowrap}.main-nav .nav-cta{padding: .22rem .55rem}.section-shell{width: calc(100% - var(--page-gutter) - var(--page-gutter))}.section-pad{padding-block: var(--section-space)}.hero.section-shell{width: calc(100% - var(--page-gutter) - var(--page-gutter));min-height: clamp(32rem,66vw,39rem);padding: clamp(1.7rem,3.5vw,2.4rem) clamp(1rem,2.6vw,1.6rem);grid-template-columns: minmax(0,72%) minmax(0,28%)}.hero .hero-copy{max-width: 100%;min-width: 0;padding: .25rem .5rem .25rem 0}.hero h1.couple-names{gap: clamp(.18rem,.65vw,.42rem);padding-inline: 0}.hero h1.couple-names>.couple-name{font-size: clamp(1.7rem,3.5vw,2.35rem)}.hero h1.couple-names>.ampersand{font-size: clamp(.72rem,1.7vw,.95rem);margin-inline: .04em}.hero .intro{font-size: clamp(.82rem,1.7vw,.94rem);line-height: 1.55;margin-block: .6rem .45rem}.hero .divider-heart{margin-block: .55rem .65rem}.hero .hero-date-time,.hero .hero-date-lunar{font-size: clamp(.86rem,1.75vw,.97rem)}.hero .hero-date-main{font-size: clamp(1.02rem,2.45vw,1.25rem);letter-spacing: 0}.hero-family-grid{gap: clamp(.25rem,.8vw,.55rem);margin-top: .75rem}.hero .hero-family-grid .hero-family-label{font-size: clamp(.67rem,1.3vw,.76rem);letter-spacing: .11em}.hero .hero-family-grid .hero-family-parents{font-size: clamp(.78rem,1.6vw,.9rem);line-height: 1.42}.hero .hero-family-grid .hero-family-address{font-size: clamp(.72rem,1.4vw,.84rem);line-height: 1.42}.hero .hero-image-placeholder{min-height: 13rem;padding: .5rem .25rem;gap: .45rem}.hero .hero-image-placeholder strong{font-size: .65rem}.hero .hero-image-placeholder small{max-width: 100%;padding: .25rem .4rem;font-size: .72rem}.hero .hero-image-caption{font-size: clamp(.9rem,1.8vw,1.08rem);margin-top: .4rem}.hero .floral-hero-tl{width: clamp(5.7rem,12vw,7.5rem);left: -.35rem;top: -.35rem;opacity: .55}.hero .floral-hero-br{width: clamp(6.2rem,13vw,8.3rem);right: -.45rem;bottom: -.65rem;opacity: .5}.countdown-section{min-height: 0;padding: 2rem .85rem 1.8rem}.countdown-wrap{padding-inline: .4rem}.countdown-wrap .floral-count-left,.countdown-wrap .floral-count-right{display: none}.countdown-grid{grid-template-columns: repeat(4,minmax(0,1fr));gap: clamp(.35rem,1.1vw,.65rem);width: min(100%,38rem)}.count-card{width: auto;min-width: 0;height: clamp(3.8rem,7vw,4.6rem);padding: .35rem .15rem}.count-card strong{font-size: clamp(1.2rem,3.1vw,1.55rem)}.count-card span{font-size: clamp(.68rem,1.4vw,.8rem)}.event-grid{grid-template-columns: repeat(2,minmax(0,1fr));gap: clamp(.65rem,1.5vw,1rem)}.event-card{min-height: 0;padding: clamp(.9rem,1.8vw,1.2rem)}.event-card:nth-child(3):last-child{grid-column: 1 / -1;justify-self: center;width: min(100%,29rem)}.schedule-section .location-options .event-card h3{font-size: clamp(1rem,1.8vw,1.12rem);margin-bottom: .55rem}.schedule-section .location-options .event-card .event-time,.schedule-section .location-options .event-card .event-venue,.schedule-section .location-options .event-card .event-address{font-size: clamp(.86rem,1.55vw,.95rem);line-height: 1.5}.schedule-section .location-options .event-card .event-address-part{font-size: clamp(.78rem,1.45vw,.88rem)}.map-row{grid-template-columns: minmax(0,1fr);gap: 1.1rem;margin-top: 1.3rem}.map-placeholder{min-height: clamp(13rem,32vw,18rem)}.map-placeholder iframe{min-height: 100%}.story-section{display: flex;flex-direction: column;align-items: stretch;gap: 1.25rem;padding: clamp(1.6rem,4vw,2.5rem)}.story-copy,.story-visual{width: 100%;max-width: 100%;min-width: 0}.story-copy h2{font-size: var(--type-heading)}.story-copy p:not(.section-kicker){font-size: var(--type-body);line-height: 1.7}.story-visual.story-gallery-trigger{min-height: clamp(22rem,46vw,24rem);padding-bottom: 3.9rem}.story-visual.story-gallery-trigger>.photo-story{width: min(66%,22rem);height: clamp(13rem,26vw,15.5rem)}.story-visual.story-gallery-trigger>.photo-story-small{right: clamp(.6rem,4%,1rem);bottom: 3.8rem;width: clamp(6.5rem,23vw,8rem);height: clamp(8rem,18vw,9.5rem)}.story-visual.story-gallery-trigger>.story-gallery-hint{bottom: .3rem;max-width: calc(100% - .8rem);font-size: .86rem}.story-visual.story-gallery-trigger>.story-floral{width: clamp(4.8rem,10vw,6.6rem);bottom: 2.15rem;left: .6rem}.story-visual.story-gallery-trigger>.story-floral-petal{width: clamp(2.8rem,6vw,3.7rem);right: .8rem}.gallery-section{padding-block: clamp(2rem,4vw,3rem)}.gallery-frame{padding: clamp(.8rem,2vw,1.25rem)}.gallery-heading{align-items: flex-start;gap: .75rem}.gallery-heading h2{font-size: var(--type-heading)}.gallery-grid{grid-template-columns: repeat(3,minmax(0,1fr));grid-auto-rows: clamp(4rem,8vw,5.5rem);gap: .55rem}.gallery-item--wide,.gallery-item--wide-short{grid-column: span 2;grid-row: span 2}.gallery-item--tall,.gallery-item--tall-small,.gallery-item--portrait{grid-column: span 1;grid-row: span 3}.gallery-item--square,.gallery-item--medium{grid-column: span 1;grid-row: span 2}.rsvp-form-section{padding-block: clamp(2rem,4vw,3.2rem)}.rsvp-layout,.guestbook-layout{grid-template-columns: minmax(0,1fr);gap: 1.2rem}.form-card{padding: clamp(1rem,2.5vw,1.6rem)}.guestbook-section{padding: clamp(1.2rem,3vw,2rem);margin-bottom: 2.5rem}.guestbook-layout{margin-top: .85rem}.guestbook-form-col{position: static;max-width: 100%}.wishes-grid,.wishes-list{max-height: 28rem}.wish-actions{flex-wrap: wrap}.site-footer{padding-bottom: max(2rem,env(safe-area-inset-bottom))}}@media (max-width: 550px){:root{--page-gutter: .55rem;--section-space: clamp(2rem,7vw,2.8rem);--type-display: clamp(1.12rem,5.4vw,1.5rem);--type-heading: clamp(1.48rem,5.3vw,1.85rem);--type-subheading: 1.08rem;--type-body: clamp(.96rem,3.8vw,1rem);--type-small: clamp(.82rem,3.4vw,.9rem);--type-label: clamp(.68rem,2.8vw,.75rem);--type-date: clamp(1.08rem,4.4vw,1.35rem)}html{scroll-padding-top: 5.15rem}section[id]{scroll-margin-top: 5.15rem}.site-header{display: grid;grid-template-columns: minmax(0,1fr) auto;grid-template-rows: auto auto;align-items: center;gap: .3rem .45rem;min-height: 0;padding: .42rem clamp(.5rem,2.3vw,.8rem) .22rem}.brand{grid-column: 1;grid-row: 1;min-width: 0;font-size: clamp(1.55rem,6.8vw,2.1rem)}.header-actions{grid-column: 2;grid-row: 1;display: flex;align-items: center;gap: .3rem;margin-left: auto}.lang-toggle{min-width: 44px;min-height: 44px;justify-content: center;padding: .2rem .38rem;font-size: .67rem}.music-toggle{min-width: 44px;min-height: 44px;justify-content: center;font-size: 1rem}.main-nav{grid-column: 1 / -1;grid-row: 2;display: flex;flex-wrap: nowrap;justify-content: flex-start;align-items: center;gap: clamp(.72rem,3.2vw,1rem);width: 100%;min-width: 0;padding: .08rem .12rem .25rem;overflow-x: auto;overflow-y: hidden;-webkit-overflow-scrolling: touch;scrollbar-width: none;mask-image: linear-gradient(to right,var(--ds-black) 94%,transparent 100%);font-size: .7rem}.main-nav::-webkit-scrollbar{display: none}.main-nav a{flex: 0 0 auto;display: inline-flex;align-items: center;min-height: 44px;padding: .22rem 0;font-size: .7rem;white-space: nowrap}.main-nav .nav-cta{padding: .2rem .45rem}.section-shell,.hero.section-shell{width: calc(100% - .85rem)}.section-pad{padding-block: clamp(1.9rem,7vw,2.7rem)}.hero.section-shell{display: block;min-height: 0;padding: clamp(2rem,7.5vw,2.75rem) clamp(.5rem,2.5vw,.8rem) 1.35rem;background-position: var(--hero-bg-position-mobile,center center)}.hero.section-shell::before,.hero.section-shell[data-subject-side="left"]::before{background: linear-gradient(180deg,rgba(243,242,232,.985) 0%,rgba(243,242,232,.95) 56%,rgba(243,242,232,.8) 100%)}.hero .hero-copy,.hero[data-subject-side="left"] .hero-copy{width: 100%;max-width: 100%;min-width: 0;margin: 0 auto;padding: 0;text-align: center}.hero .eyebrow{margin-bottom: .45rem;font-size: var(--type-label);letter-spacing: .13em}.hero h1.couple-names{gap: clamp(.22rem,.95vw,.38rem);margin-top: .28rem;padding-inline: 0;align-items: baseline}.hero h1.couple-names>.couple-name{flex: 0 1 auto;min-width: 0;font-size: clamp(1.12rem,5.4vw,1.5rem);line-height: 1.25;letter-spacing: 0;word-spacing: .08em}.hero h1.couple-names>.ampersand{flex: 0 0 auto;font-size: clamp(.72rem,3vw,.88rem);margin-inline: .045em;line-height: 1}.hero .intro{max-width: 100%;margin: .55rem auto .45rem;font-size: clamp(.79rem,3.25vw,.88rem);line-height: 1.52}.hero .divider-heart{margin: .55rem auto .7rem}.hero .hero-date-block{gap: .09rem;padding-inline: .1rem}.hero .hero-date-time,.hero .hero-date-lunar{font-size: clamp(.84rem,3.35vw,.96rem);line-height: 1.43}.hero .hero-date-main{font-size: clamp(1rem,3.8vw,1.22rem);line-height: 1.3;letter-spacing: 0}.hero-family-grid{grid-template-columns: repeat(2,minmax(0,1fr));gap: clamp(.25rem,1.3vw,.5rem);margin-top: .65rem}.hero-family-item{padding-inline: .08rem}.hero .hero-family-grid .hero-family-label{font-size: clamp(.68rem,2.8vw,.78rem);line-height: 1.4;margin-bottom: .2rem;letter-spacing: .12em}.hero .hero-family-grid .hero-family-parents{font-size: clamp(.82rem,3.4vw,.94rem);line-height: 1.42}.hero .hero-family-grid .hero-family-address{font-size: clamp(.76rem,3.1vw,.86rem);line-height: 1.42;margin-top: .2rem}.hero .text-link{margin-top: .45rem;font-size: var(--type-small)}.hero .hero-image-placeholder{position: relative;inset: auto;width: min(100%,18rem);min-height: 0;margin: 1.15rem auto 0;padding: .28rem;gap: .3rem;background: transparent}.hero .hero-image-placeholder strong{font-size: .68rem}.hero .hero-image-placeholder small{max-width: 100%;font-size: var(--type-small);overflow-wrap: anywhere}.hero .hero-image-caption{margin-top: .3rem;font-size: clamp(.95rem,3.8vw,1.12rem)}.hero.has-hero-image .hero-image-placeholder{display: none}.hero .floral-hero-tl{width: clamp(4.4rem,21vw,6.2rem);left: -.25rem;top: -.25rem;opacity: .5}.hero .floral-hero-br{width: clamp(4.9rem,24vw,6.9rem);right: -.35rem;bottom: -.5rem;opacity: .45}.hero[data-subject-side="left"] .floral-hero-tl{left: auto;right: -.25rem}.hero[data-subject-side="left"] .floral-hero-br{right: auto;left: -.35rem}.countdown-section{min-height: 0;padding: 1.55rem .55rem 1.4rem}.countdown-wrap{width: 100%;padding-inline: .1rem}.countdown-wrap .floral-count-left,.countdown-wrap .floral-count-right{display: none}.countdown-grid{grid-template-columns: repeat(4,minmax(0,1fr));gap: clamp(.2rem,1.15vw,.4rem);width: 100%;margin-top: .9rem}.count-card{width: auto;min-width: 0;height: clamp(3.8rem,16vw,4.2rem);padding: .25rem .08rem}.count-card strong{font-size: clamp(1.05rem,4.5vw,1.32rem)}.count-card span{font-size: clamp(.61rem,2.55vw,.73rem)}.placeholder-note{font-size: clamp(.78rem,3.15vw,.87rem)}.schedule-section>h2{margin-bottom: 1.3rem}.event-grid{grid-template-columns: minmax(0,1fr);gap: .8rem}.event-card,.event-card.location-option{width: 100%;min-height: 0;padding: .95rem .85rem}.schedule-section .location-options .event-card .event-icon{width: 2.45rem;height: 2.45rem;margin-bottom: .5rem}.schedule-section .location-options .event-card .event-icon svg{width: 1.35rem;height: 1.35rem}.schedule-section .location-options .event-card h3{font-size: clamp(1rem,3.75vw,1.12rem);line-height: 1.35;margin-bottom: .5rem}.schedule-section .location-options .event-card .event-time,.schedule-section .location-options .event-card .event-venue,.schedule-section .location-options .event-card .event-address{font-size: clamp(.87rem,3.3vw,.95rem);line-height: 1.48}.schedule-section .location-options .event-card .event-address-parts{margin-top: .32rem;line-height: 1.5}.schedule-section .location-options .event-card .event-address-part{font-size: clamp(.78rem,2.95vw,.86rem)}.map-row{grid-template-columns: minmax(0,1fr);gap: .9rem;margin-top: 1.1rem}.map-placeholder{min-height: clamp(12rem,52vw,16rem);padding: .8rem}.map-placeholder-state{padding: 1rem .75rem;gap: .65rem;flex-direction: column}.map-placeholder iframe{min-height: 12rem}.map-copy{padding: .25rem .1rem}.map-copy h3{font-size: 1.12rem}.map-copy p{font-size: .9rem;line-height: 1.55}.map-copy .map-location-address-part{font-size: .82rem}.story-section{display: flex;flex-direction: column;align-items: stretch;gap: 1rem;padding: clamp(1.2rem,4vw,1.8rem)}.story-copy,.story-visual{width: 100%;max-width: 100%;min-width: 0}.story-copy h2{font-size: var(--type-heading);margin-bottom: .7rem}.story-copy p:not(.section-kicker){font-size: var(--type-body);line-height: 1.62}.story-copy .subtle-copy,.subtle-copy{font-size: var(--type-small)}.story-visual.story-gallery-trigger{min-height: 22rem;padding: .2rem 0 3.9rem}.story-visual.story-gallery-trigger>.photo-story{width: min(70%,19rem);height: clamp(13rem,56vw,14.1rem);margin-top: .15rem}.story-visual.story-gallery-trigger>.photo-story-small{right: clamp(.55rem,3.5vw,.8rem);bottom: 3.85rem;width: clamp(6.25rem,30%,7.25rem);height: clamp(7.75rem,34vw,8.5rem)}.story-visual.story-gallery-trigger>.story-gallery-hint{bottom: .2rem;max-width: calc(100% - .5rem);padding: .4rem .6rem;font-size: clamp(.75rem,3.2vw,.875rem)}.story-visual.story-gallery-trigger>.story-floral{width: clamp(4.6rem,12vw,5.6rem);left: .35rem;bottom: 2.15rem}.story-visual.story-gallery-trigger>.story-floral-petal{width: clamp(2.7rem,7vw,3.4rem);right: .45rem;top: .15rem}.gallery-section{padding-block: 1.9rem}.gallery-frame{padding: .7rem}.gallery-heading{align-items: flex-start;gap: .45rem;margin-bottom: .85rem}.gallery-heading h2{font-size: var(--type-heading)}.gallery-count{font-size: .78rem}.gallery-grid{grid-template-columns: repeat(2,minmax(0,1fr));grid-auto-rows: clamp(4rem,17vw,5.8rem);gap: .4rem}.gallery-item--wide,.gallery-item--wide-short{grid-column: span 2;grid-row: span 2}.gallery-item--tall,.gallery-item--tall-small,.gallery-item--portrait{grid-column: span 1;grid-row: span 3}.gallery-item--square,.gallery-item--medium{grid-column: span 1;grid-row: span 2}.gallery-photo{padding: .28rem}.gallery-photo strong{font-size: var(--type-label)}.gallery-photo small{font-size: var(--type-small);overflow-wrap: anywhere}.gallery-floral{width: clamp(6rem,20vw,8rem);right: -1.5rem;bottom: -1.5rem;opacity: .12}.rsvp-hero{min-height: 0;padding: 2.25rem .8rem 1.8rem}.rsvp-hero h1{font-size: clamp(2.65rem,12vw,4rem)}.rsvp-hero>p:not(.section-kicker){font-size: .95rem;line-height: 1.55}.rsvp-hero .rsvp-intro{max-width: 32rem;font-size: .82rem}.rsvp-hero .rsvp-hero-left,.rsvp-hero .rsvp-hero-right{width: clamp(5.5rem,22vw,8rem);opacity: .45}.rsvp-form-section{padding-block: 2rem}.section-heading-centered{margin-bottom: 1.15rem}.section-heading-centered>p:last-child{font-size: var(--type-small)}.rsvp-layout,.guestbook-layout{grid-template-columns: minmax(0,1fr);gap: .9rem}.form-grid.two-col,.two-col,.form-inline-row{grid-template-columns: minmax(0,1fr);gap: .8rem}.form-card{min-width: 0;padding: .9rem;border-radius: .75rem}.form-card label,.wish-form>label{font-size: var(--type-small);line-height: 1.48}.form-card input:not([type="radio"]),.form-card textarea,.form-card select,.wish-form input,.wish-form textarea{font-size: 1rem;padding: .7rem .75rem}.form-card .attend-fieldset{min-width: 0}.form-card .attend-fieldset .radio-line{gap: .5rem;align-items: flex-start}.form-card .attend-fieldset .radio-line>span{font-size: var(--type-small);line-height: 1.42}.guest-count-label{min-width: 0}.guest-count-label select{width: 100%}.thankyou-card{min-height: 15rem;padding: 1.6rem 1rem}.guestbook-section{width: calc(100% - .85rem);padding: 1.2rem .8rem;margin-bottom: 2.2rem;border-radius: .85rem}.guestbook-heading{align-items: flex-start;flex-direction: column;gap: .45rem}.guestbook-heading h2{font-size: var(--type-heading)}.guestbook-heading p{font-size: var(--type-small)}.status-pill{white-space: normal;font-size: .75rem}.guestbook-form-col{position: static;max-width: 100%}.wish-form{padding: .85rem;margin-bottom: 0;gap: .8rem}.wish-form textarea{min-height: 6.5rem}.wish-actions{align-items: stretch;flex-direction: column;gap: .7rem}.wish-actions .char-count{text-align: right}.wish-actions .accent-button{width: 100%;justify-content: center}.wishes-grid,.wishes-list{grid-template-columns: minmax(0,1fr);max-height: none;overflow-y: visible;padding-right: 0}.wish-card{padding: .9rem}.guestbook-floral-bl,.guestbook-floral-br{display: none}.site-footer{padding: 1.35rem .7rem max(2rem,env(safe-area-inset-bottom))}.site-footer p{font-size: 1.05rem}.toast{right: .65rem;left: .65rem;bottom: max(.7rem,env(safe-area-inset-bottom));max-width: none;padding: .75rem .9rem;font-size: .85rem}}@media (max-width: 650px) and (min-width: 551px){.hero.section-shell{display: block;min-height: 0;padding: clamp(1.8rem,4.5vw,2.2rem) clamp(.75rem,2.5vw,1.1rem) 1.2rem}.hero .hero-copy{width: 100%;max-width: 100%;padding: 0}.hero .hero-image-placeholder{width: min(100%,17rem);min-height: 0;margin: .9rem auto 0;padding: .35rem}.hero .hero-image-caption{font-size: 1rem;margin-top: .3rem}.hero .floral-hero-tl{width: 6rem}.hero .floral-hero-br{width: 6.7rem}}@media (max-width: 350px){:root{--page-gutter: .35rem;--section-space: 1.9rem;--type-display: 1.1rem;--type-heading: 1.42rem;--type-body: .92rem;--type-small: .79rem;--type-label: .65rem;--type-date: 1rem}.main-nav{gap: .68rem}.main-nav a{font-size: .65rem}.section-shell,.hero.section-shell{width: calc(100% - .6rem)}.hero.section-shell{padding-inline: .35rem}.hero h1.couple-names{gap: .15rem;padding-inline: 0}.hero h1.couple-names>.couple-name{font-size: 1.04rem;line-height: 1.3;letter-spacing: 0;word-spacing: .08em}.hero h1.couple-names>.ampersand{font-size: .66rem;margin-inline: .02em}.hero .intro{font-size: .76rem;line-height: 1.48}.hero .hero-date-time,.hero .hero-date-lunar{font-size: .82rem}.hero .hero-date-main{font-size: .96rem;line-height: 1.28}.hero-family-grid{column-gap: .2rem}.hero .hero-family-grid .hero-family-label{font-size: .64rem;letter-spacing: .08em}.hero .hero-family-grid .hero-family-parents{font-size: .79rem;line-height: 1.36}.hero .hero-family-grid .hero-family-address{font-size: .72rem;line-height: 1.36}.countdown-grid{gap: .16rem}.count-card{height: 3.6rem;padding-inline: .04rem}.count-card strong{font-size: .98rem}.count-card span{font-size: .58rem}.schedule-section .location-options .event-card{padding: .85rem .65rem}.schedule-section .location-options .event-card h3{font-size: .98rem}.schedule-section .location-options .event-card .event-time,.schedule-section .location-options .event-card .event-venue,.schedule-section .location-options .event-card .event-address{font-size: .84rem}.schedule-section .location-options .event-card .event-address-part{font-size: .72rem}.story-visual.story-gallery-trigger{min-height: 20.5rem;padding-bottom: 3.7rem}.story-visual.story-gallery-trigger>.photo-story{width: min(69%,17rem);height: 12.5rem}.story-visual.story-gallery-trigger>.photo-story-small{bottom: 3.7rem;width: 6rem;height: 7.25rem}.story-visual.story-gallery-trigger>.story-gallery-hint{font-size: .7rem;padding: .33rem .45rem}.gallery-frame{padding: .5rem}.gallery-grid{grid-auto-rows: 3.8rem;gap: .3rem}.form-card,.wish-form{padding: .75rem}.guestbook-section{padding: .9rem .6rem}}@media (prefers-reduced-motion: reduce){html{scroll-behavior: auto}*,*::before,*::after{animation-duration: .01ms !important;transition-duration: .01ms !important}}.form-honeypot{position: absolute;left: -10000px;top: auto;width: 1px;height: 1px;overflow: hidden;clip-path: inset(50%);white-space: nowrap}.story-visual.story-gallery-trigger>img.photo-story,.story-visual.story-gallery-trigger>img.photo-story-small{display: block;object-fit: cover;border-radius: .6rem;box-shadow: 0 12px 30px rgba(65,70,62,.12)}.hero-family-item[hidden],.hero-family-parents[hidden],.hero-family-address[hidden],.event-card[hidden],.event-time[hidden],.event-venue[hidden],.event-address[hidden],.event-address-parts[hidden],.event-address-part[hidden],.map-location-address-parts[hidden],.map-location-address-part[hidden],.map-location-time[hidden],.map-location-venue[hidden],.map-location-address[hidden],.map-row[hidden],.map-display[hidden]{display: none}@media (max-width: 550px){.hero .hero-rsvp-cta{width: min(100%,18rem);min-height: 44px;margin-top: .8rem}}.page-layout{display: grid;grid-template-columns: minmax(0,1fr);grid-template-areas: "hero" "countdown" "schedule" "story" "gallery" "rsvp" "guestbook";align-content: start;row-gap: 0;min-width: 0}.page-layout>.layout-block{min-width: 0;outline: 0}.layout-block--hero{grid-area: hero}.layout-block--countdown{grid-area: countdown}.layout-block--schedule{grid-area: schedule}.layout-block--story{grid-area: story}.layout-block--gallery{grid-area: gallery}.layout-block--rsvp{grid-area: rsvp}.layout-block--guestbook{grid-area: guestbook}.hero.section-shell.has-hero-image{background-image: none;background-color: var(--ds-ivory);border: 0;border-radius: 0;isolation: isolate}.hero.section-shell.has-hero-image::before{z-index: 1;pointer-events: none}.hero-media-block{position: absolute;inset: 0;z-index: 0;overflow: hidden;min-width: 0;min-height: 0;margin: 0;padding: 0;border: 0;background: transparent;pointer-events: none}.hero-media-picture,.hero-media-image{display: block;width: 100%;height: 100%}.hero-media-image{object-fit: cover;object-position: var(--hero-photo-position,center center)}.hero.section-shell.has-hero-image .hero-copy{z-index: 2}.hero.section-shell.has-hero-image .hero-image-placeholder{display: none}@media (min-width: 551px) and (max-width: 1099px){.page-layout{grid-template-areas: "hero" "countdown" "schedule" "story" "gallery" "rsvp" "guestbook"}.hero.section-shell.has-hero-image{min-height: clamp(34rem,64vw,42rem)}.hero-media-image{object-position: 54% center}}@media (max-width: 550px){.page-layout{grid-template-areas: "hero" "countdown" "schedule" "story" "gallery" "rsvp" "guestbook"}.hero.section-shell.has-hero-image{display: grid;grid-template-columns: minmax(0,1fr);grid-template-rows: auto;align-items: start;min-height: 0;padding: .6rem 0 1.25rem;overflow: hidden;background: var(--ds-paper-warm)}.hero.section-shell.has-hero-image::before{content: none;display: none}.hero.section-shell.has-hero-image .hero-media-block{display: none}.hero.section-shell.has-hero-image .hero-copy{grid-column: 1;grid-row: 1;width: 100%;max-width: none;margin: 0;padding: 1rem 1rem .25rem;background: var(--ds-paper-warm);z-index: 2}.hero.section-shell.has-hero-image .floral-hero-tl,.hero.section-shell.has-hero-image .floral-hero-br{display: none}.hero.section-shell.has-hero-image .hero-family-grid{margin-top: .8rem}.hero.section-shell.has-hero-image .text-link{margin-top: .75rem}}@media (max-width: 550px){.hero.section-shell.has-hero-image .hero-copy h1.couple-names{display: grid;grid-template-columns: minmax(0,1fr);grid-template-rows: auto auto auto;align-items: center;justify-items: center;gap: 0;width: 100%;margin: .35rem auto .3rem;padding: 0;white-space: normal;text-align: center}.hero.section-shell.has-hero-image .hero-copy h1.couple-names>.couple-name{width: 100%;max-width: 100%;min-width: 0;justify-self: center;text-align: center;white-space: normal;overflow-wrap: normal;word-break: normal;font-size: clamp(1.8rem,8vw,2.5rem);line-height: 1.12;letter-spacing: -.015em}.hero.section-shell.has-hero-image .hero-copy h1.couple-names>.couple-name:first-child{grid-column: 1;grid-row: 1}.hero.section-shell.has-hero-image .hero-copy h1.couple-names>.ampersand{grid-column: 1;grid-row: 2;align-self: center;justify-self: center;margin: .05rem 0 .08rem;font-size: clamp(.78rem,3.2vw,.98rem);line-height: 1}.hero.section-shell.has-hero-image .hero-copy h1.couple-names>.couple-name:last-child{grid-column: 1;grid-row: 3}}@media (max-width: 550px){.hero.section-shell.has-hero-image .hero-copy>.eyebrow{margin-bottom: .55rem;color: #5c715f;font-size: clamp(.82rem,3.5vw,.92rem);font-weight: 600;line-height: 1.5;letter-spacing: .19em}.hero.section-shell.has-hero-image .hero-copy h1.couple-names>.couple-name{color: #214638;font-size: clamp(2.45rem,11.2vw,3.65rem);font-weight: 500;line-height: 1.2;letter-spacing: -.018em;text-shadow: .35px 0 currentColor,-.35px 0 currentColor,0 2px 0 rgba(255,255,255,.62),0 5px 13px rgba(35,68,54,.12)}.hero.section-shell.has-hero-image .hero-copy h1.couple-names>.ampersand{color: #9a6f4b;font-size: clamp(.86rem,3.5vw,1rem);font-weight: 600;margin-block: .08rem .12rem}.hero.section-shell.has-hero-image .hero-copy>.intro{max-width: 34rem;margin: .72rem auto .58rem;color: #435d50;font-size: clamp(.98rem,4vw,1.08rem);font-weight: 500;line-height: 1.62;letter-spacing: .005em}.hero.section-shell.has-hero-image .hero-copy .divider-heart{margin: .68rem auto .82rem;gap: .8rem}.hero.section-shell.has-hero-image .hero-copy .divider-heart span{width: clamp(2.3rem,9vw,3rem);background: #c9ad92}.hero.section-shell.has-hero-image .hero-copy .divider-heart b{color: #806044;font-size: .9rem}.hero.section-shell.has-hero-image .hero-copy .hero-date-time{color: #4c6556;font-size: clamp(.98rem,3.9vw,1.06rem);font-weight: 500;line-height: 1.5}.hero.section-shell.has-hero-image .hero-copy .hero-date-main{color: #243f34;font-size: clamp(1.08rem,4.3vw,1.25rem);font-weight: 700;line-height: 1.36;letter-spacing: .005em}.hero.section-shell.has-hero-image .hero-copy .hero-date-lunar{color: #4f6557;font-size: clamp(1rem,4vw,1.08rem);font-weight: 500;line-height: 1.5}.hero.section-shell.has-hero-image .hero-copy>.intro{display: none}.hero.section-shell.has-hero-image .hero-copy .hero-family-grid{margin-top: .82rem;column-gap: clamp(.35rem,1.8vw,.65rem)}.hero.section-shell.has-hero-image .hero-copy .hero-family-label{color: #89684d;font-size: clamp(.76rem,3.1vw,.84rem);font-weight: 700;letter-spacing: .13em}.hero.section-shell.has-hero-image .hero-copy .hero-family-parents{color: #2e4a3d;font-size: clamp(.9rem,3.7vw,.98rem);font-weight: 600;line-height: 1.46}.hero.section-shell.has-hero-image .hero-copy .hero-family-address{color: #5f7064;font-size: clamp(.82rem,3.3vw,.9rem);line-height: 1.45}}@media (min-width: 1100px){.hero.section-shell.has-hero-image .hero-copy h1.couple-names{display: grid;grid-template-columns: minmax(0,1fr) auto minmax(0,1fr);align-items: baseline;justify-items: stretch;column-gap: clamp(.35rem,.85vw,.9rem);width: 100%;max-width: 100%;margin-inline: auto;padding-inline: 0}.hero.section-shell.has-hero-image .hero-copy h1.couple-names>.couple-name:first-child{grid-column: 1;justify-self: stretch;text-align: right}.hero.section-shell.has-hero-image .hero-copy h1.couple-names>.ampersand{grid-column: 2;justify-self: center;align-self: baseline;margin: 0;text-align: center}.hero.section-shell.has-hero-image .hero-copy h1.couple-names>.couple-name:last-child{grid-column: 3;justify-self: stretch;text-align: left}}.hero .hero-copy>.hero-invitation-line{display: block;max-width: 100%;margin: 0 auto clamp(.45rem,.9vw,.75rem);font-family: var(--body,"Lora",Georgia,serif);text-align: center;text-wrap: balance}@media (max-width: 550px){.hero .hero-copy>.hero-invitation-line{margin-bottom: .55rem}}@media (min-width: 1100px){.hero.section-shell.has-hero-image{min-height: clamp(34rem,39vw,39rem);padding-top: clamp(2rem,3.4vw,3rem);padding-bottom: clamp(1.85rem,3vw,2.75rem)}.hero.section-shell.has-hero-image .hero-copy{padding-top: .15rem;padding-bottom: .15rem}.hero.section-shell.has-hero-image .hero-family-grid{margin-top: .55rem}}@media (min-width: 551px) and (max-width: 1099px){.hero.section-shell.has-hero-image{min-height: clamp(32rem,56vw,37rem);padding-top: clamp(1.7rem,3.2vw,2.6rem);padding-bottom: clamp(1.6rem,2.8vw,2.35rem)}.hero.section-shell.has-hero-image .hero-copy{padding-top: .1rem;padding-bottom: .1rem}}
